Indholdsfortegnelse:
- Trin 1: Hardware
- Trin 2: Opsætning af Raspberry Pi
- Trin 3: Håndtering af bevægelser (Bluetooth -server)
- Trin 4: Android -appen (Bluetooth -klient)
- Trin 5: Tilslutning af hardwaren
- Trin 6: Streaming
- Trin 7: Kør
Video: Raspberry Pi, Android, IoT og Bluetooth -drevet drone: 7 trin (med billeder)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:28
Ved hjælp af en Raspberry Pi til den indbyggede logik, vil denne kompakte, mobile computer oprette en lokal port, der streamer en video i realtid, samtidig med at den opretter Bluetooth-stik til at læse værdier sendt af en brugerdefineret Android-app. Appen synkroniseres med dronen og bruger brugerinput til at sende instruktioner til dronen med det samme.
Dette projekt er ret svært at lave fra bunden. Forhåbentlig vil følgende oplysninger give indsigt i flere drone -applikationer. Al software og kredsløbsdesign vedrørende dette projekt leveres. Du er velkommen til at ændre og dele koden efter din smag. Brug venligst de oplyste oplysninger ansvarligt og efterlad en kommentar herunder.
Trin 1: Hardware
Nedenfor er listen over hardware, jeg brugte.
- Raspberry Pi 3 Model B
- Hindbær PI kameramodul
- L298N motor driver
- 2, DC -motorer
- Et tastatur, enhver skærm, mus, Ethernet -kabel og HDMI -kabel (til pi)
- 8 GB MicroSD -kort
- Skruer, tape, ect.
- 2 hjul
- En Android Bluetooth -enhed (min telefon)
- 2, 18650 Celler
- En 5 volt regulator
- En computer til at programmere appen på
En Raspberry Pi: For højere strømopløsninger (eller for begyndere) vil jeg anbefale den nyeste version af B -modellen, mens mere kompakte versioner enten kan bruge den nyeste Model A+ eller Pi Zero (kameraversion). Husk, at hvis du bruger en hindbær pi zero, skal du bruge en Bluetooth og/eller WiFi dongle til det. Denne vejledning antager, at du bruger en Raspberry Pi 3 B.
En motordriver: Jeg brugte en L298N, selvom enhver motordriver burde arbejde. Bare sørg for, at den kan håndtere din motors spænding og strøm.
2 DC -motorer: Sørg for, at de kan klare vægten af din drone.
Et karosseri: Brugt også holde alle komponenterne i. Normalt er hård plast eller aluminium et slidstærkt, let materiale at bruge. For optimale resultater kan selv en 3D -printer bruges.
En strømkilde: Det er næsten altid den hårdeste beslutning, når du vælger dele. Det nødvendige batteri afhænger af den aktuelle trækning. Til applikationer med lav effekt (f.eks. 1 eller 2 ampere) bør et 9v batteri være tilstrækkeligt. For højere strømstyrke anbefaler jeg enten en 18650 litiumioncelle eller et litiumpolymerbatteri, da de er lette, kan holde meget strøm til deres størrelse og er genopladelige.
2 hjul: Bare sørg for at dine hjul har samme hulstørrelse som akslen på din motor. Sørg også for, at hjulens diametre er store nok til din drone. Da det er flere mulige variationer og designs til dette projekt, er det flere forskellige hjultyper og størrelser, der skal bruges.
Spændingsregulatorer: En 5 volt regulator er påkrævet for at drive pi'en via et batteri. Jeg brugte en LM2596 DC-DC buck converter.
De fleste af produkterne i linkene blev brugt i dette projekt og var de bedste tilbud, jeg kunne finde på det tidspunkt.
Nu hvor du har alt, hvad du har brug for, kan du konfigurere pi.
Trin 2: Opsætning af Raspberry Pi
Dette trin viser dig, hvordan du konfigurerer Raspberry Pi, så du kan begynde at kode. Hvis du allerede har en pi -opsætning med Raspbian, er du velkommen til at gå videre til det næste trin.
Først skal du downloade et operativsystem til hindbær. Få NOOBS, hvis du er nybegynder. Hvis du allerede har en bemærkelsesværdig erfaring med en hindbærpi, kan du være interesseret i Raspbian. Jeg antager, at du bruger NOOBS til denne vejledning.
Mens det downloades, skal du formatere dit SD -kort med SD -formatter.
Udtræk og kopier nu indholdet af overførslen til roden af dit SD -kort. Root betyder ganske enkelt, at den ikke er inde i nogen mapper. Hvis der blev oprettet en ny mappe til at indeholde alle de udpakkede filer, skal du kopiere på tværs af den fil.
Sæt derefter SD -kortet på pi'en. Mens den indsættes, skal den enten "klikke" ind eller bare sidde inde i bunden af pi'et.
Tilslut musen og tastaturet til pi'en. Tilslut derefter et HDMI -kabel til pi'en fra en skærm. Tilslut til sidst en 3 amp mikro USB -vægstikadapter i stikket. Selvom der anbefales en stikkontakt, brugte jeg min bærbare som strømkilde (USB fra min bærbare til Micro USB i pi).
Lad pi gøre sit. Hvis du bliver bedt om det, skal du vælge Raspbian og lade det installere. Følg instruktionerne i installationsprogrammet. Det kan tage et stykke tid at fuldføre. Hvis alt går rigtigt, skal du se en skrivebordsskærm, der ligner den ovenfor.
Tilslut et Ethernet -kabel fra din router til pi. Åbn derefter kommandolinjen (Det sorte "boks" -ikon øverst på skærmen). Du skal opdatere pi'en via et kablet netværk for at forbinde det til et trådløst netværk.
Klik derefter på ikonet Kabel øverst på skærmen. Indtast dine netværksoplysninger, hvor du bliver bedt om det.
Skriv teksten i den næste linje nøjagtigt som vist, og tryk på enter. Dette vil opdatere pi. Det kan tage et stykke tid. Bare lad det gøre sit.
sudo apt-get opdatering
Indtast derefter koden i den næste linje. Dette vil også tage noget tid. Gør ikke noget, før det er færdigt.
sudo apt-get dist-upgrade
Nu skal du kunne afbryde Ethernet -kablet, klikke på ikonet for trådløs i toppen af skærmen, indtaste dine netværksoplysninger og tilslutte til dit netværk via trådløst.
Lad os nu kode den del af dronen, der håndterer bevægelser.
Trin 3: Håndtering af bevægelser (Bluetooth -server)
Til håndtering af bevægelser bruges programmeringssproget "Python 3". Meddelelserne, der fortæller robotten om at flytte, sendes via Bluetooth fra appen.
Først skal du installere Bluetooth -biblioteket. Indtast følgende kommandoer for at gøre det.
sudo apt-get opdatering
sudo apt-get install bluetooth
sudo apt-get installer bluez
sudo apt-get install python-bluez
Klik nu på skrivebordet på startmenuikonet, derefter på Programmering, derefter Python 3. Klik derefter på Filer, ny fra værktøjslinjen. Et nyt vindue skal vises.
Kopier indholdet af vedhæftede filer "bluetoothpi.rtf" ind i vinduet.
Klik på Filer, Gem som på værktøjslinjen. Gem det i/home/pi/Desktop/biblioteket som moves.py.
Nu for at teste koden skal du klikke på Bluetooth-ikonet i øverste højre hjørne af skærmen. Par hindbær pi med din Android -enhed. Download en app kaldet BlueTerm på din Android -enhed. Indtast derefter følgende kode med fed skrift på kommandolinjen. Dette vil udføre python -koden.
sudo python /home/pi/Desktop/movements.py
Teksten "Venter på forbindelser" skal vises på pi.
Start BlueTerm, og klik på ikonet for indstillinger og derefter på knappen "søg efter forbindelser".
I appen skal navnet på din hindbær pi vises. Klik på knappen med pi -navnet. Teksten "Accepteret forbindelse fra" skal vises på pi efterfulgt af dens adresse. Uanset hvad du skriver i telefonen, skal det vises i pi.
Du har med succes kodet dit eget Bluetooth -serverstik!
Trin 4: Android -appen (Bluetooth -klient)
Download Android Studio her. Installer det, og følg instruktionerne i installationsprogrammet.
Start et nyt projekt. Opret en tom aktivitet kaldet MainActivity.
Kopier indholdet af vedhæftede filer "Logic.txt" i filen "MainActivity.java" (fane). Dette indeholder al logik bag appen. Du skal muligvis ændre navnet på din enhed i bunden af filen.
Kopier derefter indholdet af filen "GUI" i filen "activity_main.xml" (fane). Dette indeholder en meget enkel GUI til appen.
Nu skal du importere piletasterne (billeder) til appen. Udpak vedhæftede filer Arrows.zip. Til venstre for android studio skal du åbne filstrukturen for at se app, res, minimap. Kopiér pilebillederne-p.webp
Endelig kopierer indholdet af filen "Manifest" til din "AndroidManifest.xml" -fil (fane).
For at teste appen skal du køre den på din enhed. For at gøre dette skal du indstille enheden til udviklertilstand og aktivere USB -fejlfinding. For de fleste enheder skal du gå til "Indstillinger", "Om telefon", rulle til bunden og klikke på "Byg nummer" syv gange, indtil du ser meddelelsen "Du er nu en udvikler!" Gå tilbage, og du skulle nu se fanen "Udviklerindstillinger". Klik på det, og aktiver USB -fejlfinding.
Tilslut din Android -enhed til din computer via USB, klik på ikonet Kør i Android Studio, og vælg din enhed.
På pi skal du starte pythonkoden, der blev oprettet i trin 3, ved at indtaste kommandoen med fed skrift:
sudo python /home/pi/Desktop/movements.py
Klik derefter på forbindelsesknappen i appen. Når der er forbindelse, skal nogle pile nu vises på appen. Når du klikker på en, vil den opdatere pi's "flytte" -tilstand.
Det er ok, hvis baggrunden for appen giver en fejl. Dette vil blive rettet senere.
Du har lige oprettet din egen app og Bluetooth -klient.
Trin 5: Tilslutning af hardwaren
Lod lodforbindelserne i diagrammet ovenfor. Sæt også kameramodulet på pi'et.
Kør appen, og udfør filen moves.py. Hvis motorerne bevæger sig korrekt, når du bruger appen, er du velkommen til at lægge alle komponenterne i en færdigbehandlet skal til dronen. Du skal muligvis ændre koderne "HIGH" og "LOW" værdier, så den bevæger sig korrekt.
I det næste trin tilføjer vi streamingfunktionen i dronen.
Trin 6: Streaming
Der er flere måder at streame en video ved hjælp af en Pi, men brug af uv4l er langt den nemmeste måde uden stort set forsinkelse.
Bare en sidebemærkning, hvis du allerede har sat din drone sammen og ikke kan slutte den til din skærm og tastatur, skal du SSH ind i din drone. For at gøre dette skal du downloade Putty på din computer. Åbn den, og indtast din hindbærs IP -adresse (find IP -adressen ved at skrive kommandoen ifconfig). Det vil bede dig om et brugernavn og en adgangskode. Standardbrugernavnet og adgangskoden er henholdsvis pi og hindbær. Uanset hvad du skriver i kommandofeltet, vil det være som at indtaste kommandoer direkte i dronen.
opsætning af uv4l
Indtast denne kommando:
sudo nano /etc/apt/sources.list
Tilføj følgende linje i den sidste linje i filen.
deb https://www.linux-projects.org/listing/uv4l_repo/raspbian/ jessie main
Afslut og gem filen ved at trykke på Ctrl-X og derefter skrive Ja.
Indtast derefter følgende linje, og tryk på enter.
sudo apt-get opdatering
så dette:
sudo apt-get install uv4l uv4l-raspicam
Indtast følgende kommandoer linje for linje. Vent på, at det er færdigt, hvad det gør, før du skriver i den næste linje.
sudo apt-get install uv4l-raspicam-extras
sudo service uv4l_raspicam genstart
sudo rpi-opdatering
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
Derefter skal du bare indtaste følgende kommando for at starte streaming (udskift "raspberrypi" med hindbærens IP -adresse/ værtsnavn i dit netværk)
cvlc https:// raspberrypi: 8080/stream/video.mjpeg
Dette vil begynde at streame video i realtid på port 8080. Strømmen skal ses i baggrunden af din app nu. For at se strømmen i enhver browser skal du indtaste denne webadresse (hvor "raspberrypi" er din drones IP -adresse).
https:// raspberrypi: 8080/stream/video.mjpeg
Tillykke, du har fuldført din spiondrone.
Trin 7: Kør
Vend afbryderen og begynd at undersøge.
Hvis du vil vide, hvordan du laver noget andet, så spørg mig, så ser jeg, hvad jeg kan gøre.
Hvis du har spørgsmål, bedes du kommentere herunder, og jeg vil gøre mit bedste for at besvare dem.
Tak fordi du læste!
Anbefalede:
Alexa Voice Controlled Raspberry Pi Drone Med IoT og AWS: 6 trin (med billeder)
Alexa Voice Controlled Raspberry Pi Drone Med IoT og AWS: Hej! Mit navn er Armaan. Jeg er en 13-årig dreng fra Massachusetts. Denne vejledning viser, som du kan udlede af titlen, hvordan man bygger en Raspberry Pi Drone. Denne prototype demonstrerer, hvordan droner udvikler sig, og også hvor stor en rolle de kan spille i
Programmer din Arduino med en Android -enhed over Bluetooth: 6 trin (med billeder)
Programmer din Arduino med en Android -enhed over Bluetooth: Hej verden, i denne instruktør vil jeg vise dig, hvordan du programmerer din Arduino Uno med din Android -enhed via Bluetooth. Det er meget enkelt og så billigt. Det giver os også mulighed for at programmere vores Arduino, hvor vi end ønsker det over trådløs bluetooth … Så
Sådan opretter du en Android -app med Android Studio: 8 trin (med billeder)
Sådan opretter du en Android -app med Android Studio: Denne vejledning lærer dig det grundlæggende i, hvordan du opbygger en Android -app ved hjælp af Android Studio -udviklingsmiljøet. Efterhånden som Android -enheder bliver mere og mere almindelige, vil efterspørgslen efter nye apps kun stige. Android Studio er en let at bruge (en
Soft Toy Bluetooth -terninger og udvikl Android -spil med MIT App Inventor: 22 trin (med billeder)
Soft Toy Bluetooth -terninger og udvikl Android -spil med MIT App Inventor: At spille terningspil har en anden metode1) Traditionelt spil med træ- eller messingterninger. spil terningerne fysisk og flyt mønten i mobilen eller pc'en
Sådan adskilles en computer med nemme trin og billeder: 13 trin (med billeder)
Sådan adskilles en computer med nemme trin og billeder: Dette er en instruktion om, hvordan du adskiller en pc. De fleste af de grundlæggende komponenter er modulopbyggede og nemme at fjerne. Det er dog vigtigt, at du er organiseret omkring det. Dette hjælper med at forhindre dig i at miste dele og også ved at lave genmonteringen til