Indholdsfortegnelse:
- Trin 1: Ideen og forbindelserne
- Trin 2: Raspberry Pi -forbindelser og konfiguration
- Trin 3: APM -forbindelser og konfiguration
- Trin 4: Arduino Leonardo -konfiguration
- Trin 5: Første flyvning
Video: Autonom Line Follower Drone med Raspberry Pi: 5 trin
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:27
Denne vejledning viser, hvordan du i sidste ende kan lave line follower drone.
Denne drone vil have en "autonom tilstand" -kontakt, der skifter dronen til tilstand. Så du kan stadig flyve med din drone som før.
Vær opmærksom på, at det tager tid at bygge og endnu mere tid til at justere. Men det sidste … får dig til at tænke det værd.
For at begynde at oprette din egen autonom line tracker drone, skal du sørge for at have;
- Rasberry Pi 3 eller Raspberry Pi Zero W med SSH -adgang
- Klar til at flyve drone med APM eller Pixhawk flyvekontroller
- Arduino Leonardo eller en anden Arduino med hurtig clockhastighed
- Mindst 6 CH sender
- USB -webcam, som Raspberry Pi og OpenCV understøtter
- En pc
- 6 transistorer til generelle formål
- Kabelføring
Trin 1: Ideen og forbindelserne
APM, alias ArduPilot, er en flyvekontroller baseret på Arduino Mega. Det betyder, at vi kan ændre det, så det er bedst for vores sag. Men da jeg ikke har oplysninger til at gøre det, vil jeg gå for at følge en anden vej.
Raspberry Pi'er er desværre ikke tidsfølsomme, hvilket betyder, at de ikke kan håndtere PPM-signaler.
Derfor har vi brug for det ekstra Arduino -bord.
På denne måde vil Raspberry Pi behandle billederne og beregne flyveinstruktionerne og sende det til Arduino via Serial UART -interface. Arduino -kort vil stå her som en PPM -encoder/dekoder, som koder flyveinstruktionerne til PPM -signaler, som APM ønsker. For at få en idé kan du undersøge det symbolske kredsløbsdiagram.
Raspberry Pi vil opføre sig som telemetri sender sammen med detekteringslinje.
Det væsentlige kredsløb er vist på billederne. Jeg vil fortsætte med at forklare i de næste trin.
Trin 2: Raspberry Pi -forbindelser og konfiguration
Raspberry Pi forbindes til Wi-Fi-adapter (ekstraudstyr), USB-webcam, Arduino Leonardo via USB, APM via indbygget serielt interface. APM - RPI -forbindelse vist med detaljer på billederne.
For at konfigurere har du to muligheder: ren Raspbian med nødvendige pakker eller specielt billede til MAVLink -forbindelse kaldet APSync. Hvis du vil bruge Raspbian, skal du sørge for at have installeret disse pakker:
sudo apt-get opdatering
sudo apt-get install -y skærm python-wxgtk3.0 python-matplotlib sudo apt-get install -y python-opencv python-pip python-numpy python-dev sudo apt-get install -y libxml2-dev libxslt-dev python- lxml sudo pip installere fremtidig pymavlink mavproxy pyserial
For at bruge Raspberry Pi's indbyggede serielle interface skal du bede OS om ikke at bruge det. For at gøre det skal du skrive
sudo raspi-config
og følg grænsefladeindstillinger> Seriel grænseflade
Du skal deaktivere seriel grænseflade, men aktivere seriel hardware.
På dette tidspunkt er resten velegnet til både Raspbian og APSync.
Opret tre filer i hjemmebiblioteket: genstart script og billedprocessor scriptt. Anden linje gør genstart af script eksekverbart.
tryk på reboot.sh image_processor.py
chmod +x genstart.sh
Kopier alle linjerne i filerne nedenfor til din hjemmekatalog (/home/pi) i Raspberry Pi.
Genstart -scriptet indeholder triggere, der vil udløse billedprocessor og telemetri -scripts. Også få indstillinger. Bemærk, at hvis du ikke vil have telemetri -funktionen, skal du tilføje # før denne linje.
nano genstart.sh
#!/bin/bash
python3 /home/pi/image_processor.py
Gem det med CTRL+O, og afslut med CTRL+X. Sidste trin om det er at registrere det til OS -opstartsfil, rc.local
sudo nano /etc/rc.local
Tilføj denne linje over afkørsel 0:
/home/pi/reboot.sh
Vores genstart script vil blive udført på hver boot.
Vi vil have Raspberry Pi til at optage live-video, behandle den on-the-fly, beregne flyveinstruktioner, sende den til flight controller og være telemetri. Men da Raspberry Pi ikke er i stand til at generere PPM -signal, som APM ønsker, har vi brug for en anden måde at opnå det på.
Raspberry Pi sender sit billedbehandlingsoutput til Arduino (i mit tilfælde Arduino Leonardo) via Serial Port. Arduino vil generere PPM -signal fra denne input og sende det til Flight Controller via jumperwires. Dette er alt for Raspberry Pi.
Lad os gå videre til næste trin.
Trin 3: APM -forbindelser og konfiguration
Tingene ved APM er enkle, da det allerede er klar til at flyve. Vi skal kende serielle havnes baudrater og sikre, at TELEM -port er aktiveret.
I din jordsoftware, i mit tilfælde Mission Planner, skal du kontrollere flyvekontrollens parameterliste og finde baudraterne. For eksempel er SERIAL_BAUD USB baudrate og SERIAL_BAUD1 er TELEM port baudrate for APM. Bemærk, at værdier.
Den vigtigste del er INPUT pins 'forbindelser. Som vist på billedet skal du tilslutte Arduinos digitale ben 4 grundigt 9. Du kan eventuelt bruge et brødbord til dette, da vi vil tilføje nogle transistorer og modtagerudgange. (Se billeder) (Transistorer fungerer, hvis du vil tage kontrol over din drone)
ARD 4, APM INPUT 1
ARD 5, APM INPUT 2
ARD 6, APM INPUT 3
ARD 7, APM INPUT 4
ARD 8, APM INPUT 5
ARD 9 ↔ APM INPUT 6
Tilslut alle 5V ben på APM -input til Arduino Leonardo 5V pin. Tilslut ligeledes alle APM Input GND -ben til Arduino Leonardo GND -pin.
Trin 4: Arduino Leonardo -konfiguration
Vi har tilsluttet alle ledninger til Leonardo, så kun koden er tilbage.
Upload den givne kode herunder til din Arduino Leonardo. Vær opmærksom på baudrates.
Trin 5: Første flyvning
Når du er færdig med alle tidligere trin, betyder det, at du er klar.
Start alle kort, og opret forbindelse med SSH til Raspberry Pi. Indtast terminal:
sudo su
mavproxy.py --master =/dev/[SERIAL INTERFACE] --baudrate [TELEM PORT BAUDRATE] --aircraft [CUSTOM NAME
Standard Raspberry Pi indbygget serielt interface er ttyS0 (/dev/ttyS0)
Standard APM TELEM port baudrate er 57600
Standard APM USB -port baudrate er 115200
Du kan give ethvert navn til dit fly, vælge det med omhu, så du kan genkende det senere.
Hvis alt er i orden, skal du nu oprette forbindelse til din Raspberry Pi via VNC, så du kan se, hvad drone ser i realtid.
Nu kan du bevæbne din drone. Spændende, ikke?
Tag din drone af, og flyv over linjesporet. Nu kan du aktivere liniesporingstilstand ved hjælp af CH6 -switch.
Anbefalede:
Line Follower Robot With PICO: 5 trin (med billeder)
Line Follower Robot Med PICO: Før du er i stand til at skabe en robot, der kan afslutte civilisationen, som vi kender den, og er i stand til at afslutte den menneskelige race. Du skal først være i stand til at oprette de enkle robotter, dem, der kan følge en linje, der er tegnet på jorden, og her er hvor du vil
Arduino Line Follower Wallrides Classroom Whiteboard: 8 trin (med billeder)
Arduino Line Follower Wallrides Classroom Whiteboard: At følge linjen på jorden er for kedeligt! Vi har forsøgt at se på en anden vinkel på line -følgere og bringe dem til et andet fly - til skolens whiteboard. Se hvad der kom ud af det
Autonom drone med infrarødt kamera til at hjælpe førstehjælpere: 7 trin
Autonom drone med infrarødt kamera til at hjælpe førstehjælpere: Ifølge en rapport fra Verdenssundhedsorganisationen dræber naturkatastrofer hvert år omkring 90.000 mennesker og påvirker tæt på 160 millioner mennesker verden over. Naturkatastrofer omfatter jordskælv, tsunamier, vulkanudbrud, jordskred, orkaner, fl
Line Follower Robot Med PIC18F: 7 trin
Line Follower Robot Med PIC18F: RACE LINKI lavede denne line follower robot til mit mikrokontroller kursus på universitetet. Så jeg lavede denne grundlæggende line follower robot med brug af Pic 18f2520 og brugte kompilatoren til PIC CCS. Der er mange line follower -projekter på internettet med ardunio
Line Follower Robot: 11 trin (med billeder)
Line Follower Robot: Jeg lavede en line follower robot med PIC16F84A mikroprocessor udstyret med 4 IR sensorer. Denne robot kan køre på de sorte og hvide linjer