مقدمة:
في هذا المشروع سنقوم بإنشاء روبوت يلقي التحية عند الاقتراب منه مسافة معينة.
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/waving-robot-logo-885x1024.gif)
الأدوات المستخدمة:
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/mbot-1.png)
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/mbot-servo-pack-1.png)
نبدأ بتركيب الروبوت. ومن ثم نقوم بتشكيل الروبوت بإضافة Servo Motor & Ultrasonic Sensor كالتالي :
طريقة التركيب :
أولا : قم بإعادة تركيب mBot .
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/1-1.png)
ثم نقوم بتثبيت مستشعر الموجات فوق الصوتية
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/10.png)
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/12.png)
وبعد ذلك، قم بتثبيت محرك الـ Servo :
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/11.png)
ثم نقوم بتثبيت قطعة الـ cuttable linkage :
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/14.png)
وأخيرا، قم بتجميع القطع :
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/08/18.png)
التوصيل بلوحة التحكم :
ثم نقوم بتوصيل Servo Motor بمدخل رقم 1 و نوصل Ultrasonic Sensor بمدخل رقم 2
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/waving-robot-circuit.jpg)
برمجة المشروع:
أولا: نبدأ بتهيئة محرك الـسيرفو، و الـ LED عن طريق وضع القيم الإبتدائية كالتالي:
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W00.png)
بعدها نقوم بإدراج دالة التكرار
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W03.png)
داخل دالة التكرار، نقوم بإضافة الدالة الشرطية if. تفيدنا هذه الدالة لجعل الروبوت يلقي التحية عند الإقتراب منه مسافة 30 سم أو أقل.
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W006.jpg)
سوف نقوم بإستخدام الحالات الآتية في الدوال الشرطية :
الحالة الأولى إذاكانت المسافة أكبرمن30 سم.
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W001.jpg)
الحالة الثانية إذاكانت المسافة تساوي30 سم.
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W002.jpg)
الحالة الثالثة إذاكانت المسافة أصغر من30 سم.
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W003.jpg)
في الحالة الأولى، فإن الروبوت لن يكون بإلقاء التحية ويعود إلى حالته الإبتدائية وسيتم إضائة الـ LED باللون الأحمر كما هو موضح :
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W05.png)
ثم نقوم بإستخدام الحالة الثانية والثالثة، لجعل الروبوت يلقي التحية ويضيء باللون الأزرق والوردي كالتالي :
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W04.png)
الشكل النهائي للأوامر البرمجية:
![waving-robot](https://geeksvalley.com/wp-content/uploads/2017/07/W06-452x1024.png)
لمعرفة أساسيات البرمجة المستخدمة الرجاء مراجعة درس جولة حول الأوامر البرمجية.