ما نوع الروبوتات التي يمكن تجميعها من اردوينو. كيف تصنع روبوتًا على Arduino بيديك: روبوت Arduino محلي الصنع في المنزل

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

3 دطابعة

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

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

طابعة 3D؟ ربما يكون الجميع على دراية بطابعة مكتبية عادية يمكنها طباعة النص الذي نحتاجه على A4. لذا ، فإن الطابعة ثلاثية الأبعاد هي طابعة يمكنها طباعة الجزء المطلوب. هناك طابعات ثلاثية الأبعاد مختلفة. لدي طابعة بتقنية FDM (طبقة تلو طبقة). يمكن العثور على تقنيات الطباعة ثلاثية الأبعاد الأخرى المتوفرة على الإنترنت.

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

أولاً ، دعنا نحدد وصف النظام الأساسي. أريد أن تكون المنصة مزودة بعجلتين ويجب أن تتلاءم مع Arduino وقوة ومحركات وبعض المستشعرات.

أنت الآن بحاجة إلى رسم مخطط النظام الأساسي على الورق ووضع المكونات الضرورية عليه. على سبيل المثال ، مثل هذا.

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

هذه هي المنصة التي توصلت إليها.

بعد ذلك ، تحتاج إلى تحويل النموذج ثلاثي الأبعاد إلى رمز G يمكن فهمه بواسطة الطابعة ثلاثية الأبعاد. لهذا هناك برامج خاصة - تقطيع. أنا أستخدم برنامج Repetier-Host مع قطاعة Sli3er. إليك ما يبدو عليه الجزء جاهزًا للطباعة.

وهنا النموذج المطبوع.

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

المحركات

الآن نحن بحاجة إلى التفكير في كيفية تحرك روبوتنا المحمول. أول ما يتبادر إلى الذهن هو العجلات. لنفعلها اذا.

إذا كان أي شخص يتذكر ، فقد حاولنا بالفعل توصيل المحرك بـ Arduino. من لا يتذكر أو لا يعرف أو لم يقرأ - انظر. هناك عيوب كبيرة في توصيل المحرك باستخدام MOSFET - من المستحيل تغيير سرعة واتجاه الدوران بسرعة. حان الوقت لتعليم Arduino كيفية التحكم في المحركات بشكل حقيقي!

للقيام بذلك ، يمكنك استخدام شريحة L293D. يسمح لك L293D بالتحكم في محركين في وقت واحد ، مع تيار 600 مللي أمبير لكل قناة وذروة تيار يصل إلى 1000 مللي أمبير ، وإذا قمت بدمج القنوات ، فإن تيار ذروة يصل إلى 1200 مللي أمبير و 2000 مللي أمبير. سأتحدث عن الجمعية أدناه.

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

هيا بنا نبدأ. دعونا نجمع مخططًا بسيطًا بمحرك واحد ونوجهه. انتبه إلى مخطط التجميع.

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

  • الدبوس 1 - مسئول عن سرعة دوران المحرك. يوجد رقم مشابه على الطرف 9. يأخذ قيمًا من 0 إلى 255 ، والتي يمكن تنظيمها بسهولة باستخدام PWM. لقد قمت بتوصيل EN بالدبوس الخامس في Arduino ، والذي يدعم PWM.
  • الدبابيس 2 و 7 - مسئولة عن اتجاه حركة المحرك. توجد مثيلاتها على السنون 10 و 15. تطبيق وحدة منطقية على أحد هذه المسامير سيجعل المحرك يدور في اتجاه واحد (اعتمادًا على توصيل المحرك) ، وتطبيق وحدة منطقية على الأخرى سيجعل المحرك يدور في الاتجاه المعاكس.
  • الدبابيس 3 و 6 - تحتاج إلى توصيل المحرك بهما. القطبية ليست مهمة ، فقط اتجاه الدوران سيعتمد على الاتصال. مماثل - على الدبابيس 11 و 14.
  • الدبابيس 4 و 5 مطحون. لا أعتقد أنه يحتاج إلى تفسير. مماثل - 12 و 13.
  • دبوس 8 - قوة المحركات. يجب أن يتم تشغيله في النطاق من 4.5 إلى 36 فولت.
  • دبوس 16 - يتم توفير وحدة منطقية له من Arduino. 5 فولت إن وجدت.

بخير! المحرك متصل. الآن يمكنك البرمجة.

#define FRW_BUT 7 // Forward button #define BCW_BUT 6 // Back button #define SPD 5 // Rotation speed control ... #define FRW 4 //...rotation direction (forward) ... # تحديد BCW 3 / /... اتجاه الدوران (للخلف) #define SPD_POT A5 int xspeed = 0 ؛ // متغير لتحديد سرعة دوران المحرك int frw_move = 0 ؛ // متغير للأمر "forward" int bcw_move = 0 ؛ // متغير لإعداد فراغ الأمر "الخلفي" (/ / Design pin pinMode (SPD ، OUTPUT) ؛ pinMode (FRW ، OUTPUT) ؛ pinMode (BCW ، الإخراج) ؛ pinMode (SPD_POT ، INPUT) ؛ pinMode (FRW_BUT ، INPUT_PULLUP) ؛ pinMode (BCW_BUT ، INPUT_PULLUP) ؛) حلقة فارغة () (// اقرأ القراءات من مقياس الجهد // واجلبها إلى النطاق المطلوب - من 0 إلى 255 // بعد - مررها إلى دبوس التحكم في السرعة xspeed = analogRead (SPD_POT) ؛ تقييد (xspeed ، 0 ، 1023) ؛ xspeed = map (xspeed ، 0 ، 1023 ، 0 ، 255) ؛ // حدد زر الأمام واضغط إذا (! digitalRead (FRW_BUT)) (frw_move = 1 ؛ ) else (frw_move = 0 ؛) // حدد الضغط على زر "الرجوع" إذا (! digitalRead (BCW_BUT)) (bcw_move = 1 ؛) else (bcw_move = 0 ؛) // اتصل بالوظيفة لإرسال البيانات إلى L293D المحرك () ؛) محرك باطل () (// إرسال البيانات إلى L293D analogWrite (SPD ، xspeed) ؛ الكتابة الرقمية (FRW ، frw_move) ؛ الكتابة الرقمية (BCW ، bcw_move) ؛)

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

Z.Y. نعم ، أعلم أن جودة الفيديو ليست رائعة ، لكنني سأحاول العثور على كاميرا مناسبة وترتيب مكان للتصوير في أسرع وقت ممكن.

الآن حول اتصال قنوات L293. إذا كنت تريد توصيل محرك أكثر قوة ، فيمكنك الجمع بين القنوات.

الطريقة الأولى هي توصيل دبابيس مماثلة من الدائرة المصغرة بالتوازي ، مما يؤدي إلى مضاعفة الحد الأقصى للتيار. ناقص - يمكن توصيل محرك واحد فقط بدائرة كهربائية واحدة.

الطريقة الثانية هي لحام L293 آخر أعلى L293. نأخذ ونلحم دبوس 1 إلى دبوس 1 ، دبوس 2 إلى دبوس 2 وهكذا. تعطي هذه الطريقة أيضًا زيادة في القوة الحالية مرتين ، ولكنها ، على عكس الطريقة الأولى ، تترك القدرة على التحكم في محركين في وقت واحد. قد تكون لديك فكرة - هل يجب أن أقوم بلحام المزيد من L293s؟ لسوء الحظ ، لن يؤدي اللحام اللاحق للدوائر الدقيقة إلى زيادة القوة الحالية بمقدار 600 مللي أمبير أخرى. ستكون الزيادة صغيرة.

"آه ، سأضطر إلى تنظيف محرك 12 فولت ..." لا تنزعج. بالنسبة للمحركات الأكثر قوة ، فإن الأخ الأكبر L293 - L298 مناسب ، لكننا الآن لن نفكر فيه. سنفعل هذا بعد قليل.

محرك درع

توافق على أنه مع مثل هذه الحزمة من الأسلاك ، لا يبدو كل شيء جيدًا. للتخلص منه ، يمكنك لحام الدائرة بـ L293 على دائرة مطبوعة أو لوح لحام ، ولكن ماذا لو كنت لا تريد اللحام أو لا تعرف كيف؟ لهذا ، توجد حلول جاهزة على شكل دروع لـ Arduino ، على سبيل المثال. سأتحدث عن واحد منهم - Motor Shield V1 من DK Electronics.

هنا ، في الواقع ، صورة للدرع.

يحتوي هذا الدرع على وحدتي L293D ، مما يتيح لك التحكم في أربعة محركات في وقت واحد. هناك أيضًا نوعان من جهات الاتصال للمحركات المؤازرة. يتم توفير الطاقة إما إلى الكتلة الطرفية أو ، مع تركيب وصلة المرور ، من مصدر طاقة Arduino. يسمح لك العبور أيضًا بأخذ الطاقة لـ Arduino من الدرع. توجد مكتبة خاصة للعمل مع هذا الدرع. يمكنك تنزيله.

إلى عيوب اللوح. تُستخدم جميع المسامير الرقمية تقريبًا للعمل مع الدرع ، باستثناء 0 ، 1 ، 2 ، 13. كما نعلم ، يستخدم Arduino الدبابيس 0 و 1 للبرامج الثابتة ، لذلك من الأفضل عدم استخدامها.

هناك أيضا جانب جيد. إذا لم تقم بتوصيل الماكينات ، على سبيل المثال ، يتم تحرير المسامير 9 و 10 ، وإذا لم تستخدم أيًا من المحركات ، فسيتم تحرير المسامير 3 ، 5 ، 6 ، 11 ، اعتمادًا على المحرك غير المستخدم. و كذلك. لا يزال لدينا ستة مخرجات تناظرية متاحة ، والتي يمكن استخدامها كرقمية إذا رغبت في ذلك.

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

سنحتاج

  • Arduino UNO - يمكن استخدام أي عامل شكل Arduino UNO آخر. ليوناردو أو إيسكرا ، على سبيل المثال.
  • Motor Shield - ستعمل الإصدارات الأخرى من هذا الدرع.
  • محركات 6 فولت - يمكنك أن تأخذ أيًا مناسبًا لخصائص Motor Shield.
  • عجلات 42 مم - عجلات لتلائم المحركات والمنصة
  • حوامل المحرك - يجب توصيل المحركات بالمنصة. خذ الشخص الذي يناسبك.
  • الطاقة - أخذت حزمة بطارية وخرجت حوالي 5 فولت ، وهو ما لا يكفي لتشغيل المحركات و Arduino ، لذلك قمت بتوصيل محول DC / DC ورفع الجهد إلى 9V. إذا لم يكن هناك محول ، فيمكنك استخدام التاج المعتاد عن طريق توصيله بطاقة Arduino.

حان الوقت لتجميع الروبوت الخاص بنا.

الخطوة 1

نقوم بتوصيل Arduino و Motor Shield.

الخطوة 2

نقوم بتجميع المحركات وربطها بالمنصة.

الخطوه 3

نقوم بتجميع الطاقة من خلال محول دفعة.

بالنسبة لأولئك الذين لديهم كرونا. لا تنسى الطائر!

الخطوة 4

نقوم بربط المحركات بـ Motor Shield باستخدام Arduino.

الخطوة الخامسة

نضيف الطعام.

الخطوة 6 (اختياري)

نعلق الغطاء - لجماليات.

لدينا روبوت منتهي. حان الوقت الآن لبرمجتها. لنلق نظرة على الكود.

// تضمين المكتبة للعمل مع Motor Shield # تضمين // حدد المحرك الأيسر على الكتلة الطرفية رقم 2 AF_DCMotor l_motor (2) ؛ // حدد المحرك المناسب للكتلة الطرفية رقم 3 AF_DCMotor r_motor (3) ؛ // المتغيرات لتحديد السرعة // ووقت الحركة int spd = 50 ؛ إنتايم (1000) ؛ إعداد باطل () (// اضبط السرعة الأولية وأوقف تشغيل المحركات l_motor.setSpeed ​​(spd) ؛ l_motor.run (RELEASE) ؛ r_motor.setSpeed ​​(100) ؛ r_motor.run (RELEASE) ؛) الحلقة الفارغة () ( // Ride forward l_motor.run (FORWARD)؛ r_motor.run (FORWARD)؛ l_motor.setSpeed ​​(spd)؛ r_motor.setSpeed ​​(spd)؛ تشغيل (BACKWARD) ؛ l_motor.setSpeed ​​(spd) ؛ r_motor.setSpeed ​​(spd) ؛ تأخير (وقت) ؛ // تدور عكس اتجاه عقارب الساعة l_motor.run (إلى الأمام) ؛ r_motor.run (BACKWARD) ؛ l_motor.setSpeed ​​(spd) ؛ r_motor . setSpeed ​​(spd) ؛

بخير! حان الوقت للتحقق. هنا مقطع فيديو من الاختبار الخاص بي. وماذا عنك؟

"هل قلت شيئًا عن مجالس الروبوتات؟" - يمكن لمن قرأ الدرس التمهيدي للجزء 2 من الدورة أن يقول. نعم ، هناك مثل هذه الرسوم. ضع في اعتبارك منصة Strela الروبوتية.

الروبوتات حلم. (تقريبيا). وصفت مزايا اللوح. مباشرة إلى النقطة.

تم تثبيت الأخ الأكبر L293 - L298 عليه. ويتم عرض المسامير بثلاثة أضعاف ، وهو أمر مناسب تمامًا لتوصيل العديد من أجهزة الاستشعار.

يمكن توصيل هذه اللوحة بدلاً من Arduino UNO و Motor Shield. بالإضافة إلى ذلك ، كتب الرجال من Amperka مكتبة للعمل مع Arrow ، مما يجعل التحكم في المحركات مهمة تافهة إلى حد ما.

بالنسبة لأولئك الذين لا يعرفون ، دعني أخبرك. تحتوي كل مكتبة عادية على أمثلة على كيفية استخدامها ، ومكتبة Arrow ليست استثناءً. للعثور عليهم ، انتقل إلى ملف -> أمثلة -> علامة التبويب Strela. هناك نختار مثال StrelaMotors ، حيث يتم تنفيذ رسم مشابه للرسم باستخدام Motor Shield. بالمناسبة ، هناك أيضًا أمثلة لـ Motor Shield. إذا كنت مهتما ، الق نظرة.

ماذا يمكنك أن تفعل مع السهم - انظر أدناه ، وننتقل إلى الاتصال اللاسلكي عبر البلوتوث.

بلوتوث

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

كجهاز تحكم ، اخترت هاتفًا ذكيًا. سننظم الاتصال باستخدام بروتوكول البلوتوث ، لذا حان الوقت للتعرف.

هذه هي وحدة HC-06. لن أخوض في الكثير من التفاصيل ، ولكن إذا كنت مهتمًا ، فلننتقل إلى الأمام. هدفنا هو توجيه الروبوت من الهاتف الذكي. لنبدأ ، ربما.

تحتاج أولاً إلى توصيل HC-06 بـ Arduino. سنقوم بالاتصال باستخدام Software Serial. تتيح لك هذه المكتبة محاكاة المنفذ التسلسلي على المسامير التي نحتاجها. من أجل التجربة ، دعنا نحاول القيام بذلك على المسامير A0 (RX) و A1 (TX). لم؟ تذكر ما قلته عن Motor Shield.

نربط مثل هذا:

  • Vcc - إلى 5V
  • GND إلى GND
  • RX إلى TX
  • TX إلى RX

سأقوم بتوصيل HC-06 بالروبوت الذي قمنا ببنائه أعلاه. للقيام بذلك ، سوف نستخدم الخطوط الثلاثة على Motor Shield.

الروبوت جاهز. يبقى أن تتم برمجتها.

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

من أجل تجنب ذلك ، سنطبق عوامل التعديل. تدور عجلتي اليسرى أسرع بكثير من يميني ، لذلك وضعت عاملًا 0.62 للتعويض. يتم تحديد قيمة المعامل تجريبياً.

// تضمين مكتبات للعمل مع Motor Shield و Software Serial #include #تضمن // تحديد دبابيس لمحاكاة SoftwareSerial mySerial (A0 ، A1) ؛ // RX ، TX // حدد المحرك الأيسر للطرف رقم 2 AF_DCMotor l_motor (2) ؛ // حدد المحرك المناسب للكتلة الطرفية رقم 3 AF_DCMotor r_motor (3) ؛ // المتغيرات لتحديد السرعة // وضبط دوران تعويم spd = 70.0 ؛ تعويم corr_l = 0.62 ؛ تعويم corr_r = 1 ؛ floatrot = 50.0 ؛ إعداد باطل () (// ضبط السرعة الأولية وإيقاف تشغيل المحركات l_motor.setSpeed ​​(spd) ؛ l_motor.run (RELEASE) ؛ r_motor.setSpeed ​​(spd) ؛ r_motor.run (RELEASE) ؛ // إنشاء اتصال مع HC-06 mySerial .begin (9600) ؛) حلقة باطلة () (// إذا كانت هناك بيانات ، // اتصل بوظيفة التحكم إذا (mySerial.available ()) (drive () ؛)) void drive () (// Variable for البيانات الواردة char control = mySerial.read () ؛ // اضبط السرعة أولاً إذا (((control - "0")> = 0) && ((control - "0")<= 9)) { spd = (control - "0") * 25.0; //сохраняем новое значение скорости } else if (control == "q") { spd = 255.0; } //Сравниваем команды, пришедшие со смартфона else if (control == "S") //Если пришла команда "S", стоим { l_motor.run(RELEASE); r_motor. run(RELEASE); } else if (control == "F") //Если пришла команда "F", едем вперед { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r); r_motor.run(FORWARD); l_motor.run(FORWARD); } else if (control == "B") //Если пришла команда "B", едем назад { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r); r_motor.run(BACKWARD); l_motor.run(BACKWARD); } else if (control == "I") //Если пришла команда "I", едем вперёд и направо { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r + rot); r_motor.run(FORWARD); l_motor.run(FORWARD); } else if (control == "J")//Если пришла команда "J", едем назад и направо { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r + rot); r_motor.run(BACKWARD); l_motor.run(BACKWARD); } else if (control == "G") //Если пришла команда "G", едем вперёд и налево { l_motor.setSpeed(spd * corr_l + rot); r_motor.setSpeed(spd * corr_r); r_motor.run(FORWARD); l_motor.run(FORWARD); } else if (control == "H") //Если пришла команда "H", едем назад и налево { l_motor.setSpeed(spd * corr_l + rot); r_motor.setSpeed(spd * corr_r); r_motor.run(BACKWARD); l_motor.run(BACKWARD); } else if (control == "R") //Если пришла команда "R", крутимся вправо { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r); r_motor.run(FORWARD); l_motor.run(BACKWARD); } else if (control = "L") //Если пришла команда "L", крутимся влево { l_motor.setSpeed(spd * corr_l); r_motor.setSpeed(spd * corr_r); l_motor.run(FORWARD); r_motor.run(BACKWARD); } }

سئل الروبوت. الآن لنأخذ هاتفًا ذكيًا.

تحكم RC

هناك العديد من التطبيقات المختلفة لتوصيل Arduino والهاتف الذكي عبر البلوتوث. في البحث ، ستكون الكلمات الرئيسية: Arduino ، Bluetooth ، RC.

اخترت تطبيقًا يسمى Bluetooth RC Controller. إنه مثالي لغرضنا. عند الضغط على الزر ، يرسل التطبيق قيمة char إلى HC-06 ، والتي بدورها تمرر القيمة الواردة إلى Arduino. القيمة المرسلة عند النقر فوق الزر مضبوطة ذاتيًا.

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

بعد ضبط الأحرف ، يمكنك إنشاء اتصال بـ HC-06. انقر على الترس وانتقل إلى "الاتصال بالسيارة". تفتح نافذة بالأجهزة المقترنة. في ذلك نختار HC-06. إذا لم يكن موجودًا ، فنحن نبحث عنه باستخدام "البحث عن الأجهزة". إذا تم العثور على الجهاز ، ولكن لا تريد الاقتران ، فانتقل إلى Bluetooth على هاتفك الذكي وقم بالاقتران كالمعتاد. كلمة المرور الافتراضية هي 1234. بعد ذلك ، انتقل إلى "البحث عن الأجهزة" واتصل.

عند إنشاء الاتصال ، سيتم تشغيل الضوء الأخضر الموجود في الأعلى ، وسيتوقف HC-06 عن الوميض. يمكنك البدء في القيادة. الشريط الموجود في الأعلى مسؤول عن سرعة الحركة.

دعنا نعود إلى السهم. ميزة أخرى لـ Arrow هي القدرة على تثبيت تنسيق Bluetooth XBee ، والشيء الجيد هو أن الدبابيس الأخرى تظل مجانية. ونظرًا لوجود مكتبة جاهزة لـ Arrow تساعد في تقليل رمز التحكم في المحركات ، فمن المفيد جدًا استخدام Arrow للتحكم في الروبوت عبر Bluetooth.

للقيام بذلك ، تحتاج إلى توصيل XBee بـ Strela ، وميضه بالرسم من الأمثلة المسماة "ArduinoBluetoothRCCarOnStrela" والاتصال بـ XBee عبر وحدة التحكم RC.

نصيحة

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

تدور العجلات في الاتجاه الخاطئ- يتم التخلص من هذه المشكلة بسهولة عن طريق إعادة ترتيب الأسلاك في الكتل الطرفية أو برمجيًا.

وحدة بلوتوث لا تعمل- تحتاج إلى التحقق من وجود مصباح LED أحمر مشتعل على الوحدة. إذا لم يكن مضاءًا ، فتأكد من توصيل وحدة Bluetooth بشكل صحيح. إذا كان مؤشر LED قيد التشغيل ، ولكن تم إنشاء الاتصال ، فأنت بحاجة إلى التأكد من أن RX الخاص بالوحدة متصل بـ TX للوحة والعكس صحيح ، وجرب أيضًا طريقة إقران الوحدة مع Arduino عبر المعيار واجهة بلوتوث.

الروبوت لا يقود بشكل مستقيم- لقد وصفت هذه المشكلة أعلى قليلاً عندما تحدثت عن Bluetooth و Motor Shield.

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

إذا تم توصيل مصدر طاقة لا يوفر تيارًا كافيًا للمحركات ، فيمكن أن ينخفض ​​الجهد كثيرًا ، من 9 إلى 5 فولت ، على سبيل المثال ، ولن يكون 5 فولت كافيًا لـ Arduino وسيُعاد تشغيله. الحل هو توصيل مصدر طاقة أكثر قوة. كيف أحسب ، سأقول أدناه.

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

عندما يكون مصدر الطاقة قويًا بدرجة كافية ، فإن انخفاض الجهد لا يزيد عن 0.2 فولت.

بعض النصائح للمبتدئين في الروبوتات

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

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

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

إذا كان هناك هدف لإنشاء "كلمة مرور" من ثلاثة أحرف ، فلا يجب عليك برمجة الثلاثة معًا مرة واحدة. من الأفضل إنشاء كلمة مرور من حرف واحد ، والتحقق منها ، ثم من حرفين ، وبعد التحقق - من ثلاثة. يساعدني.

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

خاتمة

الروبوتات رائعة! أعتقد أن الروبوتات ستأخذ قريبًا ، بل وقد حدثت بالفعل في حياة الناس. لقد صنعنا أبسط سيارة روبوت يتم التحكم فيها من هاتف ذكي ، وسنتعامل لاحقًا مع مشاريع أكثر جدية ، لكن في الوقت الحالي - أراك قريبًا!

الجزء الأخير من المقال يدور حول روبوت صغير نقوم بتجميعه على هيكل - غطاء من حاوية طعام بلاستيكية. عقل الروبوت الخاص بنا هو لوحة Arduino UNO ، وتتحكم لوحة Driver Motor Shield في المحركات والمؤازرة ، ومستشعر العوائق - السونار بالموجات فوق الصوتية - عيون مثل Wally (من الرسوم المتحركة) - "HC-SR04 Ultrasonic Sensor". و. كيف تصنع روبوت على اردوينو؟

9. توصيل البطارية والمحركات

عند توصيل البطارية ، يجب أن تكون متأكدًا تمامًا من صحة القطبية ، حيث يقولون قياس 7 مرات ، قم بتوصيلها مرة واحدة. حاول اتباع هذه القاعدة - السلك الأحمر دائمًا هو + الطاقة ، السلك الأسود أرضي ، ناقص ، إنه GND. يحاول المصنعون اتباع نفس القواعد. لذلك ، نقوم بتوصيل الأسلاك القادمة من حجرة البطارية بمجموعة + M و GND على لوحة التحكم في المحرك. نقوم بتوصيل الأسلاك من محركات القيادة إلى الكتل M1 و M2 من لوحة التحكم في المحرك. الجانب الأيسر ، في اتجاه السفر ، متصل بالكتلة M1 ، الجانب الأيمن للكتلة M2. لا داعي للقلق بشأن قطبية المحركات حتى الآن ، يمكن تغييرها إذا حدث خطأ ما أثناء الاختبار.

10. تحقق من القطبية والتوصيل الصحيح للوحدات

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

11. خطوة برمجة اردوينو

يتم تحميل البرنامج إلى متحكم Arduino من جهاز كمبيوتر ، باستخدام كابل USB وبرنامج خاص - بيئة البرمجة والتحرير للرسومات (البرامج) - Arduino IDE. يمكنك الحصول على البرنامج من موقع arduino.cc ، قسم التنزيل ، حيث يمكنك دائمًا تنزيل أحدث إصدار من البرنامج. بعد تثبيت بيئة البرمجة ، يبقى الاختيار فقط من قائمة برنامج التشغيل للوحة التي تريد استخدامها - في حالتنا ، Arduino UNO ومنفذ COM الذي يتم من خلاله توصيل Arduino عبر مضاهاة USB. هناك الكثير من جميع أنواع الكتيبات حول هذا الموضوع ، لذلك نتخطى هذه المرحلة (فقط في حالة - أدوات القائمة> المنفذ التسلسلي).

برنامج الروبوت الصغير متاح من موقعنا على الإنترنت ، على الرغم من أنه فقط بعد التسجيل ، نكتة Mini Robot على Arduino. لكي يعمل البرنامج ، هناك حاجة إلى مكتبات إضافية - AFMotor.h ، Sevo.h ، NewPing.h ، كلها موجودة في الأرشيف ، تحتاج إلى فك ضغط الأرشيف في مجلد برنامج Arduino IDE المثبت. بالنسبة لي ، هذا هو دليل Arduino c: Program Files (x86) ، يجب وضع المكتبات في مجلد مكتبات Arduino c: Program Files (x86). ثم انتقل إلى دليل C: Program Files (x86) ArduinolibrariesAPC_4_ROBOT وانقر نقرًا مزدوجًا على APC_4_ROBOT.ino هذا هو الرسم نفسه ، ثم ستبدأ بيئة البرمجة. نقوم بتوصيل لوحة Arduino Uno العارية (أي بدون وحدات متصلة) عبر كبل USB بالكمبيوتر ، واضغط على الزر مع السهم إلى اليمين ، وسيبدأ البرنامج في التحميل إلى وحدة التحكم. تستغرق العملية برمتها بضع ثوانٍ ، وإذا تم توصيل كل شيء بشكل صحيح ، فلن تضيء أي نقوش حمراء ، وسيكمل المؤشر الموجود في الركن الأيمن السفلي حركته بنسبة 100٪. تم تثبيت برنامج Arduino في وحدة التحكم Atmega328.

12. بدء تشغيل الروبوت

روبوت صغير على Arduino - جاهز للتحرك. الروبوت والي

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

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

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

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

إذن مقدمة للمشكلة:

لنبدأ بالمفهوم: نريد روبوتًا يمكنه التحرك في جميع أنحاء الغرفة بمفرده ، مع تجنب جميع العقبات التي يواجهها. تم تعيين المهمة.

الآن دعنا نتعرف على ما نحتاجه:

  1. النظام الأساسي (حالة). هناك خيارات هنا: افعل كل شيء بنفسك ، وشراء الأجزاء وتجميعها ، أو شراء الملابس الجاهزة. اختر ما تريد

تأتي المجموعة عادةً مع منصة ومحرك واحد لعجلتي قيادة (كاتربيلر) وحجرة بطارية. هناك خيارات للدفع الرباعي - على محرك رباعي. للمبتدئين ، نوصي بأخذ منصات من نوع الخزان

عجلتان دافعتان وثالث دعامة.

  1. بعد ذلك ، نحتاج إلى أداة تحديد المدى. Sonar (المعروف أيضًا باسم rangefinder ، المعروف أيضًا باسم وحدة الموجات فوق الصوتية) باعتباره أداة تحديد المدى ، كان الاختيار في البداية بين الموجات فوق الصوتية والأشعة تحت الحمراء. نظرًا لأن خصائص الموجات فوق الصوتية أفضل بكثير (النطاق الأقصى حوالي 4-5 أمتار ، مقابل 30-60 سم) ، والسعر متماثل تقريبًا ، وقع الاختيار على الموجات فوق الصوتية. النموذج الأكثر شيوعًا هو HC-SR04.

  1. سائق المحرك.

كيف تكون؟ أول ما يتبادر إلى الذهن هو وضع ترانزستور على خرج الميكروكونترولر وتغذية المحركات منه. هذا جيد بالتأكيد ، لكنه لن ينجح إذا أردنا تشغيل المحرك في الاتجاه الآخر ... لكن H ستؤدي المهمة بشكل جيد - جسر ، وهو عبارة عن دائرة أكثر تعقيدًا من زوج من الترانزستورات. لكن في هذه الحالة ، يوجد الكثير منها على شكل دوائر متكاملة جاهزة ، لذلك أعتقد أنه ليست هناك حاجة لإعادة اختراع العجلة - سنشتري واحدة جاهزة. بالإضافة إلى ذلك ، السعر مناسب - 2-3 دولارات ... دعنا ننتقل. لهذه الأغراض ، سنشتري شريحة L293D ، أو حتى أفضل ، Motor Shield على أساسها.

درع المحرك على شريحة L298N

  1. توليد الصوت - بيزو الجرس

أبسط خيار لتوليد الصوت هو استخدام باعث بيزو.

بواعث سيراميك بيزوسيراميك (بواعث كهرضغطية) هي أجهزة استنساخ صوت كهروضوئي تستخدم التأثير الكهروضغطي. (تأثير حدوث الاستقطاب العازل تحت تأثير الضغوط الميكانيكية (التأثير الكهربائي الانضغاطي المباشر) هناك أيضًا تأثير كهربائي انضغاطي معكوس - حدوث تشوهات ميكانيكية تحت تأثير مجال كهربائي.

تأثير بيزو مباشر: في ولاعات بيزو ، للحصول على جهد عالي على فجوة الشرارة ؛

تأثير كهرضغطية معكوس: في بواعث كهرضغطية (فعالة في الترددات العالية وذات أبعاد صغيرة) ؛)

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

هذا كل ما نحتاجه لأول مرة. بادئ ذي بدء ، سننظر ، في شكل دروس منفصلة ، في كيفية تجميع هذه الأجزاء وجعلها تعمل بشكل منفصل.

الدرس 2

الدرس 3. Arduino و Motor Shield استنادًا إلى L298N

الدرس 4

الدرس الخامس

مرحبًا. هذه المقالة هي قصة قصيرة حول كيفية القيام بذلك فعلإنسان آلي هُم اليدين. لماذا قصة تسأل؟ كل ذلك يرجع إلى حقيقة أن لتصنيع مثل هذه الحرفمن الضروري استخدام قدر كبير من المعرفة ، والذي يصعب جدًا تقديمه في مقال واحد. سننتقل خلال عملية الإنشاء ، ونلقي نظرة خاطفة على الكود ، وفي النهاية نعيد إنشاء Silicon Valley إلى الحياة. أنصحك بمشاهدة الفيديو لتكوين فكرة عما يجب أن يحدث في النهاية.

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

الخطوة 1: كيف يعمل؟

يحتوي الروبوت على 4 أرجل ، مع 3 أجهزة في كل منها ، مما يسمح له بتحريك أطرافه بثلاث درجات من الحرية. يتحرك مع "مشية زاحفة". فليكن بطيئًا ، لكنه من أنعم.

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

الخطوة 2: الأجزاء المطلوبة

هيكل عظميمصنوعة من زجاج شبكي 2 مم.

يتكون الجزء الإلكتروني من المنتج محلي الصنع من:

  • 12 الماكينة
  • اردوينو نانو (يمكن استبداله بأي لوحة اردوينو أخرى) ؛

  • درع للتحكم المؤازر ؛
  • مزود الطاقة (في المشروع ، تم استخدام وحدة إمداد طاقة 5 فولت 4 أمبير) ؛

  • أجهزة الاستشعار بالموجات فوق الصوتية؛
  • hc 05 وحدة بلوتوث ؛

من أجل صنع درع سوف تحتاج:

  • لوحة الدوائر (يفضل أن تكون مع الخطوط المشتركة (الحافلات) للطاقة والأرض) ؛
  • موصلات دبوس داخلية - 30 قطعة ؛
  • مآخذ لكل لوحة - 36 قطعة ؛

  • الأسلاك.

الادوات:

  • قاطع ليزر (أو أيدي ماهرة) ؛
  • صمغ ممتاز؛
  • الغراء الساخن.

الخطوة 3: الهيكل العظمي

دعنا نستخدم برنامج رسومات لرسم الأجزاء المكونة للهيكل العظمي.

بعد ذلك ، بأي طريقة متاحة ، قمنا بقص 30 جزءًا من الروبوت المستقبلي.

الخطوة 4: التجميع

بعد القطع ، قم بإزالة طلاء الورق الواقي من زجاج شبكي.

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

ثم تحتاج إلى تعديل الماكينات (قم بلصق برغي مقابل أعمدة المؤازرة).

مع هذا التحسين ، سنجعل الروبوت أكثر استقرارًا. يجب إجراء التحسين لـ 8 أجهزة مؤازرة فقط ، وسيتم توصيل الـ 4 المتبقية مباشرةً بالجسم.

نربط الأرجل بالعنصر المتصل (الجزء المنحني) ، وهذا بدوره ، بالمؤازرة الموجودة على الجسم.

الخطوة 5: صنع الدرع

يعد إنشاء السبورة أمرًا بسيطًا للغاية إذا اتبعت الصور المعروضة في الخطوة.

الخطوة السادسة: الإلكترونيات

إصلاح دبابيس المؤازرة على لوحة اردوينو. يجب توصيل المسامير بالتسلسل الصحيح ، وإلا فلن يعمل شيء!

الخطوة السابعة: البرمجة

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

هام: تحتاج إلى إضافة مكتبة إضافية إلى اردوينو IDE. رابط المكتبة مذكور أدناه:

يجب أن يأخذ الروبوت 5 خطوات للأمام ، 5 خطوات للخلف ، يستدير لليسار 90 درجة ، يستدير لليمين 90 درجة. إذا كان فرانكشتاين يفعل كل شيء بشكل صحيح ، فإننا نسير في الاتجاه الصحيح.

ص. س: قم بتثبيت الروبوت على الكوب كحامل ، بحيث لا يضبطه في كل مرة على النقطة الأصلية. بمجرد أن تُظهر الاختبارات التشغيل الطبيعي للروبوت ، يمكننا مواصلة الاختبار بوضعه على الأرض / الأرضية.

الخطوة 8: الحركة المعكوسة

علم الحركة المعكوس هو ما يتحكم بالفعل في الروبوت (إذا لم تكن مهتمًا بالجانب الرياضي لهذا المشروع وكنت في عجلة من أمرك لإنهاء المشروع ، فيمكنك تخطي هذه الخطوة ، ولكن معرفة ما الذي يدفع الروبوت سيكون مفيدًا دائمًا).

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

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

سأبدأ بسرد الأجزاء التي ستكون مطلوبة عند البناء - Arduino UNO ؛

أجهزة تحديد المدى بالأشعة تحت الحمراء

- محركات 3 فولت مع علب تروس وعجلات ؛

- موصلات لبطاريات 3A ؛

- البطارية (في حالة عدم وجود بطاريات كافية) ؛

- تتابع للتحكم في المحركات ؛

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


ثم أقوم بربط المحركات بلوح من الخشب ، وشد هذا الشريط

علاوة على ذلك ، قمت بوضع اردوينو ، ومرحل ، ولوحة ذهنية ، ومحددات المدى ، وتحت قاعدة الهيكل.

الآن نقوم بتوصيل كل شيء وفقًا للمخطط

في النهاية ، نقوم بتحميل الرسم التخطيطي التالي في اردوينو:

Const int R = 13 ؛ // المسامير التي تتصل بها أجهزة تحديد المدى للأشعة تحت الحمراء const int L = 12 ؛ int motor L = 9 ؛ // دبابيس التي يتصل بها المرحل int motorR = 11 ؛ int buttonState = 0 ؛ إعداد باطل () (pinMode (R ، INPUT) ؛ pinMode (L ، INPUT) ؛ pinMode (motorR ، OUTPUT) ؛ pinMode (motorL ، OUTPUT) ؛) الحلقة الفارغة () ((buttonState = digitalRead (L) ؛ إذا (buttonState == HIGH) (digitalWrite (motorR ، HIGH) ؛) else (digitalWrite (motorR ، LOW) ؛)) ((buttonState = digitalRead (R) ؛ إذا (buttonState == HIGH) (digitalWrite (motorL ، HIGH) ؛) آخر (كتابة رقمية (motorL ، منخفضة) ؛))))

مبدأ العملية بسيط للغاية. محدد المدى الأيسر مسئول عن العجلة اليمنى ، والعجلة اليمنى مسئولة عن العجلة اليسرى

لتوضيح الأمر ، يمكنك مشاهدة مقطع فيديو يوضح عملية الإنشاء وعمل الروبوت

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

أتمنى أن تكون قد استمتعت بهذه الحرفة ، تذكر أن الحرف اليدوية رائعة!