Sisällysluettelo:

Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone: 7 vaihetta (kuvilla)
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone: 7 vaihetta (kuvilla)

Video: Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone: 7 vaihetta (kuvilla)

Video: Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone: 7 vaihetta (kuvilla)
Video: Control Position and Speed of Stepper motor with L298N module using Arduino 2024, Marraskuu
Anonim
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone
Raspberry Pi, Android, IoT ja Bluetooth -käyttöinen drone

Tämä kompakti, kannettava tietokone käyttää Raspberry Pi: tä sisäiseen logiikkaan ja luo paikallisen portin, joka suoratoistaa videota reaaliajassa ja luo samanaikaisesti Bluetooth-liitäntöjä mukautetun Android-sovelluksen lähettämien arvojen lukemiseksi. Sovellus synkronoi droonin kanssa ja lähettää käyttäjän syötteellä ohjeet droneen välittömästi.

Tätä projektia on melko vaikea tehdä alusta alkaen. Toivottavasti seuraavat tiedot antavat tietoa useista drone -sovelluksista. Kaikki tähän projektiin liittyvät ohjelmistot ja piirimallit ovat mukana. Voit vapaasti muokata ja jakaa koodin mieleiseksesi. Käytä annettuja tietoja vastuullisesti ja jätä kommentti alle.

Vaihe 1: Laitteisto

Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto
Laitteisto

Alla on luettelo käyttämistäni laitteistoista.

  • Raspberry Pi 3 Malli B
  • Vadelma PI -kameramoduuli
  • L298N -moottorin ohjain
  • 2, DC -moottorit
  • Näppäimistö, mikä tahansa näyttö, hiiri, Ethernet -kaapeli ja HDMI -kaapeli (pi)
  • 8 Gt: n MicroSD -kortti
  • Ruuvit, nauhat jne.
  • 2 pyörää
  • Android -Bluetooth -laite (puhelin)
  • 2, 18650 solua
  • 5 voltin säädin
  • Tietokone, jolla voit ohjelmoida sovelluksen

A Raspberry Pi: Suuremmille streamitarkkuuksille (tai aloittelijoille) suosittelen B -mallin uusinta versiota, kun taas pienemmät versiot voivat käyttää joko uusinta mallia A+ tai Pi Zero (kameraversio). Muista, että jos käytät vadelmapi nollaa, tarvitset siihen Bluetooth- ja/tai WiFi -sovittimen. Tässä opetusohjelmassa oletetaan, että käytät Raspberry Pi 3 B.

Moottoriajuri: Käytin L298N: ää, vaikka minkä tahansa moottoriajurin pitäisi toimia. Varmista vain, että se pystyy käsittelemään moottorisi jännitettä ja virtaa.

2 DC -moottoria: Varmista, että ne kestävät dronesi painon.

Runko: Käytettynä myös pidä kaikki komponentit sisään. Yleensä kova muovi tai alumiini on kestävää ja kevyttä materiaalia. Parhaan tuloksen saavuttamiseksi voidaan käyttää jopa 3D -tulostinta.

Virtalähde: Se on melkein aina vaikein päätös osien valinnassa. Tarvittava akku riippuu virrankulutuksesta. Pienitehoisissa sovelluksissa (kuten 1 tai 2 ampeeria) 9 V: n akun pitäisi riittää. Suuremman virrankulutuksen vuoksi suosittelen joko 18650 litiumionikennoa tai litiumpolymeeriakkua, koska ne ovat kevyitä, kestävät kooltaan paljon virtaa ja ovat ladattavia.

2 pyörää: Varmista vain, että renkaidesi reikien koko on sama kuin moottorin akselin. Varmista myös, että pyörien halkaisijat ovat riittävän suuria droneillesi. Koska ne ovat useita mahdollisia muunnelmia ja malleja tähän projektiin, niitä on useita erilaisia pyörätyyppejä ja -kokoja.

Jännitteen säätimet: Pi: n virransyöttö akun kautta vaatii 5 voltin säätimen. Käytin LM2596 DC-DC buck -muunninta.

Suurinta osaa linkkien tuotteista käytettiin tässä projektissa ja ne olivat parhaita tarjouksia, joita löysin tuolloin.

Nyt kun sinulla on kaikki mitä tarvitset, voit määrittää pi.

Vaihe 2: Asenna Raspberry Pi

Raspberry Pi: n asentaminen
Raspberry Pi: n asentaminen
Raspberry Pi: n asentaminen
Raspberry Pi: n asentaminen
Raspberry Pi: n asentaminen
Raspberry Pi: n asentaminen

Tämä vaihe näyttää sinulle, miten Raspberry Pi asetetaan, jotta voit aloittaa koodauksen. Jos sinulla on jo pi -asennus Raspbianin kanssa, siirry seuraavaan vaiheeseen.

Ensin sinun on ladattava vadelma -käyttöjärjestelmä. Hanki NOOBS, jos olet aloittelija. Jos sinulla on jo huomattavaa kokemusta vadelmapi: sta, saatat olla kiinnostunut Raspbianista. Oletan, että käytät NOOBSia tässä opetusohjelmassa.

Alusta lataamisen aikana, alusta SD -kortti SD Formatterilla.

Pura ja kopioi latauksen sisältö SD -kortin juureen. Juuri tarkoittaa yksinkertaisesti sitä, että se ei ole kansioiden sisällä. Jos luotiin uusi kansio, joka sisältää kaikki puretut tiedostot, kopioi sen yli.

Kiinnitä seuraavaksi SD -kortti pi. Kun asetat sen, sen pitäisi joko "napsauttaa" sisään tai vain istua pi: n pohjan sisällä.

Liitä hiiri ja näppäimistö pi -laitteeseen. Liitä sitten HDMI -kaapeli näytön pi -liitäntään. Liitä lopuksi 3 ampeerin mikro -USB -pistorasiasovitin pi: hen. Vaikka pistorasiaa suositellaan, käytin kannettavaa tietokonettani virtalähteenä (USB kannettavasta tietokoneesta Micro USB: hen pi).

Anna pi tehdä tehtävänsä. Valitse pyydettäessä Raspbian ja anna sen asentaa. Noudata asennusohjelman ohjeita. Se voi kestää jonkin aikaa. Jos kaikki menee oikein, sinun pitäisi nähdä samanlainen työpöydän näyttö kuin yllä.

Kytke Ethernet -kaapeli reitittimestä pi. Avaa sitten komentorivi (musta "laatikko" -kuvake näytön yläosassa). Sinun on päivitettävä pi langallisen verkon kautta, jotta voit muodostaa yhteyden langattomaan verkkoon.

Napsauta sitten näytön yläosassa olevaa Kaapeli -kuvaketta. Kirjoita verkon tiedot pyydettäessä.

Kirjoita seuraavan rivin teksti täsmälleen kuvan mukaisesti ja paina Enter. Tämä päivittää pi. Se voi kestää jonkin aikaa. Anna sen vain tehdä tehtävänsä.

sudo apt-get päivitys

Kirjoita sitten koodi seuraavalle riville. Tämä kestää myös jonkin aikaa. Älä tee mitään ennen kuin se on valmis.

sudo apt-get dist-upgrade

Nyt sinun pitäisi voida irrottaa Ethernet -kaapeli, napsauttaa näytön yläreunassa olevaa langattoman verkon kuvaketta, syöttää verkkotietosi ja muodostaa yhteys verkkoon langattomasti.

Koodataan nyt dronin osa, joka käsittelee liikkeitä.

Vaihe 3: Liikkeiden käsittely (Bluetooth -palvelin)

Liikkeiden käsittely (Bluetooth -palvelin)
Liikkeiden käsittely (Bluetooth -palvelin)

Liikkeiden käsittelyyn käytetään ohjelmointikieltä "Python 3". Viestit, jotka kertovat robotille liikkumisesta, lähetetään sovelluksen Bluetooth -yhteyden kautta.

Ensin sinun on asennettava Bluetooth -kirjasto. Kirjoita seuraavat komennot.

sudo apt-get päivitys

sudo apt-get asenna bluetooth

sudo apt-get install bluez

sudo apt-get install python-bluez

Napsauta nyt työpöydällä Käynnistä -valikkokuvaketta, sitten Ohjelmointi ja sitten Python 3. Valitse sitten työkaluriviltä Tiedosto, uusi. Uusi ikkuna pitäisi ilmestyä.

Kopioi liitteen "bluetoothpi.rtf" sisältö ikkunaan.

Napsauta työkalurivillä Tiedosto, Tallenna nimellä. Tallenna se hakemistoon/home/pi/Desktop/Moves.py.

Testaa koodi napsauttamalla Bluetooth-kuvaketta näytön oikeassa yläkulmassa. Yhdistä vadelma pi Android -laitteesi kanssa. Lataa BlueTerm -sovellus Android -laitteellesi. Kirjoita sitten komentoriville seuraava lihavoitu koodi. Tämä suorittaa python -koodin.

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

Tekstin "Odotetaan yhteyksiä" pitäisi näkyä pi: ssä.

Käynnistä BlueTerm ja napsauta asetuskuvaketta ja sitten "etsi yhteyksiä" -painiketta.

Raspberry pi -nimesi pitäisi näkyä sovelluksessa. Napsauta painiketta, jossa on pi: n nimi. Tekstin "Hyväksytty yhteys lähteestä" pitäisi näkyä pi: ssä ja sen osoitteen jälkeen. Nyt mitä kirjoitat puhelimeen, sen pitäisi näkyä pi: ssä.

Olet koodannut oman Bluetooth -palvelinliitännän onnistuneesti!

Vaihe 4: Android -sovellus (Bluetooth -asiakas)

Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)
Android -sovellus (Bluetooth -asiakas)

Lataa Android Studio täältä. Asenna se ja noudata asennusohjelman ohjeita.

Aloita uusi projekti. Luo tyhjä toiminto nimeltä MainActivity.

Kopioi liitteen "Logic.txt" sisältö "MainActivity.java" -tiedostoon (välilehti). Tämä sisältää kaiken logiikan sovelluksen takana. Sinun on ehkä muutettava laitteen nimeä tiedoston alaosassa.

Kopioi sitten GUI -tiedoston sisältö tiedostoon "activity_main.xml" (välilehti). Tämä sisältää sovellukselle erittäin yksinkertaisen käyttöliittymän.

Nyt sinun on tuotava nuolipainikkeet (kuvat) sovellukseen. Pura liite Arrows.zip. Avaa Android -studion vasemmalla puolella tiedostorakenne nähdäksesi sovelluksen, res, minimap. Kopioi nuolikuvat-p.webp

Lopuksi kopioi Manifest -tiedoston sisältö AndroidManifest.xml -tiedostoosi (välilehti).

Jotta voit testata sovellusta, sinun on suoritettava se laitteellasi. Tätä varten sinun on asetettava laite kehittäjätilaan ja otettava käyttöön USB -virheenkorjaus. Useimmissa laitteissa sinun on siirryttävä kohtaan "Asetukset", "Tietoja puhelimesta", vieritettävä alas ja napsautettava "Rakennuksen numero" seitsemän kertaa, kunnes näet viestin "Olet nyt kehittäjä!" Palaa takaisin ja sinun pitäisi nyt nähdä "Kehittäjäasetukset" -välilehti. Napsauta sitä ja ota käyttöön USB -virheenkorjaus.

Yhdistä Android -laitteesi tietokoneeseen USB: n kautta, napsauta Android Studion suorituskuvaketta ja valitse laitteesi.

Käynnistä pi: ssä vaiheessa 3 luotu python -koodi kirjoittamalla lihavoitu komento:

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

Napsauta sitten sovelluksen Yhdistä -painiketta. Kun yhteys on muodostettu, joidenkin nuolien pitäisi nyt näkyä sovelluksessa. Aina kun napsautat yhtä, se päivittää pi: n "siirtymistilan".

Ei hätää, jos sovelluksen tausta antaa virheen. Tämä korjataan myöhemmin.

Olet juuri luonut oman sovelluksesi ja Bluetooth -asiakkaan.

Vaihe 5: Laitteiston liittäminen

Laitteiston liittäminen
Laitteiston liittäminen
Laitteiston liittäminen
Laitteiston liittäminen
Laitteiston liittäminen
Laitteiston liittäminen

Juotosliitännät yllä olevassa kaaviossa. Kiinnitä myös kameramoduuli pi: hen.

Suorita sovellus ja suorita motion.py -tiedosto. Jos moottorit liikkuvat oikein sovellusta käytettäessä, voit vapaasti laittaa kaikki komponentit droonin valmiiseen kuoreen. Sinun on ehkä muutettava koodeja "HIGH" ja "LOW", jotta ne liikkuvat oikein.

Seuraavassa vaiheessa lisäämme dronin suoratoisto -ominaisuuden.

Vaihe 6: Suoratoisto

suoratoisto
suoratoisto
suoratoisto
suoratoisto
suoratoisto
suoratoisto

Niillä on useita tapoja suoratoistaa videota Pi: llä, mutta uv4l: n käyttäminen on ylivoimaisesti helpoin tapa käytännössä ilman viivettä.

Huomaa vain, että jos olet jo koonnut dronin yhteen etkä voi yhdistää sitä näyttöön ja näppäimistöön, sinun on SSH liitettävä droneesi. Voit tehdä tämän lataamalla Puttyn tietokoneellesi. Avaa se ja kirjoita vadelmasi IP -osoite (etsi IP -osoite kirjoittamalla komento ifconfig). Se pyytää sinua antamaan käyttäjätunnuksen ja salasanan. Oletuskäyttäjätunnus ja salasana ovat pi ja vadelma. Kaikki mitä kirjoitat komentoriville, on kuin komentojen syöttäminen suoraan droneen.

uv4l: n määrittäminen

Kirjoita tämä komento:

sudo nano /etc/apt/sources.list

Lisää seuraava rivi tiedoston viimeiselle riville.

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

Poistu ja tallenna tiedosto painamalla Ctrl-X ja kirjoittamalla sitten Kyllä.

Kirjoita sitten seuraava rivi ja paina enter.

sudo apt-get päivitys

sitten tämä:

sudo apt-get install uv4l uv4l-raspicam

Kirjoita seuraavat komennot rivi riviltä. Odota, että se lopettaa toimintansa, ennen kuin kirjoitat seuraavan rivin.

sudo apt-get install uv4l-raspicam-extrat

sudo -palvelu uv4l_raspicam uudelleen

sudo rpi-päivitys

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-extrat

Sen jälkeen sinun tarvitsee vain kirjoittaa seuraava komento aloittaaksesi suoratoiston (korvaa "raspberrypi" vadelman IP -osoitteella/ isäntänimellä verkossa)

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

Tämä aloittaa videon suoratoiston portissa 8080. Striimin pitäisi näkyä sovelluksesi taustalla nyt. Jos haluat nähdä streamin missä tahansa selaimessa, kirjoita tämä URL -osoite (jossa "raspberrypi" on droneidesi IP -osoite).

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

Onnittelut, olet saanut vakoojalennokin valmiiksi.

Vaihe 7: Aja

Käännä virtakytkin ja ala tutkia.

Jos haluat tietää, miten tehdä jotain muuta, kysy minulta, niin katson mitä voin tehdä.

Jos sinulla on kysyttävää, kommentoi alle, ja yritän parhaani mukaan vastata niihin.

Kiitos lukemisesta!

Suositeltava: