فهرست مطالب:
- مرحله 1: مرور کلی
- مرحله 2: ساخت پروژه
- مرحله 3: دستورالعمل های ساخت/سیم کشی
- مرحله 4: درک چارچوب WebIOPi
- مرحله 5: اجرای پروژه
تصویری: ربات جستجو و دفع از راه دور با کنترل جهش: 5 مرحله
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
به عنوان بخشی از ورودی من برای Leap Motion #3D Jam ، من مشتاق بودم که این ربات جستجو/نجات را با استفاده از حرکت بی سیم بر اساس رزبری پای بسازم. این پروژه یک مثال مینیمالیستی از نحوه استفاده از حرکات سه بعدی بی سیم برای کنترل و تعامل با وسایل فیزیکی را نشان می دهد و ارائه می دهد.
از آنجا که این پروژه از چارچوب محبوب WebIOPi IoT در رزبری پای استفاده می کند ، می توان آن را به راحتی گسترش داد و به طور معمول هر سنسور/سخت افزار/لوازم الکترونیکی را که می توان با Raspberry Pi رابط کرد کنترل و رابط کرد.
برخی از سناریوهای احتمالی که من تصور می کنم سازندگان ممکن است از این پروژه به عنوان چارچوب اصلی خود برای ساختن استفاده کنند:
1. ربات از بین بردن بمب با حرکت از راه دور (با استفاده از بازوی OWI و غیره)
2. عمل جراحی از راه دور توسط پزشک
3. نمایشگاه های هنری تعاملی یا محتوای آموزشی با حرکات کنترل شده
4. امکانات/ادغام بی نهایت دیگر (من با تخیلاتم محدود شده ام:))
مرحله 1: مرور کلی
این پروژه به کاربر اجازه می دهد تا با استفاده از حرکات سه بعدی دست از طریق یک حرکت جهشی متصل به رایانه ، یک روبات را به صورت تعاملی کنترل کند.
Raspberry Pi روی ربات همچنین دارای یک وب کم USB است که ویدئوهای زنده را به کاربر منتقل می کند که در مرورگر وب قابل مشاهده است. کتابخانه جاوا اسکریپت LeapMotion تعبیه شده در این صفحه وب ، حرکات دست را پردازش می کند و سیگنال های کنترلی را به ربات ارسال می کند و سپس مطابق آن حرکت می کند.
رزبری پای روی ربات با استفاده از دانگل USB WiFi متصل به آن به صورت Hotspot (حالت AP) پیکربندی شده است. این به رایانه ها/دستگاه های ما اجازه می دهد مستقیماً به رزبری پای متصل شده و از طریق یک صفحه وب کنترل شوند. رزبری پای همچنین می تواند پیکربندی شود تا در حالت سرویس گیرنده کار کند ، در این حالت به صورت بی سیم به AP روتر WiFi متصل می شود که رایانه/دستگاه ها قبلاً به آن متصل شده اند.
این پروژه بر اساس WebIOPi (https://webiopi.trouch.com/) است که یک چارچوب IoT محبوب برای Raspberry Pi است. با استفاده از کیت بسته اینترنت اشیاء Weaved (یا از طریق ارسال پورت در روتر) ، این ربات را می توان از راه دور کنترل کرد و/یا داده ها را از هر نقطه از جهان دریافت کرد.
برای ساخت پروژه از اجزای زیر استفاده شده است:
- Raspberry Pi B (100٪ رو به جلو سازگار با Raspberry Pi B+)
- وب کم Logitech USB (ضعیف 1.3 مگاپیکسل)
- L293D Motor Driver IC و Breakout Shield
- دانگل USB WiFi برای رزبری پای
- USB پاور بانک برای رزبری پای
- باتری خارجی 4V/1.5A برای رانندگی موتورهای ربات
مرحله 2: ساخت پروژه
نصب WebIOPi ، نوشتن کد سفارشی و پیکربندی وب کم:
دستورالعمل های نصب WebIoPi ، اصول اولیه چارچوب و نمونه های زیادی در صفحه پروژه در اینجا موجود است:
برای اینکه عملکردهای LeapMotion در صفحه وب جاسازی شده باعث فعال شدن اقدامات GPIO در Raspberry Pi شود ، ما از ماکروها استفاده کرده ایم ، جزئیات آن در اینجا یافت می شود:
من همچنین برخی از یادداشت های شروع را در مورد فرآیند فوق نوشته ام که می توانید در پیوست پیدا کنید.
نصب و پیکربندی وب کم
ما از MJPG-Streamer استفاده می کنیم تا جریان ویدئو را از Raspberry Pi به مرورگر از طریق وب کم USB متصل به Pi به جریان بیندازیم. لطفاً دستورالعمل راه اندازی و ایجاد دستورالعمل های ذکر شده در اینجا را دنبال کنید https://blog.miguelgrinberg.com/post/how-to-build-… تا MJPG-Streamer را روی رزبری پای کار کنید.
پیکربندی Raspberry Pi به عنوان AP/Hotspot
به منظور راه اندازی رزبری پای به عنوان میزبان ، لطفاً دستورالعمل های ارائه شده در اینجا را دنبال کنید: https://elinux.org/RPI-Wireless-Hotspot. من IP ثابت رزبری پای را به صورت 192.168.42.1 پیکربندی کرده ام ، این چیزی است که پس از بوت شدن Pi به حالت AP در مرورگر تایپ می کنیم.
WebIOPi ، MJPG-Streamer و WiFi hotspot به گونه ای پیکربندی شده اند که به صورت خودکار در هنگام راه اندازی اجرا می شوند و این به ما این امکان را می دهد که یک مرورگر وب را مستقیماً باز کرده و پس از بوت شدن به Robot متصل شویم. فایل rc.local موجود در repo برای اجرای وب کم در هنگام بوت استفاده می شود.
مرحله 3: دستورالعمل های ساخت/سیم کشی
4 GPIO از Raspberry Pi یعنی GPIO 9 ، 11 ، 23 و 24 به IC L293D Motor Driver متصل هستند که پس از دریافت درخواست های کلان از صفحه وب که توسط چارچوب Webiopi ارائه می شود ، موتورها را بر این اساس حرکت می دهد. دانگل USB WiFi و وب کم USB Logitech به 2 پورت USB موجود در رزبری پای متصل هستند. یک پاوربانک 5V 4000 Mah قدرت اصلی Pi را تأمین می کند. یک باتری 4V 1.5A سرب اسید برای رانندگی موتورها استفاده می شود.
توجه: از آنجایی که حداکثر جریان خروجی پاوربانکی که استفاده می کردم تقریباً 1000 ماه بود ، مجبور شدم از باتری خارجی اسید سرب برای حرکت موتورها استفاده کنم. اگر پاوربانکی دارید که>> 2000Mah می دهد ، می توانید مستقیماً موتورها را از ریل 5 ولت روی Pi هدایت کنید (هرچند این را برای موتورهای تشنه توصیه نمی کنم)
3 زیربخش اصلی پروژه LeapMotion Javascript API ، WebIOPi و MJPG-Streamer و نحوه کار/تنظیمات اولیه آنها به طور خلاصه در زیر شرح داده شده است.
مرحله 4: درک چارچوب WebIOPi
نمای جلویی که در مرورگر نشان داده می شود در HTML (نام فایل: index.html) و جاوا اسکریپت نوشته می شود در حالی که باطنی که GPIO ها را هدایت می کند به زبان پایتون (نام فایل: script.py) نوشته شده است. یادداشت های مفصل در مورد ایجاد یک WebApp سفارشی بر اساس چارچوب WebIOPi به عنوان یادداشت در repo Bitbucket پیوست شده است.
ماکروهای سفارشی تعریف شده در اسکریپت پایتون را می توان از فایل HTML فعال کرد.
به عنوان مثال: webiopi (). callMacro ("برو به جلو") ؛ این یک فراخوان سفارشی به یک macro go_forward تعریف شده در اسکریپت پایتون است که فرآیند حرکت هر دو موتور را در جهت جلو انجام می دهد.
سلسله مراتب دایرکتوری محل نگهداری فایل ها در Pi در تصویر پیوست نشان داده شده است.
پوشه Robot شامل زیر پوشه هایی است:
- html: حاوی index.html
- python: حاوی script.py
- mjpg-streamer-r63: شامل فایل های ساختنی و قابل اجرا برای اجرای وب کم است
MJPG-Streamer: جریان ویدئوی زنده از وب کم USB به طور پیش فرض روی پورت 8080 Pi اجرا می شود. برای مشاهده دستی جریان ، پس از روشن کردن وب کم ، در مرورگر به RASPBERRYPI_IP: 8080 بروید.
کد LeapMotion:
قطعه کد از نمونه های ارائه شده در SDK LeapMotion در فایل index.html جاسازی شد. فایل leap.js LeapMotion باید به پوشه html موجود در فهرست پروژه در رزبری پای اضافه شود.
پارامتر palmPosition ارسال شده توسط LeapMotion برای تعیین اینکه کدام ماکرو روی Raspberry Pi فعال شود استفاده می شود.
مرحله 5: اجرای پروژه
به سادگی رزبری پای را روشن کنید و تقریباً یک دقیقه صبر کنید. مشاهده خواهید کرد که داغ داغ RaspberryPi ظاهر می شود. به این نقطه اتصال متصل شوید و این آدرس IP ثابت را در مرورگر باز کنید: 192.168.42.1:8000. 8000 پورت پیش فرض WebIOPi است.
رزبری پای همچنین می تواند پیکربندی شود تا به جای نمایش به عنوان یک نقطه اتصال ، به شبکه WiFi محلی به عنوان یک سرویس گیرنده متصل شود. سپس باید IP پویا که توسط روتر به Raspberry Pi اختصاص داده شده را تعیین کنید و سپس آن را در مرورگر بزنید تا با Bot بازی کنید.
در صورت نیاز به راهنمایی یا هرگونه سوال در مورد پروژه می توانید نظر خود را بنویسید. جهش مبارک!
کل کد منبع پیوست شده است. در صورت نیاز به کمک در هر قسمتی از ساختمان پروژه می توانید نظر خود را بنویسید. جهش مبارک!
توصیه شده:
ESP8266 - سوکت کنترل از راه دور و از راه دور (امنیت سالمندان): 6 مرحله
ESP8266 - سوکت کنترل از راه دور و از راه دور (امنیت سالمندان): اطلاعات: این مونتاژ در صورت فراموشی وسایل وصل شده (عمدتا توسط افراد مسن مبتلا به آلزایمر) به منظور جلوگیری از گرم شدن بیش از حد ، آتش سوزی و حوادث است. پس از فعال شدن دکمه ، سوکت 110/220 VAC را به مدت 5 دقیقه دریافت می کند (دیگری
کنترل از راه دور جهانی از راه دور با Node-MCU: 12 مرحله
کنترل از راه دور جهانی با Node-MCU: سلام به همه و به این پروژه خوش آمدید! من یک شخص تنبل هستم و کابوس یک تنبل این است که وقتی متوجه می شوید که راه دور خیلی دور است ، تلویزیون تماشا کنید! متوجه شدم که اگر ریموتم را در دست داشته باشم هرگز خیلی دور نخواهد بود
IRduino: کنترل از راه دور Arduino - تقلید از راه دور از دست رفته: 6 مرحله
IRduino: کنترل از راه دور Arduino - تقلید از راه دور گمشده: اگر تا به حال کنترل از راه دور تلویزیون یا دستگاه پخش DVD خود را گم کرده اید ، می دانید که مجبور هستید به دکمه های خود دستگاه بروید ، از آن استفاده کنید و از آن استفاده کنید. گاهی اوقات ، این دکمه ها عملکرد مشابهی با ریموت ندارند. دریافت
ESP8266 RGB LED STRIP WIFI کنترل - NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi - کنترل تلفن هوشمند RGB LED STRIP: 4 مرحله
ESP8266 RGB LED STRIP WIFI کنترل | NODEMCU به عنوان یک کنترل از راه دور IR برای نوار LED کنترل شده بر روی Wifi | RGB LED STRIP Smartphone Control: سلام بچه ها در این آموزش می آموزیم که چگونه از nodemcu یا esp8266 به عنوان ریموت IR برای کنترل نوار LED RGB استفاده کنید و Nodemcu توسط تلفن هوشمند از طریق وای فای کنترل می شود. بنابراین اساساً می توانید RGB LED STRIP را با تلفن هوشمند خود کنترل کنید
کنترل از راه دور سایه/کنترل از راه دور: 5 مرحله
Shadow/Remote Control Activated Leds: آیا تا به حال خواسته اید یک نور فعال شده در شب یا سایه ایجاد کنید؟ خوب .. در اینجا یک دستورالعمل وجود دارد ، اما یک مورد اضافی وجود دارد: می توانید آن را با کنترل RF از راه دور فعال کنید. این بسیار قدرتمند است ، من می توانم اتاق سوراخ خود را روشن کنم