Kazalo:

Raspberry Pi, Android, IoT in brezžični brezžični dron: 7 korakov (s slikami)
Raspberry Pi, Android, IoT in brezžični brezžični dron: 7 korakov (s slikami)

Video: Raspberry Pi, Android, IoT in brezžični brezžični dron: 7 korakov (s slikami)

Video: Raspberry Pi, Android, IoT in brezžični brezžični dron: 7 korakov (s slikami)
Video: Leap Motion SDK 2024, Julij
Anonim
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth
Drop Raspberry Pi, Android, IoT in Bluetooth

Ta kompaktni mobilni računalnik z uporabo Raspberry Pi za vgrajeno logiko bo ustvaril lokalna vrata, ki pretočno predvajajo video v realnem času, hkrati pa ustvarila vtičnice Bluetooth za branje vrednosti, ki jih pošilja prilagojena aplikacija za Android. Aplikacija se sinhronizira z dronom in z uporabniškim vnosom takoj pošlje navodila dronu.

Ta projekt je precej težko narediti iz nič. Upajmo, da bodo naslednje informacije omogočile vpogled v več aplikacij brezpilotnih letal. Na voljo je vsa programska oprema in vezja, ki se nanašajo na ta projekt. Kodo lahko spremenite in delite po svojih željah. Prosimo, da odgovorne uporabite odgovorno in spodaj pustite komentar.

1. korak: Strojna oprema

Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema
Strojna oprema

Spodaj je seznam strojne opreme, ki sem jo uporabil.

  • Raspberry Pi 3 Model B
  • Modul kamere Raspberry PI
  • L298N Gonilnik motorja
  • 2, enosmerni motorji
  • Tipkovnica, kateri koli monitor, miška, kabel Ethernet in kabel HDMI (za pi)
  • 8 GB kartica MicroSD
  • Vijaki, trak itd.
  • 2 Kolesa
  • Naprava Bluetooth Android (moj telefon)
  • 2, 18650 celic
  • 5 -voltni regulator
  • Računalnik za programiranje aplikacije

A Raspberry Pi: Za višje ločljivosti toka (ali za začetnike) priporočam najnovejšo različico modela B, medtem ko lahko bolj kompaktne različice uporabljajo najnovejši model A+ ali Pi Zero (različica kamere). Ne pozabite, da boste za uporabo maline pi zero potrebovali Bluetooth in/ali WiFi ključ. Ta vadnica predvideva, da uporabljate Raspberry Pi 3 B.

Gonilnik motorja: Uporabil sem L298N, čeprav bi moral delovati vsak voznik motorja. Prepričajte se le, da lahko prenese napetost in tok vaših motorjev.

2 DC motorja: Prepričajte se, da lahko prenesejo težo vašega brezpilotnega letala.

Ohišje: Uporabljajte tudi vse komponente. Običajno je trda plastika ali aluminij trpežen in lahek material za uporabo. Za optimalne rezultate lahko uporabite tudi 3D tiskalnik.

Vir energije: skoraj vedno je najtežja odločitev pri izbiri delov. Potrebna baterija je odvisna od trenutne porabe. Za aplikacije z nizko porabo energije (na primer 1 ali 2 ampera) bi morala zadostovati 9v baterija. Za večjo jakost toka priporočam bodisi litij -ionsko celico 18650 bodisi litijevo -polimerno baterijo, saj so lahke, lahko zadržijo veliko energije za svojo velikost in se lahko polnijo.

2 Kolesa: Prepričajte se, da imajo vaša kolesa enako velikost lukenj kot gred vašega motorja. Prepričajte se tudi, da so premeri koles dovolj veliki za vaš dron. Ker je za ta projekt več možnih variacij in modelov, je za uporabo več različnih vrst in velikosti koles.

Regulatorji napetosti: Za napajanje pi preko baterije je potreben 5 voltni regulator. Uporabil sem pretvornik LM2596 DC-DC.

Večina izdelkov na povezavah je bila uporabljenih v tem projektu in so bile takrat najboljše ponudbe, ki sem jih našel.

Zdaj, ko imate vse, kar potrebujete, nastavimo pi.

2. korak: Nastavitev Raspberry Pi

Nastavitev Raspberry Pi
Nastavitev Raspberry Pi
Nastavitev Raspberry Pi
Nastavitev Raspberry Pi
Nastavitev Raspberry Pi
Nastavitev Raspberry Pi

Ta korak vam bo pokazal, kako nastaviti Raspberry Pi, tako da lahko začnete s kodiranjem. Če že imate nastavitev pi z Raspbian -om, se pomaknite na naslednji korak.

Najprej morate prenesti operacijski sistem za malino. Pridobite NOOBS, če ste začetnik. Če že imate opazne izkušnje z malinovim pi, vas bo morda zanimala Raspbian. Predvidevam, da za to vadnico uporabljate NOOBS.

Med prenosom formatirajte kartico SD s SD Formatterjem.

Zdaj izvlecite in kopirajte vsebino prenosa v koren SD kartice. Root preprosto pomeni, da ni v nobeni mapi. Če je bila ustvarjena nova mapa za shranjevanje vseh izvlečenih datotek, jo kopirajte.

Nato pritrdite kartico SD na pi. Med vstavljanjem naj "klikne" ali pa samo sedi na dnu pi.

Priključite miško in tipkovnico v pi. Nato na monitor priključite kabel HDMI na pi. Nazadnje priključite 3 amp mikro USB adapter za stensko vtičnico v pi. Čeprav je priporočljiva stenska vtičnica, sem prenosni računalnik uporabil kot vir energije (USB od prenosnika do Micro USB v pi).

Naj pi naredi svoje. Če ste pozvani, izberite Raspbian in ga pustite namestiti. Sledite navodilom v namestitvenem programu. Dokončanje lahko traja nekaj časa. Če je vse v redu, bi morali videti namizni zaslon, podoben zgornjemu.

Priključite ethernetni kabel iz usmerjevalnika v pi. Nato odprite ukazno vrstico (črna ikona »polje« na vrhu zaslona). Pi boste morali posodobiti prek žičnega omrežja, da ga povežete z brezžičnim omrežjem.

Nato kliknite ikono kabla na vrhu zaslona. Vnesite podatke o omrežju, kjer ste pozvani.

Besedilo v naslednjo vrstico vnesite točno tako, kot je prikazano, in pritisnite enter. To bo posodobilo pi. Lahko traja nekaj časa. Naj le naredi svoje.

sudo apt-get posodobitev

Nato v naslednjo vrstico vnesite kodo. Tudi to bo trajalo nekaj časa. Ne delajte ničesar, dokler ni končano.

sudo apt-get dist-upgrade

Zdaj bi morali odklopiti ethernetni kabel, klikniti ikono brezžične povezave na vrhu zaslona, vnesti podatke o omrežju in se končno povezati z omrežjem prek brezžične povezave.

Zdaj pa kodiraj del drona, ki upravlja gibanja.

3. korak: Upravljanje premikov (strežnik Bluetooth)

Ravnanje s premiki (strežnik Bluetooth)
Ravnanje s premiki (strežnik Bluetooth)

Za upravljanje gibov se uporablja programski jezik "Python 3". Sporočila, ki robotu sporočijo, naj se premakne, bodo iz aplikacije poslana prek povezave Bluetooth.

Najprej morate namestiti knjižnico Bluetooth. Če želite to narediti, vnesite naslednje ukaze.

sudo apt-get posodobitev

sudo apt-get namestite bluetooth

sudo apt-get install bluez

sudo apt-get install python-bluez

Zdaj na namizju kliknite ikono menija Start, nato Programiranje, nato Python 3. Nato v orodni vrstici kliknite Datoteka, novo. Prikazati bi se moralo novo okno.

Kopirajte vsebino priloge "bluetoothpi.rtf" v okno.

V orodni vrstici kliknite Datoteka, Shrani kot. Shranite ga v imenik/home/pi/Desktop/kot premik.py.

Zdaj, da preizkusite kodo, kliknite ikono Bluetooth v zgornjem desnem kotu zaslona. Seznanite malinovo pi z napravo Android. Prenesite aplikacijo BlueTerm v napravo Android. Nato v ukazno vrstico vnesite naslednjo kodo s krepkim tiskom. To bo izvedlo kodo python.

sudo python /home/pi/Desktop/movements.py

Na pi mora biti prikazano besedilo "Čakanje na povezave".

Zaženite BlueTerm in kliknite ikono možnosti in nato gumb "poišči povezave".

V aplikaciji bi se moralo prikazati ime vašega maline pi. Kliknite gumb z imenom pi. Na pi mora biti prikazano besedilo "Sprejeta povezava od", ki mu sledi naslov. Zdaj, kar vnesete v telefon, naj bo prikazano v pi.

Uspešno ste kodirali lastno vtičnico strežnika Bluetooth!

4. korak: aplikacija za Android (odjemalec Bluetooth)

Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)
Aplikacija za Android (odjemalec Bluetooth)

Prenesite Android Studio tukaj. Namestite ga in sledite navodilom v namestitvenem programu.

Začnite nov projekt. Ustvarite prazno dejavnost, imenovano MainActivity.

Kopirajte vsebino priloge "Logic.txt" v datoteko (zavihek) "MainActivity.java". To vsebuje vso logiko aplikacije. Morda boste morali spremeniti ime svoje naprave na dnu datoteke.

Nato kopirajte vsebino datoteke "GUI" v datoteko "activity_main.xml" (zavihek). Ta vsebuje zelo preprost grafični vmesnik za aplikacijo.

Zdaj boste morali uvoziti puščične gumbe (slike) v aplikacijo. Odstranite pripeto datoteko Arrows.zip. Na levi strani androidnega studia odprite datotečno strukturo, da si ogledate aplikacijo, res, minimap. Kopirajte slike puščic (datoteke PNG), z desno miškino tipko kliknite minimalno karto datoteke in prilepite slike v datoteko, pri čemer imena puščic ostanejo enaka. Ko bo končana, bi morala izgledati kot slika.

Končno kopirajte vsebino datoteke "Manifest" v datoteko (zavihek) "AndroidManifest.xml".

Če želite preizkusiti aplikacijo, jo morate zagnati v svoji napravi. Če želite to narediti, morate napravo nastaviti v način za razvijalce in omogočiti odpravljanje napak USB. Za večino naprav boste morali iti v "Nastavitve", "O telefonu", se pomakniti na dno in sedemkrat klikniti na "Številka gradnje", dokler ne vidite sporočila "Zdaj ste razvijalec!" Vrnite se in zdaj bi morali videti zavihek »Možnosti za razvijalce«. Kliknite nanjo in omogočite odpravljanje napak USB.

Napravo Android povežite z računalnikom prek USB -ja, kliknite ikono teči v programu Android Studio in izberite svojo napravo.

Na pi zaženite kodo python, ustvarjeno v 3. koraku, tako da vnesete krepko ukaz:

sudo python /home/pi/Desktop/movements.py

Nato v aplikaciji kliknite gumb za povezavo. Ko ste povezani, bi se morale v aplikaciji zdaj prikazati nekatere puščice. Kadar koli kliknete eno, bo posodobilo stanje premikanja pi.

V redu je, če v ozadju aplikacije pride do napake. To bo pozneje popravljeno.

Pravkar ste ustvarili svojo aplikacijo in odjemalca Bluetooth.

5. korak: Priključitev strojne opreme

Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme
Priključitev strojne opreme

Spajate povezave na zgornjem diagramu. Modul kamere pritrdite tudi na pi.

Zaženite aplikacijo in izvedite datoteko move.py. Če se med uporabo aplikacije motorji pravilno premikajo, vse komponente vstavite v dokončano lupino za dron. Morda boste morali spremeniti vrednosti "HIGH" in "LOW", da se pravilno premika.

V naslednjem koraku bomo dodali funkcijo pretakanja drona.

6. korak: Pretakanje

Pretakanje
Pretakanje
Pretakanje
Pretakanje
Pretakanje
Pretakanje

Obstaja več načinov za pretakanje videoposnetkov s pomočjo Pi, vendar je uporaba uv4l daleč najlažji način, ki praktično ne zaostaja.

Samo stranska opomba: če ste svoj brezpilotni letalnik že sestavili in ga ne morete povezati z monitorjem in tipkovnico, boste morali v svoj dron vstaviti SSH. Če želite to narediti, prenesite Putty v računalnik. Odprite ga in vnesite naslov maline IP (poiščite naslov IP z vnosom ukaza ifconfig). Od vas bo zahteval uporabniško ime in geslo. Privzeto uporabniško ime in geslo sta pi oziroma malina. Zdaj, kar vnesete v ukazno polje, bo kot vnos ukazov neposredno v dron.

nastavitev uv4l

Vnesite ta ukaz:

sudo nano /etc/apt/sources.list

Naslednjo vrstico dodajte v zadnjo vrstico datoteke.

deb https://www.linux-projects.org/listing/uv4l_repo/raspbian/ jessie main

Zaprite datoteko in jo shranite tako, da pritisnete Ctrl-X in nato vnesete Da.

Nato vnesite naslednjo vrstico in pritisnite enter.

sudo apt-get posodobitev

potem pa tole:

sudo apt-get install uv4l uv4l-raspicam

Vnesite naslednje ukaze po vrsticah. Počakajte, da dokonča svoje delo, preden vnesete v naslednjo vrstico.

sudo apt-get install uv4l-raspicam-extras

sudo storitev uv4l_raspicam ponovni zagon

sudo rpi-update

sudo apt-get install uv4l-server uv4l-uvc uv4l-xscreen uv4l-mjpegstream uv4l-lutka uv4l-raspidisp

sudo apt-get install uv4l-webrtc

sudo apt-get install uv4l-xmpp-bridge

sudo apt-get install uv4l-raspidisp-extras

Po tem morate za začetek pretakanja vnesti naslednji ukaz (zamenjajte "raspberrypi" z malinovim naslovom IP/ imenom gostitelja v vašem omrežju)

cvlc https:// raspberrypi: 8080/stream/video.mjpeg

Tako se bo v realnem času začelo pretakanje videa na vratih 8080. Tok bi moral biti zdaj prikazan v ozadju vaše aplikacije. Če si želite ogledati tok v katerem koli brskalniku, vnesite ta URL (kjer je "raspberrypi" vaš IP naslov brezpilotnih letal).

https:// raspberrypi: 8080/stream/video.mjpeg

Čestitamo, končali ste svoj vohunski dron.

7. korak: Vozite

Spustite stikalo za vklop in začnite raziskovati.

Če želite vedeti, kako narediti kaj drugega, me vprašajte in videl bom, kaj lahko naredim.

Če imate kakršna koli vprašanja, komentirajte spodaj in potrudila se bom, da na njih odgovorim.

Hvala za branje!

Priporočena: