برمجة و تشغيل الاردوينو
شكلت المتحكمات البرمجية الدقيقة نقلةً نوعيةً في عالم الإلكترونيات الحديث بسبب امكانياتها الهائلة وسهولة التعامل معها وبرمجتها، الأمر الذي أدى إلى تواجدها في جميع نواحي الحياة اليومية من الأدوات الإلكترونية التي نستخدمها بحياتنا بشكلٍ يوميٍّ كالتلفاز والغسالة والمصعد والحواسيب، إلى التقنيات الإلكترونية المستخدمة في المعامل والمصانع وغيرها من المنتجات الإلكترونية الضخمة كالأقمار الصناعية والصواريخ، فهي مقصد الجميع بدءًا من الهواة إلى المتخصصين والمطورين، أحد هذه المتحكمات هو الاردوينو الذي سنتعرف على طريقة تشغيله وبرمجته في مقالنا التالي.
الأردوينو
الاردوينو عبارةٌ عن لوحةٍ مفتوحة المصدر، تستخدم في بناء التطبيقات والمشاريع الإلكترونية، يتميز بكلفته المنخفضة مقارنةً مع المتحكمات الأخرى ومرونته في التعامل، فهو قادرٌ على العمل على مختلف أنظمة التشغيل مثل Windows وmacOS وLinux بالإضافة إلى سهولة برمجته التي يعتمد بها على لغةٍ خاصةٍ تسمى Arduino C.
النوع الأكثر شيوعًا منه هو Arduino Uno الذي يتمتع بـ 14 قطب رقمي (6 منها يمكن استخدامها كأقطاب خرج PWM أي أقطاب خرج موجات مربعة يمكن التحكم بعرض نبضاتها) بالإضافة إلى 6 أقطابٍ تشابهيةٍ يمكن استخدامها كأقطاب دخل أو خرج (حسب البرمجة) كما يزود بزر لإعادة التعيين (حذف البرنامج المثبت على البورد) ومقبس للطاقة ومنفذ USB لتوصيله مع الحاسب من خلال كبل البرمجة.
كما تتوفر العديد من الأنواع الأخرى منها:
تتم كتابة برامج Arduino في بيئة التطوير المتكاملة Arduino IDE؛ وهي عبارةٌ عن برنامجٍ خاص يعمل على مختلف أنظمة التشغيل، ليسمح للمطور كتابة الأكواد البرمجية التي سيتم تحميلها على البورد لتنفيذها، مزود بمجموعةٍ كبيرةٍ من المكتبات التي يمكنها مساعدة المبتدئين في تعلم أساسيات البرمجة وتصميم التطبيقات البسيطة.
كيفية برمجة و تشغيل الاردوينو
للبدء في برمجة و تشغيل الاردوينو يجب في البداية تنصيب بيئة التطوير Arduino IDE، وتوصيل اللوحة مع الحاسب باستخدام كابل البرمجة، ثم اتباع الخطوات التالية:
- اختيار اللوحة: من شريط القوائم نختار الأدوات (Tools)، ثم اللوحة (Board)، ,ستظهر قائمةٌ منسدلةٌ تحوي جميع اللوحات نختار منها اللوحة التي نستخدمها.
- اختيار المنفذ التسلسلي: من شريط القوائم نختار الأدوات (Tools)، ثم المنفذ التسلسلي، لنقوم بتحديد المنفذ الذي تم وصل اللوحة إليه مع الحاسب.
- البرمجة: تتميز اللغة المستخدمة في برمجة الاردينو ببساطتها، فهي تتكون من مجموعتين من الأكواد البرمجية لكل مجموعةٍ منها مهامها الخاصة والتي يتم تحديدها ضمن قوسين {…}، وتسبق تلك المجموعتان سلسلة أوامر برمجية لتعريف المكتبات والأقطاب التي سيتم استخدامها.
المجموعة الأولى: وهي المسؤولة عن إعداد بورد الاردوينو للعمل؛ إذ تستخدم لتعريف نوع الأقطاب المستخدمة والتي تم تعريفها بالتعليمات البرمجية السابقة إن كانت أقطاب دخلٍ أم أقطاب خرجٍ بالإضافة إلى تعريف معدل النقل التسلسلي، على سبيل المثال:void setup ( )
{
pinMode (pin-number, OUTPUT); // set the ‘pin-number’ as output
pinMode (pin-number, INPUT); // set the ‘pin-number’ as output
}
ملاحظة: الكلمات المكتوبة خلف المحارف // لا تتم قراءتها من قبل المتحكم وإنما تكتب لتسهيل شرح البرنامج.
المجموعة الثانية: هي المسؤولة عن قراءة حالة أقطاب الدخل وإعطاء الأوامر لأقطاب الخرج اعتمادًا على التعليمات البرمجية والحلقات المستخدمة ضمنها، يتم تنفيذها بشكلٍ متكررٍ خلال عمل المتحكم إذ تعمل على مراقبة حالة أقطاب الدخل بشكلٍ متكررٍ لتنفيذ اللازم عند الحاجة لذلك، على سبيل المثال:Void loop ( )
{
digitalWrite (pin-number,HIGH); // turns ON the component connected to ‘pin-number’
delay (1000); // wait for 1 sec
digitalWrite (pin-number, LOW); // turns OFF the component connected to ‘pin-number’
delay (1000); //wait for 1sec
}
في المثال السابق يقوم المتحكم بتشغيل القطب (يعطيه 5 فولت) المدخل بالتعليمة الأولى والانتظار لمدة ثانية (1000 ميلي ثانية) ثم بعدها يقوم بإطفاء القطب وينتظر ثانيةً واحدةً أيضًا.
ملاحظة: يقوم المتحكم بقياس المدة الزمنية بالميللي ثانية بشكلٍ دائمٍ لذا يجب الانتباه إلى ذلك دومًا. - التحميل: بعد كتابة البرنامج واختيار نوع اللوحة المستخدمة والمنفذ التسلسلي يجب التحقق من خلو برنامج الاردوينو من أي خطأ برمجيٍّ من خلال الضغط على زر التحقق الموجود أسفل شريط القوائم على شكل علامة √.
عند التأكد من عدم وجود أي أخطاء، يمكن الضغط على زر الرفع الموجود بجانب زر التحقق، عند انتهاء التحميل ستبدأ المصابيح TX وRX الموجودة على اللوحة بالومض مما يدل على إتمام العملية بنجاحٍ.