Obsah:

Autonómny sledovací dron s Raspberry Pi: 5 krokov
Autonómny sledovací dron s Raspberry Pi: 5 krokov

Video: Autonómny sledovací dron s Raspberry Pi: 5 krokov

Video: Autonómny sledovací dron s Raspberry Pi: 5 krokov
Video: Leap Motion SDK 2024, Júl
Anonim
Autonómny sledovací dron s Raspberry Pi
Autonómny sledovací dron s Raspberry Pi

Tento tutoriál ukazuje, ako sa dá z drona nakoniec urobiť dron.

Tento dron bude mať prepínač „autonómneho režimu“, pomocou ktorého sa dron prepne do režimu. So svojim dronom tak môžete stále lietať ako predtým.

Uvedomte si, že jeho výstavba bude chvíľu trvať a ešte viac času bude trvať na jeho úpravu. Ale posledné … je, aby ste premýšľali, že to stojí za to.

Ak chcete začať vytvárať svoj vlastný dron na sledovanie trate autonomus, uistite sa, že máte;

  • Rasberry Pi 3 alebo Raspberry Pi Zero W s prístupom SSH
  • Dron Ready-To-Fly s letovým ovládačom APM alebo Pixhawk
  • Arduino Leonardo alebo iné Arduino s rýchlym taktom
  • Vysielač najmenej 6 kanálov
  • Webová kamera USB, ktorú podporujú Raspberry Pi a OpenCV
  • Počítač
  • 6 tranzistorov na všeobecné použitie
  • Káble na zapojenie

Krok 1: Myšlienka a prepojenia

Myšlienka a spojenia
Myšlienka a spojenia

APM, alias ArduPilot, je letový ovládač založený na Arduino Mega. To znamená, že ho môžeme upraviť tak, aby bol pre náš prípad najvhodnejší. Ale pretože na to nemám informácie, idem nasledovať inú cestu.

Raspberry Pi, bohužiaľ, nie sú citlivé na čas, čo znamená, že sa nedokážu vysporiadať so signálmi PPM.

Preto potrebujeme prídavnú dosku Arduino.

Týmto spôsobom Raspberry Pi spracuje obrázky a vypočíta letové pokyny a odošle ich do Arduina prostredníctvom rozhrania Serial UART. Karta Arduino tu bude stáť ako kodér/dekodér PPM, ktorý kóduje letové pokyny na signály PPM, ktoré chce APM. Aby ste mali predstavu, môžete preskúmať symbolický schéma zapojenia.

Raspberry Pi sa bude správať ako telemetrický vysielač vedľa detekčnej linky.

Základný obvod je zobrazený na obrázkoch. V ďalších krokoch budem pokračovať vo vysvetľovaní.

Krok 2: Pripojenia a konfigurácia Raspberry Pi

Pripojenia a konfigurácia Raspberry Pi
Pripojenia a konfigurácia Raspberry Pi
Pripojenia a konfigurácia Raspberry Pi
Pripojenia a konfigurácia Raspberry Pi

Raspberry Pi bude pripojené k Wi-Fi adaptéru (voliteľné), USB webovej kamere, Arduino Leonardo cez USB, APM prostredníctvom vstavaného sériového rozhrania. APM - Pripojenie RPI zobrazené s podrobnosťami na obrázkoch.

Na konfiguráciu máte dve možnosti: čistý Raspbian s potrebnými balíkmi alebo špeciálny obrázok pre pripojenie MAVLink s názvom APSync. Ak sa chystáte používať Raspbian, uistite sa, že máte nainštalované tieto balíky:

sudo apt-get aktualizácia

sudo apt-get install -y obrazovka 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 install future pymavlink mavproxy pyserial

Aby ste mohli používať vstavané sériové rozhranie Raspberry Pi, musíte povedať OS, aby ho nepoužíval. Ak to chcete urobiť, zadajte

sudo raspi-config

a postupujte podľa možností rozhrania> sériové rozhranie

Musíte vypnúť sériové rozhranie, ale povoliť sériový hardvér.

V tomto mieste je zvyšok vhodný pre Raspbian aj APSync.

V domácom adresári vytvorte tri súbory: reštartujte skript a skript obrázkového procesora. Druhý riadok robí spustiteľný skript reštartu.

klepnite na reboot.sh image_processor.py

chmod +x reboot.sh

Skopírujte všetky riadky v nižšie uvedených súboroch do svojho domovského adresára (/home/pi) v Raspberry Pi.

Reštartovací skript bude obsahovať spúšťače, ktoré spustia obrazový procesor a telemetrické skripty. Tiež niekoľko nastavení. Ak nechcete funkciu telemetrie, pridajte pred riadok #.

nano reboot.sh

#!/bin/bash

python3 /home/pi/image_processor.py

Uložte ho pomocou klávesov CTRL+O a ukončite stlačením klávesov CTRL+X. Posledným krokom je jeho registrácia do štartovacieho súboru OS, rc.local

sudo nano /etc/rc.local

Pripojte tento riadok nad výjazd 0:

/home/pi/reboot.sh

Náš skript pre reštart sa spustí pri každom štarte.

Chceme, aby Raspberry Pi nahrával živé video, spracovával ho za behu, vypočítaval letové pokyny, odosielal ho letovému kontrolórovi a bol telemetrický. Ale pretože Raspberry Pi nie je schopný generovať signál PPM, ktorý chce APM, potrebujeme iný spôsob, ako to dosiahnuť.

Raspberry Pi pošle svoj výstup na spracovanie obrazu do Arduina (v mojom prípade Arduino Leonardo) cez sériový port. Arduino z tohto vstupu vygeneruje signál PPM a odošle ho prepojovacím káblom do ovládača letu. To všetko je pre Raspberry Pi.

Prejdeme k ďalšiemu kroku.

Krok 3: Pripojenia a konfigurácia APM

Pripojenia a konfigurácia APM
Pripojenia a konfigurácia APM

Veci o APM sú jednoduché, pretože sú už pripravené na let. Potrebujeme poznať prenosové rýchlosti sériových portov a uistiť sa, že je povolený port TELEM.

Vo vašom pozemnom softvéri, v mojom prípade Plánovači misií, skontrolujte zoznam parametrov letového ovládača a nájdite prenosové rýchlosti. Napríklad SERIAL_BAUD je prenosová rýchlosť USB a SERIAL_BAUD1 je prenosová rýchlosť TELEM portu pre APM. Všimnite si, že hodnoty.

Najdôležitejšou súčasťou sú pripojenia VSTUPNÝCH pinov. Ako je znázornené na obrázku, pripojte digitálne piny Arduina 4 dôkladne 9. Na to možno budete chcieť použiť chlieb, pretože pridáme niekoľko tranzistorov a výstupov prijímača. (Pozri obrázky) (Tranzistory budú fungovať v prípade, že chcete prevziať kontrolu nad svojim dronom)

ARD 4 ↔ VSTUP APM 1

ARD 5 ↔ VSTUP APM 2

ARD 6 ↔ VSTUP APM 3

ARD 7 ↔ VSTUP APM 4

ARD 8 ↔ VSTUP APM 5

ARD 9 ↔ VSTUP APM 6

Pripojte všetky 5V piny na vstupe APM k 5V pinu Arduino Leonardo. Podobne pripojte všetky vstupné GND piny APM k pinu Arduino Leonardo GND.

Krok 4: Konfigurácia Arduino Leonardo

Pripojili sme všetky vodiče pre Leonarda, takže zostal iba kód.

Nahrajte nižšie uvedený kód do svojho Arduino Leonardo. Dávajte pozor na prenosové rýchlosti.

Krok 5: Prvý let

Keď skončíte so všetkými predchádzajúcimi krokmi, znamená to, že ste pripravení.

Zapnite všetky karty a spojte sa s SSH s Raspberry Pi. Zadajte terminál:

sudo su

mavproxy.py --master =/dev/[SÉRIOVÉ ROZHRANIE] -prenosová rýchlosť [TELEM PORT BAUDRATE] -lietadlo [CUSTOM NAME

Predvolené vstavané sériové rozhranie Raspberry Pi je ttyS0 (/dev/ttyS0)

Predvolená prenosová rýchlosť portu TELEM APM je 57 600

Predvolená prenosová rýchlosť USB portu APM je 115200

Svojmu lietadlu môžete dať akékoľvek meno, vyberajte si ho múdro, aby ste ho neskôr rozpoznali.

Ak je všetko v poriadku, teraz sa pripojte k svojmu Raspberry Pi prostredníctvom VNC, aby ste mohli v reálnom čase sledovať, čo dron vidí.

Teraz môžete dron vyzbrojiť. Vzrušujúce, však?

Zložte dron a vyleťte nad čiaru. Teraz môžete aktivovať režim sledovania čiar pomocou prepínača CH6.

Odporúča: