هناك أنواع عديدة من الروبوتات ، من تلك البسيطة مثل لعبة السيارات إلى الروبوتات المتقدمة مثل الروبوتات الصناعية. لقد قمنا بالفعل بتغطية العديد من أنواع الروبوتات باستخدام تقنيات مختلفة ، ألق نظرة عليها:
- روبوت تابع الخط باستخدام متحكم 8051
- روبوت تابع الخط باستخدام Arduino
- DTMF روبوت متحكم فيه باستخدام Arduino
- الهاتف الخليوي الروبوت التي تسيطر عليها باستخدام متحكم 8051
- روبوت يتم التحكم فيه بواسطة الكمبيوتر باستخدام Arduino
- روبوت التحكم بالترددات اللاسلكية
- حافة تجنب الروبوت باستخدام 8051
- روبوت يتم التحكم فيه بواسطة جهاز قياس التسارع باستخدام تقنية Arduino
- لعبة سيارة تعمل بالتحكم عن طريق البلوتوث باستخدام اردوينو
والآن نضيف روبوتًا آخر في قسم "مشاريع الروبوتات" ، هذه المرة سنصنع روبوتًا يتم التحكم فيه عن طريق Wi-Fi باستخدام تطبيق Arduino و Blynk. يمكن التحكم في هذا الروبوت المستند إلى Arduino لاسلكيًا باستخدام أي هاتف ذكي يعمل بنظام Android مزود بشبكة Wi-Fi.
لإظهار الروبوت المتحكم فيه عبر Wi-Fi ، استخدمنا تطبيق Android للجوال باسم " Blynk ". Blynk هو تطبيق متوافق للغاية مع Arduino ، لإنشاء مشروع قائم على إنترنت الأشياء. يمكن تنزيل هذا التطبيق من متجر Google Play ، ويمكن تهيئته بسهولة.
خطوات تكوين تطبيق Blynk:
1. قم أولاً بتنزيله من متجر Google Play وتثبيته على هاتف Android المحمول.
2. بعد ذلك ، يجب إنشاء حساب. يمكنك استخدام حساب Gmail الحالي الخاص بك.
3. الآن حدد Arduino Board وقم بإعطاء اسم لمشروعك.
4. قم بتدوين رمز Auth Token أو ببساطة أرسله بالبريد إلى حساب بريدك الإلكتروني ثم انسخه والصقه في رسم Arduino (رمز البرنامج).
5. أدخل رمز رمز المصادقة هذا في رسم Arduino.
// يجب أن تحصل على Auth Token في تطبيق Blynk. // انتقل إلى إعدادات المشروع (رمز الجوز). char auth = "caa17a11c0124d4083d0eaa995f45917" ؛
6. ثم انقر فوق الزر إنشاء في تطبيق Blynk.
7. الآن حدد Joystick Widget ، وانقر فوق Joystick ، وقم بتكوين Joystick (انظر الفيديو في النهاية) واضغط على زر الرجوع.
8. بعد ذلك اضغط على زر التشغيل في أعلى يمين الشاشة.
تم شرح كل هذه العملية ، من استخدام تطبيق Blynk ، بوضوح في الفيديو ، المقدم في النهاية.
المكونات المطلوبة:
- اردوينو UNO
- وحدة واي فاي ESP8266
- كابل USB
- توصيل الأسلاك
- L293D
- دي سي موتورز
- البطاريات
- 10 كيلو وعاء (اختياري)
- هيكل روبوت بالإضافة إلى عجلة
- عجلة دوارة
- هاتف أندرويد
- تطبيق Blynk
شرح الدائرة:
يرد أدناه مخطط دائرة الروبوت المتحكم فيه عبر Wi-Fi. نحتاج بشكل أساسي إلى وحدة Wi-Fi من Arduino و ESP8266. ترتبط دبابيس Vcc و GND الخاصة بـ ESP8266 مباشرةً بـ 3.3 فولت و GND من Arduino و CH_PD متصل أيضًا بـ 3.3 فولت. دبابيس Tx و Rx من ESP8266 متصلة مباشرة بالدبوس 2 و 3 من Arduino. تُستخدم مكتبة البرامج التسلسلية للسماح بالاتصال التسلسلي على الدبوس 2 و 3 من Arduino. لقد قمنا بالفعل بتغطية واجهة وحدة ESP8266 Wi-Fi إلى Arduino بالتفصيل.
يتم استخدام محرك L293D Motor Driver IC لقيادة محركات التيار المستمر. يتم توصيل دبابيس الإدخال الخاصة بسائق المحرك IC مباشرة بالدبوس 8 و 9 و 10 و 11 من Arduino. ومحركات التيار المستمر متصلة بمنافذ الإخراج. هنا استخدمنا بطارية 9 فولت لقيادة محركات الدائرة والتيار المستمر.
شرح العمل:
يعد تشغيل الروبوت الذي يتم التحكم فيه بواسطة Wi-Fi أمرًا سهلاً للغاية ، فنحن نحتاج فقط إلى سحب أو تحريك عصا التحكم في الاتجاه ، حيث نريد تحريك الروبوت. كما لو كنا نريد تحريك الروبوت في الاتجاه الأمامي ، فنحن بحاجة إلى سحب "دائرة" عصا التحكم في الاتجاه الأمامي. وبالمثل ، يمكننا تحريك الروبوت في الاتجاه الأيسر ، الأيمن ، والخلفي عن طريق سحب عصا التحكم في الاتجاه المعني. الآن بمجرد إصدارنا جويستيك ، سوف يعود إلى المركز ويتوقف الروبوت.
يرسل تطبيق Blynk القيم من Two Axis Joystick إلى Arduino ، عبر وسيط Wi-Fi. يتلقى Arduino القيم ، ويقارنها بالقيم المحددة مسبقًا ويحرك الروبوت وفقًا لذلك في هذا الاتجاه.
شرح البرمجة:
البرنامج جاهز تقريبًا متاح في Arduino IDE. نحتاج فقط إلى تنزيل مكتبة Blynk لـ Arduino. وبعد إجراء بعض التعديلات ، يمكن للمستخدم إنشاء روبوت خاص به يتم التحكم فيه عن طريق Wi-Fi.
أولاً ، قمنا بتضمين جميع المكتبات اللازمة لتشغيل هذا الرمز في Arduino IDE ، ثم أدخلنا Auth Token ، من تطبيق Blynk ، في سلسلة المصادقة . نحن هنا نقوم بتوصيل دبوس Wi-Fi التسلسلي مع Software Serial of Arduino. تم تحديد السن 2 كـ RX و 3 كـ TX.
#define BLYNK_PRINT Serial // التعليق على هذا لتعطيل الطباعة وتوفير مساحة #include
ثم حددنا دبابيس الإخراج (8،9،10،11) للمحركات وكتب بعض الوظائف الاتجاه لتحريك الروبوت في اتجاه معين: إلى الأمام باطل ()، باطلة خلف ()، الفراغ اليمين () و اليسار باطل ()
بعد ذلك ، في وظيفة الإعداد ، نقوم بتهيئة جميع الأجهزة المطلوبة ، مثل إعطاء التوجيه لدبابيس المحرك ، وبدء الاتصال التسلسلي ، وتوفير اسم مستخدم وكلمة مرور Wi-Fi.
إعداد باطل () {// تعيين معدل الباود لوحدة التحكم Serial.begin (9600) ؛ تأخير (10) ؛ // تعيين معدل البث بالباود ESP8266 // 9600 موصى به لبرنامج Software Serial EspSerial.begin (9600) ؛ تأخير (10) ؛ Blynk.begin (المصادقة ، wifi ، "اسم المستخدم" ، "كلمة المرور") ؛ // wifi اسم المستخدم وكلمة المرور pinMode (m11 ، الإخراج) ؛ pinMode (m12 ، الإخراج) ؛ pinMode (m21 ، الإخراج) ؛ pinMode (m22 ، الإخراج) ؛ }
الآن قمنا بفحص بعض الشروط للتحكم في الروبوت. هنا اخترنا الدبوس الظاهري 1 (V1) لأخذ المدخلات من تطبيق Blynk للتحكم في الروبوت. نظرًا لأننا استخدمنا خيار marge في التطبيق ، فسنحصل على قيم المحور x و y في نفس الدبوس.
BLYNK_WRITE (V1) {int x = param.asInt () ؛ int y = param.asInt () ؛ إذا (y> 220) إلى الأمام () ؛ وإلا إذا (ص <35) إلى الخلف () ؛ وإلا إذا كانت (x> 220) right () ؛ وإلا إذا (x <35) يسار () ؛ آخر توقف () ؛ }
أخيرًا ، نحتاج إلى تشغيل وظيفة blynk في حلقة ، لتشغيل النظام.
حلقة باطلة () {Blynk.run () ، }