Სარჩევი:

Arduino Drone GPS– ით: 16 ნაბიჯი
Arduino Drone GPS– ით: 16 ნაბიჯი

ვიდეო: Arduino Drone GPS– ით: 16 ნაბიჯი

ვიდეო: Arduino Drone GPS– ით: 16 ნაბიჯი
ვიდეო: DIY пульт управления на ардуино за $9 под Qczek LRS Payne RC 2024, ივლისი
Anonim
Arduino Drone GPS– ით
Arduino Drone GPS– ით

ჩვენ შევქმენით Arduino– ს მიერ კონტროლირებადი და სტაბილიზირებული, GPS– ით ჩართული პირველი პირის ხედვის (FPV) კვადროპტოპის თვითმფრინავი, სახლში დაბრუნებით, კოორდინაციაზე გადასვლით და GPS გამართვის ფუნქციებით. ჩვენ გულუბრყვილოდ ვივარაუდეთ, რომ Arduino– ს არსებული პროგრამების და კვადროკუპტერის გაყვანილობა GPS– ის გარეშე GPS– ის გადამცემ სისტემასთან შეთავსება იქნება შედარებით პირდაპირი და რომ ჩვენ შეგვიძლია სწრაფად გადავიდეთ პროგრამირების უფრო რთულ ამოცანებზე. თუმცა, გასაოცარი თანხა უნდა შეიცვალოს ამ ორი პროექტის შესაერთებლად და, ამრიგად, ჩვენ დავასრულეთ GPS- ით ჩართული FPV კვადროკოპტერი, ყოველგვარი დამატებითი ფუნქციონირების გარეშე.

ჩვენ შევიტანეთ ინსტრუქცია, თუ როგორ უნდა განმეორდეს ჩვენი პროდუქტი, თუ კმაყოფილი ხართ უფრო შეზღუდული კვადროკუპრით.

ჩვენ ასევე შევიტანეთ ყველა ის ნაბიჯი, რაც გადავდგით უფრო ავტონომიური ოთხკუთხედისკენ მიმავალ გზაზე. თუ თავს კომფორტულად გრძნობთ Arduino– ში სიღრმეში ან უკვე გაქვთ Arduino– ს დიდი გამოცდილება და გსურთ მიიღოთ ჩვენი გაჩერების წერტილი, როგორც გადასასვლელი წერტილი თქვენი საკუთარი ძიებისთვის, მაშინ ეს ინსტრუქცია ასევე თქვენთვისაა.

ეს არის შესანიშნავი პროექტი, რომ გაიგოთ რაღაც არდუინოს მშენებლობისა და კოდირების შესახებ, რაც არ უნდა დიდი გამოცდილება გაქვთ. ასევე, იმედია, დრონითაც წახვალ.

დაყენება შემდეგია:

მასალების ჩამონათვალში, ვარსკვლავების გარეშე ნაწილები საჭიროა ორივე მიზნისთვის.

ნაწილები ერთი ვარსკვლავით არის საჭირო მხოლოდ უფრო ავტონომიური ოთხკუთხედის დაუმთავრებელი პროექტისათვის.

ორი ვარსკვლავის მქონე ნაწილები საჭიროა მხოლოდ უფრო შეზღუდული ოთხკუთხედისთვის.

ორივე პროექტისთვის საერთო ნაბიჯებს სათაურის შემდეგ არ აქვს მარკერი

მხოლოდ უფრო შეზღუდული არა-ავტონომიური ოთხკუთხედისთვის საჭირო ნაბიჯები აქვს სათაურის შემდეგ "(Uno)".

მხოლოდ ავტონომიურ ოთხკუთხედზე მომუშავე ნაბიჯებს აქვს სათაურის შემდეგ "(მეგა)".

Uno– ზე დაფუძნებული ოთხკუთხედის შესაქმნელად, მიჰყევით ნაბიჯებს თანმიმდევრობით, გამოტოვეთ ნებისმიერი ნაბიჯი სათაურის შემდეგ "(მეგა)"-ით.

მეგაზე დაფუძნებულ ოთხკუთხედზე სამუშაოდ, მიჰყევით ნაბიჯებს თანმიმდევრობით, გამოტოვეთ ნებისმიერი ნაბიჯი სათაურის შემდეგ "(Uno)"-ით.

ნაბიჯი 1: მასალების შეგროვება

კომპონენტები:

1) ერთი ოთხკუთხედის ჩარჩო (ზუსტ ჩარჩოს დიდი მნიშვნელობა არ აქვს) (15 $)

2) ოთხი 2830, 900 კვ ჯაგრისის ძრავა (ან მსგავსი) და ოთხი სამონტაჟო აქსესუარების პაკეტი (4x $ 6 + 4x $ 4 = $ 40 სულ)

3) ოთხი 20A UBEC ESC (4x $ 10 = $ 40 სულ)

4) ერთი დენის გამანაწილებელი დაფა (XT-60 კავშირით) ($ 20)

5) ერთი 3s, 3000-5000mAh LiPo ბატარეა XT-60 კავშირით (3000mAh შეესაბამება დაახლოებით 20 წუთის ფრენის დროს) ($ 25)

6) ბევრი პროპელერი (ეს ბევრი იშლება) ($ 10)

7) ერთი Arduino Mega 2560* ($ 40)

8) ერთი Arduino Uno R3 ($ 20)

9) მეორე Arduino Uno R3 ** ($ 20)

10) ერთი Arduino Ultimate GPS ფარი (თქვენ არ გჭირდებათ ფარი, მაგრამ სხვა GPS– ის გამოყენებას დასჭირდება განსხვავებული გაყვანილობა) ($ 45)

11) ორი HC-12 უკაბელო გადამცემი (2x 5 $ = 10 $)

12) ერთი MPU- 6050, 6DOF (თავისუფლების ხარისხი) გირო/ამაჩქარებელი (5 $)

13) ერთი Turnigy 9x 2.4GHz, 9 არხის გადამცემი/მიმღები წყვილი ($ 70)

14) Arduino ქალი (დასადგმელი) სათაურები ($ 20)

15) LiPo ბატარეის ბალანსის დამტენი (და 12V DC ადაპტერი, არ შედის) (20 $)

17) USB A to B მამაკაცი მამრობითი ადაპტერის კაბელი ($ 5)

17) წებოვანი ლენტი

18) მილების შემცირება

აღჭურვილობა:

1) გასაყიდი რკინა

2) შემდუღებელი

3) პლასტიკური ეპოქსია

4) სანთებელა

5) მავთულის სტრიპტიზიორი

6) ალენის გასაღებების ნაკრები

არჩევითი კომპონენტები რეალურ დროში FPV (პირველი პირის ნახვა) ვიდეო გადაცემისათვის:

1) პატარა FPV კამერა (ეს ბმულობს საკმაოდ იაფ და უხარისხო კამერას, რომელსაც ჩვენ ვიყენებდით, შეგიძლიათ შეცვალოთ უკეთესი) ($ 20)

2) 5.6 GHz ვიდეო გადამცემი/მიმღები წყვილი (832 მოდელი გამოიყენება) ($ 30)

3) 500mAh, 3s (11.1V) LiPo ბატარეა ($ 7) (ჩვენ ვიყენებდით ბანანის დანამატით, მაგრამ ჩვენ გირჩევთ, რომ თქვენ გამოიყენოთ დაკავშირებული ბატარეა, რადგან მას აქვს კონექტორი თავსებადი TS832 გადამცემთან და, შესაბამისად, არა ' არ მოითხოვს შედუღებას).

4) 2 1000mAh 2s (7.4V) LiPo ბატარეა, ან მსგავსი ($ 5). MAh– ის რაოდენობა არ არის კრიტიკული, სანამ ის 1000 mAh– ზე მეტია. იგივე განცხადება, რაც ზემოთაა, ეხება დანამატის ტიპს ორი ბატარეიდან ერთისთვის. მეორე გამოყენებული იქნება მონიტორის გასაძლიერებლად, ასე რომ თქვენ მოგიწევთ შედუღება, რაც არ უნდა იყოს. ალბათ უმჯობესია აიღოთ ერთი XT-60 დანამატით ამისათვის (ეს არის ის, რაც ჩვენ გავაკეთეთ). ამ ტიპის ბმული აქ არის: 1000mAh 2s (7.4V) LiPo XT-60 დანამატით

5) LCD მონიტორი (სურვილისამებრ) ($ 15). თქვენ ასევე შეგიძლიათ გამოიყენოთ AV-USB ადაპტერი და DVD კოპირების პროგრამული უზრუნველყოფა, რათა ნახოთ პირდაპირ ლეპტოპზე. ეს ასევე იძლევა ვიდეოს და ფოტოების ჩაწერის შესაძლებლობას, ვიდრე უბრალოდ მათ რეალურ დროში ნახვა.

6) თუ თქვენ იყიდეთ ბატარეები, რომელსაც აქვს განსხვავებული დანამატი ერთმანეთთან მიერთებულიდან, შეიძლება დაგჭირდეთ შესაბამისი გადამყვანები. მიუხედავად ამისა, მიიღეთ ბატარეის დანამატის შესაბამისი ადაპტერი, რომელიც აკონტროლებს მონიტორს. აქ არის სად ვიშოვოთ XT-60 გადამყვანები

* = მხოლოდ უფრო მოწინავე პროექტისათვის

** = მხოლოდ უფრო ძირითადი პროექტისთვის

Ღირს:

თუ ნულიდან იწყებთ (ოღონდ შედუღების რკინით და სხვა…), არ გააჩნია FPV სისტემა: 37 370 $

თუ თქვენ უკვე გაქვთ RC გადამცემი/მიმღები, LiPo ბატარეის დამტენი და LiPo ბატარეა: 26 260 $

FPV სისტემის ღირებულება: $ 80

ნაბიჯი 2: შეიკრიბეთ ჩარჩო

შეიკრიბეთ ჩარჩო
შეიკრიბეთ ჩარჩო
შეიკრიბეთ ჩარჩო
შეიკრიბეთ ჩარჩო
შეიკრიბეთ ჩარჩო
შეიკრიბეთ ჩარჩო

ეს ნაბიჯი საკმაოდ მარტივია, განსაკუთრებით იმ შემთხვევაში, თუ ჩვენ ვიყენებთ იმავე წინასწარ მომზადებულ ჩარჩოს, რომელიც ჩვენ გამოვიყენეთ. უბრალოდ გამოიყენეთ ჩართული ხრახნები და განათავსეთ ჩარჩო ისე, როგორც ნაჩვენებია, თქვენი ჩარჩოს შესაბამისი ალენის კლავიშის ან ხრახნიანი გამოყენებით. დარწმუნდით, რომ ერთი და იმავე ფერის იარაღი ერთმანეთის გვერდითაა (როგორც ამ სურათზეა), ისე რომ დრონს ჰქონდეს მკაფიო წინა და უკანა მხარე. გარდა ამისა, დარწმუნდით, რომ ქვედა ფირფიტის გრძელი ნაწილი მოთავსებულია საპირისპირო ფერის მკლავებს შორის. ეს მოგვიანებით ხდება მნიშვნელოვანი.

ნაბიჯი 3: Mount Motors და Connect Escs

Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs
Mount Motors და Connect Escs

ახლა, როდესაც ჩარჩო შეიკრიბა, ამოიღეთ ოთხი ძრავა და ოთხი სამონტაჟო აქსესუარი. თქვენ შეგიძლიათ გამოიყენოთ ხრახნები, რომლებიც შედის სამონტაჟო კომპლექტში, ან ხრახნები, რომლებიც დარჩა ოთხკუთხედის ჩარჩოდან, ძრავებისა და სამონტაჟოების დასაჭერად. თუ ყიდულობთ საყრდენებს, რომლებსაც ჩვენ დავუკავშირდით, თქვენ მიიღებთ დამატებით ორ კომპონენტს, სურათზე ზემოთ. ჩვენ გვქონდა კარგი საავტომობილო შესრულება ამ ნაწილების გარეშე, ამიტომ ჩვენ დავტოვეთ ისინი წონის შესამცირებლად.

მას შემდეგ, რაც ძრავები დაიჭრება ადგილზე, ეპოქსიდური ენერგიის განაწილების დაფა (PDB) მოათავსეთ კვადროკუპტერის ჩარჩოს ზედა ფირფიტაზე. დარწმუნდით, რომ ის ორიენტირებული გაქვთ ისე, რომ ბატარეის კონექტორი მიუთითებს სხვადასხვა ფერის მკლავებს შორის (ქვედა ფირფიტის ერთ-ერთი გრძელი ნაწილის პარალელურად), როგორც ზემოთ მოცემულ სურათზე.

თქვენ ასევე უნდა გქონდეთ ოთხი პროპელერის კონუსი ქალი ძაფებით. გადადეთ ახლავე ესენი.

ახლა ამოიღეთ თქვენი ESC. ერთ მხარეს ექნება ორი მავთული, ერთი წითელი და ერთი შავი. ოთხივე ESC– დან თითოეული ჩასვით წითელი მავთული PDB– ს პოზიტიურ კონექტორში და შავი ნეგატივში. გაითვალისწინეთ, რომ თუ თქვენ იყენებთ სხვა PDB- ს, ამ ნაბიჯმა შეიძლება მოითხოვოს შედუღება. ახლა დააკავშირეთ თითოეული ძრავიდან გამომავალი სამი მავთულიდან თითოეული. ამ დროს, არ აქვს მნიშვნელობა რომელ ESC მავთულს დააკავშირებთ რომელ საავტომობილო მავთულს (რამდენადაც თქვენ აკავშირებთ ერთი ESC- ს ყველა მავთულს ერთი და იმავე ძრავით!) თქვენ შეასწორებთ უკუ პოლარობას მოგვიანებით. ეს არ არის საშიში, თუ მავთულები გადაბრუნებულია; ეს მხოლოდ იწვევს ძრავის ტრიალს უკან.

ნაბიჯი 4: მოამზადეთ არდუინო და ფარი

მოამზადეთ არდუინო და ფარი
მოამზადეთ არდუინო და ფარი
მოამზადეთ არდუინო და ფარი
მოამზადეთ არდუინო და ფარი

შენიშვნა დაწყებამდე

პირველ რიგში, თქვენ შეგიძლიათ აირჩიოთ ყველა მავთულის ერთმანეთთან პირდაპირ შეერთება. თუმცა, ჩვენ აღმოვაჩინეთ ფასდაუდებელი პინის სათაურების გამოყენება, რადგან ისინი უზრუნველყოფენ უამრავ მოქნილობას პრობლემის მოსაგვარებლად და პროექტის ადაპტირებისთვის. ქვემოთ მოცემულია აღწერილობა იმისა, რაც ჩვენ გავაკეთეთ (და გირჩევთ სხვებს).

მოამზადეთ არდუინო და ფარი

ამოიღეთ თქვენი Arduino Mega (ან Uno თუ აკეთებთ არაავტონომიურ ოთხკუთხედს), GPS ფარი და დასაკეცი სათაურები. შეაერთეთ თავსახური თავსახურების მამრობითი ადგილი GPS ფარზე, წინასწარ შედუღებული ქინძის პარალელურად ქინძისთავების რიგებში, როგორც ეს მოცემულია ზემოთ სურათზე. ასევე შედუღებულია თავსატეხებში, მწკრივზე 3V, CD,… RX. გამოიყენეთ მავთულის საჭრელი, რომ ამოიღოთ ზედმეტი სიგრძე ქვედა ნაწილში გამობმულ ქინძისთავებზე. ყველა ამ დასალაგებელ თავში მოათავსეთ მამრობითი სათაურები მოხრილი თავებით. ეს არის ის, რასაც თქვენ შეუერთებთ მავთულს დანარჩენ კომპონენტებზე.

მიამაგრეთ GPS ფარი თავზე, დარწმუნდით, რომ ქინძისთავები ემთხვევა არდუინოს (მეგა ან უნო). გაითვალისწინეთ, რომ მეგას გამოყენების შემთხვევაში, ბევრი არდუინო მაინც გამოჩნდება მას შემდეგ, რაც ფარი მოათავსეთ.

მოათავსეთ ელექტრული ლენტი არდუინოს ძირზე, რომელიც მოიცავს ყველა გამჭვირვალე საკინძს, რათა თავიდან აიცილოთ მოკლე ჩართვა, რადგან არდუინო ეყრდნობა PDB- ს.

ნაბიჯი 5: შეაერთეთ კომპონენტები და მოათავსეთ ბატარეა (Uno)

მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (Uno)

ზემოთ მოყვანილი სქემა თითქმის იდენტურია იუპ ბრუკინგის მიერ, რადგან ჩვენ დიდად დავამყარეთ ჩვენი დიზაინი მისგან.

*გაითვალისწინეთ, რომ ეს სქემა გულისხმობს სწორად დამონტაჟებულ GPS ფარს და, შესაბამისად, GPS არ ჩანს ამ სქემატურში.

ზემოთ მოყვანილი სქემა მომზადებულია Fritzing პროგრამის გამოყენებით, რომელიც განსაკუთრებით რეკომენდებულია Arduino– ს ჩართვის სქემებისთვის. ჩვენ ძირითადად ვიყენებდით ზოგად ნაწილებს, რომელთა რედაქტირებაც შესაძლებელია მოქნილად, რადგან ჩვენი ნაწილები, როგორც წესი, არ იყო ფრინცინგის ბიბლიოთეკაში.

-დარწმუნდით, რომ GPS ფარის გადამრთველი გადართულია "პირდაპირ ჩაწერაზე".

-ახლა შეაერთეთ ყველა კომპონენტი ზემოაღნიშნული სქემატური სქემის მიხედვით (ბატარეის გარდა!) (მნიშვნელოვანი შენიშვნა GPS მონაცემთა სადენებზე ქვემოთ).

-გაითვალისწინეთ, რომ თქვენ უკვე შეაერთეთ ESC– ები ძრავზე და PDB– ზე, ასე რომ, სქემატური ნაწილის ეს ნაწილი დასრულებულია.

გარდა ამისა, გაითვალისწინეთ, რომ GPS მონაცემები (ყვითელი მავთულები) გამოდის Arduino– ს 0 და 1 ქინძისთავებიდან (არა ცალკეული Tx და Rx ქინძისთავები GPS– ში). ეს არის იმის გამო, რომ კონფიგურირებულია "პირდაპირი ჩაწერა" (იხ. ქვემოთ), GPS გამოდის უშუალოდ ტექნიკის სერიულ პორტებში uno (ქინძისთავები 0 და 1). ეს ყველაზე ნათლად არის ნაჩვენები სრული გაყვანილობის მეორე სურათზე.

-RC მიმღების გაყვანილობისას მიმართეთ სურათს ზემოთ. გაითვალისწინეთ, რომ მონაცემთა მავთულები გადადიან ზედა რიგში, ხოლო Vin და Gnd შესაბამისად მეორე და მესამე რიგებშია (და ქინძისთავების მეორე-შორეულ სვეტზე).

-HC-12 გადამცემი, RC მიმღები და 5Vout PDB– დან Arduino– ს Vin– ის გაყვანილობის გასაკეთებლად, ჩვენ გამოვიყენეთ დასადგმელი სათაურები, ხოლო გიროსთვის ჩვენ მავთულხლართებს პირდაპირ ვაჭრით დაფაზე და ვიყენებთ სითბოს შესამცირებელი მილის გარშემო. solder. თქვენ შეგიძლიათ აირჩიოთ რომელიმე კომპონენტისთვის, თუმცა რეკომენდირებულია გიროზე შედუღება, რადგან ეს ზოგავს ადგილს, რაც ამარტივებს მცირე ნაწილს. სათაურების გამოყენება მცირედი სამუშაოა წინ, მაგრამ უზრუნველყოფს მეტ მოქნილობას. მავთულის პირდაპირ შედუღება არის უფრო უსაფრთხო კავშირი გრძელვადიან პერსპექტივაში, მაგრამ იმას ნიშნავს, რომ სხვა კომპონენტში ამ კომპონენტის გამოყენება უფრო რთულია. გაითვალისწინეთ, რომ თუ თქვენ იყენებთ სათაურებს GPS ფარზე, თქვენ მაინც გაქვთ საკმაოდ დიდი მოქნილობა იმისდა მიუხედავად, რას აკეთებთ. რაც მთავარია, დარწმუნდით, რომ GPS მონაცემების მავთულები GPS– ის 0 და 1 ქულების ამოღება და შეცვლა ადვილია.

ჩვენი პროექტის დასასრულს, ჩვენ ვერ შევქმენით კარგი მეთოდი ჩვენი ყველა კომპონენტის ჩარჩოზე მიმაგრებისთვის. ჩვენი კლასის დროის ზეწოლის გამო, ჩვენი გადაწყვეტილებები ზოგადად ტრიალებდა ორმხრივი ქაფის ლენტის, გამწოვი ლენტის, ელექტრული ლენტისა და სამაგრების გარშემო. ჩვენ გირჩევთ, რომ მეტი დრო დაუთმოთ სტაბილური სამონტაჟო სტრუქტურების დიზაინს, თუ გეგმავთ რომ ეს იყოს გრძელვადიანი პროექტი. ყოველივე ამის შემდეგ, თუ თქვენ უბრალოდ გსურთ შექმნათ სწრაფი პროტოტიპი, მაშინ მოგერიდებათ თვალყური ადევნოთ ჩვენს პროცესს. თუმცა, დარწმუნდით, რომ გირო უსაფრთხოდ არის დამონტაჟებული. ეს არის ერთადერთი გზა, რომელიც არდუინომ იცის, რას აკეთებს კვადკორპტერი, ასე რომ, თუ ის ფრენისას გადაადგილდება, პრობლემები შეგექმნებათ.

ყველაფრის მავთულხლართებით და ადგილზე, აიღეთ LiPo ბატარეა და გადაიტანეთ ჩარჩოს ზედა და ქვედა ფირფიტებს შორის. დარწმუნდით, რომ მისი კონექტორი მიუთითებს იმავე მიმართულებით, როგორც PDB კონექტორი და რომ მათ შეუძლიათ რეალურად დაკავშირება. ჩვენ გამოვიყენეთ წებოვანი ლენტი ბატარეის დასაკავებლად (ველკრო ლენტიც მუშაობს, მაგრამ უფრო მაღიზიანებს ვიდრე ფირზე). წებოვანი ლენტი კარგად მუშაობს, რადგან თქვენ შეგიძლიათ მარტივად შეცვალოთ ბატარეა ან ამოიღოთ იგი დასატენად. თუმცა, დარწმუნებული უნდა იყოთ, რომ აკუმულატორს მჭიდროდ აკრავთ, თითქოს ბატარეა მოძრაობს ფრენის დროს, რამაც შეიძლება სერიოზულად დაარღვიოს თვითმფრინავის ბალანსი. ჯერ არ დაუკავშიროთ ბატარეა PDB– ს.

ნაბიჯი 6: შეაერთეთ კომპონენტები და მოათავსეთ ბატარეა (მეგა)

მავთულის ერთად კომპონენტები და ბატარეის ადგილი (მეგა)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (მეგა)
მავთულის ერთად კომპონენტები და ბატარეა (მეგა)
მავთულის ერთად კომპონენტები და ბატარეა (მეგა)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (მეგა)
მავთულის ერთად კომპონენტები და ბატარეის ადგილი (მეგა)

ზემოთ მოყვანილი სქემა მომზადებულია Fritzing პროგრამის გამოყენებით, რაც განსაკუთრებით რეკომენდებულია არდუინოსთან დაკავშირებული სქემებისთვის. ჩვენ ძირითადად ვიყენებდით ზოგად ნაწილებს, რადგან ჩვენი ნაწილები საერთოდ არ იყო ფრინცინგის ბიბლიოთეკაში.

-გაითვალისწინეთ, რომ ეს სქემა გულისხმობს სწორად დამონტაჟებულ GPS ფარს და, შესაბამისად, GPS არ ჩანს ამ სქემატურში.

-გადააფარეთ გადართვა თქვენს მეგა 2560 -ზე "რბილი სერიალი".

-ახლა მიამაგრეთ ყველა კომპონენტი ზემოთ სქემატური სქემის მიხედვით (ბატარეის გარდა!)

-გაითვალისწინეთ, რომ თქვენ უკვე შეაერთეთ ESC– ები ძრავზე და PDB– ზე, ასე რომ, სქემატური ნაწილის ეს ნაწილი დასრულებულია.

ჯუმბერის კაბელები Pin 8 – დან Rx– დან და Pin 7 – დან Tx– მდე იმიტომ არის, რომ (Uno– სგან განსხვავებით, რისთვისაც შეიქმნა ეს ფარი), მეგას აკლია უნივერსალური ასინქრონული მიმღები – გადამცემი (UART) 7 და 8 ქინძისთავებზე და ამდენად ჩვენ უნდა გამოვიყენოთ აპარატურის სერიული ქინძისთავები. არსებობს სხვა მიზეზები, რომ ჩვენ გვჭირდება აპარატურის სერიული ქინძისთავები, რომლებიც მოგვიანებით განვიხილავთ.

-RC მიმღების გაყვანილობისას მიმართეთ სურათს ზემოთ. გაითვალისწინეთ, რომ მონაცემთა მავთულები გადადიან ზედა რიგში, ხოლო Vin და Gnd შესაბამისად მეორე და მესამე რიგებშია (და ქინძისთავების მეორე-შორეულ სვეტზე).

-HC-12 გადამცემი, RC მიმღები და 5Vout PDB– დან Arduino– ს Vin– ის გაყვანილობის გასაკეთებლად, ჩვენ გამოვიყენეთ დასაკეცი სათაურები, ხოლო გიროსთვის ჩვენ პირდაპირ შევაერთეთ მავთულები და შედუღების გარშემო სითბოს შესამცირებელი მილის გამოყენებით. თქვენ შეგიძლიათ აირჩიოთ რომელიმე კომპონენტისთვის. სათაურების გამოყენება მცირედი სამუშაოა წინ, მაგრამ უზრუნველყოფს მეტ მოქნილობას. მავთულის პირდაპირ შედუღება არის უფრო უსაფრთხო კავშირი გრძელვადიან პერსპექტივაში, მაგრამ იმას ნიშნავს, რომ სხვა კომპონენტში ამ კომპონენტის გამოყენება უფრო რთულია. გაითვალისწინეთ, რომ თუ თქვენ იყენებთ სათაურებს GPS ფარზე, თქვენ მაინც გაქვთ საკმაოდ დიდი მოქნილობა იმისდა მიუხედავად, რას აკეთებთ.

ჩვენი პროექტის დასასრულს, ჩვენ ვერ შევქმენით კარგი მეთოდი ჩვენი ყველა კომპონენტის ჩარჩოზე მიმაგრებისთვის. ჩვენი კლასის დროის ზეწოლის გამო, ჩვენი გადაწყვეტილებები ზოგადად ტრიალებდა ორმხრივი ქაფის ლენტის, გამწოვი ლენტის, ელექტრული ლენტისა და სამაგრების გარშემო. ჩვენ გირჩევთ, რომ მეტი დრო დაუთმოთ სტაბილური სამონტაჟო სტრუქტურების დიზაინს, თუ გეგმავთ რომ ეს იყოს გრძელვადიანი პროექტი. ყოველივე ამის შემდეგ, თუ თქვენ უბრალოდ გსურთ შექმნათ სწრაფი პროტოტიპი, მოგერიდებათ თვალყური ადევნოთ ჩვენს პროცესს. ამასთან, დარწმუნდით, რომ გირო უსაფრთხოდ არის დამონტაჟებული. ეს არის ერთადერთი გზა, რომელიც არდუინომ იცის, რას აკეთებს კვადკორპტერი, ასე რომ, თუ ის ფრენისას გადაადგილდება, პრობლემები შეგექმნებათ.

ყველაფრის მავთულხლართებით და ადგილზე, აიღეთ LiPo ბატარეა და გადაიტანეთ ჩარჩოს ზედა და ქვედა ფირფიტებს შორის. დარწმუნდით, რომ მისი კონექტორი მიუთითებს იმავე მიმართულებით, როგორც PDB კონექტორი და რომ მათ შეუძლიათ რეალურად დაკავშირება. ჩვენ გამოვიყენეთ წებოვანი ლენტი ბატარეის დასაკავებლად (ველკრო ლენტიც მუშაობს, მაგრამ უფრო მაღიზიანებს ვიდრე ფირზე). წებოვანი ლენტი კარგად მუშაობს, რადგან მარტივად შეგიძლიათ შეცვალოთ ბატარეა ან ამოიღოთ იგი დასატენად. თუმცა, დარწმუნებული უნდა იყოთ, რომ აკუმულატორს მჭიდროდ აკრავთ, თითქოს ბატარეა მოძრაობს ფრენის დროს, რამაც შეიძლება სერიოზულად დაარღვიოს თვითმფრინავის ბალანსი. ჯერ არ დაუკავშიროთ ბატარეა PDB– ს.

ნაბიჯი 7: სავალდებულო მიმღები

სავალდებულო მიმღები
სავალდებულო მიმღები
სავალდებულო მიმღები
სავალდებულო მიმღები

აიღეთ RC მიმღები და დროებით შეაერთეთ იგი 5V დენის წყაროსთან (ან Arduino– ს USB ან 9V დენის ჩართვით, ან ცალკე დენის წყლით. ჯერ არ დაუკავშიროთ LiPo არდუინოს). მიიღეთ სავალდებულო პინი, რომელიც მოყვა RC მიმღებს და განათავსეთ იგი მიმღებზე BIND ქინძისთავებზე. ალტერნატიულად, მოკლე ზედა და ქვედა ქინძისთავები BIND სვეტში, როგორც ეს მოცემულია ზემოთ მოცემულ ფოტოში. მიმღებზე წითელი შუქი სწრაფად უნდა აციმციმდეს. ახლა აიღეთ კონტროლერი და დააჭირეთ ღილაკს უკანა მხარეს, სანამ ის გამორთულია, როგორც ეს ნაჩვენებია ზემოთ. ღილაკზე დაჭერით ჩართეთ კონტროლერი. ახლა მიმღების მოციმციმე შუქი მყარი უნდა გახდეს. მიმღები შეკერილია. ამოიღეთ სავალდებულო კაბელი. თუ თქვენ იყენებდით სხვა კვების ბლოკს, ხელახლა დაუკავშირეთ მიმღები 5 ვ -ს არდუინოდან.

ნაბიჯი 8: (სურვილისამებრ) მავთული ერთად და დააინსტალირეთ FPV კამერის სისტემა

(სურვილისამებრ) მავთული ერთად და დააინსტალირეთ FPV კამერის სისტემა
(სურვილისამებრ) მავთული ერთად და დააინსტალირეთ FPV კამერის სისტემა
(სურვილისამებრ) მავთული ერთად და დააინსტალირეთ FPV კამერის სისტემა
(სურვილისამებრ) მავთული ერთად და დააინსტალირეთ FPV კამერის სისტემა

პირველ რიგში, შეაერთეთ XT-60 ადაპტერი მონიტორზე დენის და მიწის მავთულხლართებით. ეს შეიძლება განსხვავდებოდეს მონიტორიდან მონიტორზე, მაგრამ სიმძლავრე თითქმის ყოველთვის იქნება წითელი, მიწა თითქმის ყოველთვის შავი. ახლა ჩადეთ ადაპტერი შედუღებული მავთულებით თქვენს 1000mAh LiPo– ში XT-60 დანამატით. მონიტორი უნდა ჩართოთ (ჩვეულებრივ) ლურჯი ფონით. ეს არის ყველაზე რთული ნაბიჯი!

ახლა დააკაკუნეთ ანტენები თქვენს მიმღებზე და გადამცემზე.

შეაერთეთ თქვენი პატარა 500mAh Lipo გადამცემთან. მარჯვენა მარჯვენა პინი (ანტენის ქვემოთ) არის ბატარეის დაფქული (V_), შემდეგი მარცხენა მარცხნივ არის V+. მოდიან სამი მავთული, რომელიც მიდის კამერაზე. კამერას უნდა მოყვეს სამსაფეხურიანი შტეფსელი, რომელიც ჯდება გადამცემში. დარწმუნდით, რომ თქვენ გაქვთ ყვითელი მონაცემთა მავთული შუაში. თუ თქვენ იყენებდით ბატარეებს, რომლებსაც ჩვენ ვუკავშირებდით ამისთვის განკუთვნილ შტეფსელებთან, ეს ნაბიჯი არ უნდა მოითხოვდეს შედუღებას.

დაბოლოს, შეაერთეთ თქვენი სხვა 1000mAh ბატარეა DC მიმყვანი მავთულით, რომელიც მოყვა თქვენს მიმღებს და, თავის მხრივ, შეაერთეთ იგი DC- ში თქვენს მიმღებზე. დაბოლოს, დააკავშირეთ AVin კაბელის შავი ბოლო, რომელიც მოვიდა თქვენს მიმღებთან ერთად AVin პორტში თქვენს მიმღებზე, ხოლო მეორე (ყვითელი, ქალი) ბოლოში თქვენი მონიტორის AVin კაბელის ყვითელ მამაკაცურ ბოლოზე.

ამ ეტაპზე, თქვენ უნდა გქონდეთ შესაძლებლობა იხილოთ კამერის ხედი მონიტორზე. თუ თქვენ არ შეგიძლიათ, დარწმუნდით, რომ მიმღები და გადამცემი ორივე ჩართულია (თქვენ უნდა ნახოთ რიცხვები მათ მცირე ეკრანებზე) და რომ ისინი ერთ არხზე არიან (ჩვენ ორივე არხისთვის ვიყენეთ მე –11 და ორივე წარმატებული იყო). გარდა ამისა, შეიძლება დაგჭირდეთ არხის შეცვლა მონიტორზე.

დაამონტაჟეთ კომპონენტები ჩარჩოზე.

დაყენების დასრულების შემდეგ გათიშეთ ბატარეები, სანამ მზად არ იქნებით ფრენისთვის.

ნაბიჯი 9: დააყენეთ GPS მონაცემთა მიღება

დააყენეთ GPS მონაცემთა მიღება
დააყენეთ GPS მონაცემთა მიღება
დააყენეთ GPS მონაცემთა მიღება
დააყენეთ GPS მონაცემთა მიღება

შეაერთეთ თქვენი მეორე არდუინო თქვენი მეორე HC-12 გადამცემით, როგორც ეს ნაჩვენებია ზემოთ სქემატურ სქემაში, გაითვალისწინეთ, რომ კონფიგურაცია იკვებება მხოლოდ ისე, როგორც ნაჩვენებია კომპიუტერში ჩართვის შემთხვევაში. ჩამოტვირთეთ მოწოდებული გადამცემი კოდი, გახსენით თქვენი სერიული მონიტორი 9600 baud– ზე.

უფრო ძირითადი კონფიგურაციის გამოყენების შემთხვევაში, თქვენ უნდა დაიწყოთ GPS წინადადებების მიღება, თუ თქვენი GPS ფარი იკვებება და სათანადოდ არის დაკავშირებული სხვა HC-12 გადამცემზე (და თუ ფარის გადამრთველი ჩართულია "პირდაპირი ჩაწერა").

მეგასთან ერთად, დარწმუნდით, რომ გადამრთველი ჩართულია "რბილი სერიალი".

ნაბიჯი 10: შეასრულეთ დაყენების კოდი (Uno)

ეს კოდი იდენტურია იოპ ბროკინგის მიერ Arduino quadcopter სამეურვეო პროგრამაში და ის იმსახურებს ყველა დამსახურებას მისი დაწერისთვის.

ბატარეის გათიშვისას გამოიყენეთ USB კაბელი თქვენი კომპიუტერის Arduino– ს დასაკავშირებლად და ატვირთეთ თანდართული დაყენების კოდი. ჩართეთ თქვენი RC გადამცემი. გახსენით თქვენი სერიული მონიტორი 57600 baud– ზე და მიჰყევით მოთხოვნებს.

საერთო შეცდომები:

თუ კოდი ვერ აიტვირთა, დარწმუნდით, რომ 0 და 1 ქინძისთავები გამორთულია UNO/GPS ფარზე.ეს არის იგივე აპარატურის პორტი, რომელსაც მოწყობილობა იყენებს კომპიუტერთან კომუნიკაციისთვის, ამიტომ ის თავისუფალი უნდა იყოს.

თუ კოდი ერთდროულად გამოტოვებს რამოდენიმე ნაბიჯს, შეამოწმეთ რომ თქვენი GPS გადამრთველი ჩართულია "პირდაპირი ჩაწერა".

თუ მიმღები არ არის გამოვლენილი, დარწმუნდით, რომ მიმღებზე არის მყარი (მაგრამ ჩამქრალი) წითელი შუქი, როდესაც გადამცემი ჩართულია. თუ ასეა, შეამოწმეთ გაყვანილობა.

თუ გირო არ არის გამოვლენილი, ეს შეიძლება იყოს იმის გამო, რომ გირო დაზიანებულია ან თუ თქვენ გაქვთ სხვა ტიპის გირო, რომლისგანაც კოდი განკუთვნილია დასაწერად.

ნაბიჯი 11: შეასრულეთ დაყენების კოდი (მეგა)

ეს კოდი იდენტურია იოპ ბროკინგის მიერ Arduino quadcopter სამეურვეო პროგრამაში და ის იმსახურებს ყველა დამსახურებას მისი დაწერისთვის. ჩვენ უბრალოდ მოვარგეთ Mega– ს გაყვანილობა ისე, რომ მიმღების შეყვანა შეესაბამებოდეს Pin Change Interrupt– ის სწორ ქინძისთავებს.

ბატარეის გათიშვისას გამოიყენეთ USB კაბელი თქვენი კომპიუტერის Arduino– ს დასაკავშირებლად და ატვირთეთ თანდართული დაყენების კოდი. გახსენით თქვენი სერიული მონიტორი 57600 baud– ზე და მიჰყევით მოთხოვნებს.

ნაბიჯი 12: ESC– ების დაკალიბრება (Uno)

კიდევ ერთხელ, ეს კოდი იოპ ბროკინგის კოდის იდენტურია. ყველა მოდიფიკაცია განხორციელდა GPS და Arduino– ს ინტეგრირების მიზნით და შეგიძლიათ ნახოთ მოგვიანებით, უფრო მოწინავე ოთხკუთხედის კონსტრუქციის აღწერილობაში.

ატვირთეთ თანდართული ESC კალიბრაციის კოდი. სერიულ მონიტორზე ჩაწერეთ ასო "r" და დააჭირეთ დაბრუნებას. თქვენ უნდა დაიწყოთ რეალურ დროში RC კონტროლერის მნიშვნელობების ნახვა. გადაამოწმეთ, რომ ისინი განსხვავდებიან 1000 -დან 2000 წლამდე, უკიდურესად დაძაბულობის, რულეტის, მოედნისა და ყბის ზღვარზე. შემდეგ ჩაწერეთ "a" და დააჭირეთ დაბრუნებას. გაუშვით გიროს დაკალიბრება და შემდეგ გადაამოწმეთ, რომ გირო აფიქსირებს კვადრატის მოძრაობას. ახლა აამაღლეთ arduino კომპიუტერიდან, მიამაგრეთ გაზქურა კონტროლერამდე და შეაერთეთ ბატარეა. ESC– ებმა უნდა იმოძრაონ სხვადასხვა ბიპ ტონაზე (მაგრამ ეს შეიძლება განსხვავებული იყოს ESC– ისა და მისი პროგრამული უზრუნველყოფის მიხედვით). ბოლომდე გაწიეთ გასროლილი. ESC– ებმა უნდა გამოსცენ ქვედა სიგნალები, შემდეგ გაჩუმდნენ. გამორთეთ ბატარეა.

სურვილისამებრ, ამ ეტაპზე შეგიძლიათ გამოიყენოთ კონუსები, რომლებიც მოყვება თქვენს ძრავას და აქსესუარების პაკეტებს მჭიდროდ ხრახნიან პროპელერებს. შემდეგ შეიყვანეთ ნომრები 1 - 4 სერიულ მონიტორზე, რათა ძრავები გაამძაფროთ შესაბამისად 1 - 4 შესაბამისად, ყველაზე დაბალი სიმძლავრით. პროგრამა დაარეგისტრირებს იმ რაოდენობის კანკალს, რომელიც გამოწვეულია პროპორციების დისბალანსით. თქვენ შეგიძლიათ სცადოთ ამის გამოსწორება მცირე რაოდენობის სკოტჩის ჩამატებით ერთ ან მეორე საყრდენზე. ჩვენ აღმოვაჩინეთ, რომ ჩვენ შეგვიძლია კარგი ფრენა მივიღოთ ამ ნაბიჯის გარეშე, მაგრამ ალბათ ოდნავ ნაკლებ ეფექტურად და უფრო ხმამაღლა ვიდრე შევადაროთ პროპორციები.

ნაბიჯი 13: ESC– ების დაკალიბრება (მეგა)

ეს კოდი ძალიან ჰგავს ბროკინგის კოდს, თუმცა ჩვენ მოვარგეთ იგი (და შესაბამისი გაყვანილობა) მეგასთან მუშაობისთვის.

ატვირთეთ თანდართული ESC კალიბრაციის კოდი. სერიულ მონიტორზე ჩაწერეთ ასო 'r' და დააჭირეთ დაბრუნებას. თქვენ უნდა დაიწყოთ რეალურ დროში RC კონტროლერის მნიშვნელობების ნახვა. გადაამოწმეთ, რომ ისინი განსხვავდებიან 1000 -დან 2000 წლამდე, უკიდურესად დაძაბულობის, რულეტის, მოედნისა და ყბის ზღვარზე.

შემდეგ ჩაწერეთ "a" და დააჭირეთ დაბრუნებას. გაუშვით გიროს დაკალიბრება და შემდეგ გადაამოწმეთ, რომ გირო აფიქსირებს კვადრატის მოძრაობას.

ახლა აამაღლეთ arduino კომპიუტერიდან, მიამაგრეთ გაზქურა კონტროლერამდე და შეაერთეთ ბატარეა. ESC– ებმა უნდა გასცენ სამი დაბალი სიგნალი, რასაც მოჰყვება მაღალი სიგნალი (მაგრამ ეს შეიძლება იყოს განსხვავებული ESC– ისა და მისი ფირმის მიხედვით). ბოლომდე გაწიეთ გასროლილი. გამორთეთ ბატარეა.

ცვლილებები, რაც ჩვენ შევიტანეთ ამ კოდში იყო გადავიდეთ PORTD– ის გამოყენებით ESC ქინძისთავებზე PORTA– ს გამოყენებაზე და შემდეგ ამ პორტებზე დაწერილი ბაიტების შეცვლაზე ისე, რომ ჩვენ გავააქტიუროთ შესაბამისი ქინძისთავები, როგორც ეს ნაჩვენებია გაყვანილობის სქემაში. ეს ცვლილება იმიტომ ხდება, რომ PORTD რეგისტრაციის ქინძისთავები არ არის მეგაზე იმავე ადგილას, როგორც Uno– ში. ჩვენ ვერ შევძელით ამ კოდის სრულად გამოცდა, რადგან ვმუშაობდით ძველ არა ბრენდ მეგაზე, რომელიც ჩვენი სკოლის მაღაზიას ჰქონდა. ეს იმას ნიშნავდა, რომ რატომღაც PORTA– ს ყველა რეგისტრის პინმა ვერ შეძლო ESC– ების სწორად გააქტიურება. ჩვენ ასევე გვქონდა პრობლემები ზოგიერთი სატესტო კოდში ოვალური ოპერატორის (| =) გამოყენებისას. ჩვენ არ ვართ დარწმუნებული, თუ რატომ იწვევდა ეს პრობლემებს ბაიტების წერისას ESC პინ ძაბვების დასაყენებლად, ამიტომ ჩვენ შევცვალეთ ბრუკინის კოდი რაც შეიძლება ცოტა. ჩვენ ვფიქრობთ, რომ ეს კოდი ძალიან ახლოს არის ფუნქციურთან, მაგრამ თქვენი გარბენი შეიძლება განსხვავდებოდეს.

ნაბიჯი 14: მიიღეთ საჰაერო ხომალდი !! (Uno)

და კიდევ, ეს გენიალური კოდის მესამე ნაწილი ჯოპ ბროკინგის ნამუშევარია. სამივე კოდის ცვლილება მხოლოდ GPS მონაცემების Arduino– ში ინტეგრაციის მცდელობაშია.

როდესაც თქვენი პროპელერები მყარად არის მიმაგრებული ჩარჩოზე და ყველა კომპონენტი არის მიბმული, ჩამონტაჟებული ან სხვაგვარად დამონტაჟებული, ჩატვირთეთ ფრენის კონტროლერის კოდი თქვენს Arduino– ზე, შემდეგ გათიშეთ Arduino თქვენი კომპიუტერიდან.

ამოიღეთ თქვენი კვადკოპტერი გარეთ, ჩართეთ ბატარეა და ჩართეთ გადამცემი. სურვილისამებრ, თან იქონიეთ ლეპტოპი, რომელიც დაკავშირებულია თქვენს GPS მიმღებ მოწყობილობასთან, ასევე ვიდეო მიმღების დაყენებასა და მონიტორს. ჩატვირთეთ გადამცემი კოდი ხმელეთის Arduino– ზე, გახსენით თქვენი სერიული მონიტორი 9600 baud– ზე და უყურეთ GPS მონაცემების შემოდინებას.

ახლა თქვენ მზად ხართ ფრენისთვის. დააწექით გაზს ქვევით და გადაუხვიეთ მარცხნივ, რათა შეიარაღოთ კვადროპტოპი, შემდეგ კი ნაზად აწიეთ გრუნტი, რომ დაიძრა. დაიწყეთ დაბლა მიწაზე და ბალახის მსგავსად რბილ ზედაპირებზე, სანამ არ გახდებით კომფორტული.

ნახეთ ჩამონტაჟებული ვიდეო, სადაც აღფრთოვანებული ვფრინავთ თვითმფრინავზე, როდესაც პირველად შევძელით დრონისა და GPS– ის ერთდროულად მუშაობა.

ნაბიჯი 15: მიიღეთ საჰაერო ხომალდი !! (მეგა)

მეგას ESC კალიბრაციის კოდის გათიშვის გამო, ჩვენ ვერ შევძელით ფრენის კონტროლერის კოდის შექმნა ამ დაფისთვის. თუ თქვენ მიხვედით ამ წერტილამდე, მაშინ მე წარმომიდგენია, რომ თქვენ სულ მცირედ დაუპირისპირდით ESC კალიბრაციის კოდს, რათა ის მუშაობდეს მეგასთვის. ამიტომ, თქვენ მოგიწევთ ფრენის კონტროლერის კოდის მსგავსი ცვლილებები, როგორც ეს გააკეთეთ ბოლო ნაბიჯში. თუ ჩვენი ESC კალიბრაციის კოდი მეგასთვის ჯადოსნურად მუშაობს ყოველგვარი სხვა ცვლილებების გარეშე, მაშინ მხოლოდ რამდენიმე რამის გაკეთება მოგიწევთ საფონდო კოდის გასაკეთებლად, რომ ის ამ ნაბიჯზე იმუშაოს. თქვენ ჯერ უნდა გაიაროთ და შეცვალოთ PORTD– ის ყველა შემთხვევა PORTA– ით. ასევე, არ დაგავიწყდეთ DDRD– ის DDRA– ით შეცვლა. შემდეგ, თქვენ უნდა შეცვალოთ PORTA რეგისტრში ჩაწერილი ყველა ბაიტი ისე, რომ გააქტიურონ შესაბამისი ქინძისთავები. ამისათვის გამოიყენეთ ბაიტი B11000011, რომ დააყენოთ ქინძისთავები მაღალზე და B00111100 დააყენოთ ქინძისთავები დაბალზე. წარმატებებს გისურვებთ და გთხოვთ შეგვატყობინოთ, თუ წარმატებით დაფრინავთ მეგას გამოყენებით!

ნაბიჯი 16: როგორ მივედით იქ, სადაც ამჟამად ვართ მეგა დიზაინით

ეს პროექტი ჩვენთვის, როგორც არდუინოს და ელექტრონიკის ჰობის დამწყებთათვის, უდიდესი სასწავლო გამოცდილება იყო. ამიტომ, ჩვენ შევიტანთ საგას ყველაფრისა, რაც გვემუქრება GPS– ის მცდელობისას, რათა ჩართოთ ჯოპ ბროკინგის კოდი. იმის გამო, რომ ბროკინგის კოდი არის ძალიან საფუძვლიანი და ბევრად უფრო რთული, ვიდრე ყველაფერი, რასაც ჩვენ ვწერდით, ჩვენ გადავწყვიტეთ მისი რაც შეიძლება მცირე ზომის შეცვლა. ჩვენ შევეცადეთ გვექცია GPS ფარი, რომ გაეგზავნა მონაცემები არდუინოში და შემდეგ არდუინომ მოგვაწოდა ეს ინფორმაცია HC12 გადამცემით, ფრენის კოდისა და გაყვანილობის არანაირად შეცვლის გარეშე. მას შემდეგ, რაც გადავხედეთ ჩვენი Arduino Uno– ს სქემებს და გაყვანილობას, რომ გაერკვია, რა ქინძისთავები იყო შესაძლებელი, ჩვენ შევცვალეთ GPS გადამცემი კოდი, რომელსაც ვიყენებდით არსებული დიზაინის ირგვლივ მუშაობისთვის. შემდეგ ჩვენ გამოვცადეთ, რომ დავრწმუნდეთ, რომ ყველაფერი მუშაობს. ამ მომენტში მოვლენები პერსპექტიული ჩანდა.

შემდეგი ნაბიჯი იყო კოდის ინტეგრირება, რომელიც ჩვენ ახლახან შევიცვალეთ და გამოვცადეთ ბროკინგის ფრენის კონტროლერთან ერთად. ეს არ იყო ძალიან რთული, მაგრამ ჩვენ სწრაფად შევხვდით შეცდომას. ბროკინგის ფრენის კონტროლერი ეყრდნობა Arduino Wire და EEPROM ბიბლიოთეკებს მაშინ, როდესაც ჩვენი GPS კოდი იყენებდა როგორც პროგრამული სერიული ბიბლიოთეკას, ასევე Arduino GPS ბიბლიოთეკას. იმის გამო, რომ მავთულის ბიბლიოთეკა მიუთითებს პროგრამული უზრუნველყოფის სერიულ ბიბლიოთეკაზე, ჩვენ შევეჯახეთ შეცდომას, სადაც კოდი არ შედგენილია, რადგან იყო „მრავალი განმარტება _ ვექტორი 3_ისთვის“, რაც არ უნდა იყოს ეს. Google- ის დათვალიერების და ბიბლიოთეკების დათვალიერების შემდეგ, საბოლოოდ მივხვდით, რომ ბიბლიოთეკის ამ კონფლიქტმა შეუძლებელი გახადა ამ კოდების ერთობლივი გამოყენება. ასე რომ, ჩვენ ალტერნატივების ძებნა დავიწყეთ.

ჩვენ აღმოვაჩინეთ, რომ ბიბლიოთეკების ერთადერთი კომბინაცია, რომელმაც შეცდომა არ მოგვიტანა, იყო სტანდარტული GPS ბიბლიოთეკის გადაყვანა neoGPS– ზე და შემდეგ AltSoftSerial პროგრამული უზრუნველყოფის სერიის ნაცვლად. ამ კომბინაციამ იმუშავა, თუმცა AltSoftSerial– ს შეუძლია იმუშაოს მხოლოდ სპეციფიკური ქინძისთავებით, რომლებიც არ იყო ხელმისაწვდომი ჩვენს დიზაინში. ეს არის ის, რაც მიგვიყვანს მეგას გამოყენებამდე. Arduino Megas– ს აქვს მრავალი ტექნიკური სერიული პორტი, რაც იმას ნიშნავს, რომ ჩვენ შეგვიძლია ბიბლიოთეკის კონფლიქტის გვერდის ავლით, საერთოდ არ დაგვჭირდეს პროგრამული სერიული პორტების გახსნა.

თუმცა, როდესაც ჩვენ დავიწყეთ მეგას გამოყენება, ჩვენ სწრაფად მივხვდით, რომ პინის კონფიგურაცია განსხვავებული იყო. ქინძისთავები Uno– ზე, რომლებსაც აქვთ შეფერხებები, განსხვავდება მეგაზე. ანალოგიურად, SDA და SCL ქინძისთავები იყო სხვადასხვა ადგილას. მას შემდეგ, რაც შეისწავლეთ პინ დიაგრამები თითოეული ტიპის Arduino– სთვის და დაარეგისტრირეთ კოდში მითითებული რეგისტრები, ჩვენ შევძელით ფრენის დაყენების კოდის გაშვება მხოლოდ მინიმალური ხელახალი გაყვანილობით და პროგრამული უზრუნველყოფის ცვლილებების გარეშე.

ESC კალიბრაციის კოდი არის ის, სადაც დავიწყეთ პრობლემები. ჩვენ ამას მოკლედ შევეხეთ ადრე, მაგრამ ძირითადად კოდი იყენებს პინის რეგისტრატორებს ESC– ების გასაკონტროლებლად გამოყენებული ქინძისთავების დასარეგულირებლად. ეს ართულებს კოდის კითხვას, ვიდრე სტანდარტული pinMode () ფუნქციის გამოყენებას; თუმცა, ის ააქტიურებს კოდს უფრო სწრაფად და ააქტიურებს ქინძისთავებს ერთდროულად. ეს მნიშვნელოვანია, რადგან ფრენის კოდი გადის საგულდაგულოდ დადგენილ მარყუჟში. არდუინოს შორის pin განსხვავებების გამო, ჩვენ გადავწყვიტეთ გამოვიყენოთ პორტი რეგისტრი A მეგაზე. თუმცა, ჩვენს ტესტირებაში, ყველა ქინძისთავმა არ მოგვცა იგივე გამომავალი ძაბვა, როდესაც უთხრეს, რომ მაღალი იყოს. ზოგიერთ ქინძისთავს ჰქონდა გამომუშავება დაახლოებით 4.90 ვ, ზოგმა კი 4.95 ვ. როგორც ჩანს, ESC– ები, რომლებიც ჩვენ გვაქვს, გარკვეულწილად დახვეწილია და, შესაბამისად, ისინი მხოლოდ მაშინ იმუშავებენ სწორად, როდესაც ჩვენ ვიყენებთ ქინძისთავებს უფრო მაღალი ძაბვით. ამის შემდეგ იძულებული გავხდით შევცვალოთ ბაიტები, რომლებიც ჩვენ დავწერეთ A– ს რეგისტრაციისათვის ისე, რომ ჩვენ ვსაუბრობთ სწორ ქინძისთავებზე. ამის შესახებ მეტი ინფორმაციაა ESC დაკალიბრების განყოფილებაში.

ეს არის დაახლოებით იმდენად, რამდენადაც ჩვენ მივიღეთ პროექტის ამ ნაწილში. როდესაც ჩვენ წავედით ამ შეცვლილი ESC კალიბრაციის კოდის შესამოწმებლად, რაღაც შემცირდა და ჩვენ დავკარგეთ ურთიერთობა ჩვენს არდუინოსთან. ჩვენ ძალიან დავინტერესდით ამით, რადგან ჩვენ არ გვცვლია არცერთი გაყვანილობა. ამან გვაიძულა უკან დავიხიოთ და გავაცნობიეროთ, რომ ჩვენ გვქონდა მხოლოდ რამდენიმე დღე საფრენი თვითმფრინავის ასაღებად, რამდენიმე კვირის განმავლობაში ჩვენი შეუთავსებელი ნაწილების ერთმანეთთან შეთავსების მცდელობის შემდეგ. ამიტომ ჩვენ უკან დავიხიეთ და შევქმენით უმარტივესი პროექტი Uno– სთან ერთად. თუმცა, ჩვენ მაინც ვფიქრობთ, რომ ჩვენი მიდგომა ახლოს არის მეგასთან მუშაობას ცოტა მეტი დროით.

ჩვენი მიზანია ის დაბრკოლებების ეს ახსნა, რაც ჩვენ შეგვხვდა, დაგეხმაროთ, თუ თქვენ მუშაობთ ბროკინგის კოდის შეცვლაზე. ჩვენ ასევე არასოდეს მოგვეცა შანსი ვცადოთ ნებისმიერი ავტონომიური კონტროლის ფუნქციის კოდირება GPS- ის საფუძველზე. ეს არის ის, რაც თქვენ უნდა გაარკვიოთ მეგაზე სამუშაო თვითმფრინავის შექმნის შემდეგ. თუმცა, Google– ის წინასწარი კვლევებიდან ჩანს, რომ კალმანის ფილტრის განხორციელება შეიძლება იყოს ყველაზე სტაბილური და ზუსტი გზა ფრენის პოზიციის დასადგენად. ჩვენ გირჩევთ, ცოტათი გამოიკვლიოთ, თუ როგორ ოპტიმიზირებს ეს ალგორითმი მდგომარეობის შეფასებებს. გარდა ამისა, წარმატებებს გისურვებთ და შეგვატყობინეთ, თუკი თქვენ იმაზე მეტს მიაღწევთ ვიდრე ჩვენ შევძელით!

გირჩევთ: