Obsah:
- Krok 1: Hardvér
- Krok 2: Nastavenie Raspberry Pi
- Krok 3: Manipulácia s pohybmi (server Bluetooth)
- Krok 4: Aplikácia pre Android (klient Bluetooth)
- Krok 5: Pripojenie hardvéru
- Krok 6: Streamovanie
- Krok 7: Jazdite
Video: Dron poháňaný Raspberry Pi, Android, IoT a Bluetooth: 7 krokov (s obrázkami)
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Tento kompaktný, mobilný počítač, ktorý používa palubnú logiku Raspberry Pi, vytvorí miestny port, ktorý streamuje video v reálnom čase a súčasne vytvára zásuvky Bluetooth na čítanie hodnôt odosielaných vlastnou aplikáciou pre Android. Aplikácia sa synchronizuje s dronom a pomocou používateľských vstupov okamžite odosiela dronovi pokyny.
Tento projekt je dosť ťažké vytvoriť od začiatku. Našťastie nasledujúce informácie poskytnú prehľad pre aplikácie viacerých dronov. K dispozícii je všetok softvér a návrhy obvodov súvisiace s týmto projektom. Neváhajte kód upraviť a zdieľať podľa svojich predstáv. Používajte poskytnuté informácie zodpovedne a neváhajte zanechať komentár nižšie.
Krok 1: Hardvér
Nasleduje zoznam hardvéru, ktorý som použil.
- Raspberry Pi 3 Model B
- Modul kamery Raspberry PI
- Ovládač motora L298N
- 2, jednosmerné motory
- Klávesnica, akýkoľvek monitor, myš, ethernetový kábel a kábel HDMI (pre pí)
- 8 GB karta microSD
- Skrutky, pásky, atď.
- 2 kolieska
- Zariadenie s Androidom Bluetooth (môj telefón)
- 2, 18650 buniek
- 5 voltový regulátor
- Počítač, na ktorom je možné aplikáciu naprogramovať
Raspberry Pi: Pre vyššie rozlíšenia streamu (alebo pre začiatočníkov) by som odporučil najnovšiu verziu modelu B, zatiaľ čo kompaktnejšie verzie môžu používať buď najnovší model A+, alebo Pi Zero (verzia fotoaparátu). Pamätajte si, že ak používate malinový pi nula, budete naň potrebovať Bluetooth a/alebo WiFi dongle. Tento tutoriál predpokladá, že používate Raspberry Pi 3 B.
Vodič motora: Použil som L298N, aj keď by mal fungovať akýkoľvek ovládač motora. Zaistite iba to, aby zvládol napätie a prúd vašich motorov.
2 jednosmerné motory: Uistite sa, že zvládnu hmotnosť vášho drona.
Telo: Používa sa aj na uchytenie všetkých komponentov. Tvrdý plast alebo hliník sú zvyčajne trvanlivým a ľahkým materiálom na použitie. Na dosiahnutie optimálnych výsledkov je možné použiť dokonca aj 3D tlačiareň.
Zdroj energie: Je to takmer vždy najťažšie rozhodnutie pri výbere dielov. Potrebná batéria závisí od odberu prúdu. Pre aplikácie s nízkym výkonom (napríklad 1 alebo 2 ampéry) by mala stačiť 9V batéria. Pre vyšší prúd odporúčam buď lítium -iónovú batériu 18650 alebo lítium -polymérovú batériu, pretože sú ľahké, na svoju veľkosť pojmú veľa energie a dajú sa nabíjať.
2 kolesá: Len sa uistite, že vaše kolesá majú rovnakú veľkosť otvoru ako hriadeľ vášho motora. Zaistite tiež, aby boli priemery kolies dostatočne veľké pre váš dron. Pretože ide o viacero možných variácií a prevedení tohto projektu, je možné použiť ich rôzne typy a veľkosti kolies.
Regulátory napätia: Na napájanie pí pomocou batérie je potrebný 5 voltový regulátor. Použil som buck prevodník LM2596 DC-DC.
Väčšina produktov v odkazoch bola použitá v tomto projekte a boli to najlepšie ponuky, ktoré som v tej dobe mohol nájsť.
Teraz, keď máte všetko, čo potrebujete, nastavíme pi.
Krok 2: Nastavenie Raspberry Pi
Tento krok vám ukáže, ako nastaviť Raspberry Pi, aby ste mohli začať s kódovaním. Ak už máte nastavenie pí v programe Raspbian, neváhajte a pokračujte ďalším krokom.
Najprv si musíte stiahnuť operačný systém pre malinu. Získajte NOOBS, ak ste začiatočník. Ak už máte značné skúsenosti s malinovým pi, možno vás bude zaujímať Raspbian. Budem predpokladať, že na tento tutoriál používate NOOBS.
Počas sťahovania naformátujte kartu SD pomocou formátovača SD.
Teraz rozbaľte a skopírujte obsah sťahovaného súboru do koreňa vašej karty SD. Root jednoducho znamená, že sa nenachádza v žiadnych priečinkoch. Ak bol vytvorený nový priečinok na uloženie všetkých extrahovaných súborov, skopírujte tento súbor.
Potom pripojte kartu SD k pí. Pri vkladaní by mal buď „zacvaknúť“alebo by mal sedieť v spodnej časti písmena pi.
Pripojte myš a klávesnicu k pí. Potom pripojte kábel HDMI k pí z monitora. Nakoniec do pí zapojte 3 -ampérový adaptér do zásuvky micro USB. Napriek tomu, že sa odporúča použiť sieťovú zásuvku, ako zdroj napájania som použil prenosný počítač (USB z prenosného počítača na Micro USB v pí).
Nechajte pi urobiť svoje. Ak sa zobrazí výzva, vyberte Raspbian a nechajte ho nainštalovať. Postupujte podľa pokynov v inštalátore. Dokončenie môže chvíľu trvať. Ak je všetko v poriadku, mala by sa vám zobraziť pracovná plocha podobná tej, ktorá je uvedená vyššie.
Zapojte ethernetový kábel zo smerovača do konektora pí. Potom otvorte príkazový riadok (Čierna ikona „poľa“v hornej časti obrazovky). Na pripojenie k bezdrôtovej sieti budete musieť aktualizovať pi prostredníctvom káblovej siete.
Potom kliknite na ikonu Kábel v hornej časti obrazovky. Keď sa zobrazí výzva, zadajte podrobnosti o svojej sieti.
Zadajte text do nasledujúceho riadku presne podľa obrázka a stlačte kláves Enter. Tým sa aktualizuje pí. Môže to chvíľu trvať. Len nech to urobí svoje.
sudo apt-get aktualizácia
Potom zadajte kód do ďalšieho riadka. Aj to bude nejaký čas trvať. Nerobte nič, kým nie je hotový.
sudo apt-get dist-upgrade
Teraz by ste mali byť schopní odpojiť ethernetový kábel, kliknúť na ikonu bezdrôtového pripojenia v hornej časti obrazovky, zadať informácie o svojich sieťach a nakoniec sa k sieti pripojiť bezdrôtovo.
Teraz kódujme časť drona, ktorá zvláda pohyby.
Krok 3: Manipulácia s pohybmi (server Bluetooth)
Na manipuláciu s pohybmi sa používa programovací jazyk „Python 3“. Správy, ktoré informujú robota, aby sa pohyboval, budú odoslané z aplikácie Bluetooth.
Najprv musíte nainštalovať knižnicu Bluetooth. Ak to chcete urobiť, zadajte nasledujúce príkazy.
sudo apt-get aktualizácia
sudo apt-get nainštalovať bluetooth
sudo apt-get install bluez
sudo apt-get install python-bluez
Teraz na pracovnej ploche kliknite na ikonu ponuky Štart, potom na Programovanie a potom na Python 3. Potom na paneli s nástrojmi kliknite na Súbor, nový. Malo by sa objaviť nové okno.
Skopírujte obsah prílohy „bluetoothpi.rtf“do okna.
Na paneli s nástrojmi kliknite na položku Súbor, Uložiť ako. Uložte ho do adresára/home/pi/Desktop/ako pohyby.py.
Teraz vyskúšajte kód a kliknite na ikonu Bluetooth v pravom hornom rohu obrazovky. Spárujte malinový pi so zariadením Android. Stiahnite si aplikáciu s názvom BlueTerm do svojho zariadenia s Androidom. Potom do príkazového riadka zadajte nasledujúci kód tučným písmom. Tým sa spustí kód pythonu.
sudo python /home/pi/Desktop/movements.py
Na pí by sa mal objaviť text „Čakanie na spojenia“.
Spustite BlueTerm a kliknite na ikonu možností a potom na tlačidlo „vyhľadať pripojenia“.
V aplikácii by sa mal objaviť názov vášho malinového pi. Kliknite na tlačidlo s názvom pí. Na pí by sa mal objaviť text „Prijaté pripojenie od“a za ním adresa. Teraz čokoľvek, čo napíšete do telefónu, by sa malo zobraziť na pi.
Úspešne ste kódovali svoju vlastnú serverovú zásuvku Bluetooth!
Krok 4: Aplikácia pre Android (klient Bluetooth)
Stiahnite si Android Studio tu. Nainštalujte ho a postupujte podľa pokynov uvedených v inštalátore.
Začnite nový projekt. Vytvorte prázdnu aktivitu s názvom MainActivity.
Skopírujte obsah prílohy „Logic.txt“do súboru (karta) „MainActivity.java“. To obsahuje všetku logiku aplikácie. V spodnej časti súboru bude možno potrebné zmeniť názov zariadenia.
Potom skopírujte obsah súboru „GUI“do súboru (karta) „activity_main.xml“. Obsahuje veľmi jednoduché GUI pre aplikáciu.
Teraz budete musieť do aplikácie importovať tlačidlá šípok (obrázky). Rozbaľte prílohu Arrows.zip. V ľavej časti aplikácie Android Studio otvorte štruktúru súborov a zobrazte aplikáciu, rozlíšenie, minimapu. Skopírujte obrázky šípok (súbory PNG), kliknite pravým tlačidlom myši na minimapu súboru a vložte obrázky do súboru, pričom názvy šípok nechajte rovnaké. Po dokončení by mal vyzerať ako na obrázku.
Nakoniec skopírujte obsah súboru „Manifest“do svojho súboru (karta) „AndroidManifest.xml“.
Na otestovanie aplikácie ju budete musieť spustiť na svojom zariadení. Na to budete musieť nastaviť zariadenie na režim vývojára a povoliť ladenie USB. U väčšiny zariadení budete musieť prejsť na „Nastavenia“, „O telefóne“, posuňte sa nadol a sedemkrát kliknúť na „Zostaviť číslo“, kým sa nezobrazí správa „Teraz ste vývojár!“Vráťte sa a mala by sa vám zobraziť karta „Možnosti vývojára“. Kliknite na ňu a povoľte ladenie USB.
Pripojte zariadenie Android k počítaču pomocou USB, kliknite na ikonu spustenia v aplikácii Android Studio a vyberte zariadenie.
Na pí spustite kód pythonu vytvorený v kroku 3 zadaním príkazu hrubým písmom:
sudo python /home/pi/Desktop/movements.py
Potom v aplikácii kliknite na tlačidlo pripojenia. Keď sú pripojené, v aplikácii by sa teraz mali objaviť niektoré šípky. Kedykoľvek naň kliknete, aktualizuje sa stav „presunu“pí.
Je to v poriadku, ak pozadie aplikácie obsahuje chybu. To bude opravené neskôr.
Práve ste si vytvorili vlastnú aplikáciu a klienta Bluetooth.
Krok 5: Pripojenie hardvéru
Spájkujte spoje vo vyššie uvedenom diagrame. Pripojte modul fotoaparátu aj k pí.
Spustite aplikáciu a spustite súbor pohyby.py. Ak sa motory pri používaní aplikácie pohybujú správne, pokojne vložte všetky komponenty do dokončenej škrupiny pre dron. Možno budete musieť upraviť hodnoty kódov „VYSOKÉ“a „NÍZKE“, aby sa pohybovali správne.
V ďalšom kroku pridáme funkciu streamovania drona.
Krok 6: Streamovanie
Existuje niekoľko spôsobov, ako streamovať video pomocou Pi, ale použitie uv4l je zďaleka najľahší spôsob, ako prakticky bez oneskorenia.
Len na okraj, ak ste už dron zložili a nemôžete ho pripojiť k monitoru a klávesnici, budete do neho musieť použiť SSH. Ak to chcete urobiť, stiahnite si Putty do počítača. Otvorte ho a zadajte adresu IP svojej maliny (adresu IP zistíte zadaním príkazu ifconfig). Zobrazí sa výzva na zadanie používateľského mena a hesla. Predvolené používateľské meno a heslo je pi a malina. Teraz čokoľvek, čo zadáte do príkazového poľa, bude ako zadávanie príkazov priamo do drona.
nastavenie uv4l
Zadajte tento príkaz:
sudo nano /etc/apt/sources.list
Pridajte nasledujúci riadok do posledného riadka súboru.
deb https://www.linux-projects.org/listing/uv4l_repo/raspbian/ jessie main
Ukončite a uložte súbor stlačením klávesov Ctrl-X a zadaním textu Áno.
Potom zadajte nasledujúci riadok a stlačte kláves Enter.
sudo apt-get aktualizácia
potom toto:
sudo apt-get install uv4l uv4l-raspicam
Zadajte nasledujúce riadky po riadkoch. Pred zadaním ďalšieho riadka počkajte, kým dokončí svoju činnosť.
sudo apt-get install uv4l-raspicam-extras
reštartujte službu sudo uv4l_raspicam
sudo rpi-update
sudo apt-get install uv4l-server uv4l-uvc uv4l-xscreen uv4l-mjpegstream uv4l-dummy uv4l-raspidisp
sudo apt-get install uv4l-webrtc
sudo apt-get install uv4l-xmpp-bridge
sudo apt-get install uv4l-raspidisp-extras
Potom stačí, ak zadáte nasledujúci príkaz, aby ste začali streamovať (nahraďte „raspberrypi“adresou IP/ názvom hostiteľa vo vašej sieti)
cvlc https:// raspberrypi: 8080/stream/video.mjpeg
Spustí sa streamovanie videa v reálnom čase na porte 8080. Stream by sa teraz mal vidieť na pozadí vašej aplikácie. Ak chcete stream zobraziť v ľubovoľnom prehliadači, zadajte túto adresu URL (kde „raspberrypi“je adresa IP vášho drones).
https:// raspberrypi: 8080/stream/video.mjpeg
Blahoželáme, dokončili ste svoj špionážny dron.
Krok 7: Jazdite
Otočte vypínač a začnite skúmať.
Ak chcete vedieť, ako vyrobiť ešte niečo, opýtajte sa ma a uvidíme, čo môžem urobiť.
Ak máte akékoľvek otázky, napíšte ich nižšie a ja sa pokúsim na ne odpovedať.
Vďaka za prečítanie!
Odporúča:
Drevený LED herný displej poháňaný Raspberry Pi Zero: 11 krokov (s obrázkami)
Drevený LED herný displej poháňaný Raspberry Pi Zero: Tento projekt realizuje LED displej s rozlíšením 20 x 10 pixelov WS2812 s veľkosťou 78 x 35 cm, ktorý je možné ľahko nainštalovať do obývačky a hrať retro hry. Prvá verzia tejto matice bola postavená v roku 2016 a prestavaná mnohými ďalšími ľuďmi. Tento expe
Maliarsky robot poháňaný Arduino: 11 krokov (s obrázkami)
Arduino poháňaný maliarsky robot: Rozmýšľali ste niekedy nad tým, či by robot dokázal fascinovať obrazy a umenie? V tomto projekte sa snažím, aby sa to stalo realitou s robotom na maľovanie poháňaným Arduino. Cieľom je, aby robot dokázal sám maľovať a používať ref
Mini IMac G4 Flat Panel - poháňaný NUC: 9 krokov (s obrázkami)
Mini IMac G4 Flat Panel - Powered by NUC: Úvod Mám za sebou niekoľko projektov, ktoré boli inšpiráciou pre túto stavbu. Jeden tvrdí, že je najmenším fungujúcim iMacom na svete, ale v skutočnosti je to Raspberry Pi s distribúciou Linuxu s témou MacOS a nemôže prevádzkovať skutočný M
Dron Alexa ovládaný hlasom Raspberry Pi s IoT a AWS: 6 krokov (s obrázkami)
Dron Raspberry Pi ovládaný hlasom Alexa s IoT a AWS: Ahoj! Moje meno je Armaan. Som 13-ročný chlapec z Massachusetts. Tento návod ukazuje, ako môžete z názvu vyvodiť, ako zostaviť dron Raspberry Pi. Tento prototyp ukazuje, ako sa drony vyvíjajú a tiež akú veľkú úlohu môžu hrať v
Systém monitorovania domácich zvierat poháňaný Arduino a Raspberry Pi: 19 krokov (s obrázkami)
Systém monitorovania domácich zvierat poháňaný Arduino a Raspberry Pi: Nedávno sme si na dovolenke uvedomili nedostatok prepojenia s naším domácim miláčikom Beagle. Po troche výskumu sme našli produkty so statickou kamerou, ktorá mu umožňovala monitorovať domáceho maznáčika a komunikovať s ním. Tieto systémy mali určité výhody