روبوت الأردوينو و التحكم به بواسطة الأندرويد
قد ترغب في بناء روبوت تستطيع التحكم به عن بُعد , سيكون هذا مسلياً جداً خصوصاً إذا استطعت أن تتحكم فيه بواسطة جهازك الذكي العامل على نظام الأندرويد Android .
في هذه التدوينة سأشرح كيفية بناء واحد بسهولة عن كيفية صناعة روبوت نتحكم به عن بعد عن طريق جهاز الأندرويد بواسطة البلوتوث .
القطع التي سنحتاجها :
1) بطاقة أردوينو Uno " ميجا ستحتاج لتعديل في البرنامج "
في هذه التدوينة سأشرح كيفية بناء واحد بسهولة عن كيفية صناعة روبوت نتحكم به عن بعد عن طريق جهاز الأندرويد بواسطة البلوتوث .
القطع التي سنحتاجها :
1) بطاقة أردوينو Uno " ميجا ستحتاج لتعديل في البرنامج "
3) هيكل روبوت Magician Chassis من شركة spark fun او الهيكل 4Wheel Robot او هيكل روبوت Zumo من Pololu
4) قطعة البلوتوث HC-05 او HC-06 او احياناً تسمى Linvor .
6) جهاز ذكي او لوح مزود لنظام التشغيل أندرويد 4.0
7) قطع اخرى , مثل اسلاك توصيل , ستحتاج لأسلاك توصيل female-female عدد 4 , و ايضاً ستحتاج ل dc jack male+ female لتسهيل توصيل البطارية مع غطاء الأردوينو الخاص بالمحرك , و اخيراً pin header male عدد 1 .
التوصيل :
لأنني سأستخدم الغطاء L293 Motor driver فسأربط البلوتوث مع الأرجل A0,A1 على التوالي , و الجيد في هذا الغطاء هو امكانية توصيل المداخل التناظرية بسهولة .
التوصيل كالتالي :
ستحتاج لتحميل هذا التطبيق من متجر الأندرويد
هذا التطبيق متوافق مع هذا البرنامج
البرنامج للروبوت سواءاً كانت ب 4 عجلات ام بعجلين .
الكود مع دارة القيادة L298
الكود مع دارة غطاء قيادة المحرك L293
4) قطعة البلوتوث HC-05 او HC-06 او احياناً تسمى Linvor .
5)بطاريتان , واحدة لتغذية المحرك "يجب ان تكون أكبر من 5 فولت " و الثانية بطارية 9 فولت مع الحاضنة لتغذية الأردوينو .
6) جهاز ذكي او لوح مزود لنظام التشغيل أندرويد 4.0
7) قطع اخرى , مثل اسلاك توصيل , ستحتاج لأسلاك توصيل female-female عدد 4 , و ايضاً ستحتاج ل dc jack male
التوصيل :
لأنني سأستخدم الغطاء L293 Motor driver فسأربط البلوتوث مع الأرجل A0,A1 على التوالي , و الجيد في هذا الغطاء هو امكانية توصيل المداخل التناظرية بسهولة .
التوصيل كالتالي :
ستحتاج لتحميل هذا التطبيق من متجر الأندرويد
هذا التطبيق متوافق مع هذا البرنامج
البرنامج للروبوت سواءاً كانت ب 4 عجلات ام بعجلين .
الكود مع دارة القيادة L298
الكود مع دارة غطاء قيادة المحرك L293
و هذا الفيديو يوضح تطبيق هذا البرنامج
بارك الله فيك يابشمهندس مهند
ردحذفطيب لو كانت المحركات 2 سيرفوهات ؟؟؟كيف بيكون الكود يابشمهندس مع جزيل الشكر لك
شكراً لك , انا لست مهندساً
حذفما هو نوع محركات السيرفو المستخدمة ؟ بشكل عام يدور محرك السيرفو 360 درجة مع عقارب الساعة عندما نستخدم مكتبة السيرفو و نعوض القيمة 0 في الأمر :
Servo.write(0)
للدوران في الأتجاه المعاكس :
Servo.write(180)
للتوقف
Servo.write(90)
فقط!
السلام عليكم
ردحذفلدي سؤال اخي فيما يتعلق ب Bluetooth Module HC-05 or HC-06 ممكن اعرف ما الخرج تبعه output لاني قرات في بعض المنتديات و وجدت انه 7bit و كما تعلم ه يستعمل UART protocol و الداتا فيه 8bit مع اضافة bit start and stop bit or 2bit for stop لاني اود استعماله مع Pic بواسطة الهاتف
يرسل بايت في كل مرة , طريقة استعماله بسيطة لكن تعتمد على نوع البرنامج الذي ستستخدمه في البرمجة على ال PIC
حذفشكرا لك اخي
حذفلنفترض اني عملت برنامج اندرويد و ارسلت حرف U على شكل كود ASCII يعني راح يكون 1بايت (8bit ) م Module Bluetooth راح يستقبل analog signal طيب الخرج تبع Module Bluetooth هل راح يكون نفس كود ASCII الي ارسلته
وهل عند استعمال Module Bluetooth لاول مرة يكفي استعماله و هو في الوضع الافتراضي فقط اغير baud rate الذي اريده لكي يتوافق مع PIC ام يجب اختيار AT command و لو تكركمت ممكن تشرح لي هذه الاخيرة
اسف لكون اسئلة كثيرة لاني احتاج هذه المعلومات لتنفيذ مشروعي
و شكرا لك اخي و حبذ لو استطيع التواصل معك اكثر
السلام عليكم
ردحذفاولا نشكرك على تلك المعلومات القيمه
ولكن هل من الممكن ان تدلنا على تقنيات اكثر وهل توجد روبوتات تستخدم تقنيات المغناطيسيه وكيف تتم التحكم فى المركبات فى الفضاء اريد الفكره الاساسيه
بصراحة موضعها معقد بعض الشيء نظراً لموضوع الجاذبية الحساس , بالغالب يتم عن طريق ألأتصال مع أحد الأقمار الصناعية التي تدور في محور الأرض و يرسل البيانات و المعلومات بين الروبوت و المحطة الأرضية
حذفسيرفوهات 360 درجه ....طيب ايش الفائده من الاوامر هذه
ردحذفcase '2':
left_motor.setSpeed(100); // set the speed to 200/255
right_motor.setSpeed(80); // set the speed to 200/25
break;
case '4':
left_motor.setSpeed(150); // set the speed to 200/255
right_motor.setSpeed(130); // set the speed to 200/25
break;
case'7':
left_motor.setSpeed(200); // set the speed to 200/255
right_motor.setSpeed(180); // set the speed to 200/25
break;
case'q':
left_motor.setSpeed(250); // set the speed to 200/255
right_motor.setSpeed(230); // set the speed to 200/25
ضبط السرعة
حذفعملت روبوت بالبلوتوث وعن طريق الكيبورد لكن اشاره البلوتوث تفصل باستمرار وااشيل بطاريه الاردوينو وارجعها ترجع الاشاره وهكذا ايش السبب بحكم انك قد جربت ؟؟؟؟؟؟
ردحذفما نوع البطارية المستعملة ؟ لا تقربي البلوتوث من المحرك لأن المحرك يصدر ضجيجياً يؤثر على عمل قطعة البلوتوث .
حذفتأكدي من تثبيت البطارية بالأرجوينو بشكل جيد لأنه وفي حال فصل التغذية عن الأردوينو يخرج البلوتوث عن التزامن
السلام عليكم .. محتاج مساعده .. اللغه البرمجيه تطلع عندي error ممكن تساعدني .. اخذتها من موقعكم اللغه
حذفالسبب هو اخذ vcc للبلوتوث من مصدر خارجي ويجب اخذ vcc من الاردوينو نفسه
حذفالبطاريات المستخدمه بطاريات 9 فولت عاديه للاردوينو ...عامله البلوتوث مع الاردوينو على لوحه تجارب صغيره فوق السيرفوهات احتمال زي ماقلت يكون من السيرفوهات ....باغير المكان واشوف النتائج
ردحذفشكرا لك اخي
ردحذفلنفترض اني عملت برنامج اندرويد و ارسلت حرف U على شكل كود ASCII يعني راح يكون 1بايت (8bit ) م Module Bluetooth راح يستقبل analog signal طيب الخرج تبع Module Bluetooth هل راح يكون نفس كود ASCII الي ارسلته
وهل عند استعمال Module Bluetooth لاول مرة يكفي استعماله و هو في الوضع الافتراضي فقط اغير baud rate الذي اريده لكي يتوافق مع PIC ام يجب اختيار AT command و لو تكركمت ممكن تشرح لي هذه الاخيرة
اسف لكون اسئلة كثيرة لاني احتاج هذه المعلومات لتنفيذ مشروعي
و شكرا لك اخي و حبذ لو استطيع التواصل معك اكثر
تحتاج لاستخدام مدخل أضافي ألا وهو State و يجب عليك مراجعة النشرة الفنية بهذا الخصوص , الطريقة سهلة جداً . يمكنك تعديل ال Buad rate , name, password وكثير من الأمور الأخرى .
حذفالسلام عليكم ..... اخي ممكن اعرف التكلفه الاجماليه للمشروع؟ وطبعا انا اشكرك لانك تنشر ما تتوصل اليه من علوم على عكس كثير من الناس ..وفقك الله لكل ما هو خير
ردحذفلنقل أنك لا تملك أي قطعة ألكترونية ! يصل تقريباً تكلفة بناء روبوت لك "قابل للفك و التعديل " لحدود 80 دولاراً , ستكون مرتفعة نظراً لأني أخذت بعين الأعتبار انك لا تملك شيء أبداً .
حذفشكراً لك و اتمنى ان تستفيد من هذه السلسلة
لو سمحت اخ مهند ممكن توضيح بخصوص كود ال2 سيرفو
ردحذفللدوران في الأتجاه المعاكس :
Servo.write(180)
للتوقف
Servo.write(90)
وهل بنحتاج الى ضبط السرعه كما في المثال اعلى ؟؟؟؟؟عفوا على الاطاله
لا لاحاجة لضبط السرعة .
حذفالسلام عليكم باش مهندس انا مبتدئ في الاردينو ، وقمت بالعمل على المشروع ولدي
ردحذفL298 , bluetooth HC-06
وقد قمت بتحميل مكتبة SoftwareSerial' وظهرت لي هذه الرسالة
'class SoftwareSerial' has no member named 'available'
المرجو مساعدتي لكي احصل على الكود الصحيح او الخطوات الصحيحة لهذا المشروع
مكتبة ال Softwareserial مثبته في برنامج الأردوينو و لا حاجة لتنزيلها اذا كنت تستخدم برنامج أصداره أكبر من 1.0
حذفالفيديو مش وااضح ممكن لو تكتب الخطوات اللي قمت بيهم عشان التوصيل بين الاندرويد والروبوت بعد مافتحت البرنامج ؟؟؟؟؟
ردحذفاعملي pairing بين البلوتوث و جهاز الأندرويد ثم افتحي البرمجية و اضغطي connect و اختاري جهاز البلوتوث HC05,HC06, LINVOR حسب النوع المستخدم "كود ال Pairing 1234 "
حذفاولا شكرا لمجهودك الرائع و ربنا يوفقك و تبقي من حسن لاحسن ان شاء الله :)
ردحذفثانيا عندي سؤال ملح بشكل رخم :) انا بشوف ريبوتات بيبقي فيها كاميرا موديول و بتبقي بتنقل الي شايفاة live علي الموبيل ديركت السؤال بقي :) حضرتك ممكن توضح هما بيستخدمو arduino ولا اية بيظبط او لو عند خضرتك tutorial علشان عندي رغبة ملحة بردو اني انفذها ان شاء الله و شكرا لحضرتك رغيت كتير :)
اهلاً
حذفالاستخدام يكون لكاميرا وايرليس و يتم فتح صفحة نت تكون معدة في برنامج هذه الكاميرا بحيث تعرض الفيديو عليها , موجودة في ال live stream على أجهزة الأندرويد على ما أذكر
الأردوينو فقط تحرك الروبوت و لا تتعامل مع الكاميرات خصوصاً اشارات الفيديو منها
م.مهند يا ريت توضحلي شو الــ IDE الي سويت عليها برنامج الاندرويد لاني بتعلم كيف وبدي اعرف اي طريقة الاسهل والاسرع ....وعفكرة جربت app inventor هو رائع ومسلي لكن امكانياتو حاسسها محدودة....وشكراً
ردحذفانا برمجة واحد بالتعاون مع صديق لي اكثر خبرة مني في الاندرويد باستخدام eclipse
حذفالسلام عليكم اخي رجاءا اين اضع الكود
ردحذفعلى لوحة الأردوينو
حذفالسلام عليكم بس بدي كود البلوتوث .
حذفارجو الرد بسرعة
شكرا للدرس الرائع
ردحذففي الكود انت حددت البورت ١٠ و ١١ للبلوتوث، لكن تلك البورتات مستخدمة لتشغيل المحركات، في رسم الاسلاك مش واضح بأي بورت توصل البلوتوث....هل توصله لل analog pins ؟ بس في الحالة دي لازم تغير الكود لتحديد بورت الanalog كسيريال بورت
و شكرا
لل L298 حددت رقمي 10 و 11 و لكن للموديول L293 استخدمت الأرجل A0,A1 و في البرنامج ترتيبهما 14و 15 على التوالي تأكد بنفسك من الكود
حذفكيف اجعل الموتر يدور باستمرار مجرد الضغط على الزرار والفصل من زورار اخر يعنى لا يلزمنى بالضغط باستمرار على الزورار ضغطه واحده ايه التعديل فى البرنامج المطلوب . اشكر كثيرا واتمنى الرد سريعا
ردحذفهذا صعب بعض الشيء , او لنقول انه يريد تعديل في برنامج الأردوينو قد يكون غير مناسب او يعطي نتائج غير مرغوب فيها بالحركة .
حذففقط احفظ حالة المتغير خارج جملة
if (Genotronex.available()){
طيب ممكن تعمل موضوع يوضح التحكم بيها عن طريق ps3 joystick
ردحذفالآن الموضوع متوفر على المدونه
حذفعايز مكتبة للبلوتوث HC-05
ردحذفلا حاجة للمكتبة بتاتاً لها , اوامرها سهلة جداً جداً و لا تتعدى 3 سطور فقط
حذفالسلام عليكم انا كنت محتاج اعرف راي حضرتك فى تصميم انا عامله ممكن ابعتلك الصوره ازاى
ردحذفالسلام عليكم حضرتك لوغيرت نوع البلوتوث ايه هيتغير معية ارجو الرد
ردحذفfatal error: AFMotor.h: No such file or directoryلماذا يظهر هذا الخطا ارج والرد بسرعة
ردحذفcompilation terminated.
برنامج الاردوينو مفيش فيه مكتبة ال Motor Shield R3 ... لازم تحميلها وتضفيها لمكتبة البرنامج
حذفلو سمحت يا بشمهندس ممكن شرح لخطوات البرنامج
ردحذفأي برنامج ؟
حذفسلام اخي اا لا املك دارة غطاء قيادة المحرك L293 و لا املك دارة القيادة L298 لكن املك قطعة البلوتوث HC-05 و بطاقة أردوينو Uno اريد ان اتحكم في محركين dc عن طريق البلوتوث و بطاقة اردوينو uno اشكر كثيرا واتمنى الرد سريعا
ردحذفلا يمكن ذلك بدون دارة قيادة للمحرك
حذفبالنيسه للاكواد الموجوده
ردحذفهكتب البرنامجين في ملف واحد ولا كل برنامج في ملف خاص بيه
كل برنامج بملف خاص به
حذفمشكور على جهودك الرائعه
ردحذففي حالة motor driver l298 dual bridge
كيف يكون الربط مع الاردوينو وشكرا
السلام عليكم انا معايا meag nd l293 اايه البرمجه اللى المفروض اغيرها فالكود؟؟
ردحذفأزال المؤلف هذا التعليق.
ردحذفالسلام عليكم ... انا عندي اردوينو ميجا 2560 شو اللي لازم يتغير بالكود لاني جربت الكود وما اشتغل عليها
ردحذفيجب تغير توصيل البلوتوث لتوصله مع المداخل 14و15 في الميجا و تغير كل الكودات التي تحتوي على SoftwareSerial إلى Serial1
حذفعليك مراجعه طريقة استخدام Serial communication في الأردوينو ميجا لتعرف أكثر عن آليه التغيير
السلام عليكم .. جزاك الله خير .. صديقي ممكن تساعدني بااللغه البرمجيه فلا املك اي فكره عنها ...اخذت اللغه او الكودات من الموقع هذا ووضعتهم في برنامج الاردوينو لكن يطلع عندي error شاهد هذا .. جاوبني الله يخليك ضروري
ردحذفsketch_oct19a.ino:103: error: conflicting declaration 'char BluetoothData'
sketch_oct19a.ino:7: error: 'BluetoothData' has a previous declaration as 'int BluetoothData'
sketch_oct19a.ino:105: error: 'AF_DCMotor' does not name a type
sketch_oct19a.ino:106: error: 'AF_DCMotor' does not name a type
sketch_oct19a.ino: In function 'void setup()':
sketch_oct19a.ino:108: error: redefinition of 'void setup()'
sketch_oct19a.ino:10: error: 'void setup()' previously defined here
sketch_oct19a.ino:111: error: 'left_motor' was not declared in this scope
sketch_oct19a.ino:112: error: 'right_motor' was not declared in this scope
sketch_oct19a.ino: In function 'void loop()':
sketch_oct19a.ino:115: error: redefinition of 'void loop()'
sketch_oct19a.ino:62: error: 'void loop()' previously defined here
sketch_oct19a.ino:122: error: 'left_motor' was not declared in this scope
sketch_oct19a.ino:123: error: 'right_motor' was not declared in this scope
sketch_oct19a.ino:142: error: 'RELEASE' was not declared in this scope
أزال المؤلف هذا التعليق.
ردحذفاسلام عليكم ورحمة الله وبركاته ......تحيه طيبه وبعد انا عملت المشروع ده من خلال الموقع بتاعك والفكره عجبتنى وطبقتها بس انا بفكر ازود اى مكونات وامكانيات على المشروع ...ممكن بعد اذنك لو مافيها ازعاج او شى ...تقول لى ايه الى ممكن ازود على المشروع .زى افكار واى اراء وشكراا
ردحذفمرحبا لو سمحت اخ AMR ABED ممكن تكتبلي بالظبط رقم او موديل البلوتوث لاني لقيت كثير موديلات بالامازون واخاف اشتري واحد يطلع غير موديل او ما يكون في توافق بينو وبين البرنامج ولو بدي اثقل عليك نفس الشيء صار معي مشان موضوع الUNO كمان لقيت منو كثير موديلات مشكور سلفا للمساعدة
حذفشكرًا علي جميع المعلومات القيما هاذي
ردحذفانا عملت سفينه بحريه تمشي بيرموت كنترول والآن عاوز امشيها عن طريق البلوتوث
وعاوز اشتري قطعه بور كامله مجهزة بي البلوتوث وأربع مواتير من وين
مدى البلوتوث اقل بالعاده
حذفلا اعتقد وجود شيء مماثل جاهز عليك بناءه بنفسك و برمجته حسب المتطلب الموجود لديك
اخى الفاضل شكرا للك بس لو حبيت اتجه يمين عن طريق تقليل سرعه احدى الجانبين وليس عكس واحد ما الانر المستخدم عندئذ
ردحذفاحتاج مكتبة بلوتوذ كيف يمكن ان احملها
ردحذفاحتاج مكتبة بلوتوذ كيف يمكن ان احملها
ردحذفمحتاج اوصل ال bluetooth moduel Hc05 مع ال joystick shield والكود
ردحذفاستطبع المساعدة
حذفماهو مدى البلوتوث ؟
ردحذفمرحبا لو سمحت ممكن تكتبلي بالظبط رقم او موديل البلوتوث لاني لقيت كثير موديلات بالامازون واخاف اشتري واحد يطلع غير موديل او ما يكون في توافق بينو وبين البرنامج ولو بدي اثقل عليك نفس الشيء صار معي مشان موضوع الUNO الميجا كمان لقيت منو كثير موديلات مشكور سلفا للمساعدةوياريت تكتب اسم البرنامج اللي لازم ابرمج عليه الدرايفر والاونو وتحياتي للجميع ومشكورين
ردحذفاسم البلوتوت
حذفHC-05
اسم الأردوينو
Arduino uno
لى سمحت من فين اشترى ال بلوتوث
ردحذفلى سمحت من فين اشترى ال بلوتوث
ردحذفسلام عليكم اخي العزيز اني مبتداء بلعمل العملي واريد اسوي بحث تخرج ارجو ان اتواصل معك لنتزود بمعلوماتك القيمه
ردحذفسلام عليكم اخي العزيز اني مبتداء بلعمل العملي واريد اسوي بحث تخرج ارجو ان اتواصل معك لنتزود بمعلوماتك القيمه
ردحذفلو سمحت انا عندى البلوتوث بيفصل وهل البرنامج ال انت كاتبه دا متوافق مع الرسم بالظبط
ردحذفحضرتك ازاى ف ال stematic موصل ال Vcc بتاعت البلوتوث بال GND وموصل GND بتاعت البلوتوث بال Vcc بتاع motor shield انا لما عملت زي ماحضرتك كاتب مفيش اي volt عدا ف شريحة البلوتوث اصلا
ردحذفارجو الرد
شكرا للتنبيه هناك خطأ بالتوصيل صحيح
حذفال Vcc للبلوتوث مع ال 5V و ال GND مع ال GND هذا الاصح
Arduino: 1.5.6-r2 (Windows 8), Board: "Arduino Uno"
ردحذفsketch_oct30a:7: error: 'AF_DCMotor' does not name a type
sketch_oct30a:8: error: 'AF_DCMotor' does not name a type
sketch_oct30a.ino: In function 'void setup()':
sketch_oct30a:13: error: 'left_motor' was not declared in this scope
sketch_oct30a:14: error: 'right_motor' was not declared in this scope
sketch_oct30a.ino: In function 'void loop()':
sketch_oct30a:19: error: 'class SoftwareSerial' has no member named 'AVAILABLE'
sketch_oct30a:24: error: 'left_motor' was not declared in this scope
sketch_oct30a:24: error: 'FORWARD' was not declared in this scope
sketch_oct30a:25: error: 'right_motor' was not declared in this scope
sketch_oct30a:29: error: 'BACKWARD' was not declared in this scope
sketch_oct30a:44: error: 'RELEASE' was not declared in this scope
This report would have more information with
"Show verbose output during compilation"
enabled in File > Preferences.
لو سمحت يابشمهندس اتصرف في دول ازاي
قم بتنصيب المكتبات الخاصة بالكود حتى يعمل معك بشكل صحيح
حذفالسلام عليكم اخي المهندس 😊 اتبعت كامل خطواتك في التجربة لكن الكود l293d يطلع غلط في برنامج الكتابة حل لو سمحت
ردحذفما هو الخطأ ؟
حذفوجدت الخطأ اني لم احمل هذه المكتبية لم تنبهنا في الشرح انه يجب تحميلها واضافتها .. شكرا اخي والله افدتنا بموضوعاتك الرائعة
حذفلدي سؤال اخر انا استعمل محركين فقط واريد استغلال مخارج المحركين الاخرين في التحكم في ذراع مكونة من محركين كيف اعدل على الكود وايي فكرة اخرى حول الموضوع لو سمحة وشمرا اخي جازاك الله خيرا
أزال المؤلف هذا التعليق.
حذفالسلام عليكم ممكن الكود الكامل لمحرك L293 ارجو الرد بسرعة
ردحذفما المقصود بالكود الكامل ؟ يمكنك مراسلتنا على صفحتنا على الفيسبوك
حذفhttps://www.facebook.com/Genotronex-229428667198604/
أخي الكريم أنا وصلت متل المخطط تماما والكود رفعته للاردوينو نفسه
ردحذفلكن ما في استجابة المحركات لا تعمل
ما المشكلة برأيك
مع العلم أني جربت كود L298 لوحده ومشي الحال المحركات تعمل
ارجو الرد بسرعة .....ازا تكرمت
حضرتك انا عملت نفس المشروع بالضبط بس ف حاجه واقفه معايا
ردحذفحرقت الكود وكل حاجه تمام بس مش رادي ينفذ الامر المحركات مبتشتغلش دا ليه..؟
مع اني موصل صح