Სარჩევი:
- ნაბიჯი 1: იდეა და კავშირები
- ნაბიჯი 2: Raspberry Pi კავშირები და კონფიგურაცია
- ნაბიჯი 3: APM კავშირები და კონფიგურაცია
- ნაბიჯი 4: Arduino Leonardo კონფიგურაცია
- ნაბიჯი 5: პირველი რეისი
ვიდეო: ავტონომიური ხაზის მიმდევარი დრონი ჟოლოს პი: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ეს გაკვეთილი გვიჩვენებს, თუ როგორ შეგიძლიათ საბოლოოდ შექმნათ ხაზის მიმდევარი თვითმფრინავი.
ამ თვითმფრინავს ექნება "ავტონომიური რეჟიმის" გადამრთველი, რომელიც დრონში გადავა რეჟიმში. ასე რომ, თქვენ კვლავ შეგიძლიათ ფრენა თქვენი თვითმფრინავით, როგორც ადრე.
გთხოვთ გაითვალისწინოთ, რომ მის მშენებლობას დრო დასჭირდება და კიდევ უფრო მეტი დროა მორგებული. მაგრამ საბოლოო … აიძულებს თქვენ იფიქროთ ღირს.
საკუთარი ავტონომიური ხაზის ტრეკერის თვითმფრინავის შექმნის დასაწყებად, დარწმუნდით, რომ გაქვთ;
- Rasberry Pi 3 ან Raspberry Pi Zero W SSH წვდომით
- Ready-Fly თვითმფრინავი APM ან Pixhawk ფრენის კონტროლერით
- არდუინო ლეონარდო ან სხვა არდუინო სწრაფი საათის სიჩქარით
- მინიმუმ 6 CH გადამცემი
- USB ვებკამერა, რომელსაც Raspberry Pi და OpenCV მხარს უჭერს
- კომპიუტერი
- 6 ზოგადი დანიშნულების ტრანზისტორი
- გაყვანილობის კაბელები
ნაბიჯი 1: იდეა და კავშირები
APM, იგივე ArduPilot, არის ფრენის კონტროლერი, რომელიც დაფუძნებულია Arduino Mega– ზე. ეს ნიშნავს, რომ ჩვენ შეგვიძლია შევცვალოთ ის ჩვენი საქმისთვის საუკეთესოდ. მაგრამ ვინაიდან მე არ მაქვს ინფორმაცია ამის გასაკეთებლად, ვაპირებ სხვა გზას გავყვე.
ჟოლოს პი, სამწუხაროდ, არ არის დროის მიმართ მგრძნობიარე, რაც იმას ნიშნავს, რომ ვერ უმკლავდება PPM სიგნალებს.
ამიტომაც გვჭირდება არდუინოს დამატებითი დაფა.
ამ გზით, Raspberry Pi დაამუშავებს სურათებს და გამოთვლის ფრენის ინსტრუქციას და გაუგზავნის მას Arduino– ს სერიული UART ინტერფეისის საშუალებით. Arduino ბარათი აქ დადგება როგორც PPM კოდირება/დეკოდი, რომელიც ასახავს ფრენის ინსტრუქციას PPM სიგნალებზე, რაც APM- ს სურს. იდეის მისაღებად შეგიძლიათ შეისწავლოთ სიმბოლური წრიული დიაგრამა.
ჟოლო Pi იქცევა როგორც ტელემეტრიის გადამცემი ხაზის გამოვლენის გვერდით.
არსებითი წრე ნაჩვენებია სურათებში. მე განვაგრძობ ახსნას მომდევნო ნაბიჯებში.
ნაბიჯი 2: Raspberry Pi კავშირები და კონფიგურაცია
ჟოლო Pi დაუკავშირდება Wi-Fi ადაპტერს (სურვილისამებრ), USB ვებკამერას, Arduino Leonardo- ს USB- ით, APM- ს ჩაშენებული სერიული ინტერფეისის საშუალებით. APM - RPI კავშირი ნაჩვენებია დეტალებში სურათებში.
კონფიგურაციისთვის, თქვენ გაქვთ ორი ვარიანტი: სუფთა Raspbian საჭირო პაკეტებით ან სპეციალური გამოსახულებით MAVLink კავშირისთვის, სახელწოდებით APSync. თუ აპირებთ Raspbian– ის გამოყენებას, დარწმუნდით, რომ დაინსტალირებული გაქვთ ეს პაკეტები:
sudo apt-get განახლება
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
და მიჰყევით ინტერფეისის პარამეტრებს> სერიული ინტერფეისი
თქვენ უნდა გამორთოთ სერიული ინტერფეისი, მაგრამ ჩართოთ სერიული აპარატურა.
ამ ეტაპზე, დანარჩენი შესაფერისია როგორც Raspbian- ისთვის, ასევე APSync- ისთვის.
სახლის დირექტორიაში შექმენით სამი ფაილი: გადატვირთეთ სკრიპტი და გამოსახულების პროცესორი scriptt. მეორე ხაზი ხდის გადატვირთვის სკრიპტის შესრულებას.
შეეხეთ გადატვირთვას.შ image_processor.py
chmod +x გადატვირთვა.შ
დააკოპირეთ ყველა ხაზი ქვემოთ მოცემულ ფაილებში თქვენი სახლის დირექტორიაში (/home/pi) ჟოლოს პიში.
გადატვირთვის სკრიპტი შეიცავს ტრიგერებს, რომლებიც იწვევენ გამოსახულების პროცესორს და ტელემეტრიულ სკრიპტებს. ასევე რამდენიმე პარამეტრი. გაითვალისწინეთ, რომ თუ არ გსურთ ტელემეტრიის ფუნქცია, დაამატეთ # იმ ხაზამდე.
ნანო გადატვირთვა.შ
#!/bin/bash
python3 /home/pi/image_processor.py
შეინახეთ იგი CTRL+O– ით და გამოდით CTRL+X– ით. ბოლო ნაბიჯი ამის შესახებ არის მისი დარეგისტრირება OS გაშვების ფაილში, rc.local
sudo nano /etc/rc.local
დაამატეთ ეს ხაზი გასასვლელიდან 0 ზემოთ:
/home/pi/reboot.sh
ჩვენი გადატვირთვის სკრიპტი შესრულდება ყველა ჩატვირთვისას.
ჩვენ გვსურს, რომ Raspberry Pi– მ ჩაწეროს ცოცხალი ვიდეო, დაამუშაოს ის ფრენის დროს, გამოთვალოს ფრენის ინსტრუქცია, გააგზავნოს ფრენის კონტროლერთან და იყოს ტელემეტრია. მაგრამ მას შემდეგ, რაც Raspberry Pi– ს არ შეუძლია შექმნას PPM სიგნალი, რაც APM– ს სურს, ჩვენ გვჭირდება სხვა გზა ამის მისაღწევად.
Raspberry Pi გამოაქვეყნებს გამოსახულების დამუშავებას Arduino– ს (ჩემს შემთხვევაში Arduino Leonardo) სერიული პორტის საშუალებით. Arduino გამოიმუშავებს PPM სიგნალს ამ შეყვანისგან და გაუგზავნის მას ფრენის კონტროლერს ჯუმბერის მავთულის საშუალებით. ეს ყველაფერი ჟოლოს პიისთვის არის განკუთვნილი.
მოდით გადავიდეთ შემდეგ საფეხურზე.
ნაბიჯი 3: APM კავშირები და კონფიგურაცია
APM– ის შესახებ ყველაფერი მარტივია, რადგან ის უკვე მზად არის ფრენისთვის. ჩვენ უნდა ვიცოდეთ სერიული პორტების ბაუდრატი და დარწმუნდით, რომ TELEM პორტი ჩართულია.
თქვენს ძირითად პროგრამულ უზრუნველყოფაში, ჩემს შემთხვევაში მისიის დამგეგმავი, შეამოწმეთ ფრენის კონტროლერის პარამეტრების სია და აღმოაჩინეთ ბაუდრატები. მაგალითად, SERIAL_BAUD არის USB ბაუდრატი და SERIAL_BAUD1 არის TELEM პორტის ბაუდრატი APM– ისთვის. გაითვალისწინეთ, რომ ღირებულებები.
ყველაზე მნიშვნელოვანი ნაწილი არის 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
შეაერთეთ ყველა 5V პინი APM შეყვანისას Arduino Leonardo 5V პინთან. ანალოგიურად დააკავშირეთ APM შეყვანის GND ქინძისთავები Arduino Leonardo GND პინთან.
ნაბიჯი 4: Arduino Leonardo კონფიგურაცია
ჩვენ შევაერთეთ ლეონარდოს ყველა მავთული, ასე რომ დარჩა მხოლოდ კოდი.
ატვირთეთ ქვემოთ მოცემული კოდი თქვენს არდუინო ლეონარდოში. მიაქციეთ ყურადღება ბაუდრატებს.
ნაბიჯი 5: პირველი რეისი
როდესაც თქვენ დაასრულებთ ყველა წინა ნაბიჯს, ეს ნიშნავს რომ თქვენ მზად ხართ.
ჩართეთ ყველა ბარათი და დაუკავშირდით SSH– ს Raspberry Pi– თან. აკრიფეთ ტერმინალი:
sudo su
mavproxy.py --master =/dev/[SERIAL INTERFACE] -baudrate [TELEM PORT BAUDRATE] -თვითმფრინავი [საბაჟო სახელი
ნაგულისხმევი Raspberry Pi ჩაშენებული სერიული ინტერფეისი არის ttyS0 (/dev/ttyS0)
ნაგულისხმევი APM TELEM პორტის baudrate არის 57600
ნაგულისხმევი APM USB პორტი baudrate არის 115200
თქვენ შეგიძლიათ ნებისმიერი სახელი მიანიჭოთ თქვენს თვითმფრინავს, შეარჩიეთ იგი გონივრულად, რათა მოგვიანებით შეძლოთ მისი ამოცნობა.
თუ ყველაფერი კარგადაა, ახლა დაუკავშირდით თქვენს Raspberry Pi– ს VNC– ით, ასე რომ თქვენ შეგიძლიათ ნახოთ რას ხედავს დრონი რეალურ დროში.
ახლა თქვენ შეგიძლიათ შეიარაღოთ თქვენი დრონი. ამაღელვებელი, არა?
ამოიღეთ თქვენი დრონი და იფრინეთ ხაზის ბილიკზე მაღლა. ახლა თქვენ შეგიძლიათ გაააქტიუროთ ხაზის თვალყურის დევნის რეჟიმი CH6 გადამრთველის გამოყენებით.
გირჩევთ:
ხაზის მიმდევარი Tinkercad– ზე: 3 ნაბიჯი
Line Follower on Tinkercad: A-Line Follower Robot, როგორც სახელი გვთავაზობს, არის ავტომატიზირებული მართვადი მანქანა, რომელიც მიჰყვება იატაკზე ან ჭერზე ჩადგმულ ვიზუალურ ხაზს. ჩვეულებრივ, ვიზუალური ხაზი არის გზა, რომლის გავლით მიდის მიმდევარი რობოტი და ეს იქნება შავი ხაზი, როდესაც
PID ხაზის მიმდევარი Atmega328P: 4 ნაბიჯი
PID Line მიმდევარი Atmega328P: შესავალი ეს სასწავლო არის ეფექტური და საიმედო ხაზის მიმდევართა შექმნის შესახებ PID (პროპორციული ინტეგრალურ-წარმოებული) კონტროლით (მათემატიკური) მის ტვინში (Atmega328P). ხაზის მიმდევარი არის ავტონომიური რობოტი, რომელიც მიყვება ან
ავტონომიური ფიქსირებული ფრთის მიწოდების დრონი (3D ბეჭდვით): 7 ნაბიჯი (სურათებით)
თვითმფრინავის ფიქსირებული ფრთის მიწოდების დრონი (3D ბეჭდვით): დრონის ტექნოლოგია ძალიან განვითარდა, როგორც ჩვენთვის ბევრად უფრო ხელმისაწვდომი, ვიდრე ადრე. დღეს ჩვენ შეგვიძლია ავაშენოთ თვითმფრინავი ძალიან მარტივად და შეიძლება ვიყოთ ავტონომიური და მისი კონტროლი შესაძლებელია მსოფლიოს ნებისმიერი ადგილიდან. დრონის ტექნოლოგიას შეუძლია შეცვალოს ჩვენი ყოველდღიური ცხოვრება. მიწოდება
როგორ გავაკეთოთ ხაზის მიმდევარი რობოტი არდუინოს (მიკროკონტროლერი) გამოყენების გარეშე: 5 ნაბიჯი
როგორ გავაკეთოთ ხაზის მიმდევარი რობოტი Arduino- ს (მიკროკონტროლერის) გამოყენების გარეშე: ამ სასწავლო ინსტრუქციაში მე გასწავლით თუ როგორ უნდა გააკეთოთ რობოტი Arduino– ს გამოყენების გარეშე. მე გამოვიყენებ ძალიან მარტივ ნაბიჯებს. ეს რობოტი გამოიყენებს IR სიახლოვის სენსორს მიჰყევით ხაზს. თქვენ არ დაგჭირდებათ რაიმე სახის პროგრამირების გამოცდილება
მარტივი ხაზის მიმდევარი Arduino– ს გამოყენებით: 5 ნაბიჯი
მარტივი ხაზის მიმდევარი Arduino– ს გამოყენებით: Arduino Line Follower Robot ამ გაკვეთილში ჩვენ განვიხილავთ რობოტის შემდგომი არდუინოს ხაზის მუშაობას, რომელიც მიჰყვება შავ ხაზს თეთრ ფონზე და მიიღებს სწორ შემობრუნებას, როდესაც ის მიაღწევს მოსახვევებს თავის გზაზე. Arduino Line Follower Co