Talaan ng mga Nilalaman:
- Hakbang 1: Ang Idea at Mga Koneksyon
- Hakbang 2: Mga Koneksyon at Pag-configure ng Raspberry Pi
- Hakbang 3: Mga Koneksyon at Pag-configure ng APM
- Hakbang 4: Pag-configure ng Arduino Leonardo
- Hakbang 5: Unang Paglipad
Video: Autonomous Line Follower Drone With Raspberry Pi: 5 Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Ipinapakita ng tutorial na ito kung paano ka makakagawa ng tagasunod na drone sa kalaunan.
Ang drone na ito ay magkakaroon ng isang "autonomous mode" switch na papasok sa drone to mode. Kaya, maaari mo pa ring paliparin ang iyong drone tulad ng dati.
Mangyaring magkaroon ng kamalayan na ito ay kukuha ng oras upang bumuo at kahit na mas maraming oras upang ayusin. Ngunit ang panghuli … ay sa tingin mo sulit ito.
Upang simulang lumikha ng iyong sariling autonomus line tracker drone, tiyaking mayroon ka;
- Rasberry Pi 3 o Raspberry Pi Zero W na may SSH access
- Ready-To-Fly drone na may APM o Pixhawk flight controller
- Arduino Leonardo o ibang Arduino na may bilis ng orasan
- Hindi bababa sa 6 CH transmitter
- Ang USB Webcam na sinusuportahan ng Raspberry Pi at OpenCV
- Isang PC
- 6 na pangkalahatang layunin ng mga transistors
- Mga kable ng kable
Hakbang 1: Ang Idea at Mga Koneksyon
Ang APM, aka ArduPilot, ay isang flight controller batay sa Arduino Mega. Nangangahulugan ito na maaari naming baguhin ito upang maging pinakamahusay para sa aming kaso. Ngunit dahil wala akong impormasyon na magagawa, pupunta ako upang sumunod sa ibang paraan.
Ang Raspberry Pi's ay, sa kasamaang palad, hindi sensitibo sa oras na nangangahulugang hindi makitungo sa mga signal ng PPM.
Iyon ang dahilan kung bakit kailangan namin ng karagdagang Arduino board.
Sa ganitong paraan, iproseso ng Raspberry Pi ang mga imahe at kalkulahin ang mga tagubilin sa paglipad at ipadala ito sa Arduino sa pamamagitan ng Serial UART interface. Ang Arduino card ay tatayo dito bilang isang encoder / decoder ng PPM, na naka-encode ng mga tagubilin sa paglipad sa mga signal ng PPM na nais ng APM. Upang magkaroon ng isang ideya, maaari mong suriin ang simbolikong circuit diagram.
Ang Raspberry Pi ay kikilos bilang telemetry transmitter sa tabi ng linya ng pagtuklas.
Ang mahahalagang circuit ay ipinapakita sa mga imahe. Patuloy akong magpapaliwanag sa mga susunod na hakbang.
Hakbang 2: Mga Koneksyon at Pag-configure ng Raspberry Pi
Ang Raspberry Pi ay konektado sa Wi-Fi Adapter (opsyonal), USB Webcam, Arduino Leonardo sa pamamagitan ng USB, APM sa pamamagitan ng built-in na serial interface. Ang APM - koneksyon sa RPI ay ipinapakita na may mga detalye sa mga imahe.
Upang mai-configure, mayroon kang dalawang mga pagpipilian: purong Raspbian na may mga kinakailangang mga pakete o espesyal na imahe para sa koneksyon sa MAVLink na tinatawag na APSync. Kung gagamit ka ng Raspbian, tiyaking na-install mo ang mga package na ito:
sudo apt-get update
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 i-install ang hinaharap na pymavlink mavproxy pyserial
Upang magamit ang built-in na serial interface ng Raspberry Pi, dapat mong sabihin sa OS na huwag itong gamitin. Upang magawa ito, i-type
sudo raspi-config
at sundin ang mga pagpipilian sa Interfacing> Serial interface
Dapat mong huwag paganahin ang serial interface ngunit paganahin ang serial hardware.
Sa puntong ito, ang natitira ay angkop para sa parehong Raspbian at APSync.
Sa direktoryo sa bahay, lumikha ng tatlong mga file: reboot script at image processor scriptt. Ikalawang linya ay ginagawang naisakatuparan ang reboot script.
pindutin ang reboot.sh image_processor.py
chmod + x reboot.sh
Kopyahin ang lahat ng mga linya sa mga file na ibinigay sa ibaba sa iyong direktoryo sa bahay (/ home / pi) sa Raspberry Pi.
Maglalaman ang reboot script ng mga pag-trigger na magpapalitaw ng imahe ng mga script ng telemetry. Ilang setting din. Tandaan na kung hindi mo nais ang tampok na telemetry, magdagdag ng # bago ang linya na iyon.
nano reboot.sh
#! / baseng / bash
python3 /home/pi/image_processor.py
I-save ito sa CTRL + O at lumabas gamit ang CTRL + X. Huling hakbang tungkol dito ay pagrerehistro ito sa OS startup file, rc.local
sudo nano /etc/rc.local
Idagdag ang linyang ito sa itaas ng exit 0:
/home/pi/reboot.sh
Ang aming reboot script ay papatayin sa bawat boot.
Nais naming i-record ng Raspberry Pi ang live na video, iproseso ito on-the-fly, kalkulahin ang mga tagubilin sa paglipad, ipadala ito sa flight controller at maging telemetry. Ngunit dahil ang Raspberry Pi ay hindi nakagawa ng signal ng PPM na nais ng APM, kailangan namin ng ibang paraan upang magawa ito.
Ipapadala ng Raspberry Pi ang output ng pagproseso ng imahe nito sa Arduino (sa aking kaso Arduino Leonardo) sa pamamagitan ng Serial Port. Lilikha ang Arduino ng signal ng PPM mula sa input na iyon at ipadala ito sa Flight Controller sa pamamagitan ng mga jumper wires. Ito ay para sa Raspberry Pi.
Lumipat tayo sa susunod na hakbang.
Hakbang 3: Mga Koneksyon at Pag-configure ng APM
Ang mga bagay tungkol sa APM ay simple dahil handa na itong lumipad. Kailangan nating malaman ang baudrates ng mga serial port, at tiyakin na pinagana ang port ng TELEM.
Sa iyong ground software, sa aking kaso Mission Planner, suriin ang listahan ng mga parameter ng flight controller at alamin ang mga baudrates. Halimbawa, ang SERIAL_BAUD ay USB baudrate at ang SERIAL_BAUD1 ay TELEM port baudrate para sa APM. Tandaan na ang mga halaga.
Ang pinakamahalagang bahagi ay ang mga koneksyon ng INPUT pin. Tulad ng ipinakita sa imahe, ikonekta ang mga digital pin ng Arduino 4 masusing 9. Maaaring gusto mong gumamit ng isang breadbord para dito, dahil magdaragdag kami ng ilang mga transistor at output ng receiver. (Tingnan ang mga imahe) (gagana ang Transistors sakaling nais mong kontrolin ang iyong 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
Ikonekta ang lahat ng 5V pin sa APM Input sa Arduino Leonardo 5V pin. Gayundin ikonekta ang lahat ng mga APM Input GND na pin sa Arduino Leonardo GND na pin.
Hakbang 4: Pag-configure ng Arduino Leonardo
Nakakonekta namin ang lahat ng mga wire para kay Leonardo kaya't ang code na lamang ang natitira.
I-upload ang ibinigay na code sa ibaba sa iyong Arduino Leonardo. Bigyang pansin ang mga baudrates.
Hakbang 5: Unang Paglipad
Kapag tapos ka na sa lahat ng nakaraang mga hakbang, nangangahulugan ito na handa ka na.
Paganahin ang lahat ng mga card at kumonekta sa SSH sa Raspberry Pi. I-type sa terminal:
sudo su
mavproxy.py --master = / dev / [SERIAL INTERFACE] --baudrate [TELEM PORT BAUDRATE] --aircraft [CUSTOM NAME
Ang default na built-in na serial interface ng Raspberry Pi ay ttyS0 (/ dev / ttyS0)
Ang default na APM TELEM port baudrate ay 57600
Ang default na APM USB port baudrate ay 115200
Maaari kang magbigay ng anumang pangalan sa iyong sasakyang panghimpapawid, piliin ito nang matalino, upang makilala mo ito sa paglaon.
Kung okay ang lahat, kumonekta ngayon sa iyong Raspberry Pi sa pamamagitan ng VNC, upang mapanood mo ang nakikita ng drone sa real time.
Ngayon, maaari mong braso ang iyong drone. Nakakakilig, di ba?
Alisin ang iyong drone, at lumipad sa itaas ng linya ng linya. Ngayon, maaari mong buhayin ang mode ng pagsubaybay sa linya sa pamamagitan ng paggamit ng CH6 switch.
Inirerekumendang:
Line Follower Robot Siebe Deetens: 4 Hakbang
Line Follower Robot Siebe Deetens: Mag-opleiding ng Elektromekanika Automatisering aan HOGENT (3e bachelor), hindi namin mababalewala ang Syntheseproject de opdracht gekregen para sa mga tagasunod sa linya ng robot na maken. Mas mahusay ka para sa iyo sla
PID Line Follower Atmega328P: 4 Hakbang
Ang PID Line Follower Atmega328P: PANIMULA Ang itinuturo na ito ay tungkol sa paggawa ng isang mahusay at maaasahang Line Follower na may PID (proportional-integral-derivative) Control (Matematika) na tumatakbo sa loob ng utak nito (Atmega328P). Ang tagasunod sa linya ay isang autonomous robot na sumusunod sa alinman sa
Autonomous Fixed-Wing Delivery Drone (3D Printed): 7 Hakbang (na may Mga Larawan)
Autonomous Fixed-Wing Delivery Drone (3D Printed): Ang teknolohiya ng Drone ay umunlad nang higit na mas madaling ma-access sa atin kaysa dati. Ngayon ay nakakagawa tayo ng isang drone nang napakadali at maaaring maging autonomous at maaaring makontrol mula sa anumang lugar ng mundo na Maaaring baguhin ng Teknolohiya ng Donrone ang ating pang-araw-araw na buhay. Paghahatid
Autonomous Drone With Infrared Camera upang matulungan ang Mga Unang Tumugon: 7 Hakbang
Autonomous Drone With Infrared Camera upang Tulungan ang Mga Unang Tumugon: Ayon sa isang ulat sa World Health Organization, taun-taon ang mga natural na sakuna ay pumatay ng halos 90,000 katao at nakakaapekto sa halos 160 milyong katao sa buong mundo. Kasama sa mga natural na sakuna ang mga lindol, tsunami, pagsabog ng bulkan, pagguho ng lupa, bagyo, fl
Autonomous Drone: 7 Hakbang
Autonomous Drone: Sa proyektong ito malalaman mo ang proseso ng pagbuo at pag-configure ng isang drone, bago magpatuloy upang siyasatin ang autonomous flight gamit ang Mission Planner at MATLAB. Mangyaring tandaan na ang itinuturo na ito ay inilaan bilang gabay lamang. Ang paggamit ng mga drone ay maaaring maging napaka