Sadržaj:

MyPetBot (Bot koji vas prati): 10 koraka (sa slikama)
MyPetBot (Bot koji vas prati): 10 koraka (sa slikama)

Video: MyPetBot (Bot koji vas prati): 10 koraka (sa slikama)

Video: MyPetBot (Bot koji vas prati): 10 koraka (sa slikama)
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Novembar
Anonim
Image
Image
MyPetBot (Bot koji vas prati)
MyPetBot (Bot koji vas prati)
MyPetBot (Bot koji vas prati)
MyPetBot (Bot koji vas prati)

Ai je jedna od najljepših primjena matematike. To je u osnovi hrpa matričnih operacija optimiziranih da odgovaraju rezultatu koji tražite. Na sreću postoji mnoštvo alata otvorenog koda koji nam omogućuju da ga iskoristimo.

Prvobitno sam imao ideju davno kada 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 da li se neko lice smije. Mogli biste izbrojati broj pasa u parku. Mogli biste zatvoriti roletne 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.

Supplies

  • Parallax robot: Odabrao sam ovog robota jer mi je ležao okolo, 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 jedan ako želite raditi Ai u pi od maline.
  • Power Bank: Najjednostavniji način upravljanja napajanjem. Radi sa malinom pi 3B+, možda biste htjeli provjeriti radi li sa pi 4.
  • Picamera: Volim koristiti pikameru umjesto USB -a.

Korak 1: Montaža Rovera

Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly
Rover Assembly

Poanta vodiča se uglavnom odnosi na softver, pa ne želim previše ulaziti u detalje o roveru. Radi s ovim robotom, ali bi mogao raditi i sa bilo kojim drugim hardverom. Ne mora čak ni biti za rover, ovo biste mogli koristiti za kameru senzora pokreta.

  1. Pronađite vozilo pod kontrolom Arduina.
  2. Čvrsto omotajte banku napajanja na nju.
  3. Čvrsto umotajte pi maline u njega.
  4. Zalijepite pikameru pod blagim kutom prema vrhu.
  5. Povežite sve zajedno.
  6. Voila!

Korak 2: Raspbian

Raspbian
Raspbian
Raspbian
Raspbian

Koristim malinu pi, ali nema razloga da ne upotrijebite drugi linux … do vas. Mogao bih objaviti plug and play sliku za narezivanje sd kartice, doći ću do nje ako je dovoljno ljudi zainteresirano.

Instalirajte Raspbian: Možete instalirati Raspbian Buster Lite. Nećemo koristiti radnu površinu … Samo ssh Secure Shell veza.

Povežite se na svoj Pi: Prvo se možete povezati na svoj maline pi pomoću Ethernet veze

Postavite svoj WiFi: Sada možete konfigurirati bežičnu vezu

Korak 3: OpenVino

OpenVino
OpenVino

OpenVino je odlična biblioteka koju podržava Intel. Uradili su sjajan posao pri sastavljanju primjera modela i većinu ai okvira učinili kompatibilnom. Ova biblioteka vam je potrebna za Intel Neural Stick.

Instalacija Python3: Morate instalirati python 3.

OpenVino instalacija: 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.

otkucajte u ljusku:

python3

upišite u python:

  • import cv2
  • cv2._ verzija_

Zadnji red trebao bi vratiti '4.1.2-openvino' ili bilo koju verziju openvina. ako ako kaže opencv vaša instalacija nije uspjela …

Korak 4: Preuzmite kôd

Preuzmite kôd
Preuzmite kôd

Prvo instaliramo git. Ukucajte u ljusku:

sudo apt-get install git

Zatim se možemo premjestiti u mapu Dokumenti i preuzeti kod:

  • cd ~/Dokumenti/
  • git clone

Korak 5: FollowMe (Python)

FollowMe (Python)
FollowMe (Python)

Ovo je dio s kojim se želite igrati. Napravite ako vas pratite! Neka te se plaši! Pratite svog psa! Neka prepoznaje izraze 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

Implementacija: Ovdje stavljam korisničko sučelje. Trenutno sam kodirao jednostavno dugme za pokretanje/zaustavljanje i mali preglednik kamere sa kontrolom za zabavu.

Player: Trebalo bi da se koristi na vašem desktop računaru. Za pregled rezultata bota!

FollowMe: Modul koji zaista zabavlja

Postavit ću više detalja o githubu, tako da imam samo jedno mjesto za ažuriranje. Ovo je mesto za kôd

Korak 6: Preuzmite modele

Modeli zaključivanja nisu uključeni u kôd jer su prilično veliki. Ali možete pronaći puno primjera koristeći OpenVino model Zoo

Možete koristiti program za preuzimanje modela ili direktno otići na ovu vezu. U mom slučaju nisam mogao koristiti program za preuzimanje modela sa 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 morate promijeniti kôd. Zabavi se!

Korak 7: Arduino

Arduino
Arduino

Moramo preuzeti kod u prethodnom koraku. Kod za arduino je u njemu!

Kôd je namijenjen pokretanju dva kontinuirana servo -a, 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 koristiti izlaz maline pi direktno za upravljanje motorima … ali arduini rade bolje (Imaju pravi generator frekvencija). Takođe, htio sam maksimalno rasteretiti malinovo pi da bi zaključivanje bilo brže.

Korak 8: GUI

GUI
GUI
GUI
GUI

Ništa otmjeno … Ipak. Mogu dodati neke druge stvari, poput prikaza uživo ili kontrola pokreta. Ali u međuvremenu, jednostavan start i stop će uspjeti.

Ako ga želite testirati, morate ga pokrenuti iz direktorija FollowMe Level, a zatim ga pozvati iz python3:

  • cd ~/Documents/FollowMe
  • python3 Deployment/FollowMe.py

Tada možete pristupiti sučelju u svom pregledniku upisivanjem:

192.168.0.113:8000

sa pravom IP adresom, naravno.

Tu je i video preglednik sa kontrolama … ali ne i s radnim zaključivanjem

python3 Deployment/StreamVideo.py

Korak 9: Servis

To čini Rover samim radom. Usluga je program koji radi u pozadini računara bez korisnika. Provjerite jesu li sve vaše staze apsolutne i imate li ispravna prava ako koristite bilo koju datoteku i usluga će raditi dobro.

Da biste pokrenuli python skriptu kao uslugu, morate referencirati skriptu u datoteci usluge. Servisna datoteka je u kodu preuzetom sa git -a u fascikli Deployment. Ime je FollowMe.service.

Da biste ga kopirali, u ljusku unesite sljedeće:

sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service/etc/systemd/system/

Prilikom prvog kopiranja datoteke potrebno je ažurirati systemctl… ili ponovo pokrenuti sistem:

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 stalnu promjenu stanja.

Malo objašnjenje….

Openvinu su potrebne neke dodatne staze 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šli

Preporučuje se: