Sadržaj:
- Korak 1: Ideja i veze
- Korak 2: Veze i konfiguracija Raspberry Pi
- Korak 3: APM veze i konfiguracija
- Korak 4: Konfiguracija Arduina Leonarda
- Korak 5: Prvi let
Video: Dron s autonomnim linijskim sljedbenikom s Raspberry Pi: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Ovaj vodič pokazuje kako na kraju možete napraviti bespilotnu letjelicu sljedbenicima.
Ovaj će dron imati prekidač za "autonomni način rada" koji će ući u dron u način rada. Dakle, i dalje možete letjeti svojim dronom kao i prije.
Imajte na umu da će za izgradnju biti potrebno više vremena, a još više za prilagodbu. No, posljednje … čini da pomislite da se isplati.
Za početak stvaranja vlastitog drona za autonomnu liniju za praćenje, provjerite imate li;
- Rasberry Pi 3 ili Raspberry Pi Zero W sa SSH pristupom
- Bespilotna letjelica spremna za let s APM ili Pixhawk kontrolerom leta
- Arduino Leonardo ili neki drugi Arduino s velikom brzinom takta
- Najmanje 6 CH odašiljač
- USB web kamera koju podržavaju Raspberry Pi i OpenCV
- PC
- 6 tranzistora opće namjene
- Ožičenje kabela
Korak 1: Ideja i veze
APM, zvani ArduPilot, kontrolor je leta baziran na Arduino Mega. To znači da ga možemo izmijeniti kako bi bio najbolji za naš slučaj. No, budući da nemam informacije za to, ići ću slijedećim putem.
Raspberry Pi nisu, nažalost, osjetljivi na vrijeme, što znači da se ne mogu nositi s PPM signalima.
Zato nam je potrebna dodatna Arduino ploča.
Na ovaj način, Raspberry Pi će obraditi slike i izračunati upute za let te ih poslati na Arduino putem serijskog UART sučelja. Arduino kartica ovdje će stajati kao PPM koder/dekoder, koji kodira upute za let prema PPM signalima koje APM želi. Da biste imali ideju, možete pregledati simbolički dijagram kruga.
Raspberry Pi će se ponašati kao odašiljač telemetrije uz liniju detekcije.
Bitni krug prikazan je na slikama. Nastavit ću objašnjavati u sljedećim koracima.
Korak 2: Veze i konfiguracija Raspberry Pi
Raspberry Pi bit će spojen na Wi-Fi adapter (opcija), USB web kameru, Arduino Leonardo putem USB-a, APM putem ugrađenog serijskog sučelja. APM - RPI veza prikazana s detaljima na slikama.
Za konfiguraciju imate dvije mogućnosti: čisti Raspbian s potrebnim paketima ili posebnu sliku za MAVLink vezu koja se zove APSync. Ako ćete koristiti Raspbian, provjerite jeste li instalirali ove pakete:
sudo apt-get ažuriranje
sudo apt-get install -y screen 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
Da biste koristili ugrađeno serijsko sučelje Raspberry Pi, morate reći OS-u da ga ne koristi. Da biste to učinili, upišite
sudo raspi-config
i slijedite Opcije sučelja> Serijsko sučelje
Morate onemogućiti serijsko sučelje, ali omogućiti serijski hardver.
U ovom trenutku ostalo je prikladno i za Raspbian i za APSync.
U kućnom direktoriju stvorite tri datoteke: skriptu za ponovno pokretanje i skriptu procesora slike. Drugi redak čini skriptu za ponovno pokretanje izvršnom.
dodirnite reboot.sh image_processor.py
chmod +x ponovno podizanje sustava.sh
Kopirajte sve retke dolje navedenih datoteka u svoj matični direktorij (/home/pi) u Raspberry Pi.
Skripta za ponovno pokretanje sadržavat će okidače koji će pokrenuti procesore slike i telemetrijske skripte. Također nekoliko postavki. Imajte na umu da ako ne želite značajku telemetrije, dodajte # ispred tog retka.
nano ponovno podizanje sustava.sh
#!/bin/bash
python3 /home/pi/image_processor.py
Spremite ga s CTRL+O i izađite s CTRL+X. Zadnji korak u vezi s tim je registriranje u datoteku za pokretanje OS -a, rc.local
sudo nano /etc/rc.local
Dodajte ovaj redak iznad izlaza 0:
/home/pi/reboot.sh
Naša skripta za ponovno pokretanje izvršavat će se pri svakom pokretanju.
Želimo da Raspberry Pi snima video uživo, obrađuje ga u hodu, izračunava upute za let, šalje ga kontroloru leta i telemetrizira. No, budući da Raspberry Pi nije u stanju generirati PPM signal koji APM želi, potreban nam je drugi način za to.
Raspberry Pi će poslati izlaz za obradu slike na Arduino (u mom slučaju Arduino Leonardo) putem serijskog porta. Arduino će generirati PPM signal s tog ulaza i poslati ga kontroleru leta preko kratkospojnih žica. Ovo je sve za Raspberry Pi.
Prijeđimo na sljedeći korak.
Korak 3: APM veze i konfiguracija
APM je jednostavan jer je već spreman za let. Moramo znati brzinu prijenosa serijskih portova i provjeriti je li omogućen TELEM port.
U vašem zemaljskom softveru, u mom slučaju Planer misija, provjerite popis parametara kontrolora leta i saznajte brzinu prijenosa. Na primjer, SERIAL_BAUD je brzina prijenosa USB -a, a SERIAL_BAUD1 je brzina prijenosa TELEM porta za APM. Imajte na umu da vrijednosti.
Najvažniji dio su spojevi INPUT pinova. Kao što je prikazano na slici, povežite Arduinove digitalne pinove 4 temeljito 9. Za to ćete možda htjeti upotrijebiti krušni krug jer ćemo dodati neke tranzistore i prijemnike. (Pogledajte slike) (Tranzistori će raditi u slučaju da želite preuzeti kontrolu nad svojim dronom)
ARD 4, APM ULAZ 1
ARD 5, APM ULAZ 2
ARD 6, APM ULAZ 3
ARD 7, APM ULAZ 4
ARD 8, APM ULAZ 5
ARD 9, APM ULAZ 6
Spojite sve 5V pinove na APM ulazu s Arduino Leonardo 5V pinom. Isto tako spojite sve APM ulazne GND pinove na Arduino Leonardo GND pin.
Korak 4: Konfiguracija Arduina Leonarda
Povezali smo sve žice za Leonarda pa je ostao samo kôd.
Prenesite donji kôd u nastavku na svoj Arduino Leonardo. Obratite pažnju na baudrate.
Korak 5: Prvi let
Kad završite sa svim prethodnim koracima, to znači da ste spremni.
Uključite sve kartice i povežite se pomoću SSH -a na Raspberry Pi. Upišite terminal:
sudo su
mavproxy.py --master =/dev/[SERIAL INTERFACE] -brzina prijenosa [TELEM PORT BAUDRATE] -zrakoplov [CUSTOM NAME
Zadano ugrađeno serijsko sučelje Raspberry Pi je ttyS0 (/dev/ttyS0)
Zadana brzina prijenosa APM TELEM priključka je 57600
Zadana brzina prijenosa APM USB priključka je 115200
Vašem zrakoplovu možete dati bilo koje ime, pametno ga odabrati kako biste ga kasnije mogli prepoznati.
Ako je sve u redu, sada se povežite na svoj Raspberry Pi putem VNC -a, tako da možete gledati što bespilotna letjelica vidi u stvarnom vremenu.
Sada možete naoružati svoj dron. Uzbudljivo, zar ne?
Skinite dron i letite iznad linije. Sada možete aktivirati način praćenja linija pomoću prekidača CH6.
Preporučeni:
NAJHLADNIJI DRON U POVIJESTI: 6 koraka
NAJHLAĐI DRON U POVIJESTI: Dobro došli! Ovdje je najhladniji dron u povijesti koji nikada prije niste vidjeli (ili sam to možda samo ja) Ovdje su sve potrebne stvari: Flybrix Unaprijed programirana leteća ploča Lego Bricks MotorsSmartfon/tablet (ovo je za upravljanje dronom) Letimo
Autonomni dron za isporuku sa fiksnim krilom (3D ispis): 7 koraka (sa slikama)
Autonomni bespilotni letjelica s fiksnim krilima (3D ispis): Tehnologija drona jako se razvila jer nam je mnogo pristupačnija nego prije. Danas možemo vrlo lako izgraditi bespilotnu letjelicu, a može biti i autonomna te se njome može upravljati bilo gdje u svijetu. Tehnologija dronova može promijeniti naš svakodnevni život. Dostava
Podvodni dron na daljinski upravljač: 10 koraka (sa slikama)
Podvodni daljinski upravljač na daljinsko upravljanje: Odlučio sam izgraditi ovaj ROV u svrhu istraživanja i divljenja podvodnom svijetu jer nema mnogo isplativih podvodnih bespilotnih letjelica. Iako oduzima puno vremena, istraživanja i autodidaktizma, zabavan je projekt
Dron s napajanjem Raspberry Pi, Android, IoT i Bluetooth: 7 koraka (sa slikama)
Raspberry Pi, Android, IoT i Bluetooth bespilotna letjelica: Koristeći Raspberry Pi za ugrađenu logiku, ovo kompaktno, mobilno računalo stvorit će lokalni port koji struji video u stvarnom vremenu, a istovremeno stvara Bluetooth utičnice za čitanje vrijednosti poslana prilagođenom Android aplikacijom. Aplikacija se sinkronizira s t
Arduino robot s udaljenošću, smjerom i stupnjem rotacije (istok, zapad, sjever, jug) kontroliran glasom pomoću Bluetooth modula i autonomnim kretanjem robota .: 6 koraka
Arduino robot s udaljenošću, smjerom i stupnjem rotacije (istok, zapad, sjever, jug) kontroliran glasom pomoću Bluetooth modula i autonomnim kretanjem robota .: Ova uputa objašnjava kako napraviti Arduino robota koji se može pomicati u željenom smjeru (naprijed, natrag , Lijevo, desno, istok, zapad, sjever, jug) potrebna udaljenost u centimetrima pomoću glasovne naredbe. Robot se također može samostalno pomicati