Sadržaj:

Dron s napajanjem Raspberry Pi, Android, IoT i Bluetooth: 7 koraka (sa slikama)
Dron s napajanjem Raspberry Pi, Android, IoT i Bluetooth: 7 koraka (sa slikama)

Video: Dron s napajanjem Raspberry Pi, Android, IoT i Bluetooth: 7 koraka (sa slikama)

Video: Dron s napajanjem Raspberry Pi, Android, IoT i Bluetooth: 7 koraka (sa slikama)
Video: 10 самых АТМОСФЕРНЫХ мест Дагестана. БОЛЬШОЙ ВЫПУСК #Дагестан #ПутешествиеПоДагестану 2024, Srpanj
Anonim
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica

Koristeći Raspberry Pi za ugrađenu logiku, ovo kompaktno, mobilno računalo stvorit će lokalni port koji struji video u stvarnom vremenu, a istovremeno stvara Bluetooth utičnice za čitanje vrijednosti koje šalje prilagođena android aplikacija. Aplikacija se sinkronizira s dronom i koristi korisnički unos za trenutačno slanje uputa dronu.

Ovaj je projekt prilično teško napraviti od nule. Nadajmo se da će sljedeće informacije pružiti uvid u više aplikacija za dronove. Dostupan je sav softver i dizajn sklopova koji se odnose na ovaj projekt. Kôd slobodno izmijenite i podijelite po svom ukusu. Molimo vas da odgovorno koristite navedene podatke i ostavite komentar ispod.

Korak 1: Hardver

Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver
Hardver

Ispod je popis hardvera koji sam koristio.

  • Raspberry Pi 3 Model B
  • Modul PI kamere za maline
  • Vozač motora L298N
  • 2, istosmjerni motori
  • Tipkovnica, bilo koji monitor, miš, Ethernet kabel i HDMI kabel (za pi)
  • 8 GB MicroSD kartica
  • Vijci, traka itd.
  • 2 kotača
  • Android Bluetooth uređaj (moj telefon)
  • 2, 18650 stanica
  • Regulator od 5 volti
  • Računalo za programiranje aplikacije

A Raspberry Pi: Za veće rezolucije toka (ili za početnike), preporučio bih najnoviju verziju modela B, dok kompaktnije verzije mogu koristiti najnoviji model A+ ili Pi Zero (verzija kamere). Zapamtite da ako koristite malinu pi zero, za to će vam trebati Bluetooth i/ili WiFi ključ. Ovaj vodič će pretpostaviti da koristite Raspberry Pi 3 B.

Vozač motora: Koristio sam L298N, iako bi svaki vozač motora trebao raditi. Samo provjerite može li podnijeti napon i struju vaših motora.

2 istosmjerna motora: provjerite mogu li izdržati težinu vašeg drona.

Tijelo: I rabljeno drži sve komponente. Obično je tvrda plastika ili aluminij izdržljiv i lagan materijal za upotrebu. Za optimalne rezultate može se koristiti čak i 3D pisač.

Izvor napajanja: gotovo uvijek je najteža odluka pri odabiru dijelova. Potrebna baterija ovisi o trenutnom napajanju. Za aplikacije male snage (poput 1 ili 2 pojačala), baterija od 9V trebala bi biti dovoljna. Za veću amperažu preporučujem litij -ionsku ćeliju 18650 ili litij -polimernu bateriju jer su lagane, mogu držati puno energije za svoju veličinu i punjive su.

2 kotača: Samo provjerite da li vaši kotači imaju istu veličinu rupe kao i vratilo vašeg motora. Također provjerite jesu li promjeri kotača dovoljno veliki za vaš dron. Budući da postoji više mogućih varijacija i dizajna za ovaj projekt, postoji više različitih vrsta i veličina kotača za korištenje.

Regulatori napona: Za napajanje pi preko baterije potreban je regulator od 5 volti. Koristio sam LM2596 DC-DC konverter.

Većina proizvoda na linkovima korištena je u ovom projektu i bila je to najbolja ponuda koju sam tada mogao pronaći.

Sada kada imate sve što vam je potrebno, dozvolite postavljanje pi.

Korak 2: Postavljanje Raspberry Pi

Postavljanje Raspberry Pi
Postavljanje Raspberry Pi
Postavljanje Raspberry Pi
Postavljanje Raspberry Pi
Postavljanje Raspberry Pi
Postavljanje Raspberry Pi

Ovaj korak će vam pokazati kako postaviti Raspberry Pi tako da možete započeti kodiranje. Ako već imate postavku pi s Raspbian -om, slobodno prijeđite na sljedeći korak.

Prvo morate preuzeti operacijski sustav za malinu. Nabavite NOOBS ako ste početnik. Ako već imate značajno iskustvo s pirom od maline, možda će vas zanimati Raspbian. Pretpostavit ću da za ovaj vodič koristite NOOBS.

Dok se to preuzima, formatirajte SD karticu pomoću SD Formattera.

Sada izdvojite i kopirajte sadržaj preuzimanja u korijen svoje SD kartice. Root jednostavno znači da se ne nalazi ni u jednoj mapi. Ako je stvorena nova mapa za čuvanje svih izdvojenih datoteka, kopirajte je preko te datoteke.

Zatim pričvrstite SD karticu na pi. Prilikom umetanja trebao bi ili "kliknuti" ili samo sjediti unutar dna pi.

Uključite miš i tipkovnicu u pi. Zatim priključite HDMI kabel u pi s monitora. Konačno priključite adapter za mikro USB zidnu utičnicu od 3 ampera u pi. Iako se preporučuje zidna utičnica, laptop sam koristio kao izvor napajanja (USB od prijenosnog računala do Micro USB -a u pi).

Neka pi učini svoje. Ako se od vas zatraži, odaberite Raspbian i pustite ga da se instalira. Slijedite upute u instalacijskom programu. Može potrajati neko vrijeme da se dovrši. Ako sve ide kako treba, trebali biste vidjeti zaslon radne površine sličan onom gore.

Priključite Ethernet kabel s usmjerivača u pi. Zatim otvorite naredbeni redak (crna ikona "okvira" pri vrhu zaslona). Morat ćete ažurirati pi putem ožičene mreže da biste ga povezali s bežičnom mrežom.

Zatim kliknite na ikonu Kabel na vrhu zaslona. Upišite podatke o mreži gdje se to od vas zatraži.

Upišite tekst u sljedeći redak točno onako kako je prikazano i pritisnite enter. Ovo će ažurirati pi. Može potrajati. Samo neka učini svoje.

sudo apt-get ažuriranje

Zatim upišite kôd u sljedeći redak. Ovo će također potrajati neko vrijeme. Ne radite ništa dok ne završi.

sudo apt-get dist-upgrade

Sada biste trebali moći odspojiti Ethernet kabel, kliknuti na ikonu bežične veze pri vrhu zaslona, unijeti podatke o mreži i na kraju se bežično povezati s mrežom.

Sada kodirajmo dio drona koji upravlja pokretima.

Korak 3: Rukovanje pokretima (Bluetooth poslužitelj)

Rukovanje pokretima (Bluetooth poslužitelj)
Rukovanje pokretima (Bluetooth poslužitelj)

Za rukovanje pokretima koristi se programski jezik "Python 3". Poruke koje govore robotu da se kreće bit će poslane putem Bluetootha iz aplikacije.

Prvo morate instalirati Bluetooth biblioteku. Upišite sljedeće naredbe da biste to učinili.

sudo apt-get ažuriranje

sudo apt-get install bluetooth

sudo apt-get install bluez

sudo apt-get install python-bluez

Sada na radnoj površini kliknite ikonu izbornika Start, zatim Programiranje, pa Python 3. Zatim na alatnoj traci kliknite Datoteka, novo. Trebao bi se pojaviti novi prozor.

Kopirajte sadržaj privitka "bluetoothpi.rtf" u prozor.

Na alatnoj traci kliknite Datoteka, Spremi kao. Spremite ga u direktorij/home/pi/Desktop/kao pokret.py.

Sada za testiranje koda kliknite ikonu Bluetooth u gornjem desnom kutu zaslona. Uparite malinu pi sa svojim Android uređajem. Preuzmite aplikaciju pod nazivom BlueTerm na svoj Android uređaj. Zatim u naredbeni redak unesite sljedeći kod podebljanim slovima. Ovo će izvršiti python kod.

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

Na pi bi se trebao pojaviti tekst "Čekanje veza".

Pokrenite BlueTerm i kliknite ikonu opcija, a zatim gumb "traži veze".

U aplikaciji bi se trebao pojaviti naziv vašeg malina pi. Pritisnite gumb s imenom pi. Tekst "Prihvaćena veza od" trebao bi se pojaviti na pi iza koje slijedi njegova adresa. Sada sve što upišete u telefon, trebalo bi biti prikazano u pi.

Uspješno ste kodirali vlastitu utičnicu Bluetooth poslužitelja!

Korak 4: Android aplikacija (Bluetooth klijent)

Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)
Android aplikacija (Bluetooth klijent)

Ovdje preuzmite Android Studio. Instalirajte ga i slijedite upute navedene u instalacijskom programu.

Započni novi projekt. Izradite praznu aktivnost pod nazivom MainActivity.

Kopirajte sadržaj privitka "Logic.txt" u datoteku (kartica) "MainActivity.java". Ovo sadrži svu logiku koja stoji iza aplikacije. Možda ćete morati promijeniti naziv svog uređaja na dnu datoteke.

Zatim kopirajte sadržaj datoteke "GUI" u datoteku "activity_main.xml" (kartica). Ovo sadrži vrlo jednostavan GUI za aplikaciju.

Sada ćete morati uvesti gumbe sa strelicama (slike) u aplikaciju. Raspakirajte privitak Arrows.zip. S lijeve strane android studija otvorite strukturu datoteke da biste vidjeli aplikaciju, res ili minimap. Kopirajte slike sa strelicama-p.webp

Na kraju kopirajte sadržaj datoteke "Manifest" u svoju datoteku (karticu) "AndroidManifest.xml".

Da biste testirali aplikaciju, morat ćete je pokrenuti na svom uređaju. Da biste to učinili, morat ćete postaviti uređaj u način za programere i omogućiti USB ispravljanje pogrešaka. Za većinu uređaja morat ćete otići u "Postavke", "O telefonu", pomaknuti se do dna i sedam puta kliknuti na "Broj izrade" dok ne vidite poruku "Sada ste programer!" Vratite se i sada biste trebali vidjeti karticu "Opcije za razvojne programere". Kliknite na nju i omogućite USB ispravljanje pogrešaka.

Povežite svoj Android uređaj s računalom putem USB -a, kliknite ikonu za pokretanje u Android Studiju i odaberite svoj uređaj.

Na pi -ju pokrenite python kôd kreiran u 3. koraku upisivanjem naredbe podebljanim slovima:

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

Zatim kliknite gumb za povezivanje u aplikaciji. Kad se povežete, neke bi se strelice sada trebale pojaviti u aplikaciji. Kad god kliknete na jedan, on će ažurirati stanje "kretanja" pi.

U redu je ako pozadina aplikacije daje pogrešku. To će se kasnije ispraviti.

Upravo ste stvorili vlastitu aplikaciju i Bluetooth klijenta.

Korak 5: Povezivanje hardvera

Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera
Povezivanje hardvera

Lemiti veze na gornjem dijagramu. Priključite i modul kamere na pi.

Pokrenite aplikaciju i pokrenite datoteku moving.py. Ako se motori ispravno kreću tijekom korištenja aplikacije, slobodno stavite sve komponente u konačnu ljusku za bespilotnu letjelicu. Možda ćete morati izmijeniti kodove "VISOKE" i "NISKE" kako bi se pravilno kretale.

U sljedećem koraku dodat ćemo značajku streaminga drona.

Korak 6: Streaming

Streaming
Streaming
Streaming
Streaming
Streaming
Streaming

Postoji više načina za prijenos videozapisa pomoću Pi -a, ali upotreba uv4l daleko je najjednostavniji način s praktički bez kašnjenja.

Samo napomena, ako ste već sastavili svoj dron i ne možete ga povezati s monitorom i tipkovnicom, morat ćete SSH ubaciti u svoj dron. Da biste to učinili, preuzmite Putty na svoje računalo. Otvorite ga i upišite IP adresu svoje maline (pronađite IP adresu upisivanjem naredbe ifconfig). Od vas će se zatražiti korisničko ime i lozinka. Zadano korisničko ime i lozinka su pi i malina. Sada sve što upišete u naredbeni okvir bit će kao da unosite naredbe izravno u dron.

postavljanje uv4l

Upišite ovu naredbu:

sudo nano /etc/apt/sources.list

Dodajte sljedeći redak u zadnji redak datoteke.

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

Izađite i spremite datoteku pritiskom na Ctrl-X, a zatim upišite Da.

Zatim upišite sljedeći redak i pritisnite enter.

sudo apt-get ažuriranje

onda ovo:

sudo apt-get install uv4l uv4l-raspicam

Upišite sljedeće naredbe redak po redak. Pričekajte da završi ono što radi prije nego upišete u sljedeći redak.

sudo apt-get install uv4l-raspicam-extras

sudo usluga uv4l_raspicam ponovno pokretanje

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

Nakon toga, sve što trebate učiniti je upisati sljedeću naredbu za početak streaminga (zamijenite "raspberrypi" s IP adresom malina/ imenom hosta u vašoj mreži)

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

Time će se početi reproducirati video u stvarnom vremenu na portu 8080. Stream bi se sada trebao vidjeti u pozadini vaše aplikacije. Za pregled streama u bilo kojem pregledniku upišite ovaj URL (gdje je "raspberrypi" vaša adresa bespilotnih letjelica).

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

Čestitamo, završili ste svoj špijunski dron.

Korak 7: Vozite

Okrenite prekidač za napajanje i krenite u istraživanje.

Ako želite znati napraviti nešto drugo, pitajte me pa ću vidjeti što mogu učiniti.

Ako imate pitanja, komentirajte u nastavku i potrudit ću se odgovoriti na njih.

Hvala na čitanju!

Preporučeni: