top of page

روبوت التنظيف

غرض المشروع: إنشاء روبوت تنظيف مع pinoobot وجهاز استشعار المسافة باستخدام بطاقة التحكم Pinoo.

مدة:  2 دروس

الفئة العمرية:  7 سنوات فما فوق

مجموعة Pinoo:  مجموعة PinooBot ومجموعة كاملة.

الانجازات:

  • تعلم كيفية ترميز لوحة التحكم Pinoo

  • يتعلم ترميز مستشعر المسافة.

  • بينوبوت يلتقي الروبوت.

  • يطور المهارات الحسابية.

  • تطوير مهارات البرمجة.

 

المواد التي سيتم استخدامها:  برنامج Mblock 3 ، بطاقة التحكم PinooBot Robot / Pinoo ، مستشعر المسافة ، كابل التوصيل.  

المواد المطلوبة للتصميم:  اسفنجة أطباق ، شنيل ، كيس قمامة ، مغناطيس ، مسدس سيليكون ، مقص.

 

   

بناء المشروع:

            

  

   

نقطع قطعة مستطيلة متوسطة الحجم من الإسفنج ونعلقها في مقدمة البينوبوت بشنيل.

 

 

 

 

 

 

 

 

 

 

 

نلتصق بثلاثة مغناطيسات أسفل الإسفنج.  

 

يمكنك تزيين الروبوت بالشكل الذي تريده حسب دوره.    

             

نقطع أكياس القمامة إلى قطع صغيرة مستطيلة الشكل ونعلقها بوضع مغناطيس بالداخل. صنعنا أربعة ، يمكنك زيادة العدد إذا كنت ترغب في ذلك.

نبعثر القمامة التي أنشأناها في المنطقة التي سنشغل فيها الروبوت.

 

 

دعونا نجعل اتصالاتنا. توصيل مستشعر المسافة بالمدخل الأرجواني / الأخضر رقم 6  (مع عدم إجراء توصيلات المحرك ، دعنا نجعل اتصالنا بالمدخلات ذات اللون الأبيض الخاصة بتوصيلات المحرك على بطاقة التحكم Pinoo.)

  

 

لقد أكملنا اتصالاتنا ، فلننتقل الآن إلى جزء الترميز. سنستخدم تطبيق mblock-3 لهذا الغرض.  لنقم بتوصيل بطاقة التحكم Pinoo الخاصة بنا بالكمبيوتر بمساعدة كابل التوصيل وتسجيل الدخول إلى تطبيق Mblock3. ثم دعنا نقدم بطاقة Pinoo Control Card الخاصة بنا إلى الكمبيوتر. للقيام بذلك ، نضغط أولاً على خيار المنفذ التسلسلي من علامة التبويب الاتصال. ثم نختار COM6. (قد يختلف الرقم حسب الكمبيوتر والمنفذ.)  

بعد إجراء اتصال المنفذ التسلسلي ، دعنا نختار البطاقة التي سنستخدمها من علامة تبويب البطاقات. نحن نعمل مع طراز Nano من Arduino.

 

من أجل إضافة امتداد Pinoo إلى جهاز الكمبيوتر الخاص بنا ، نضغط على خيار إدارة الامتدادات من علامة تبويب الامتدادات. في النافذة التي تفتح ، نكتب "Pinoo" في محرك البحث ويكفي أن نقول تنزيل للنتيجة. مثبتة على جهاز الكمبيوتر الخاص بنا.

 

نصل إلى علامة تبويب الامتدادات مرة أخرى ونضغط على Pinoo. سنكتب أكوادنا بامتداد Pinoo.  

 

في جزء الترميز ؛ نحصل على الكود عندما نضغط على Green Flag من قائمة Events لبدء التطبيق.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

سوف نحصل على مساعدة من الدمية لمعرفة القيمة التي يقرأها مستشعر المسافة. لهذا ، نحصل على الأمر لقول مرحبًا من علامة تبويب العرض. بدلاً من الترحيب ، نحصل على كتلة التعليمات البرمجية المتعلقة بمستشعر المسافة في علامة تبويب الروبوتات. نقوم بتغيير إدخال الدبوس إلى Pinoo6 ، والذي نتصل به.

نظرًا لأننا نريد أن تتم عملية القراءة بشكل مستمر ، وليس مرة واحدة ، فإننا نأخذ جميع أكوادنا في كتلة التكرار من علامة تبويب التحكم.  

دعنا نضغط على العلم الأخضر ونلاحظ تغير القيم عن طريق تحريك يدنا بالقرب من المستشعر. دعونا نلاحظ القيمة التي قرأها المستشعر عندما نقترب يدنا من الروبوت. هنا سوف نأخذ كمرجع أنه يقرأ قيمة حوالي 10.

 

إذا كانت القيمة التي يقرأها مستشعر المسافة أقل من 10 ، أي إذا اقترب الروبوت من عقبة ، فيجب أن يستدير لليمين لمدة ثانيتين ، ثم يتحرك للأمام.  إذا لم يكن هناك عائق أمام الروبوت ، أي أن القيمة التي يقرأها المستشعر أكبر من 10 ، دع الروبوت يقوم بحركات للأمام والخلف واليمين واليسار. الآن دعنا نحول هذا إلى رمز.

هنا سنستخدم كتلة if في علامة تبويب التحكم وعوامل المقارنة الصغيرة والكبيرة في علامة تبويب العمليات.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

دعنا نكمل الأكواد التي سيتصرف بها PinooBot وفقًا للشرط الواجب الوفاء به.

بالنسبة إلى قراءة المستشعر الأكبر من 10 ، نحصل على PinooBot Direction: Forward Speed: 0 رمز من علامة تبويب الروبوتات. نقوم بتحديث الاتجاهات إلى الأمام ، اليمين ، الخلف ، اليسار ، على التوالي ، والسرعة 255 في كل منهم.

نظرًا لأننا نريد فحص هذه العملية بشكل مستمر ، فإننا نضع جميع الكتل في كتلة التكرار.

نريده أن يقوم بكل حركة لفترة معينة من الوقت. لهذا ، نأخذ كتلة رمز الانتظار لمدة ثانية واحدة من علامة تبويب التحكم أسفل كل حركة ونقوم بتحديث الرقم من 1 إلى 2.

 

 

 

 

 

 

 

 

 

 

 

 

 

بالنسبة للمستشعر الذي يقرأ أقل من 10 ، نحصل على PinooBot Direction: Forward Speed: 0 رمز من علامة تبويب الروبوتات. نقوم بتحديث اتجاههم كظهير أيمن والسرعة 255 في كل منهم. من أجل القيام بالدوران الصحيح لمدة ثانيتين ، نأخذ أمر الانتظار لمدة ثانية واحدة من علامة تبويب التحكم ونقوم بتحديث الرقم من 1 إلى 2.  

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

إذا لم تكن هناك مشكلة في تشغيل مشروعنا ، فنحن بحاجة إلى تحميل الرموز التي كتبناها في بطاقتنا من أجل تشغيل مشروعنا باستخدام مصدر طاقة مستقل عن الكمبيوتر.

لهذا ، استخدمنا الكود للنقر على العلم الأخضر في البداية والرمز حيث كان لدينا الدمية يخبر قيمة المستشعر.  برميها في سلة المهملات ، نحصل على كود برنامج Pinoo من قائمة الروبوتات.

 

انقر بزر الماوس الأيمن على الكود وانقر فوق تحميل إلى اردوينو (نحن نعمل مع اردوينو كلوحة.)

 

نحن في انتظار تحميل الرموز على البطاقة. بعد اكتمال التثبيت ، نغلق النافذة.

 

 

إذا لم تكن هناك مشكلة ، فسنقوم بفصل كابل الطاقة الخاص بنا من الكمبيوتر. نقوم بتشغيل لوحة التحكم Pinoo الخاصة بنا بمساعدة بطارية 9 فولت وغطاء البطارية. نقوم أيضًا بإحضار زر التشغيل-الإيقاف ، الموجود بجوار إدخال البطارية مباشرةً ، إلى وضع التشغيل.

 

رموز اردوينو IDE:

// تعيين دبابيس المحرك

int motora1 = 5 ؛

int motora2 = 6 ؛

int motorb1 = 10 ؛

int motorb2 = 11 ؛

// قم بتعيين دبابيس مستشعر المسافة

int echoPin = 12 ؛

int trigPin = 13 ؛ مسافة طويلة ، أكيد

// نحن نخصص متغيرين لقياس المسافة

الإعداد باطل()

{

  // دبابيس المحرك هي دبابيس الإخراج 

pinMode (إلى المحرك 1 ، الإخراج) ؛ 

pinMode (المحرك 2 ، الإخراج) ؛ 

pinMode (motorb1 ، الإخراج) ؛ 

pinMode (motorb2 ، الإخراج) ؛ 

pinMode (echoPin ، INPUT) ؛

// صدى هو دبوس الإدخال 

pinMode (trigPin ، الإخراج) ؛

// حساب المثلثات هو دبوس الإخراج

}

حلقة فارغة()

{

  // تنشيط مستشعر المسافة 

digitalWrite (trigPin ، منخفضة) ؛ 

تأخير ميكروثانية (5) ؛ 

digitalWrite (trigPin ، عالية) ؛ 

تأخير ميكروثانية (10) ؛ 

digitalWrite (trigPin ، منخفضة) ؛ 

أكيد = pulseIn (echoPin، HIGH) ؛

  المسافة = الوقت / 29.1 / 2 ؛

// قياس المسافة

  إذا (المسافة> 10)

{

// إذا كانت المسافة أكبر من 10  

إضافي()؛ // يمضي قدما  

تأخير (2000) ؛  

الصحيح()؛ // طلع صحيح  

تأخير (2000) ؛  

اليسار()؛ // تحرك الى اليسار  

تأخير (2000) ؛  

عودة()؛ // يعود للوراء  

تأخير (2000) ؛ 

}

وإلا إذا (المسافة <10)

{

// إذا كانت المسافة أقل من 10  

الصحيح()؛ // طلع صحيح  

تأخير (2000) ؛   إضافي()؛ // يمضي قدما 

}

}

إلى الأمام باطل ()

{

}

عودة باطلة ()

{

}

ترهل باطل ()

{

}

اليسار باطل ()

{

}

1.png
1111_large.jfif
10.jpeg
11.jpeg
12.jpeg
13.jpeg
2222_large.jfif
16.jpeg
17.jpeg
seri_port_480x480.jpg
KART_480x480.jpg
pinoo_uzanti_480x480.jpg
pinooo_480x480 (2).jpg
23.PNG
24.JPG
25.JPG
26.JPG
27.JPG
28.JPG
30.JPG
29.JPG
31.JPG
32.JPG
33.jpeg
bottom of page