Obsah:

Robot Raspberry SPy: 8 krokov (s obrázkami)
Robot Raspberry SPy: 8 krokov (s obrázkami)

Video: Robot Raspberry SPy: 8 krokov (s obrázkami)

Video: Robot Raspberry SPy: 8 krokov (s obrázkami)
Video: How to Make a Raspberry Pi Smart Mirror 2024, Júl
Anonim
Image
Image
Raspberry SPy robot
Raspberry SPy robot

Tento projekt vám umožňuje riadiť robota prostredníctvom webovej stránky a sledovať priamy prenos. Dá sa použiť na špehovanie domácich zvierat, uistenie sa, že vám v peci nič neprihorí, a dokonca aj sledovanie vtákov! DFRobot poskytol modul Raspberry Pi 3 a kameru Raspberry Pi.

Krok 1: Robotická elektronika

Robotická elektronika
Robotická elektronika

Začal som zmontovaním podvozkovej súpravy 2WD MiniQ od spoločnosti DFRobot. Nasunul som kolesá na hriadele motora, potom som ich vložil do konzol a pripevnil k podvozku. Nakoniec som pridal kovové podpery. Teraz bol čas postaviť hlavnú dosku. Ovládač motora L293d bol spájkovaný na miesto spolu s vodičmi vedenými na piny GPIO Raspberry Pi. Ďalej som spájkoval konektor pre batériu, pretože to poskytne hlavné napájanie. Po pridaní zdroja energie som nainštaloval 5V regulátor.

Krok 2: Nastavenie Pi

Nastavenie Pi
Nastavenie Pi

DFRobot ma oslovil a poslal svoj kamerový modul Raspberry Pi 3 a Raspberry Pi. Potom, čo som otvoril boxy, som sa pustil do práce nastavením karty SD. Najprv som prešiel na stránku sťahovania Raspberry Pi a stiahol som si najnovšiu verziu Raspbian. Potom som súbor extrahoval a vložil do vhodného adresára. Súbor.img nemôžete iba kopírovať/prilepiť na kartu SD, musíte ho na kartu „napáliť“. Môžete si stiahnuť nástroj na napaľovanie, ako je Etcher.io, na ľahký prenos obrazu operačného systému. Potom, čo bol.img súbor na mojej SD karte, vložil som ho do Raspberry Pi a dal som mu silu. Asi po 50 sekundách som odpojil kábel a vytiahol SD kartu. Potom som vložil kartu SD späť do počítača a prešiel do priečinka „boot“. Otvoril som poznámkový blok a uložil ho ako prázdny súbor s názvom „ssh“bez prípony. Bol tam tiež súbor, ktorý som pridal, s názvom „wpa_supplicant.conf“a vložil do neho tento text:

sieť = {ssid = psk =}

Potom som kartu uložil a vysunul a vložil späť do Raspberry Pi 3. To by teraz malo umožniť použitie SSH a pripojenie k WiFi.

Krok 3: Príprava fotoaparátu

Príprava fotoaparátu
Príprava fotoaparátu

V predvolenom nastavení je kamera na počítači Pi zakázaná, takže na otvorenie ponuky musíte otvoriť typ terminálu sudo raspi-config. Prejdite na „Možnosti rozhrania“a potom povoľte fotoaparát. Teraz stačí vybrať „Dokončiť“a vložiť plochý kábel kamerového modulu do správnej oblasti Pi.

Krok 4: Inštalácia softvéru

Existuje niekoľko rôznych softvérov, ktoré môžu streamovať video, napríklad vlc a pohyb, ale rozhodol som sa použiť mjpeg-streamer kvôli jeho nízkej latencii a jednoduchej inštalácii. Podľa pokynov na webe urobte klon git https://github.com/jacksonliam/mjpg-streamer.git do priečinka a potom zadajte príkaz sudo apt-get install cmake libjpeg8-dev a nainštalujte potrebné knižnice. Zmeňte svoj adresár na priečinok, ktorý ste stiahli, a potom zadajte príkaz make a sudo make install, aby ste skompilovali softvér. Nakoniec zadajte export LD_LIBRARY_PATH =. a spustite ho zadaním./mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so" K streamu sa dostanete po kliknutí na https://: 8080/stream.html.

Krok 5: Ovládač

Ovládač
Ovládač
Ovládač
Ovládač

Potom prišla časť, ako ovládať Raspberry Pi cez WiFi, pretože Bluetooth má príliš malý dosah. Rozhodol som sa použiť server Flask bežiaci na Raspberry PI a modul ESP8266 ESP12E na odosielanie údajov na neho. ESP8266 má iba jeden analógový vstup, čo znamená, že som nemohol používať joystick priamo, pretože potrebuje dva analógové vstupy. Najlepšou možnosťou bol ADS1115, čo je zariadenie I2C, ktoré číta analógové signály s rozlíšením 16 bitov. Jednoducho som pripojil SDA k 4 a SCL k 5 spolu s VCC a GND. Os joysticku X sa pripája k A0 na ADS1115 a os Y sa pripája k A1. ALE, omylom som vypálil ADS1115, takže som sa musel uchýliť k ďalšej najlepšej veci: tlačidlám! Takže moje nastavenie je doska pre vývojárov ESP8266 Sparkfun Thing s 3 tlačidlami- vpred, vpravo a vľavo. Teraz, keď je jedno stlačené, odošle údaje na otočenie kolies v tomto smere.

Krok 6: Kód pre robota

Kód pre robota
Kód pre robota

Urobil som predchádzajúci projekt, ktorý využíval knižnicu Pi GPIO PWM na ovládanie motorov prostredníctvom json, takže som kód znova upravil tak, aby prijímal údaje prostredníctvom aplikácie Flask. Flask je knižnica Pythonu, ktorá v podstate zmení váš Pi na webový server schopný odosielať a prijímať údaje. Použitím PWM je možné motory ovládať presnejšie v porovnaní s pohonom nádrže. To tiež znamená, že robot môže ísť premenlivou rýchlosťou, nie pevnou. Moja aplikácia v banke je nakonfigurovaná tak, aby zmenila PWM motorov, akonáhle prijme údaje z požiadavky GET prostredníctvom http z ESP12e. Tiež používa knižnicu subprocess. Popen na spustenie skriptu streamovania na pozadí. Na stránku projektu som priložil kód, takže si stačí stiahnuť.

Krok 7: Kód ovládača

Kód bol celkom jednoduchý, stačí odčítať údaje z troch pinov, spustiť ich pomocou príkazov if, aby ste určili smer kolies a nakoniec tieto hodnoty poslať na Raspberry Pi. Doplnok dosky ESP8266 pre Arduino IDE je dodávaný s knižnicou HTTPClient, ktorá spracováva hlavičky a odosielanie údajov. Server Flask musí prijímať údaje prostredníctvom hovoru POST, takže kód začne spojenie s webovým serverom Raspberry Pi, potom k údajom pridá hlavičku označujúcu, že je kódovaný vo formáte JSON, a nakoniec odošle údaje vo forme objektu JSON. Pridal som oneskorenie 40 ms, aby som predišiel preťaženiu údajov Raspberry Pi.

Krok 8: Spustenie Raspberry SPy

Spustenie Raspberry SPy
Spustenie Raspberry SPy
Spustenie Raspberry SPy
Spustenie Raspberry SPy

Všetko, čo je potrebné, je napísať sudo python.py! Mali by ste vidieť rozsvietenú kameru a po prechode na webovú adresu pí s portom 8080 by mal byť prúd viditeľný. Teraz môžete ovládač používať kdekoľvek v dome a mať tiež živý prenos.

Odporúča: