Satura rādītājs:

Pārvaldiet savu drona žestu, veicot 10 ASV dolāru soļus
Pārvaldiet savu drona žestu, veicot 10 ASV dolāru soļus

Video: Pārvaldiet savu drona žestu, veicot 10 ASV dolāru soļus

Video: Pārvaldiet savu drona žestu, veicot 10 ASV dolāru soļus
Video: Pārvaldiet no tālruņa savu apgaismojumu. Piemērots jebkuram gaismas slēdzim un spuldzītei. 2024, Novembris
Anonim
Image
Image
Pārvaldiet savu drona žestu 10 ASV dolāru apmērā
Pārvaldiet savu drona žestu 10 ASV dolāru apmērā
Pārvaldiet savu drona žestu 10 ASV dolāru apmērā
Pārvaldiet savu drona žestu 10 ASV dolāru apmērā

Šī pamācība ir ceļvedis, kā pārveidot savu R/C dronu par žestu vadītu dronu mazāk par 10 USD!

Es esmu cilvēks, kurš ir ļoti iedvesmots no zinātniskās filmas un cenšos realizēt filmā parādīto tehnoloģiju reālajā dzīvē. Šis projekts ir iedvesmots no divām šādām filmām: "STAR WARS: The Empire Strikes Back" un "Project Almanac". Abās filmās jūs redzat lidojošu objektu (X-wing Starship un R/C Drone), ko vadīja tikai ar rokas kustībām. Tas mani iedvesmoja uztaisīt ko līdzīgu…

Acīmredzot man nav X-spārna, tāpēc diemžēl man ir jāstrādā ar savu Mini R/C Quadcopter.

Tātad plāns ir tāds - manā klēpjdatorā darbosies attēlu apstrādes skripts, kas nepārtraukti meklēs manu roku un izsekos tā atrašanās vietai video kadrā. Kad tas saņems rokas koordinātas, tas nosūtīs attiecīgo signālu dronam, un tas tiks darīts, izmantojot Arduino, kas savienots ar klēpjdatoru, kā arī NRF24L01 2,4 GHz raiduztvērēja moduli, kas var tieši sazināties ar jebkura R/C drona uztvērēja paneli..

Piegādes

  • Klēpjdators/galddators ar instalētu tīmekļa kameru un Python. (Es izmantoju savu klēpjdatoru W indows ar iebūvētu tīmekļa kameru un operētājsistēmu Python 2.7.14)
  • Jebkurš R/C drons, kas darbojas ar 2,4 GHz frekvenci. (JJRC H36 manā gadījumā)
  • Arduino UNO kopā ar tā programmēšanas kabeli. (Es izmantoju tā klonu, jo tas ir lētāk)
  • NRF24L01 2,4 GHz antenas bezvadu uztvērēja modulis. (Es to nopirku no šejienes tikai par 99 ₹ (1,38 USD))
  • 3.3V adaptera dēlis 24L01 bezvadu modulim. (Es to nopirku no šejienes tikai par 49 ₹ (0,68 USD))
  • Džemperu vadi no vīrieša līdz sievietei x7

Pirmais solis: apkopojiet materiālus

Savāc piederumus!
Savāc piederumus!

2. darbība: NRF moduļa savienošana ar Arduino

NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino
NRF moduļa savienojums ar Arduino

Tagad, kad jums ir visas detaļas, sāksim ar NRF moduļa savienošanu ar Arduino.

  1. Vispirms ievietojiet NRF moduli adapterī esošajā slotā. Par to varat atsaukties uz iepriekš redzamo attēlu.
  2. Pēc tam paņemiet vadus no Male to Female un pievienojiet NRF adapteri Arduino šādi: (Skatiet iepriekš redzamo shēmas shēmu)

    • NRF adaptera tapa - Arduino tapa
    • VCC - 5 volti
    • GND - GND
    • CE - digitālā tapa 5
    • CSN - Analog Pin 1
    • SCK - digitālā tapa 4
    • MO - digitālā tapa 3
    • MI - analogā tapa 0
    • IRQ - netiek izmantots
  3. Kad savienojums ir izveidots, pievienojiet Arduino datoram, izmantojot Arduino programmēšanas USB kabeli, un esat gandrīz pabeidzis.

3. solis: ķersimies pie kodēšanas

Iepazīsimies ar kodēšanu!
Iepazīsimies ar kodēšanu!
Iepazīsimies ar kodēšanu!
Iepazīsimies ar kodēšanu!

Šeit sākas grūtā daļa … !!!

Es neesmu izveidojis visu kodu pats. Tā vietā es esmu paņēmis koda daļas un bitus no dažādiem izstrādātājiem un integrējis tos visus vienā, nedaudz pielāgojot. Līdz ar to visiem oriģinālajiem veidotājiem tiek piešķirti pienācīgi kredīti.

Jūs varat lejupielādēt visus šeit pievienotos kodus un panākt, lai tie darbotos. Vai arī jūs varat doties uz manu Github repozitoriju, kur es pastāvīgi atjaunināšu jaunāko kodu, lai labāk izsekotu.

Rokas izsekošana:

Šajā projektā roku izsekošanai tiek izmantots Haar Cascade klasifikators. Hāra kaskāde tiek apmācīta, uzliekot pozitīvu attēlu uz negatīvu attēlu kopas. Un šie apmācītie dati parasti tiek glabāti ".xml" failos. Internetā varat iegūt gandrīz visu klasifikatoru failus vai pat izveidot šādu savu. Šim projektam, jo mums vajadzēja to padarīt ar roku žestu vadītu, manu roku noteikšanai es izmantoju dūres klasifikatoru ar nosaukumu "closed_frontal_palm.xml", ko izgatavojis Aravind Nambissan. Jūs varat pārbaudīt šo kodu, manā repo palaižot kodu “hand_live.py”.

NRF24 koda izvēle, kas atbilst jūsu dronam:

Tātad, saskaņā ar jūsu drona ražotāju un modeli, varat atsaukties uz Github repozitoriju - "nrf24_cx10_pc", ko izveidojis Perijs Tsao, lai izvēlētos pareizo Arduino kodu, kas jāizpilda un kas atbilst tā biežumam. Viņš ir izveidojis jauku apmācību, lai kontrolētu savu CX10 dronu pār datoru.

Kad es izmantoju JJRC H36 dronu, es atsaucos uz citu Github krātuvi - "nrf24_JJRC_H36_pc", kas bija Lūisa Kornika veiktā Perija Tsao repo dakša, lai kontrolētu savu JJRC H36, izmantojot datoru.

Arduino sagatavošana:

Es sazvanīju Lūisa repo savam Github, kuru jūs varat klonēt, ja strādājat pie tā paša drona. Jums ir jāaugšupielādē kods "nRF24_multipro.ino" vienreiz savā Arduino Uno, lai tas tiktu savienots pārī ar jūsu Drone katru reizi, kad mēs izpildām mūsu Python skriptu.

Seriālās komunikācijas pārbaude:

Tajā pašā repo var atrast arī kodu "serial_test.py", ko var izmantot, lai pārbaudītu Python skripta sērijas sakarus ar Arduino un vai jūsu drons tiek savienots pārī vai nē. Neaizmirstiet mainīt COM portu kodā atbilstoši jūsu Arduino plates COM portam.

Visu integrēšana vienā kodā:

Tāpēc es integrēju visus šos kodus no dažādiem izstrādātājiem un izveidoju savu kodu "handserial.py". Ja jūs darāt tieši to pašu, ko es daru ar to pašu bezpilota lidaparātu, tad varat tieši palaist šo kodu un pēc tam varat vadīt savu dronu, vienkārši pārvietojot dūres gaisā. Kods vispirms izseko dūri video kadrā. Atkarībā no dūres Y koordinātas kods nosūta droseļvārsta vērtību dronam, palielinot vai pazeminot, un līdzīgi atkarībā no dūres X koordinātas kods nosūta gaisa balona vērtību dronam, lai tas virzītos pa kreisi vai pa labi.

4. darbība. Autora piezīme

Šajā projektā es īpaši vēlētos pieminēt 4 punktus:

  1. Kā minēts iepriekš, šo kodu es neesmu pilnībā izveidojis, bet es pie tā nepārtraukti strādāju un atjaunināšu kodu, lai labāk izsekotu manā Github krātuvē. Tāpēc, ja rodas kādi jautājumi vai atjauninājumi, varat apmeklēt krātuvi vai pingēt mani vietnē Instagram.
  2. Pašlaik mēs izmantojam klēpjdatora tīmekļa kameru, kas neļauj apskatīt bezpilota lidaparāta skatu, bet, ja nepieciešams, dronā uzstādītās kameras var izmantot arī izsekošanai. Tas palīdzēs iegūt labāku skatu un galu galā labāku kontroli.
  3. Šim projektam es izmantoju JJRC H36 dronu, kas ir viens no lētākajiem droniem, kas pieejams tirgū, tāpēc tam trūkst žiroskopiskās stabilitātes. Šī iemesla dēļ jums varētu šķist, ka videoklipa kustība ir svārstīga, taču, ja izmantojat pienācīgas kvalitātes bezpilota lidaparātu ar labu stabilitāti, jūs nesaskarsities ar šo problēmu.
  4. Es gribēju ķerties pie Computer Vision un bezpilota lidaparātu vadības, tāpēc sāku ar šo projektu. Bet pēc darba pie datora redzes jūtu, ka tas nav optimālais risinājums, lai kontrolētu dronu. Tādējādi es plānoju izgatavot sava veida cimdu tipa ierīci ar žiroskopu sensoru, lai nākotnē kontrolētu dronu. Tāpēc sekojiet līdzi jaunumiem…

Ja jums patika šī apmācība, lūdzu, kopīgojiet un kopīgojiet, kā arī balsojiet par to.

Pagaidām tas arī viss … Uz drīzu tikšanos nākamreiz …

Ieteicams: