Obsah:

MyPetBot (Bot, ktorý vás nasleduje): 10 krokov (s obrázkami)
MyPetBot (Bot, ktorý vás nasleduje): 10 krokov (s obrázkami)

Video: MyPetBot (Bot, ktorý vás nasleduje): 10 krokov (s obrázkami)

Video: MyPetBot (Bot, ktorý vás nasleduje): 10 krokov (s obrázkami)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Júl
Anonim
Image
Image
MyPetBot (robot, ktorý vás nasleduje)
MyPetBot (robot, ktorý vás nasleduje)
MyPetBot (robot, ktorý vás nasleduje)
MyPetBot (robot, ktorý vás nasleduje)

Ai je jednou z najkrajších aplikácií matematiky. Je to v podstate veľa operácií matíc optimalizovaných tak, aby zodpovedali výsledku, ktorý hľadáte. Našťastie existuje veľa nástrojov s otvoreným zdrojovým kódom, ktoré nám umožňujú ich použitie.

Pôvodne som mal túto myšlienku už dávno, keď som pracoval na vodopáde, ktorý bol deaktivovaný hádzaním ľudí. Používal som ultrazvukové senzory a neskoro som zistil, že nefungujú, keď sú mokré … Nebola to zábavná skúsenosť. Skončili sme pomocou veľkého tlačidla, ktoré by ľudia stlačili, keby chceli prejsť. Dopadlo to dobre, pretože bolo horúco a ľudia radi vlhli, ale problém mi ostal v hlave … Ako rozpoznať ľudí a aktivovať reakciu.

Rozprávam tento príbeh, pretože chcem poukázať na to, že tento princíp je možné použiť pre mnoho ďalších aplikácií! Sledovanie tváre s hračkou je len jedným z nich. V prípade interaktívnych inštalácií môžete vykonávať akékoľvek činnosti. Na zistenie, či sa tvár usmieva, môžete použiť model. Mohli by ste spočítať počet psov v parku. Keď okolo idú ľudia, môžete zatiahnuť žalúzie. Alebo … vytvorte ovládač pre svoju základňu nintendo podľa polohy tela … Môžete si stiahnuť mnoho ďalších modelov Ai, ktoré robia akékoľvek veci.

Existuje niekoľko návodov, ako zabezpečiť, aby Ai inferencia fungovala s malinovým pi. Som tu, aby som vás naučil, ako vytvoriť dieru integrovanú do samostatne fungujúcej jednotky. Hneď ako sa váš robot spustí, spustí potrebné programy.

Zásoby

  • Paralaxný robot: Vybral som si tohto robota, pretože som ho mal položeného, ale prácu zvládne každý robot, ktorý je možné ovládať arduinom.
  • Raspberry pi: Odporúčam aspoň malinový pi 3B+.
  • Intel Neural Stick: Inferenčná frekvencia sa pohybuje od jednej za sekundu do 8. Jeden naozaj potrebujete, ak chcete robiť Ai v malinovom pi.
  • Power Bank: Najľahší spôsob správy energie. Funguje s malinou pi 3B+, možno budete chcieť skontrolovať, či funguje s pi 4.
  • Picamera: Rád používam picameru namiesto USB.

Krok 1: Montáž roveru

Zostava Rover
Zostava Rover
Zostava Rover
Zostava Rover
Zostava Rover
Zostava Rover

Pointa tutoriálu je hlavne o softvéri, takže sa mi nechce príliš rozpisovať o detailoch rovera. Funguje to s týmto robotom, ale skutočne by to mohlo fungovať s akýmkoľvek iným hardvérom. Nemusí to byť ani pre rover, môžete to použiť pre kameru so snímačom pohybu.

  1. Nájdite si vozidlo ovládané Arduino.
  2. Pevne k nemu zabaľte powerbanku.
  3. Pevne k nemu zabaľte malinový koláč.
  4. Pikameru prilepte pod miernym uhlom smerom k vrchu.
  5. Spojte všetko dohromady.
  6. Voila!

Krok 2: Raspbian

Raspbian
Raspbian
Raspbian
Raspbian

Používam malinový pi, ale nie je dôvod, aby ste nepoužívali iný Linux … je to na vás. Mohol by som uvoľniť obrázok typu plug and play na napaľovanie karty SD, k tomu sa dostanem, ak bude mať záujem dostatok ľudí.

Nainštalujte Raspbian: Môžete nainštalovať Raspbian Buster Lite. Nebudeme používať pracovnú plochu … Iba ssh Secure Shell pripojenie.

Pripojte sa k svojmu Pi: Najprv sa môžete pripojiť k svojmu malinovému pi pomocou ethernetového pripojenia

Nastavte si wifi: Teraz môžete nakonfigurovať svoje bezdrôtové pripojenie

Krok 3: OpenVino

OpenVino
OpenVino

OpenVino je skvelá knižnica podporovaná spoločnosťou Intel. Odviedli skvelú prácu pri zostavovaní vzorových modelov a urobili väčšinu kompatibilných s ai framework. Túto knižnicu potrebujete pre procesor Intel Neural Stick.

Inštalácia Pythonu 3: Musíte nainštalovať python 3.

Inštalácia OpenVino: Akonáhle sa to stane, uvidíte riadok "[setupvars.sh] Prostredie OpenVINO inicializované" vždy, keď sa pripojíte k malinovému pi.

OpenVino je rozšírením opencv. Na otestovanie môžete spustiť python3 a importovať cv2.

napíšte do škrupiny:

python3

napíšte do pythonu:

  • import cv2
  • cv2._ verzia_

Posledný riadok by mal vrátiť „4.1.2-openvino“alebo akúkoľvek verziu openvino. ak ak hovorí opencv, vaša inštalácia nefungovala …

Krok 4: Stiahnite si kód

Stiahnite si kód
Stiahnite si kód

Najprv nainštalujeme git. Napíšte do škrupiny:

sudo apt-get install git

Potom sa môžeme presunúť do priečinka Dokumenty a stiahnuť kód:

  • cd ~/Dokumenty/
  • git clone

Krok 5: FollowMe (Python)

FollowMe (Python)
FollowMe (Python)

Toto je časť, s ktorou sa chcete hrať. Urobte, ak vás nasleduje! Nech sa toho bojíte! Nasledujte svojho psa! Rozpoznajte výrazy tváre !! Vystrašte svoju mačku !!! Čokoľvek chcete.

Nájdete tu štyri hlavné priečinky: Arduino, Deployment, Player a FollowMe:

Arduino: Viac o tom v ďalšej časti

Nasadenie: Tu som umiestnil používateľské rozhranie. Práve teraz som kódoval jednoduché tlačidlo štart/stop a malý prehliadač kamier s ovládaním, čo je len zábava.

Hráč: Má byť použitý vo vašom stolnom počítači. Za kontrolu výstupu robota!

FollowMe: Modul, ktorý robí skutočnú zábavu

Podrobnejšie informácie uvediem na github, aby bolo k dispozícii iba jedno miesto na aktualizáciu. Toto je miesto pre kód

Krok 6: Stiahnite si modely

Modely na odvodenie nie sú zahrnuté v kóde, pretože sú dosť veľké. Ale môžete nájsť veľa príkladov pomocou OpenVino modelu Zoo

Môžete použiť nástroj na stiahnutie modelu alebo ísť priamo na tento odkaz. V mojom prípade som nemohol použiť sťahovač modelov z inštalácie Raspberry Pi …

Potom skopírujte model do priečinka s názvom Modely s:

  • cd ~/Dokumenty/FollowMe
  • Modely mkdir
  • CD modely
  • wget
  • wget

Vždy potrebujete.xml a.bin.

Môžete si stiahnuť ľubovoľný požadovaný model … Budete však musieť zmeniť kód. Bavte sa!

Krok 7: Arduino

Arduino
Arduino

V predchádzajúcom kroku musíme stiahnuť kód. Kód pre arduino je v ňom!

Kód je určený na pohon dvoch nepretržitých serv, ak ste zvolili inú konfiguráciu, musíte kód zmeniť.

V zásade to robí dve veci. Komunikuje s počítačom a aktivuje serva zvolenou rýchlosťou.

Mohol by som nám dať výstup malinového pi priamo na ovládanie motorov … ale arduino funguje lepšie (Majú skutočný frekvenčný generátor). Tiež som chcel vyložiť malinový pi čo najviac, aby bol záver rýchlejší.

Krok 8: GUI

GUI
GUI
GUI
GUI

Nič vymyslené … Zatiaľ. Môžem pridať ďalšie veci, ako napríklad živé zobrazenie alebo ovládanie pohybu. Medzitým však postačí jednoduchý štart a zastávka.

Ak ho chcete otestovať, musíte ho spustiť z adresára FollowMe Level a potom ho zavolať z python3:

  • cd ~/Dokumenty/FollowMe
  • nasadenie python3/FollowMe.py

Potom budete mať prístup k rozhraniu vo svojom prehliadači zadaním:

192.168.0.113:8000

samozrejme so správnou IP adresou.

K dispozícii je tiež prehliadač videa s ovládacími prvkami … ale nie s pracovným záverom

nasadenie python3/StreamVideo.py

Krok 9: Služba

Vďaka tomu Rover funguje sám. Služba je program, ktorý beží na pozadí počítača bez používateľa. Zaistite, aby VŠETKY VAŠE CESTY boli úplné a aby ste mali správne práva, ak použijete akékoľvek súbory a služba bude fungovať správne.

Ak chcete spustiť skript python ako službu, musíte naň odkazovať v súbore služby. Servisný súbor je v kóde stiahnutom z gitu v priečinku Deployment. Názov je FollowMe.service.

Ak ho chcete skopírovať, zadajte do shellu nasledujúce:

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

Pri prvom kopírovaní súboru potrebujete aktualizovať systém… alebo reštartovať počítač:

sudo systemctl daemon-reload

A začať:

sudo systemctl start FollowMe

Môžete tiež použiť príkazy zastaviť, povoliť a zakázať. Posledné dve slúžia na trvalú zmenu stavu.

Malé vysvetlenie….

Aby Openvino fungovalo, potrebuje v systémových premenných niekoľko ďalších ciest. Bežná inštalácia bohužiaľ nebude fungovať ako služba. Tento súbor teda potrebujete na nastavenie premenných.

Všimnite si, že moja inštalácia je pre python 3.7, preto existuje premenná, ktorú budete musieť upraviť … Veľa šťastia!

Tento súbor odkazuje na skript python v absolútnej ceste:

/home/pi/Documents/FollowMe/Deployment/FollowMe.py

Krok 10: To je ono! Bavte sa

Komentáre? vždy vítaný

Odporúča: