Sadržaj:
- Korak 1: Pregled
- Korak 2: Izrada projekta
- Korak 3: Upute za izgradnju/ožičenje
- Korak 4: Razumijevanje WebIOPi okvira
- Korak 5: Pokretanje projekta
Video: Robot za daljinsko pretraživanje i odlaganje s kontroliranim kretanjem: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:32
Kao dio moje prijave za Leap Motion #3D Jam, bio sam uzbuđen što sam napravio ovog bežičnog robota za pretraživanje/spašavanje kontroliranog gestama na temelju Raspberry Pi. Ovaj projekt prikazuje i pruža minimalistički primjer kako se bežični 3D pokreti rukama mogu koristiti za kontrolu i interakciju s fizičkim stvarima.
Budući da ovaj projekt koristi popularni WebIOPi IoT okvir na Raspberry Pi, može se vrlo lako proširiti na kontrolu i sučelje tipično sa bilo kojim senzorom/hardverom/elektronikom koji se može povezati s Raspberry Pi.
Neki mogući scenariji koje zamišljam kolege Stvoritelji mogu koristiti ovaj projekt kao svoj osnovni okvir za nadogradnju:
1. Robot za uklanjanje bombi s daljinskim pokretima (možda pomoću OWI ruke itd.)
2. Daljinski kirurški zahvat od strane liječnika
3. Interaktivne umjetničke izložbe ili obrazovni sadržaji kontrolirani pokretima
4. Beskonačne druge mogućnosti/integracije (ograničen sam maštom:))
Korak 1: Pregled
Ovaj projekt omogućuje korisniku interaktivno upravljanje robotom pomoću 3D pokreta rukama kroz Leap Motion spojen na računalo.
Raspberry Pi na Robotu ima i USB web kameru koja struji video zapis uživo do korisnika koji se može vidjeti u web pregledniku. Knjižnica JavaScripta LeapMotion ugrađena u ovu web stranicu obrađuje geste rukama i šalje upravljačke signale natrag robotu, koji se tada prema tome pomiče.
Raspberry Pi na robotu konfiguriran je kao hotspot (način rada AP) uz pomoć USB WiFi ključa spojenog na njega. To omogućuje našim računalima/uređajima izravno povezivanje s Raspberry Pi i upravljanje putem web stranice. Raspberry Pi se također može konfigurirati za rad u klijentskom načinu rada, pri čemu se bežično povezuje s AP -om WiFi usmjerivača na koji su računalo/uređaji već spojeni.
Ovaj se projekt temelji na WebIOPi (https://webiopi.trouch.com/) koji je popularan IoT okvir za Raspberry Pi. Korištenjem paketa Weaved IoT Kit (ili putem prosljeđivanja priključaka na usmjerivaču), ovim se robotom može daljinski upravljati i/ili primati podatke iz bilo kojeg dijela svijeta.
Za izradu projekta korištene su sljedeće komponente:
- Raspberry Pi B (100% naprijed kompatibilan s Raspberry Pi B+)
- Logitech USB web kamera (ništavnih 1,3 megapiksela)
- L293D IC upravljački program motora i zaštitni štit
- USB WiFi ključ za Raspberry Pi
- USB Power Bank za Raspberry Pi
- Vanjska 4V/1.5A baterija za pogon robotskih motora
Korak 2: Izrada projekta
Instaliranje WebIOPi -a, pisanje prilagođenog koda i konfiguriranje web -kamere:
Upute za instalaciju WebIoPi, osnove okvira i mnogi primjeri dostupni su na stranici projekta ovdje:
Kako bi funkcije LeapMotion ugrađene u web stranicu pokrenule GPIO radnje na Raspberry Pi -u, koristili smo makroe, čije detalje možete pronaći ovdje:
Napisao sam i neke napomene o početku rada o gore navedenom procesu koje se mogu pronaći u privitku.
Instaliranje i konfiguriranje web kamere
Koristimo MJPG-Streamer za strujanje video feedova iz Raspberry Pi natrag u preglednik putem USB web kamere spojene na Pi. Slijedite upute za postavljanje i izradu koje su navedene ovdje https://blog.miguelgrinberg.com/post/how-to-build-… kako biste MJPG-Streamer radili na Raspberry Pi.
Konfiguriranje Raspberry Pi -a kao pristupne točke/pristupne točke
Kako biste postavili Raspberry Pi kao hostpot, slijedite upute navedene ovdje: https://elinux.org/RPI-Wireless-Hotspot. Konfigurirao sam statički IP Raspberry Pi kao 192.168.42.1, što bismo unijeli u preglednik nakon što se Pi podigne u AP način.
WebIOPi, MJPG-Streamer i WiFi hotspot usluga konfigurirane su za automatsko pokretanje pri pokretanju, što nam omogućuje izravno otvaranje web preglednika i povezivanje s robotom nakon pokretanja. Datoteka rc.local dostupna u repo -u koristi se za pokretanje web kamere pri pokretanju.
Korak 3: Upute za izgradnju/ožičenje
4 GPIO -a Raspberry Pi -a, naime GPIO 9, 11, 23 i 24, spojeni su na L293D IC Driver Driver koji pokreće motore u skladu s tim nakon primanja zahtjeva za makro s web stranice koju poslužuje Webiopi okvir. USB WiFi ključ i USB Logitech web kamera spojeni su na 2 USB priključka dostupna na Raspberry Pi. Banka napajanja 5V 4000 Mah snabdijeva Pi glavnom energijom. 4V 1.5A olovna baterija koristi se za pogon motora.
Napomena: S obzirom da je maksimalna izlazna struja banke napajanja koju sam koristio bila jakih 1000 Mah, morao sam koristiti vanjsku bateriju s olovnom kiselinom za pogon motora. Ako imate banku napajanja koja daje> = 2000Mah, možete izravno pokretati motore s 5V tračnice na Pi -u (ipak ovo ne bih preporučio za motore gladne energije)
Tri ključne pododjeljka projekta LeapMotion Javascript API, WebIOPi i MJPG-Streamer i njihov osnovni rad/postavljanje ukratko su opisani u nastavku.
Korak 4: Razumijevanje WebIOPi okvira
Sučelje prikazano u pregledniku napisano je u HTML -u (Naziv datoteke: index.html) & Javascript, dok je pozadina koja pokreće GPIO -ove zapisana u Pythonu (Naziv datoteke: script.py). Detaljne napomene o stvaranju prilagođene WebApp -e temeljene na okviru WebIOPi priložene su kao bilješke u repozitoriju Bitbucket -a.
Prilagođene makronaredbe definirane u Python skripti mogu se pokrenuti iz HTML datoteke.
Npr: webiopi (). CallMacro ("go_forward"); Ovo je prilagođeni poziv makrou go_forward definiranom u Python skripti koji upravlja procesom okretanja oba motora u smjeru naprijed.
Hijerarhija direktorija gdje se datoteke pohranjuju na Pi prikazana je na priloženoj slici.
Mapa Robot sadrži ove podmape:
- html: sadrži index.html
- python: sadrži script.py
- mjpg-streamer-r63: sadrži datoteke za izgradnju i izvršnu datoteku za pokretanje web kamere
MJPG-Streamer: Video stream uživo s USB web-kamere prema zadanim postavkama radi na priključku 8080 Pi. Da biste ručno pogledali stream, prijeđite na RASPBERRYPI_IP: 8080 u pregledniku nakon uključivanja web kamere.
Kod LeapMotion:
Isječci koda iz primjera navedenih u LeapMotion SDK -u ugrađeni su u datoteku index.html. Leap.js datoteku LeapMotion -a potrebno je dodati u mapu html u direktoriju projekta na Raspberry Pi -ju.
Parametar palmPosition koji šalje LeapMotion koristi se za određivanje makroa koji će se pokrenuti na Raspberry Pi.
Korak 5: Pokretanje projekta
Jednostavno uključite Raspberry Pi i pričekajte otprilike minutu. Vidjet ćete da se pojavljuje novi hotpsot RaspberryPi. Povežite se s ovom žarišnom točkom i otvorite ovu statičku IP adresu u pregledniku: 192.168.42.1:8000. 8000 je zadani port za WebIOPi.
Raspberry Pi se također može konfigurirati za povezivanje s lokalnom WiFi mrežom kao klijent umjesto da se prikazuje kao žarišna točka. Tada biste morali odrediti dinamički IP koji je usmjerivaču dodijeljen Raspberry Pi -u, a zatim ga udariti gore u pregledniku da biste se poigrali s Botom.
Možete ostaviti komentar ako trebate pomoć ili imate pitanja o projektu. Sretan skok!
Cijeli izvorni kodovi su priloženi. Možete ostaviti komentar ako vam je potrebna pomoć oko bilo kojeg dijela izgradnje projekta. Sretan skok!
Preporučeni:
Gimbal za upravljanje kretanjem: 12 koraka
Gimbal za upravljanje kretanjem: Pozdrav svima, moje ime je Harji Nagi. Trenutno sam student druge godine studija elektronike i komunikacijskog inženjerstva na Tehnološkom institutu Pranveer Singh, Kanpur (UP). Imam veliki interes za robotiku, arduino, umjetnu inteligenciju i
Upravljanje kretanjem s Raspberry Pi i LIS3DHTR, troosnim akcelerometrom, pomoću Pythona: 6 koraka
Upravljanje kretanjem pomoću Raspberry Pi i LIS3DHTR, troosnog mjernog mjerača brzine, pomoću Pythona: Ljepota nas okružuje, ali obično moramo hodati po vrtu da bismo to spoznali. - RumiKao što smo mi obrazovana skupina, veliku većinu svoje energije ulažemo radeći prije računala i mobitela. Stoga često dopuštamo svom zdravlju
Arduino robot s udaljenošću, smjerom i stupnjem rotacije (istok, zapad, sjever, jug) kontroliran glasom pomoću Bluetooth modula i autonomnim kretanjem robota .: 6 koraka
Arduino robot s udaljenošću, smjerom i stupnjem rotacije (istok, zapad, sjever, jug) kontroliran glasom pomoću Bluetooth modula i autonomnim kretanjem robota .: Ova uputa objašnjava kako napraviti Arduino robota koji se može pomicati u željenom smjeru (naprijed, natrag , Lijevo, desno, istok, zapad, sjever, jug) potrebna udaljenost u centimetrima pomoću glasovne naredbe. Robot se također može samostalno pomicati
Klizač za upravljanje kretanjem za Time Lapse Rail: 10 koraka (sa slikama)
Klizač za upravljanje kretanjem za Time Lapse Rail: Ova instrukcija objašnjava kako motorizirati time lapse šinu pomoću koračnog motora koji pokreće Arduino. Uglavnom ćemo se usredotočiti na upravljački sklop pokreta koji pokreće koračni motor pod pretpostavkom da već imate tračnicu koju želite motorizirati. Na primjer, kad ne
Robot za odlaganje bombi (Termenatör): 13 koraka (sa slikama)
Robot za uklanjanje bombi (Termenatör): Značajke:* Podržane bespilotne letjelice* Robotska ruka (6 smjerova)* Laserski sustav za gorenje* Sustav kamere (3 kamere)* Sustav za praćenje zaštićen Google naočalama* Sustav bušenja* Ovisno o sustavu bušenja , endoskopska zmijska kamera * Ha