Sadržaj:
- Pribor
- Korak 1: Montaža Rovera
- Korak 2: Raspbian
- Korak 3: OpenVino
- Korak 4: Preuzmite kôd
- Korak 5: FollowMe (Python)
- Korak 6: Preuzmite modele
- Korak 7: Arduino
- Korak 8: GUI
- Korak 9: Servis
- Korak 10: To je to! Zabavi se
Video: MyPetBot (Bot koji vas prati): 10 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:33
Ai je jedna od najljepših primjena matematike. To je u osnovi hrpa matričnih operacija optimiziranih za rezultat koji tražite. Na sreću postoji mnoštvo alata otvorenog koda koji nam omogućuju da ga iskoristimo.
Ideja mi je prvotno pala na pamet kad sam radio na vodopadu koji su deaktivirali ljudi koji su prolazili bacanje. Koristio sam ultrazvučne senzore i prekasno sam otkrio da ne rade previše kad su mokri … To nije bilo zabavno iskustvo. Na kraju smo koristili veliko dugme koje bi ljudi pritisnuli da žele proći. Ispalo je dobro jer je bilo vruće i ljudi su se voljeli smočiti, ali problem mi je ostao u glavi … Kako otkriti ljude i aktivirati reakciju.
Pričam ovu priču jer želim naglasiti da se ovaj princip može koristiti za tone drugih aplikacija! Pratiti svoje lice igračkom samo je jedan od njih. Za interaktivne instalacije možete učiniti bilo što. Pomoću modela možete otkriti je li se neko lice nasmiješilo. Mogli biste izbrojati broj pasa u parku. Mogli biste zatvoriti rolete kad ljudi prolaze. Ili … napravite kontroler za svoju nintendo bazu prema položaju vašeg tijela …. Možete preuzeti mnoge druge Ai modele koji rade bilo kakve stvari.
Postoji nekoliko vodiča o tome kako postići da Ai zaključivanje radi s malinom pi. Ovdje sam da vas naučim kako pretvoriti rupu u samostalnu radnu jedinicu. Čim se vaš robot pokrene, pokrenut će potrebne programe.
Pribor
- Parallax robot: Odabrao sam ovog robota jer sam ga imao položiti, ali svaki robot koji se može kontrolirati pomoću arduina odradit će posao.
- Malina pi: Preporučujem barem malinu pi 3B+.
- Intel Neural Stick: Stopa zaključivanja ide od jedan u sekundi do 8. Zaista vam je potreban ako želite raditi Ai u pi od maline.
- Power Bank: Najjednostavniji način upravljanja napajanjem. Radi s malinom pi 3B+, možda biste htjeli provjeriti radi li s pi 4.
- Picamera: Volim koristiti pikameru umjesto USB -a.
Korak 1: Montaža Rovera
Poanta vodiča uglavnom se odnosi na softver, pa ne želim previše ulaziti u detalje o roveru. Radi s ovim robotom, ali mogao bi raditi i s bilo kojim drugim hardverom. Ne mora čak ni biti za rover, ovo biste mogli koristiti za kameru senzora pokreta.
- Pronađite vozilo s Arduinovim upravljanjem.
- Čvrsto omotajte banku energije na nju.
- Čvrsto zamotajte pi maline u njega.
- Zalijepite pikameru pod blagim kutom prema vrhu.
- Povežite sve zajedno.
- Voila!
Korak 2: Raspbian
Koristim malinu pi, ali nema razloga da ne upotrijebite drugi linux … do vas. Mogao bih objaviti plug and play sliku za snimanje sd kartice, doći ću do nje ako zainteresira dovoljno ljudi.
Instalirajte Raspbian: Možete instalirati Raspbian Buster Lite. Nećemo koristiti radnu površinu … Samo ssh Secure Shell veza.
Povežite se sa svojim Pi -jem: Prvo se možete povezati sa svojim malinovim pi -jem putem Ethernet veze
Postavite svoj WiFi: Sada možete konfigurirati bežičnu vezu
Korak 3: OpenVino
OpenVino je izvrsna knjižnica koju podržava Intel. Napravili su sjajan posao pri sastavljanju primjera modela i učinili su većinu ai framework -a kompatibilnom. Ova vam je knjižnica potrebna za Intel Neural Stick.
Instalacija Python3: Morate instalirati python 3.
Instalacija OpenVina: Nakon što to učinite, vidjet ćete redak "[setupvars.sh] OpenVINO okruženje inicijalizirano" svaki put kada se povežete na malinu pi.
OpenVino je proširenje opencv -a. Da biste ga testirali, možete pokrenuti python3 i uvesti cv2.
upišite u ljusku:
python3
upišite u python:
- uvoz cv2
- cv2._ verzija_
Zadnji redak trebao bi vratiti '4.1.2-openvino' ili bilo koju verziju openvina. ako ako kaže opencv, vaša instalacija nije radila …
Korak 4: Preuzmite kôd
Prvo instaliramo git. U ljusku unesite:
sudo apt-get install git
Zatim se možemo premjestiti u mapu Dokumenti i preuzeti kod:
- cd ~/Dokumenti/
- git clone
Korak 5: FollowMe (Python)
Ovo je dio s kojim se želite igrati. Napravi ako te slijedi! Neka vas se plaši! Pratite svog psa! Neka prepozna prepoznavanje lica !! Uznemiri svoju mačku !!! Sve što želite.
Naći ćete četiri glavne mape: Arduino, Deployment, Player i FollowMe:
Arduino: Više o tome u sljedećem odjeljku
Uvođenje: Ovdje sam stavio korisničko sučelje. Trenutno sam kodirao jednostavan start/stop gumb i mali preglednik fotoaparata s kontrolom za zabavu.
Player: namjerava se koristiti na vašem stolnom računalu. Za pregled rezultata bota!
FollowMe: Modul koji pravi užitak
Postavit ću više detalja o githubu, tako da imam samo jedno mjesto za ažuriranje. Ovo je mjesto za kôd
Korak 6: Preuzmite modele
Modeli zaključivanja nisu uključeni u kôd jer su prilično veliki. No, možete pronaći puno primjera koristeći OpenVino model Zoo
Možete upotrijebiti program za preuzimanje modela ili izravno baciti ovu vezu. U mom slučaju nisam mogao koristiti program za preuzimanje modela iz svoje maline pi instalacije …
Zatim kopirajte model u mapu pod nazivom Modeli sa:
- cd ~/Documents/FollowMe
- mkdir modeli
- cd modeli
- wget
- wget
Uvijek su vam potrebni.xml i.bin.
Možete preuzeti bilo koji model koji želite … Ali kôd ćete morati promijeniti. Zabavi se!
Korak 7: Arduino
Moramo preuzeti kod u prethodnom koraku. Kod za arduino je u njemu!
Kôd je namijenjen pokretanju dva kontinuirana servo pogona, ako ste odabrali drugu konfiguraciju, morate promijeniti kôd.
U osnovi radi dvije stvari. Komunicira s računalom i aktivira servo upravljače odabranom brzinom.
Mogao bih nam izvesti podatke o malini pi izravno za upravljanje motorima … ali arduini rade bolje (imaju pravi generator frekvencija). Također, htio sam rasteretiti malinu pi što je više moguće kako bi zaključivanje bilo brže.
Korak 8: GUI
Ništa otmjeno … Ipak. Mogu dodati neke druge stvari, poput prikaza uživo ili kontrola pokreta. No, u međuvremenu će jednostavan start i stop uspjeti.
Ako ga želite testirati, morate ga pokrenuti iz direktorija FollowMe Level, a zatim ga nazvati s python3:
- cd ~/Documents/FollowMe
- python3 Deployment/FollowMe.py
Tada možete pristupiti sučelju u svom pregledniku upisivanjem:
192.168.0.113:8000
s pravom IP adresom naravno.
Tu je i preglednik videozapisa s kontrolama … ali ne i s radnim zaključivanjem
python3 implementacija/StreamVideo.py
Korak 9: Servis
Zbog toga Rover radi sam. Usluga je program koji radi u pozadini računala bez korisnika. Provjerite jesu li sve vaše staze apsolutne i imate li točna prava ako koristite bilo koju datoteku i usluga će raditi dobro.
Da biste pokrenuli python skriptu kao uslugu, morate se referencirati skriptu u datoteci usluge. Datoteka usluge nalazi se u kodu preuzetom s git -a u mapi Deployment. Naziv je FollowMe.service.
Za kopiranje upišite sljedeće u ljusku:
sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service/etc/systemd/system/
Prilikom prvog kopiranja datoteke trebate ažurirati systemctl … ili ponovno pokrenuti sustav:
sudo systemctl daemon-reload
I za početak:
sudo systemctl start FollowMe
Također možete koristiti naredbe stop, omogućiti i onemogućiti. Posljednja dva služe za trajnu promjenu stanja.
Malo objašnjenje ….
Openvinu su potrebni neki dodatni putevi u sistemskim varijablama da bi radio. Nažalost, normalna instalacija neće funkcionirati kao usluga. Dakle, potrebna vam je ova datoteka za postavljanje varijabli.
Primijetite da je moja instalacija za python 3.7 stoga postoji varijabla koju ćete možda morati prilagoditi … Sretno!
Ova datoteka upućuje na python skriptu u apsolutnoj putanji:
/home/pi/Documents/FollowMe/Deployment/FollowMe.py
Korak 10: To je to! Zabavi se
Komentari? Uvijek dobrodošao
Preporučeni:
Arduino - Robot za rješavanje labirinta (mikro miš) Robot koji prati zid: 6 koraka (sa slikama)
Arduino | Robot za rješavanje labirinta (MicroMouse) Zidni robot: Dobro došli, ja sam Isaac i ovo je moj prvi robot "Striker v1.0". Ovaj je robot dizajniran za rješavanje jednostavnog labirinta. Na natjecanju smo imali dva labirinta i robota uspio ih je identificirati. Sve druge promjene u labirintu mogu zahtijevati promjenu
Napredni robot koji prati liniju: 22 koraka (sa slikama)
Robot za praćenje naprednih linija: Ovo je napredni robot koji prati liniju temeljen na Teensy 3.6 i QTRX linijskom senzoru koji sam izgradio i na kojem radim već duže vrijeme. Postoje neka velika poboljšanja u dizajnu i performansama od mojih ranijih robota koji slijede. T
Ljudski robot koji prati Arduino Uno ispod 20 USD: 9 koraka
Robot koji slijedi čovjeka koristi Arduino Uno Ispod 20 USD: pa sam napravio ovog robota prije otprilike godinu dana i svidjelo mi se da vas može pratiti bilo gdje i svugdje. ovo je najbolja alternativa za psa. i dalje je sa mnom. Imam i youtube kanal na kojem možete vidjeti postupak izrade u vi
Robot koji prati liniju pomoću TIVA mikrokontrolera TM4C1233H6PM: 3 koraka
Robot za praćenje linija pomoću TIVA mikrokontrolera TM4C1233H6PM: Robot za praćenje linija svestran je stroj koji se koristi za otkrivanje i uklanjanje tamnih linija koje su iscrtane na bijeloj površini. Budući da se ovaj robot proizvodi pomoću matične ploče, bit će ga iznimno lako izgraditi. Ovaj sustav se može spojiti unutar
Robot koji prati liniju temeljenu na PID-u s nizom senzora POLOLU QTR 8RC: 6 koraka (sa slikama)
Robot koji prati liniju temeljenu na PID-u s nizom senzora POLOLU QTR 8RC: Zdravo! Ovo je moje prvo pisanje o instrukcijama, a danas ću vas odvesti niz cestu i objasniti kako ojačati liniju temeljenu na PID-u nakon robota pomoću QTR-8RC senzorski niz. Prije nego što krenemo u zgradu robota, moramo razumjeti