Innehållsförteckning:

Raspberry Pi, Android, IoT och Bluetooth Powered Drone: 7 steg (med bilder)
Raspberry Pi, Android, IoT och Bluetooth Powered Drone: 7 steg (med bilder)

Video: Raspberry Pi, Android, IoT och Bluetooth Powered Drone: 7 steg (med bilder)

Video: Raspberry Pi, Android, IoT och Bluetooth Powered Drone: 7 steg (med bilder)
Video: $5 WiFi Camera Setup | ESP32 Wifi Setup view on Mobile phone 2024, November
Anonim
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare
Raspberry Pi, Android, IoT och Bluetooth -driven drönare

Med hjälp av en Raspberry Pi för inbyggd logik skapar denna kompakta, mobila dator en lokal port som strömmar en video i realtid samtidigt som den skapar Bluetooth-uttag för att läsa värden som skickas av en anpassad Android-app. Appen synkroniseras med drönaren och använder användarinmatning för att skicka instruktioner till drönaren direkt.

Detta projekt är ganska svårt att göra från grunden. Förhoppningsvis kommer följande information att ge insikt för flera drone -applikationer. All mjukvara och kretskonstruktioner som avser detta projekt tillhandahålls. Ändra gärna och dela koden efter eget tycke. Använd informationen på ett ansvarsfullt sätt och lämna gärna en kommentar nedan.

Steg 1: Hårdvaran

Hårdvaran
Hårdvaran
Hårdvaran
Hårdvaran
Hårdvaran
Hårdvaran
Hårdvaran
Hårdvaran

Nedan är listan över hårdvara som jag använde.

  • Raspberry Pi 3 Modell B
  • Raspberry PI -kameramodul
  • L298N motorförare
  • 2, DC -motorer
  • Ett tangentbord, valfri bildskärm, mus, Ethernet -kabel och HDMI -kabel (för pi)
  • 8 GB MicroSD -kort
  • Skruvar, tejp, ect.
  • 2 hjul
  • En Android Bluetooth -enhet (min telefon)
  • 2, 18650 celler
  • En 5 volt regulator
  • En dator att programmera appen på

En Raspberry Pi: För högre strömupplösningar (eller för nybörjare) skulle jag rekommendera den senaste versionen av B -modellen medan mer kompakta versioner kan använda antingen den nyaste modellen A+ eller Pi Zero (kameraversion). Kom ihåg att om du använder en hallon pi zero behöver du en Bluetooth- och/eller WiFi -dongel för det. Denna handledning förutsätter att du använder en Raspberry Pi 3 B.

En motorförare: Jag använde en L298N, även om alla motorförare borde fungera. Se bara till att den klarar din motors spänning och ström.

2 DC -motorer: Se till att de klarar vikten av din drönare.

En kaross: Används också för att hålla alla komponenter i. Vanligtvis är hård plast eller aluminium ett slitstarkt, lätt material att använda. För optimala resultat kan även en 3D -skrivare användas.

En strömkälla: Det är nästan alltid det tuffaste beslutet när du väljer delar. Batteriet som krävs beror på strömdragningen. För applikationer med låg effekt (som 1 eller 2 ampere) bör ett 9V -batteri räcka. För högre strömstyrka rekommenderar jag antingen en 18650 litiumjoncell eller ett litiumpolymerbatteri eftersom de är lätta, kan hålla mycket kraft för sin storlek och är laddningsbara.

2 hjul: Se bara till att dina hjul har samma hålstorlek som axeln på din motor. Se också till att hjulens diametrar är tillräckligt stora för din drönare. Eftersom det finns flera möjliga variationer och mönster för detta projekt, är det flera olika hjultyper och storlekar att använda.

Spänningsregulatorer: En 5 volt regulator krävs för att driva pi via ett batteri. Jag använde en LM2596 DC-DC buck converter.

De flesta produkterna i länkarna användes i detta projekt och var de bästa erbjudandena jag kunde hitta just då.

Nu när du har allt du behöver, låt oss konfigurera pi.

Steg 2: Konfigurera Raspberry Pi

Konfigurera Raspberry Pi
Konfigurera Raspberry Pi
Konfigurera Raspberry Pi
Konfigurera Raspberry Pi
Konfigurera Raspberry Pi
Konfigurera Raspberry Pi

Detta steg visar dig hur du konfigurerar Raspberry Pi så att du kan börja koda. Om du redan har en pi -inställning med Raspbian kan du gå vidare till nästa steg.

Först måste du ladda ner ett operativsystem för hallon. Skaffa NOOBS om du är nybörjare. Om du redan har en anmärkningsvärd erfarenhet av en hallonpi kan du vara intresserad av Raspbian. Jag antar att du använder NOOBS för denna handledning.

Medan det laddas ner formaterar du ditt SD -kort med SD -formaterare.

Extrahera nu och kopiera innehållet i nedladdningen till roten på ditt SD -kort. Root betyder helt enkelt att det inte finns i några mappar. Om en ny mapp skapades för att innehålla alla extraherade filer, kopiera över den filen.

Anslut sedan SD -kortet till pi: n. När du sätter i den ska den antingen "klicka" in eller bara sitta inuti botten av pi.

Anslut musen och tangentbordet till pi: n. Anslut sedan en HDMI -kabel till pi från en bildskärm. Anslut slutligen en 3 amp micro usb -vägguttagsadapter till pi. Även om ett vägguttag rekommenderas använde jag min bärbara dator som strömkälla (USB från min bärbara dator till Micro USB i pi).

Låt pi göra sitt. Om du blir ombedd väljer du Raspbian och låter den installeras. Följ instruktionerna i installationsprogrammet. Det kan ta ett tag att slutföra. Om allt går rätt ska du se en skrivbordsskärm som liknar den ovan.

Anslut en Ethernet -kabel från routern till pi: n. Öppna sedan kommandoraden (den svarta "rutan" -ikonen högst upp på skärmen). Du måste uppdatera pi via ett trådbundet nätverk för att ansluta det till ett trådlöst nätverk.

Klicka sedan på kabelikonen högst upp på skärmen. Skriv in din nätverksinformation där du uppmanas.

Skriv texten på nästa rad precis som visas och tryck enter. Detta kommer att uppdatera pi. Det kan ta ett tag. Låt det bara göra sitt.

sudo apt-get uppdatering

Skriv sedan in koden på nästa rad. Detta kommer också att ta lite tid. Gör inget förrän det är klart.

sudo apt-get dist-upgrade

Nu ska du kunna koppla bort Ethernet -kabeln, klicka på ikonen för trådlöst högst upp på skärmen, ange din nätverksinformation och slutligen ansluta till ditt nätverk via trådlöst.

Låt oss nu koda den del av drönaren som hanterar rörelser.

Steg 3: Hantera rörelser (Bluetooth -server)

Hantera rörelser (Bluetooth -server)
Hantera rörelser (Bluetooth -server)

För hantering av rörelser används programmeringsspråket "Python 3". Meddelandena som säger att roboten ska röra sig skickas via Bluetooth från appen.

Först måste du installera Bluetooth -biblioteket. Skriv in följande kommandon för att göra det.

sudo apt-get uppdatering

sudo apt-get install bluetooth

sudo apt-get installera bluez

sudo apt-get install python-bluez

Klicka nu på skrivbordet på startmenyikonen, sedan på Programmering, sedan på Python 3. Klicka sedan på Arkiv, nytt i verktygsfältet. Ett nytt fönster ska visas.

Kopiera innehållet i bilagan "bluetoothpi.rtf" till fönstret.

Klicka på Arkiv, Spara som i verktygsfältet. Spara den i/home/pi/Desktop/katalogen som moves.py.

Nu för att testa koden, klicka på Bluetooth-ikonen i det övre högra hörnet av skärmen. Koppla hallon pi med din Android -enhet. Ladda ner en app som heter BlueTerm på din Android -enhet. Skriv sedan följande fet kod på kommandoraden. Detta kommer att köra pythonkoden.

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

Texten "Väntar på anslutningar" ska visas på bilden.

Starta BlueTerm och klicka på alternativikonen och sedan på knappen "leta efter anslutningar".

I appen ska ditt hallonpis namn visas. Klicka på knappen med pi -namnet. Texten "Godkänd anslutning från" ska visas på pi följt av dess adress. Nu ska allt du skriver i telefonen visas i pi: n.

Du har framgångsrikt kodat ditt eget Bluetooth -serveruttag!

Steg 4: Android -appen (Bluetooth -klient)

Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)
Android -appen (Bluetooth -klient)

Ladda ner Android Studio här. Installera det och följ instruktionerna i installationsprogrammet.

Starta ett nytt projekt. Skapa en tom aktivitet som heter MainActivity.

Kopiera innehållet i bilagan "Logic.txt" i filen "MainActivity.java" (flik). Detta innehåller all logik bakom appen. Du kan behöva ändra namnet på din enhet längst ner i filen.

Kopiera sedan innehållet i filen "GUI" i filen "activity_main.xml" (flik). Detta innehåller ett mycket enkelt GUI för appen.

Nu måste du importera pilknapparna (bilder) till appen. Packa upp bilagan Arrows.zip. Till vänster om android studio, öppna filstrukturen för att se app, res, minimap. Kopiera pilbilderna -p.webp

Slutligen kopiera innehållet i filen "Manifest" till din "AndroidManifest.xml" -fil (flik).

För att testa appen måste du köra den på din enhet. För att göra detta måste du ställa in enheten på utvecklarläge och aktivera USB -felsökning. För de flesta enheter måste du gå till "Inställningar", "Om telefon", bläddra till botten och klicka på "Byggnummer" sju gånger tills du ser meddelandet "Du är nu en utvecklare!" Gå tillbaka och du bör nu se fliken "Utvecklaralternativ". Klicka på den och aktivera USB -felsökning.

Anslut din Android -enhet till din dator via USB, klicka på körikonen på Android Studio och välj din enhet.

På pi, starta pythonkoden som skapades i steg 3 genom att skriva kommandot med fet stil:

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

Klicka sedan på knappen Anslut i appen. När du är ansluten ska några pilar nu visas i appen. När du klickar på en, kommer den att uppdatera pi: s "flytta" -läge.

Det är okej om bakgrunden till appen ger ett fel. Detta kommer att åtgärdas senare.

Du har just skapat din egen app och Bluetooth -klient.

Steg 5: Ansluta hårdvaran

Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran
Ansluta hårdvaran

Löd anslutningarna i diagrammet ovan. Anslut kameramodulen till pi också.

Kör appen och kör filen moves.py. Om motorerna rör sig korrekt när du använder appen, lägg gärna alla komponenter i ett färdigt skal för drönaren. Du kan behöva ändra koder "HIGH" och "LOW" värden så att den rör sig korrekt.

I nästa steg kommer vi att lägga till strömningsfunktionen för drönaren.

Steg 6: Streaming

Strömning
Strömning
Strömning
Strömning
Strömning
Strömning

Det finns flera sätt att strömma en video med en Pi, men att använda uv4l är det överlägset enklaste sättet med praktiskt taget ingen fördröjning.

Bara en sidnot, om du redan har satt ihop din drönare och inte kan ansluta den till din bildskärm och tangentbord, måste du SSH in i din drönare. För att göra detta, ladda ner Putty på din dator. Öppna den och skriv in din hallons IP -adress (hitta IP -adressen genom att skriva kommandot ifconfig). Det kommer att uppmana dig ett användarnamn och lösenord. Standard användarnamn och lösenord är pi respektive hallon. Nu kommer det du skriver i kommandorutan att vara som att skriva in kommandon direkt i drönaren.

konfigurera uv4l

Skriv in det här kommandot:

sudo nano /etc/apt/sources.list

Lägg till följande rad på den sista raden i filen.

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

Avsluta och spara filen genom att trycka på Ctrl-X och sedan skriva Ja.

Skriv sedan följande rad och tryck på enter.

sudo apt-get uppdatering

sedan det här:

sudo apt-get install uv4l uv4l-raspicam

Skriv in följande kommandon rad för rad. Vänta tills den avslutar vad den gör innan du skriver in nästa rad.

sudo apt-get install uv4l-raspicam-extras

sudo service uv4l_raspicam starta om

sudo rpi-uppdatering

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

Efter det är det bara att skriva in följande kommando för att börja strömma (ersätt "raspberrypi" med hallonets IP -adress/ värdnamn i ditt nätverk)

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

Detta kommer att börja strömma video i realtid på port 8080. Strömmen bör ses i bakgrunden av din app nu. För att se strömmen i vilken webbläsare som helst, skriv in den här webbadressen (där "raspberrypi" är din drones IP -adress).

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

Grattis, du har slutfört din spiondrona.

Steg 7: Kör

Vänd på strömbrytaren och börja utforska.

Om du vill veta hur man gör något annat, fråga mig så ska jag se vad jag kan göra.

Om du har några frågor, kommentera nedan så ska jag göra mitt bästa för att svara på dem.

Tack för att du läser!

Rekommenderad: