الروبوت متتبع الضوء

متقدم

image_pdf

برمجة الروبوت

 

سنقوم في البداية بإنشاء متغيرين Light 1  وتعيينه لقراءة المستشعر الأيسر (كما هو مكتوب على اللوحة الرئيسية)
ومتغير Light2 وتعيينه لقراءة المستشعر الأيمن  في اللوحة

 

light-follower-robot

 

داخل حلقة Forever
سنستخدم ثلاث جمل شرطية if لتمثل لنا ثلاث حالات مختلفة
الأولى إذا تعرض المستشعرين لنفس شدة الضوء والحالتين الأخرى إذا كانت شدة الضوء على أحدهما أكبر من الآخر

الشرط الذي يمثل حالة أن تكون قراءة المستشعر الأول = الثاني

light-follower-robot

لكن بما أننا وجدنا اختلافا في قراءة المستشعرين تصل إلى 5 أرقام عن اختبارهما في الخطوة السابقة سنعيد كتابة الشرط كالتالي

 light-follower-robot

وهذا يعني أنه إذا كان الفرق بين قيمة المستشعر الأول والثاني أقل من 6 فسيتم اعتبار أنهما متساويان ويتحرك الروبوت للأمام
أضفنا abs القيمة المطلقة لتعطي ناتج الطرح قيمة موجبة دائمًا سواء كانت قيمة Light1 أكبر من Light2 أو العكس.

light-follower-robot

 

إذا لم يتحقق الشرط الأول أي إذا كان الفرق بين القراءتين 6 أو أكبر يتم تنفيذ الأوامر بعد else
حيث سنضيف الشروط المتعلقة بالحالتين الأخرى

الحالة الثانية
إذا كانت قراءة المستشعر الأيسر Light1 أكبر من قراءة المستشعر الأيمن Light2
ينعطف الروبوت باتجاه اليسار أي باتجاه شدة الإضاءة الأعلى

light-follower-robot

الحالة الثالثة
إذا كانت قراءة المستشعر الأيسر Light2 أقل من قيمة المستشعر الأيمن Light1
ينعطف الروبوت لليمين أي باتجاه شدة الإضاءة الأعلى.

الكود البرمجي

 

light-follower-robot

لمزيد من المعلومات حول الأوامر البرمجية الأخرى قم بالرجوع لدرس جولة حولة الأوامر البرمجية

 

X
تم إضافة المنتج إلى السلة بنجاح