الانتقال من اللبنات البرمجية في تينكر كاد إلى لغة C++ | الوحدة السادسة | الدرس الثاني

الانتقال من اللبنات البرمجية في تينكر كاد إلى لغة C++ هو عنوان الدرس الثاني من الوحدة السادسة التي تحمل اسم ” برمجة إنترنت الأشياء باستخدام لغة C++” في القسم الثاني من مقرر “إنترنت الأشياء 2-1”.
في هذا الموضوع، سنستكشف عالم المتغيرات والعمليات في الأردو ينو، ونتعرف على أوامر التحكم والإخراج. سنتمكن أيضًا من فهم كيفية التعامل مع مدخلات ومخرجات أطراف الأردو ينو. سنطبق عمليًا مجموعة من الأمثلة الشيقة، مثل التحكم في الدايودات المشعة للضوء الوامضة، واستخدام إنذار مستشعر الحركة، بالإضافة إلى تشغيل محرك التيار المستمر.
لذا قم بقراءة نواتج التعلُّم بعناية، ثم أعد قراءتها وتأكد من تحصيل محتوياتها بعد انتهائك من دراسة الموضوع.
أهداف التعلُّم
- الإعلان المتغيرات والعمليات.
- أوامر التحكم والإخراج.
- مدخلات ومخرجات أطراف الأردوينو.
- الدايودات المشعة للضوء الوامضة.
- إنذار مستشعر الحركة.
- محرك التيار المستمر.
هيـــّـــــا لنبـــــدأ!
الانتقال من برمجة اللبنات المرئية إلى البرمجة في C++
(Migrating from Visual Blocks Programming to C++ Programming)
تعد اللبنات البرمجية في تنكر كاد مفيدة في تنفيذ النماذج الأولية والمهمات البرمجية البسيطة.
إلاّ أنّ استخدام C++ يُعد ضروريًا للاستفادة الكاملة من إمكانات متحكم الأردوينو.
يوفر تينكركاد بيئة محاكاة لبرمجة الأردوينو بالنمذجة، والتي لا تتطلَّب وجود أردوينو فعليًّا وتوصيله بجهاز الحاسب.
الإعلان عن المتغيرات والعمليات (Variable Assignments and Operations)
أين يتم الإعلان وتغييرها في لبنات تنكر كاد البرمجية؟
يتم إعلان المتغيرات وتغييرها في لبنات تنكر كاد البرمجية من خلال مجموعتي أوامر المتغيرات variables والحساب math.
الإعلان من متغير باسم x.
تعيين قيمة للمتغير.
تغيير متغير بقيمة محددة.
تنفيذ عملية رياضية بين المتغيرين x وy.
تعيين متغير ثالث z لناتج عملية رياضية بين المتغيرين x وy.
إجراء مقارنة رياضية بين المتغيرين x وy.
إجراء مقارنة منطقية بين المتغيرين x وy.
إجراء عملية منطقية بين عبارتين.
العبارات الشرطية والتكرارات ورسائل الإخراج
(Conditional Statements, Loops and Output Messages)
أين يتم انشاء العبارات والتكرارات ورسائل الإخراج في لبنات تنكر كاد البرمجية؟
يتم انشاء العبارات والتكرارات ورسائل الإخراج في لبنات تنكر كاد من خلال مجموعتي أوامر التحكم Control والإخراج Output.
طباعة رسالة على الشاشة التسلسلية.
الانتظار 5 ثواني.
تنفيذ التعليمات البرمجية داخل لبنة if إذا كان الشرط المنطقي صحيح.
تنفيذ التعليمات البرمجية أعلى else داخل لبنة if إذا كان الشرط المنطقي صحيحًا وإلا سيتم تنفيذ اللبنات الموجودة أسفل else.
تنفيذ التعليمات البرمجية داخل لبنة for إذا كان الشرط المنطقي صحيحًا.
تنفيذ تكرار while في الحالة الآتية:
مدخلات مُخرجات أطراف الأردوينو الرقمية والتناظرية
(Arduino Digital and Analog Pin I/O)
لاستخدام طرف تحتاج إلى تحديد ذلك في دالة SETUP() في الأردوينو لتوضيح إذا ما كان سيستخدم في الإدخال Input أو الإخراج .Output
يتم استخدام الأطراف 3،5،6،9،10،11 مع تعديل قيمة عرض النبضة PWM.
الحصول على قيمة الطرف الرقمي 4 وتخزينه في المتغير x.
ضبط الطرف الرقمي 4 على قيمة HIGH (مرتفعة).
الحصول على قيمة الطرف التناظري A3 وتخزينه في المتغير y.
إعداد قيمة الطرف 10 من القيمة التناظرية 15 باستخدام تضمين عرض النبضة PWM.
بإمكانك مراجعة موضوع محتوى “الانتقال من اللبنات البرمجية في تينكر كاد إلى لغة C++” من البداية وحتى نهاية هذا القسم من خلال الرابط التالي:
أمثلة على الانتقال من لبنات تينكر كاد البرمجية إلى لغة C++
(Examples of Migration from Tinkercad Blocks to C++)
الدايودات المشعة للضوء الوامضة (Blinking LEDs Examples)
سنُنشئ برنامج بسيط يحتوي على تكرارين يجعلان دايود مشع للضوء يُومض 5 مرات و10 مرات بشدة مختلفة.
المكونات المستخدمة للمشروع:
- 1 أردوينو أونو A3.
- دايود مشع للضوء LED.
لتوصيل الدايود الضوئي:
- قُم بتوصيل Cathode (مِهبط) LED (الدايود المشع للضوء) بالطرف GND (الطرف الأرضي) للوحة الأردوينو، وغيِّر لون السلك إلى black (الأسود).
- قُم بتوصيل Anode (مِصعد) الدايود المشع للضوء (LED) بالطرف Digital (الرقمي) 11 للوحة الأردوينو، وغيِّر لون السلك إلى green (الأخضر).
برمجة الأردوينو
- سيومض الدايود المشع للضوء 5 مرات في الثانية الواحدة.
- ثم سيومض الدايود المشع للضوء 10 مرات وذلك بفارق 200 ملي ثانية بين كل منها.
مثال إنذار مستشعر الحركة (Passive Infrared Sensor (PIR) Alarm Example)
سنقوم بتوسيع المشروع السابق باستخدام جهاز إنذار PIR يرسل إشارة لإضاءة 3 دايودات ضوئية في تتابع سريع.
المكونات المطلوبة للمشروع:
- لوحة أرودينو أونو.A3
- دايود مشع للضوء .LED
- مستشعر الحركة PIR.
لإنشاء الدائرة:
- قم بتوصيل cathode(مهبط) ل LED (دايود مشع للضوء) بالطرف GND (الطرف الأرضي) للوحة الأردوينو وغير لون السلك إلى .Black
- قم بتوصيل anode (مصعد) ل LED (دايود مشع للضوء) بالطرف Digital (الرقمي) 11 للوحة الأردوينو وغير لون السلك إلى Green.
- قم بتوصيل طرف إشارة PIR (مستشعر الحركة) بالطرف Digital (الرقمي) 10 للوحة الأردوينو وغير لون السلك إلى Orange.
- قم بتوصيل طرف إشارة PIR (مستشعر الحركة) بمصدر 5V (5 فولت) من لوحة الأردوينو وغير لون السلك إلى Red.
- قم بتوصيل GND (الطرف الأرضي) ل PIR (مستشعر الحركة) بالطرف GND (الطرف الأرضي) للوحة الأردوينو وغير لون السلك إلى Black.
برمجة الأردوينو
- سيتحقق البرنامج مما إذا كان مستشعر الحركة PIR، قد اكتشف كائنًا في مجال رؤيته.
- عند اكتشافه لشيء ما سيرسل اشارة للدايود المشع للضوء ليومض 5 ومضات سريعة متتالية.
باستخدام لبنات تينكر كاد
باستخدام لغة برمجة C++
مثال محرك التيار المستمر (DC Motor Example)
ستُنشئ دائرة بسيطة للتحكم في محرك DC وفق درجة الحرارة المحيطة به.
المكونات المطلوبة للمشروع:
- لوحة أردوينو أونو Arduino Uno R3.
- محرك تيار مستمر DC Motor.
- مستشعر درجة الحرارة TMP36.
لإنشاء الدائرة:
1. قم بتوصيل طرف power(الطاقة) الخاص بمستشعر درجة الحرارة بطرف 5v (5 فولت) من لوحة الأردوينو وغير لون السلك إلى الأحمر Red.
2. قم بتوصيل طرف مخرج الجهد (Vout) الخاص بمستشعر درجة الحرارة بالطرف التناظري A0 للوحة الأردوينو وغير لون السلك إلى الأخضر Green.
3. قم يتوصيل طرف GND (الطرف الأرضي) الخاص بمستشعر درجة الحرارة بطرف GND (الطرف الأرضي) للوحة الأردوينو وغير لون السلك إلى الأسود Black.
4. قم بتوصيل الطرف 1 من محرك DC (التيار المستمر) بطرف GND (الأرضي) للوحة الأردوينو وغير لون السلم إلى الأسود Black .
5. قم بتوصيل الطرف 2 من محرك DC(التيار المستمر) بالطرف Digital (الرقمي) 11 في الأردوينو وغير لون السلك إلى الأحمر Red .
برمجة الأردوينو
- سيُنشئ البرنامج متغيرًا باسم temperature وسيتم توصيله بالطرف التناظري A0 في لوحة الأردوينو لتسجيل درجة حرارة البيئة المحيطة.
- عندما تصل درجة الحرارة TMP إلى القيمة 27 (درجة مئوية) في محاكي تينكر كاد يتم تنشيط محرك التيار المستمر لمدة ثانيتين.
باستخدام لبنات تنكر كاد
باستخدام لغة برمجة C++
بإمكانك مراجعة محتوى موضوع “الانتقال من اللبنات البرمجية في تينكركاد إلى لغة C++” بدايةً من عنوان “أمثلة على الانتقال من لبنات تينكركاد البرمجية إلى لغة C++” حتى نهاية الموضوع، من خلال الرابط التالي:
إلى هنا يكون قد انتهي موضوع “الانتقال من اللبنات البرمجية في تينكركاد إلى لغة C++”، لا تنسوا مراجعة نواتج التعلُّم أعلى المقال، وانتظرونا في الموضوع القادم!