Агуулгын хүснэгт:
- Алхам 1: Санаа ба холболтууд
- Алхам 2: Raspberry Pi холболт ба тохиргоо
- Алхам 3: APM холболт ба тохиргоо
- Алхам 4: Ардуино Леонардогийн тохиргоо
- Алхам 5: Эхний нислэг
Видео: Raspberry Pi бүхий бие даасан шугамын дагалдагч дрон: 5 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:02
Энэхүү заавар нь эцэст нь мөр дагагчийг хэрхэн дрон хийх боломжтой болохыг харуулж байна.
Энэхүү дрон нь "бие даасан горим" унтраалгатай байх бөгөөд энэ нь дрон руу нэвтрэх горимд шилжих болно. Тиймээс та дроноо өмнөх шигээ нисгэж чадна.
Барилга барихад илүү их цаг хугацаа шаардагдах бөгөөд тохируулахад илүү их цаг хугацаа шаардагдах болно гэдгийг анхаарна уу. Гэхдээ эцсийнх нь таныг үнэ цэнэтэй гэж бодоход хүргэдэг.
Автономит шугамын мөрдөгч дрон бүтээх ажлыг эхлүүлэхийн тулд танд байгаа эсэхийг шалгаарай;
- SSH хандалттай Rasberry Pi 3 эсвэл Raspberry Pi Zero W
- APM эсвэл Pixhawk нислэгийн хянагчтай нисэхэд бэлэн дрон
- Ардуино Леонардо эсвэл өөр хурдан Arduino
- Хамгийн багадаа 6 CH дамжуулагч
- Raspberry Pi болон OpenCV дэмждэг USB вэб камер
- PC
- 6 ерөнхий зориулалтын транзистор
- Утас кабель
Алхам 1: Санаа ба холболтууд
APM буюу ArduPilot нь Arduino Mega дээр суурилсан нислэгийн хянагч юм. Энэ нь бидний хувьд хамгийн сайн байхын тулд бид үүнийг өөрчилж чадна гэсэн үг юм. Гэхдээ надад ийм мэдээлэл байхгүй учраас би өөр замаар явах гэж байна.
Харамсалтай нь Raspberry Pi нь цаг хугацааны хувьд мэдрэмтгий биш бөгөөд энэ нь PPM дохиог зохицуулж чадахгүй гэсэн үг юм.
Тиймээс бидэнд нэмэлт Arduino самбар хэрэгтэй байна.
Ийм байдлаар Raspberry Pi нь зургийг боловсруулж, нислэгийн зааврыг тооцоолж, Serial UART интерфейсээр Arduino руу илгээх болно. Arduino карт нь PPM кодлогч/декодер хэлбэрээр зогсож, нислэгийн зааврыг APM -ийн хүсч буй PPM дохиогоор кодлодог. Санаа авахын тулд та бэлгэдлийн хэлхээний диаграмыг шалгаж үзэх боломжтой.
Raspberry Pi нь илрүүлэх шугамын хажуугаар телеметрийн дамжуулагчийн үүргийг гүйцэтгэх болно.
Гол хэлхээг зураг дээр харуулав. Би дараагийн алхамуудад үргэлжлүүлэн тайлбарлах болно.
Алхам 2: Raspberry Pi холболт ба тохиргоо
Raspberry Pi нь Wi-Fi адаптер (заавал биш), USB вебкамер, Arduino Leonardo-г USB-ээр, APM-тэй холбогдсон цуваа интерфэйсээр холбогдоно. APM - RPI холболтыг зураг дээр дэлгэрэнгүй харуулав.
Тохируулахын тулд танд хоёр сонголт байна: шаардлагатай багц бүхий цэвэр Raspbian эсвэл MAVLink холболтын APSync нэртэй тусгай дүрс. Хэрэв та Raspbian ашиглах гэж байгаа бол эдгээр багцыг суулгасан эсэхээ шалгаарай.
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 нь ирээдүйн pymavlink mavproxy pyserial -ийг суулгана
Raspberry Pi-ийн суулгасан цуваа интерфэйсийг ашиглахын тулд та OS-д үүнийг ашиглахгүй байхыг хэлэх ёстой. Үүнийг хийхийн тулд бичнэ үү
sudo raspi-config
мөн Interfacing options> Serial interface -ийг дагана уу
Та цуваа интерфэйсийг идэвхгүй болгох ёстой боловч цуваа тоног төхөөрөмжийг идэвхжүүлэх ёстой.
Энэ үед үлдсэн хэсэг нь Raspbian болон APSync аль алинд нь тохиромжтой.
Гэрийн лавлах хэсэгт скриптийг дахин ачаалах, дүрс боловсруулагчийн скрипт гэсэн гурван файл үүсгэнэ үү. Хоёрдахь мөр нь дахин ачаалах скриптийг гүйцэтгэх боломжтой болгодог.
reboot.sh image_processor.py дээр дарна уу
chmod +x дахин ачаална.sh
Доор өгөгдсөн файлуудын бүх мөрүүдийг Raspberry Pi дахь гэрийн лавлах руу (/home/pi) хуулж ав.
Дахин ачаалах скрипт нь дүрс боловсруулагч болон телеметрийн скриптүүдийг өдөөх өдөөгчийг агуулна. Мөн цөөн тооны тохиргоо. Хэрэв та телеметрийн функцийг ашиглахыг хүсэхгүй байгаа бол уг мөрийн өмнө # нэмнэ үү.
нано дахин ачаалах.sh
#!/bin/bash
python3 /home/pi/image_processor.py
Үүнийг CTRL+O ашиглан хадгалаад CTRL+X товчлуурыг дарна уу. Энэ талаархи хамгийн сүүлийн алхам бол үүнийг rc.local OS эхлүүлэх файлд бүртгүүлэх явдал юм
sudo нано /etc/rc.local
0 гарцын дээрх мөрийг нэмнэ үү:
/home/pi/reboot.sh
Манай дахин ачаалах скриптийг ачаалах болгонд гүйцэтгэх болно.
Бид Raspberry Pi-г шууд видео бичлэг хийж, шууд дамжуулж, нислэгийн зааврыг тооцоолж, нислэгийн хянагч руу илгээж, телеметрийн төхөөрөмжтэй болохыг хүсч байна. Гэхдээ Raspberry Pi нь APM -ийн хүсч буй PPM дохиог үүсгэж чадахгүй байгаа тул үүнийг хэрэгжүүлэх өөр арга зам бидэнд хэрэгтэй байна.
Raspberry Pi нь зураг боловсруулах гаралтыг Arduino (миний хувьд Arduino Leonardo) руу Сериал портоор дамжуулан илгээх болно. Arduino нь энэ оролтоос PPM дохио үүсгэж, холбогч утсаар нислэгийн хянагч руу илгээх болно. Энэ бүхэн нь Raspberry Pi -д зориулагдсан болно.
Дараагийн алхам руу шилжье.
Алхам 3: APM холболт ба тохиргоо
Нисэхэд бэлэн болсон тул APM -ийн тухай бүх зүйл энгийн байдаг. Бид цуваа портуудын дамжуулалтыг мэдэж, TELEM порт идэвхжсэн эсэхийг шалгах хэрэгтэй.
Таны үндсэн програм хангамжид миний хувьд Mission Planner -ийн хувьд нислэгийн хянагчийн параметрүүдийн жагсаалтыг шалгаж, бодратын хэмжээг олж мэдээрэй. Жишээлбэл, SERIAL_BAUD нь USB дамжуулах хурд, SERIAL_BAUD1 нь APM -ийн TELEM порт юм. Үнэ цэнэ гэдгийг анхаарна уу.
Хамгийн чухал хэсэг бол INPUT зүү холболт юм. Зураг дээр үзүүлсэн шиг Arduino -ийн дижитал тээглүүр 4 -ийг сайтар холбоно уу 9. Бид транзистор болон хүлээн авагчийн гаралтыг нэмж оруулах гэж байгаа тул та үүнийг хийхийн тулд breadbord ашиглахыг хүсч болно. (Зургийг үзнэ үү) (Хэрэв та дроноо хяналтандаа авахыг хүсвэл транзистор ажиллах болно)
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
APM оролтын бүх 5V зүүг Arduino Leonardo 5V зүү рүү холбоно уу. Үүний нэгэн адил APM оролтын бүх GND зүүг Arduino Leonardo GND зүү рүү холбоно уу.
Алхам 4: Ардуино Леонардогийн тохиргоо
Бид Леонардогийн бүх утсыг холбосон тул зөвхөн код үлдсэн байна.
Доорх кодыг Arduino Leonardo руу оруулна уу. Бодратад анхаарлаа хандуулаарай.
Алхам 5: Эхний нислэг
Өмнөх бүх алхамуудыг хийсний дараа та бэлэн болсон гэсэн үг юм.
Бүх картыг асаагаад SSH -тай Raspberry Pi руу холбогдоно уу. Терминал оруулах:
sudo su
mavproxy.py --master =/dev/[SERIAL INTERFACE] -дууны хураамж [TELEM PORT BAUDRATE] -нисэх онгоц [ЗАХИАЛГА НЭР
Raspberry Pi-ийн үндсэн цуваа интерфэйс нь ttyS0 (/dev/ttyS0)
Анхдагч APM TELEM портын дамжуулах хурд нь 57600 байна
Анхдагч APM USB портын хурд нь 115200 байна
Та онгоцондоо ямар ч нэр өгч, ухаалгаар сонгож, дараа нь таних боломжтой.
Хэрэв бүх зүйл зүгээр байгаа бол одоо Raspberry Pi -тэйгээ VNC -ээр холбогдоорой, ингэснээр дрон юу харж байгааг бодит цаг хугацаанд нь үзэх боломжтой болно.
Одоо та дроноо зэвсэглэж болно. Сэтгэл хөдөлгөсөн, тийм үү?
Нисгэгчгүй онгоцоо аваад шугамын дээгүүр нисээрэй. Одоо та CH6 унтраалгыг ашиглан мөр хянах горимыг идэвхжүүлэх боломжтой.
Зөвлөмж болгож буй:
Бие даасан Arduino 3.3V W / Гадаад 8 МГц -ийн цагийг Arduino Uno -оос ICSP / ISP (Цуваа хяналттай!) -Аар програмчилж байна: 4 алхам
Бие даасан Arduino 3.3V W / Гадаад 8 МГц -ийн цагийг Arduino Uno -оос ICSP / ISP -ээр програмчилж байна (Цуваа хяналттай!): Зорилго: 8 МГц -ийн гадаад цагнаас 3.3 В хүчдэл дээр ажилладаг бие даасан Arduino бүтээх. Үүнийг Arduino Uno-аас ISP-ээр (ICSP гэж нэрлэдэг, хэлхээний цуваа програмчлал) програмчлах (5V дээр ажилладаг) Ачаалагч файлыг засварлаж, шарахын тулд
Бие даасан ATmega328p (Дотоод 8 МГц цаг ашиглан): 4 алхам
Бие даасан ATmega328p (Дотоод 8 МГц цаг ашиглан): ATmega328p нь megaAVR гэр бүлд Atmel-ийн бүтээсэн нэг чип микроконтроллер юм (хожим Microchip Technology нь Atmel-ийг 2016 онд худалдаж авсан). Энэ нь Харвардын архитектурын 8 битийн RISC процессорын цөмтэй бөгөөд энэхүү микроконтроллер нь Arduino-ийн тархи юм
Хяналтын алгоритмыг заах шугамын дагалдагч робот: 3 алхам
Хяналтын алгоритм заах шугам дагагч робот: Би хэдэн жилийн өмнө робот техникийн багш байхдаа энэхүү мөр дагагч роботыг зохион бүтээсэн. Энэхүү төслийн зорилго нь оюутнуудад тэмцээнд оролцохын тулд роботыг дагаж мөрдөх кодыг зааж сургах, мөн If/Else болон PID хяналтыг хооронд нь харьцуулах явдал байв. Бас үгүй
Саад бэрхшээлээс зайлсхийх хөдөлгөөнт удирдлагатай шугамын дагалдагч робот: 6 алхам
Саад бэрхшээлээс зайлсхийх хөдөлгөөнт удирдлагатай гар утасны робот: Энэ бол саад бэрхшээлээс зайлсхийх, шугам дагах, хөдөлгөөнт удирдлага гэх мэт хэд хэдэн онцлог шинж чанарыг хооронд нь хольж, нэг хэсэг болгон бүтээсэн санаа юм. энэ тохиргоонд зориулсан хувцас. Үүнд би
GPS бүхий бие даасан сав: 5 алхам (зурагтай)
GPS -тэй автономит танк: DFRobot саяхан надад Devastator Tank Platform иж бүрдлийг туршиж үзэхээр илгээсэн. Мэдээжийн хэрэг, би үүнийг бие даасан болгож, GPS -ийн чадвартай болгохоор шийдсэн. Энэхүү робот нь хэт авианы мэдрэгч ашиглан чиглүүлж, урагшаа хөдөлж, шалгаж байх болно