جدول المحتويات:

Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب: 9 خطوات
Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب: 9 خطوات

فيديو: Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب: 9 خطوات

فيديو: Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب: 9 خطوات
فيديو: IoT Robot Car With Camera and Raspberry Pi 2024, يوليو
Anonim
Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب
Banana / Raspberry Pi + Arduino Rover مع كاميرا ويب

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

هل نبدأ؟

الخطوة 1: المكونات التي تحتاجها

المكونات التي تحتاجها
المكونات التي تحتاجها
المكونات التي تحتاجها
المكونات التي تحتاجها
المكونات التي تحتاجها
المكونات التي تحتاجها

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

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

L293D Arduino Motor Shield rev.1 استنساخ بديل: درع محرك أفضل تم تقييمه لمزيد من الحالية

بديل Arduino Uno clone: يمكنك استخدام أي لوحة Arduino أخرى دون تغييرات كبيرة في الكود.

بطارية 6V 4.5Ah Pb بديلة: من الممكن تجربة بطاريات LiPo الأصغر إذا كنت تريد روبوتًا أخف وزنًا / استخدم محركين فقط.

بديل Banana Pi: يمكن استبدال Raspberry Pi 1/2/3 أو Orange Pi بدون تغييرات كبيرة في الكود. لقد استخدمت Banana Pi فقط لأنني كنت أمتلك واحدة في الجوار.

بديل لكاميرا الويب: استخدم كاميرا CSI لـ Raspberry Pi / Banana Pi / Orange Pi

Camera Pan / tilt mount with sg60 servos البديل: طباعة ثلاثية الأبعاد يمكن إمالة / تركيب عموم على سبيل المثال استخدام هذا.

أجزاء مطبوعة ثلاثية الأبعاد بديلة: دع خيالك ومواهب التصميم ثلاثية الأبعاد ترشدك! أيضا Thingverse:)

الخطوة 2: قم بتوصيل المحركات بـ L293D Motor Shield

قم بتوصيل المحركات بـ L293D Motor Shield
قم بتوصيل المحركات بـ L293D Motor Shield
قم بتوصيل المحركات بـ L293D Motor Shield
قم بتوصيل المحركات بـ L293D Motor Shield

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

ملاحظة: بالنسبة لأولئك الذين يستخدمون محركات مختلفة بتصنيف تيار أعلى ، قد تحتاج إلى سائق محرك آخر. بدلاً من ذلك ، هناك اختراق صغير لطيف تعلمته مؤخرًا وهو أنه يمكنك تحميل برنامجي تشغيل L293D إضافيين فوق المحرك الحالي (إنها الشريحة الوسطى على اللوحة)!

الخطوة 3: Arduino Uno ، Motor Shield Assembly

Arduino Uno ، تجميع Motor Shield
Arduino Uno ، تجميع Motor Shield

ضع Arduino Uno في العلبة وقم بتثبيت Motor Shield فوقه. هناك طريقة واحدة فقط للقيام بذلك ، إذا لم يكن ذلك مناسبًا ، فأنت تفعل شيئًا ما!

اردوينو أونو حقيبة دافئة

هذه هي الحالة التي استخدمتها ، النموذج الذي أنشأته Esquilo.

الخطوة 4: قم بتوصيل الطاقة بـ Banana Pi و Arduino

قم بتوصيل الطاقة بـ Banana Pi و Arduino
قم بتوصيل الطاقة بـ Banana Pi و Arduino

لقد استخدمت واجهة SATA لتوفير الطاقة لـ Banana Pi (6v). إذا كان لديك نفس اللوحة ، يمكنك أيضًا القيام بذلك ، فقط تأكد من أن الجهد هو 5v-6v. إنه مصدر طاقة غير منظم ، لذلك أفترض أن هناك دائرة حماية لطاقة SATA على Banana Pi M1.

تنبيه: بالنسبة إلى Raspberry Pi ، لديك بعض الخيارات: خيار آمن (باستخدام موصل USB لتوفير 5 فولت) وواحد غير آمن (باستخدام دبابيس GPIO). إليك الرابط للقراءة حول توصيل الطاقة بدبابيس Raspberry Pi GPIO. تأكد أنك

1) استخدم مصدر طاقة منظم

2) اضبط الجهد على 5 فولت

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

بالنسبة إلى Arduino ، ما عليك سوى توصيل الطاقة بأطراف برغي الإدخال الموجودة على درع المحرك. يمكن أن يستغرق ما يصل إلى 12v.

الخطوة 5: ضع Banana Pi في علبة مطبوعة ثلاثية الأبعاد ، قم بتجميع باقي روفر

ضع Banana Pi في علبة مطبوعة ثلاثية الأبعاد ، وقم بتجميع بقية روفر
ضع Banana Pi في علبة مطبوعة ثلاثية الأبعاد ، وقم بتجميع بقية روفر
ضع Banana Pi في علبة مطبوعة ثلاثية الأبعاد ، وقم بتجميع بقية روفر
ضع Banana Pi في علبة مطبوعة ثلاثية الأبعاد ، وقم بتجميع بقية روفر

لقد استخدمت هذه الحالة لـ Banana Pi من thingverse ، التي أنشأتها GermanRobotics. لقد صنعت الغطاء له بنفسي.

ضع Banana Pi في العلبة ، وقم بتغطيتها بالغطاء ، واستخدم مسدس الغراء لإرفاق Arduino Uno أعلى علبة Banana Pi.

قم بتغطية البطارية بهذا الغطاء وقم بإرفاق حامل / حامل كاميرا الويب في الأعلى.

إذا كنت تستخدم Banana Pi ، فستحتاج إلى موزع USB ، نظرًا لأنه يحتوي على فتحتين USB فقط (يحتوي Raspberry 2 ، 3 على أربعة). بدافع المخاوف الجمالية ، قررت استخدام محور OTG 1-2 USB وإخفاء الأسلاك داخل علبة Banana Pi.

الخطوة 6: تم تجميع الأجهزة

تم تجميع الأجهزة!
تم تجميع الأجهزة!

دعنا نلخص بسرعة ما قمنا به حتى الآن.

لقد قمنا بتجميع منصة الروبوت ، وتوصيل الطاقة بـ Banana Pi ، و Arduino Uno ، والمحركات الموصلة والمؤازرة بسائق المحرك واستخدمنا محور USB لتوصيل كاميرا USB و Arduino Uno بـ Banana Pi. يمكنك الآن اختبار الجهاز واستكشاف الأخطاء وإصلاحها. مخطط الأسلاك يوضح جميع التوصيلات في الصورة لهذه الخطوة.

الخطوة 7: تكوين النظام

أعدادات النظام
أعدادات النظام

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

قم بتوصيل جهاز pi الخاص بك بالإنترنت باستخدام كابل Ethernet. بعد بدء التشغيل ، ستكون الخطوة الأولى هي توصيله بشبكة Wi-Fi.

قم بتشغيل الأمر التالي في المحطة

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

قم بتحرير ملف التكوين باستخدام بيانات اعتماد WiFi الخاصة بك

شبكة = {ssid = "testing" psk = "testingPassword"}

أعد تشغيل pi. هاهو! أنت الآن متصل بشبكة Wi-Fi.

بعد ذلك سنحتاج إلى تثبيت pip (Python Package Manager)

sudo apt-get install python-setuptools

sudo easy_install pip

نستخدم الآن pip لتثبيت Flask لتشغيل خادم ويب و pyserial لـ pi للتواصل مع Arduino عبر اتصال تسلسلي.

قارورة تثبيت sudo pip

sudo pip تثبيت pyserial

آخر شيء هو تثبيت وتكوين حزمة الحركة ، والتي نستخدمها لدفق الفيديو من كاميرا الويب الخاصة بنا.

اتبع هذه التعليمات الرائعة للقيام بذلك.

الآن نحن على استعداد للقعقعة!

الخطوة 8: بدء تشغيل البرنامج

بدء تشغيل البرنامج
بدء تشغيل البرنامج
بدء تشغيل البرنامج
بدء تشغيل البرنامج

هل تتذكر كيف قلت أننا مستعدون للقعقعة؟

حسنًا ، المزيد من الطحن وبعد ذلك يمكننا البدء في الضجيج:)

لنقم بتنزيل جميع الملفات الضرورية من مستودع github الخاص بي.

استنساخ بوابة

قم بتحميل rover.ino إلى Arduino Uno. إذا قمت بإجراء تغييرات على الأجهزة (باستخدام درع محرك مختلف ، على سبيل المثال) ، فأنت بحاجة إلى تغيير الرسم التخطيطي.

إذا كنت تستخدم كاميرا ويب ، فقم بتعديل الخط بالقرب من الجزء السفلي من ملف index.html في مجلد القالب. غيّر عنوان URL في سطر IFRAME لمطابقة عنوان URL الخاص بـ src لدفق الفيديو.

الآن يمكنك بدء تشغيل خادم الويب. قم بتشغيل الأمر التالي

sudo python pi_rover.py

إذا تابعت بنائي عن كثب وقمت بتوصيل Arduino ، فسترى ما يلي (الصورة الأولى) في الجهاز.

اكتب عنوان IP الخاص بالروبوت في متصفح الويب (على سبيل المثال في حالتي كان 192.168.1.104) ، يمكنك التحقق من عنوان IP باستخدام الأمر $ ifconfig على نظام Linux.

/ قم بالرقص الاحتفالي هنا! /

إذا كان لديك أي أسئلة ، فلا تتردد في طرحها في التعليقات. هذا البرنامج التعليمي موجه للمستوى المبتدئ ، ولكن ليس مبتدئًا ، ولهذا السبب كنت موجزًا تمامًا عن الأشياء التي يمكنك فقط البحث عنها في google (على سبيل المثال ، نسخ صورة النظام على بطاقة SD ، وتحميل رسم Arduino وما إلى ذلك).

الخطوة 9: الاعتمادات

تأتي الفكرة ورمز خادم الويب من هذا التوجيه الرائع بواسطة jscottb. لقد قمت بتعديله لاستخدام أجهزة أكثر شيوعًا ، مثل Arduino Uno.

الأجزاء المطبوعة ثلاثية الأبعاد من Thingverse.

www.thingiverse.com/thing:994827

www.thingiverse.com/thing:2816536/files

www.thingiverse.com/thing:661220

موصى به: