Obsah:
- Zásoby
- Krok 1: Zhromaždite zásoby
- Krok 2: Pripojenie modulu NRF k Arduinu
- Krok 3: Poďme sa pustiť do kódovania
- Krok 4: Poznámka autora
Video: Nechajte svoje gesto drona ovládať v krokoch 10: 4 doláre
2024 Autor: John Day | [email protected]. Naposledy zmenené: 2024-01-30 11:58
Tento návod je návodom na premenu vášho D/C drona na gestom ovládaný dron za menej ako 10 dolárov!
Som človek, ktorý sa veľmi inšpiruje sci-fi filmami a pokúšam sa, aby sa technológia vo filme ukázala v reálnom živote. Tento projekt je inšpiráciou z dvoch takýchto filmov: „STAR WARS: The Empire Strikes Back“a „Project Almanac“. V oboch filmoch vidíte lietajúci objekt (X-wing Starship & R/C Drone), ktorý bol ovládaný iba pohybmi ruky. To ma inšpirovalo vytvoriť niečo podobné…
Očividne nevlastním X-wing, takže bohužiaľ musím pracovať so svojou Quadcopter Mini R/C.
Plán je teda - na mojom prenosnom počítači bude bežať skript na spracovanie obrazu, ktorý bude nepretržite hľadať moju ruku a sledovať jeho pozíciu vo video rámčeku. Akonáhle získa súradnice ruky, pošle príslušný signál na dron a to sa vykoná pomocou Arduino pripojeného k prenosnému počítaču spolu s transceiverovým modulom NRF24L01 2,4 GHz, ktorý môže priamo komunikovať s doskou prijímača akéhokoľvek R/C dronu.
Zásoby
- Prenosný alebo stolný počítač s nainštalovanou webovou kamerou a systémom Python. (Používam svoj laptop W indows so vstavanou webovou kamerou a systémom Python 2.7.14)
- Akýkoľvek R/C dron bežiaci na frekvencii 2,4 GHz. (JJRC H36 v mojom prípade)
- Arduino UNO spolu s programovacím káblom. (Používam jeho klon, pretože je lacnejší)
- Bezdrôtový transceiverový modul NRF24L01 s frekvenciou 2,4 GHz. (Kúpil som to odtiaľto len za ₹ 99 (1,38 dolárov))
- Doska adaptéra 3,3 V pre bezdrôtový modul 24L01. (Kúpil som to odtiaľto len za ₹ 49 (0,68 dolárov))
- Prepojovacie vodiče medzi mužmi a ženami x7
Krok 1: Zhromaždite zásoby
Krok 2: Pripojenie modulu NRF k Arduinu
Teraz, keď máte všetky diely, začnime s zapojením modulu NRF do Arduina.
- Najprv vložte modul NRF do otvoru v adaptéri. Môžete sa na to obrátiť na obrázku vyššie.
-
Potom vezmite mužské a ženské vodiče a zapojte adaptér NRF k Arduinu nasledovne: (Pozrite si schému zapojenia vyššie)
- Pin adaptéra NRF - kolík Arduino
- VCC - 5v
- GND - GND
- CE - digitálny kolík 5
- CSN - analógový kolík 1
- SCK - digitálny kolík 4
- MO - digitálny kolík 3
- MI - analógový kolík 0
- IRQ - Nepoužíva sa
- Po dokončení pripojenia pripojte Arduino k počítaču pomocou programovacieho kábla Arduino USB a ste takmer hotoví.
Krok 3: Poďme sa pustiť do kódovania
Teraz začína ťažká časť … !!!
Celý kód som nevytvoril sám. Namiesto toho som vzal časti a časti kódu od rôznych vývojárov a všetky som do trocha integroval do jedného. Preto sa všetkým pôvodným tvorcom vopred poskytnú náležité zásluhy.
Tu si môžete stiahnuť všetky priložené kódy a fungovať tak. Alebo môžete ísť do môjho úložiska Github, kde budem neustále aktualizovať najnovší kód pre lepšie sledovanie.
Ručné sledovanie:
Na ručné sledovanie sa v tomto projekte používa klasifikátor Haar Cascade. Haar Cascade je vycvičený superpozíciou pozitívneho obrazu na sadu negatívnych obrazov. A tieto natrénované údaje sú zvyčajne uložené v súboroch „.xml“. Na internete môžete získať súbory klasifikátora takmer pre čokoľvek, alebo si môžete dokonca vytvoriť svoj vlastný takto. Na tento projekt, keďže sme ho potrebovali ovládať ručne gestami, použil som na detekciu rúk prvý klasifikátor s názvom „closed_frontal_palm.xml“od Aravinda Nambissana. Tento kód môžete otestovať spustením kódu „hand_live.py“v mojom repo.
Výber kódu NRF24 tak, aby zodpovedal vášmu dronu:
Podľa výrobcu a modelu vášho drona sa teda môžete obrátiť na úložisko Github - „nrf24_cx10_pc“od spoločnosti Perry Tsao a vybrať správny kód Arduino na spustenie, ktorý bude zodpovedať jeho frekvencii. Vytvoril pekný návod na ovládanie svojho CX10 Drone cez PC.
Keď som používal dron JJRC H36, odkázal som na ďalšie úložisko Github - „nrf24_JJRC_H36_pc“, čo bola vidlica repo Perryho Tsaa od Lewisa Cornicka na ovládanie jeho JJRC H36 cez PC.
Príprava Arduina:
Rozvidlil som Lewisovo repo na môj Github, ktorý môžete naklonovať, ak pracujete na rovnakom drone. Do svojho Arduino Uno musíte raz nahrať kód „nRF24_multipro.ino“, aby sa spároval s vašim dronom vždy, keď spustíme náš skript Python.
Testovanie sériovej komunikácie:
V tom istom repo môžete nájsť aj kód „serial_test.py“, ktorý je možné použiť na testovanie sériovej komunikácie skriptu Python s Arduino a v prípade, že sa váš dron spáruje alebo nie. Nezabudnite zmeniť COM port v kóde podľa COM portu vašej dosky Arduino.
Integrácia všetkého do jedného kódu:
Preto som integroval všetky tieto kódy od rôznych vývojárov a vytvoril som si vlastný kód „handserial.py“. Ak robíte presne to isté, čo robím s úplne rovnakým dronom, potom môžete priamo spustiť tento kód a potom môžete ovládať svoj dron jednoduchým pohybom pästi vo vzduchu. Kód najskôr vyhľadá prvú pěst vo video rámčeku. V závislosti od súradnice Y pästi kód pošle hodnotu plynu do drona, aby sa zdvihol alebo spustil, a podobne v závislosti od súradnice X pästi kód pošle hodnotu kridélka dronu, aby išiel doľava alebo doprava.
Krok 4: Poznámka autora
K tomuto projektu by som obzvlášť rád spomenul 4 body:
- Ako som už uviedol vyššie, tento kód nie je úplne vytvorený mnou, ale pracujem na ňom nepretržite a budem kód aktualizovať, aby som ho mohol lepšie sledovať v mojom úložisku Github. Takže v prípade akýchkoľvek otázok alebo aktualizácií môžete navštíviť úložisko alebo mi poslať ping na Instagram.
- V súčasnej dobe používame webovú kameru prenosného počítača, ktorá neumožňuje perspektívu pohľadu dronu, ale v prípade potreby je možné na sledovanie použiť aj kamery namontované na droni. Pomôže to mať lepší prehľad a v konečnom dôsledku lepšiu kontrolu.
- Na tento projekt používam dron JJRC H36, ktorý je jedným z najlacnejších dronov dostupných na trhu, a preto mu chýba gyroskopická stabilita. To je dôvod, prečo by ste mohli cítiť, že pohyb vo videu je vratký, ale ak používate dron slušnej kvality s dobrou stabilitou, tomuto problému nebudete čeliť.
- Chcel som sa pohrávať s počítačovým videním a ovládaním dronov, a preto som začal s týmto projektom. Ale po práci na počítačovom videní mám pocit, že to nie je optimálne riešenie na ovládanie drona. Preto v budúcnosti plánujem vyrobiť nejaký druh rukavicového zariadenia s gyroskopickým senzorom na ovládanie drona. Sledujte preto novinky…
Ak sa vám tento návod páčil, dajte mu lajk, zdieľajte a tiež zaň hlasujte.
To je zatiaľ všetko.. Uvidíme sa čoskoro nabudúce …
Odporúča:
Nechajte obrazovku svojho iPodu Touch vyzerať ako NOVÚ !!: 6 krokov
Nechajte obrazovku svojho iPodu Touch vyzerať ako NOVINKA !!: Môže to znieť hlúpo, ale toto je tajomstvo obchodov s jablkami a obchodov s najlepšími nákupmi, ktoré skutočne funguje! A Vianoce sa blížia Šťastní ľudia, ktorí majú jedného (alebo tých, ktorí ho získajú) Vedieť, ako správne vyčistiť obrazovku. Pamätajte
Nechajte Tahrpup Linux nahradiť kroky Windows 7: 3
Nechajte Tahrpup Linux nahradiť Windows 7: Mám prenosný počítač Windows 7. Nie je schopný používať systém Windows 10. O niekoľko mesiacov už spoločnosť Microsoft nebude podporovať systém Windows 7. Môj prenosný počítač stále funguje veľmi dobre. Nemám náladu kúpiť si nový počítač a potom hľadať spôsob, ako recyklovať svoje
Nechajte klávesnicu CASIO fungovať na power banke: 8 krokov (s obrázkami)
Nechajte klávesnicu CASIO fungovať na power banke: Mám starý CASIO CT-636, ktorý funguje s 9V adaptérom ALEBO 6 batériami veľkosti D. Nie je dodávaný s adaptérom, musíte ho poskytnúť a uistite sa, že sa dá prepnúť na negatívny vnútorný, pozitívny vonkajší-čo je starý štandard sudového vývevy
Nechajte svoje videá na YouTube schváliť spoločnosťou Google!: 4 kroky
Nechajte svoje videá na YouTube schváliť spoločnosťou Google !: Používaním chyby v používaní značky môžete mať na YouTube aj videá schválené spoločnosťou Google
Nechajte svoje rolovacie koliesko myši pohybovať sa ako maslo: 6 krokov
Nechajte svoje rolovacie koliesko myši pohybovať sa ako maslo: Nenávidíte to tuhé, klikacie koliesko na myši? Doprajte svojmu koliesku myši super hladkú a plynulú rotáciu za 10 minút. Ak dokážete ovládať malý skrutkovač, mali by ste to urobiť bez ohľadu na to, akým spôsobom je myš zostavená. Nástroje: 1 komp