Სარჩევი:
- მარაგები
- ნაბიჯი 1: შეაგროვეთ მასალები
- ნაბიჯი 2: NRF მოდულის დაკავშირება არდუინოსთან
- ნაბიჯი 3: მოდით გადავიდეთ კოდირებაზე
- ნაბიჯი 4: ავტორის შენიშვნა
ვიდეო: გააკეთეთ თქვენი დრონის ჟესტი კონტროლირებად $ 10: 4 ნაბიჯში
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:17
ეს ინსტრუქცია არის სახელმძღვანელო თქვენი R/C თვითმფრინავის ჟესტებით კონტროლირებად თვითმფრინავად 10 დოლარად გადაქცევისთვის!
მე ვარ ადამიანი, რომელიც ძალიან შთაგონებულია სამეცნიერო ფანტასტიკური ფილმებით და ვცდილობ, რომ ტექნოლოგია აჩვენოს ფილმში რეალურ ცხოვრებაში. ეს პროექტი შთაგონებულია ორი ასეთი ფილმისგან: "STAR WARS: The Empire Strikes Back" და "Project Almanac". ორივე ფილმში თქვენ ხედავთ მფრინავ ობიექტს (X-wing Starship & R/C Drone), რომელსაც აკონტროლებდნენ მხოლოდ ხელის მოძრაობებით. ამან შთააგონა მსგავსი რამ გამეკეთებინა…
ცხადია, მე არ მაქვს X- ფრთა, ასე რომ, სამწუხაროდ, მე უნდა ვიმუშაო ჩემს მინი R/C Quadcopter– ით.
ასე რომ, გეგმა არის - იქნება ლეპტოპზე გამოსახულების დამუშავების სკრიპტი, რომელიც განუწყვეტლივ ეძებს ჩემს ხელს და თვალყურს ადევნებს მის პოზიციას ვიდეო ჩარჩოში. მას შემდეგ რაც მიიღებს ხელის კოორდინატებს, ის აგზავნის შესაბამის სიგნალს თვითმფრინავზე და ეს მოხდება ლეპტოპთან დაკავშირებული Arduino– ს გამოყენებით, ასევე NRF24L01 2.4GHz გადამცემი მოდულით, რომელსაც შეუძლია უშუალოდ დაუკავშირდეს ნებისმიერი R/C თვითმფრინავის მიმღებს. რა
მარაგები
- ლეპტოპი/დესკტოპის კომპიუტერი დაინსტალირებული ვებკამერით და პითონით. (მე ვიყენებ ჩემს W indows ლეპტოპს თავისი ჩაშენებული ვებკამერით და პითონით 2.7.14)
- ნებისმიერი R/C თვითმფრინავი მუშაობს 2.4Ghz სიხშირეზე. (JJRC H36 ჩემს შემთხვევაში)
- Arduino UNO თავისი პროგრამირების კაბელთან ერთად. (მე ვიყენებ მის კლონს, რადგან ის უფრო იაფია)
- NRF24L01 2.4GHz ანტენის უკაბელო გადამცემი მოდული. (ეს შევიძინე აქედან მხოლოდ 99 ფუნტად ($ 1.38))
- 3.3V ადაპტერის დაფა 24L01 უსადენო მოდულისთვის. (ეს შევიძინე აქედან მხოლოდ 49 ფუნტად (0.68 აშშ დოლარი))
- მამაკაცი ქალი მდედრის მავთულები x7
ნაბიჯი 1: შეაგროვეთ მასალები
ნაბიჯი 2: NRF მოდულის დაკავშირება არდუინოსთან
როგორც თქვენ გაქვთ ყველა ნაწილი, დავიწყოთ NRF მოდულის გაყვანილობა არდუინოსთან.
- პირველ რიგში, ჩადეთ NRF მოდული ადაპტერზე მოცემულ სლოტში. ამისათვის შეგიძლიათ მიმართოთ ზემოთ მოცემულ სურათს.
-
ამის შემდეგ, წაიყვანეთ მამაკაცი მდედრობითი ხაზებით და დაუკავშირეთ NRF ადაპტერი Arduino– ს შემდეგნაირად: (იხილეთ სქემის დიაგრამა ზემოთ)
- NRF ადაპტერის პინი - არდუინოს პინი
- VCC - 5 ვ
- GND - GND
- CE - ციფრული პინი 5
- CSN - ანალოგური პინი 1
- SCK - ციფრული პინი 4
- MO - ციფრული პინი 3
- MI - ანალოგური პინი 0
- IRQ - არ გამოიყენება
- კავშირის დასრულების შემდეგ, დაუკავშირეთ Arduino თქვენს კომპიუტერს Arduino პროგრამირების USB კაბელის გამოყენებით და თქვენ თითქმის დასრულებული ხართ.
ნაბიჯი 3: მოდით გადავიდეთ კოდირებაზე
ახლა აქ იწყება რთული ნაწილი … !!!
მე თვითონ არ გავაკეთე მთელი კოდი. სამაგიეროდ, მე ავიღე კოდის ნაწილები და ნაწილები სხვადასხვა დეველოპერებისგან და ყველა მათგანი ერთში შევიტანე მცირედი შესწორებით. ამრიგად, ყველა ორიგინალური შემქმნელის სათანადო კრედიტი მოცემულია წინ.
თქვენ შეგიძლიათ გადმოწეროთ აქ დართული ყველა კოდი და გახადოთ მუშაობა. წინააღმდეგ შემთხვევაში შეგიძლიათ მიხვიდეთ ჩემს Github საცავში, სადაც მუდმივად განვაახლებ უახლეს კოდს უკეთესი თვალთვალისთვის.
ხელით თვალყურის დევნება:
ამ პროექტში ხელით თვალთვალისთვის გამოიყენება ჰაარის კასკადის კლასიფიკატორი. ჰარის კასკადი გაწვრთნილია პოზიტიური გამოსახულების გადაფარვით უარყოფითი სურათების ნაკრებზე. და ეს გაწვრთნილი მონაცემები ჩვეულებრივ ინახება ".xml" ფაილებში. თქვენ შეგიძლიათ მიიღოთ კლასიფიკატორის ფაილები თითქმის ნებისმიერიდან ინტერნეტში ან თუნდაც შექმნათ თქვენი საკუთარი მსგავსი. ამ პროექტისათვის, რადგან ჩვენ გვჭირდებოდა ხელით ჟესტით კონტროლირებადი, მე გამოვიყენე მუშტის კლასიფიკატორი, სახელწოდებით "დახურული_ფრონტალური_პალმა. Xml", დამზადებული არავინდ ნამისისანის მიერ ჩემი ხელით გამოვლენისთვის. თქვენ შეგიძლიათ შეამოწმოთ ეს კოდი ჩემს რეპოში "hand_live.py" კოდის გაშვებით.
NRF24 კოდის არჩევა თქვენს თვითმფრინავზე:
თქვენი თვითმფრინავის მწარმოებლისა და მოდელის მიხედვით, შეგიძლიათ მიმართოთ Github საცავს - "nrf24_cx10_pc", რომელიც დამზადებულია პერი ცაოს მიერ, რათა აირჩიოს შესაბამისი Arduino კოდი, რომელიც შეესაბამება მის სიხშირეს. მან გააკეთა მშვენიერი გაკვეთილი, რომ გააკონტროლოს თავისი CX10 დრონი კომპიუტერზე.
როდესაც მე ვიყენებდი JJRC H36 უპილოტო საფრენი აპარატს, მე მივმართე სხვა Github საცავს - "nrf24_JJRC_H36_pc", რომელიც იყო ლუ ცორნიკის მიერ პერი ცაოს რეპოს ჩანგალი, რათა გააკონტროლა მისი JJRC H36 კომპიუტერზე.
არდუინოს მზადყოფნა:
ლუისის რეპო ჩემს Github– ს გადავაბარე, რომლის კლონირებაც შეგიძლიათ, თუ თქვენ მუშაობთ იმავე თვითმფრინავზე. თქვენ უნდა ატვირთოთ "nRF24_multipro.ino" კოდი ერთხელ თქვენს Arduino Uno- ში, რათა ის თქვენს Drone- თან დაწყვილდეს ყოველ ჯერზე, როდესაც ჩვენ ვიყენებთ ჩვენს პითონის სკრიპტს.
სერიული კომუნიკაციის ტესტირება:
იმავე რეპოს, თქვენ ასევე შეგიძლიათ იპოვოთ კოდი "serial_test.py", რომელიც შეიძლება გამოყენებულ იქნას არტუინოსთან პითონის სკრიპტის სერიული კომუნიკაციის შესამოწმებლად და თქვენი დრონი დაწყვილდება თუ არა. არ დაგავიწყდეთ შეცვალოთ COM პორტი კოდში თქვენი Arduino დაფის COM პორტის მიხედვით.
ყველაფრის ინტეგრირება ერთ კოდში:
ასე რომ, მე გავაერთიანე ყველა ეს კოდი სხვადასხვა დეველოპერების მიერ და გავაკეთე ჩემი საკუთარი კოდი "handserial.py". თუ თქვენ ზუსტად იმავეს აკეთებთ, რასაც მე ვაკეთებ ზუსტად იგივე თვითმფრინავით, მაშინ თქვენ შეგიძლიათ პირდაპირ გაუშვათ ეს კოდი და შემდეგ გააკონტროლოთ თქვენი დრონი ჰაერში მხოლოდ მუშტის მოძრაობით. კოდი პირველ რიგში აფიქსირებს მუშტს ვიდეოს ჩარჩოში. მუშტის Y- კოორდინატიდან გამომდინარე, კოდი აგზავნის საჰაერო ხომალდის მნიშვნელობას თვითმფრინავზე მაღლა ან ქვევით და ანალოგიურად მუშტის X- კოორდინატიდან გამომდინარე, კოდი აგზავნის აილერონის მნიშვნელობას თვითმფრინავზე, რათა ის წავიდეს მარცხნივ ან მარჯვნივ რა
ნაბიჯი 4: ავტორის შენიშვნა
არის 4 პუნქტი, რომელიც განსაკუთრებით მინდა აღვნიშნო ამ პროექტთან დაკავშირებით:
- როგორც ადრე იყო მითითებული, ეს კოდი არ არის მთლიანად ჩემი გაკეთებული, მაგრამ მე განუწყვეტლივ ვმუშაობ მასზე და განვაახლებ კოდს ჩემი Github საცავის უკეთესი თვალთვალისთვის. ასე რომ, ნებისმიერი შეკითხვის ან განახლებისთვის შეგიძლიათ ეწვიოთ საცავს ან დამიკავშირდეთ Instagram- ზე.
- ამჟამად, ჩვენ ვიყენებთ ლეპტოპის ვებკამერას, რომელიც არ იძლევა თვითმფრინავის ხედვის პერსპექტივას, მაგრამ საჭიროების შემთხვევაში, თვითმფრინავზე დამონტაჟებული კამერები ასევე შეიძლება გამოყენებულ იქნას თვალთვალის მიზნით. ეს ხელს შეუწყობს უკეთესი ხედვის და საბოლოოდ უკეთესი კონტროლის საშუალებას.
- ამ პროექტისთვის მე ვიყენებ JJRC H36 უპილოტო საფრენი აპარატს, რომელიც არის ერთ -ერთი ყველაზე იაფი თვითმფრინავი ბაზარზე, შესაბამისად მას არ გააჩნია გიროსკოპული სტაბილურობა. ეს არის მიზეზი იმისა, რომ თქვენ შეიძლება იგრძნოთ, რომ ვიდეოში მოძრაობა არამდგრადია, მაგრამ თუ თქვენ იყენებთ ღირსეული ხარისხის თვითმფრინავს კარგი სტაბილურობით, თქვენ არ შეხვდებით ამ პრობლემას.
- მე მინდოდა კომპიუტერული ხედვისა და თვითმფრინავების კონტროლის ირგვლივ გამერკვია, ამიტომ დავიწყე ეს პროექტი. მაგრამ კომპიუტერულ ხედვაზე მუშაობის შემდეგ ვგრძნობ, რომ ეს არ არის ოპტიმალური გადაწყვეტა თვითმფრინავის კონტროლისთვის. ამრიგად, მე ვგეგმავ ხელთათმანების ტიპის მოწყობილობის დამზადებას გირო სენსორით, რომელიც მომავალში დრონს გააკონტროლებს. ასე რომ დაელოდეთ განახლებებს…
თუ მოგეწონათ ეს გაკვეთილი, გთხოვთ მოიწონეთ და გააზიარეთ და ასევე მიეცით ხმა.
ჯერჯერობით სულ ეს არის.. გნახავთ შემდეგ ჯერზე…
გირჩევთ:
როგორ გააკეთოთ ჟესტი კონტროლირებული როვერი: 4 ნაბიჯი
როგორ გააკეთოთ ჟესტი კონტროლირებული როვერი: აქ არის ინსტრუქცია ჟესტებით კონტროლირებადი როვერის (ტელე ოპერაციული როვერის) შესაქმნელად. იგი შედგება როვერის ერთეულისგან, რომელსაც აქვს ბორტზე შეჯახების თავიდან აცილების სენსორი. გადამცემი იმის ნაცვლად, რომ მოუხერხებელი პულტი იყოს, არის მაგარი ხელთათმანი, რომლის ტარებაც შეიძლება
ჟესტი მეტყველების/ტექსტის გადასაყვანად ხელთათმანი: 5 ნაბიჯი
მეტყველების ჟესტი/ტექსტის ხელთათმანის გარდაქმნა: ამ პროექტის განხორციელების იდეა/ბიძგი იყო დაეხმაროს ადამიანებს, რომლებსაც უჭირთ მეტყველების კომუნიკაცია და კომუნიკაცია ხელის ჟესტების გამოყენებით ან უფრო პოპულარულია როგორც ამერიკული ხელმოწერის ენა (ASL). ეს პროექტი შეიძლება იყოს ნაბიჯი წინსვლისკენ
როგორ გამოვიყენოთ ჟესტი APDS9960 SkiiiD– ით: 9 ნაბიჯი
როგორ გამოვიყენოთ ჟესტი APDS9960 SkiiiD– ით: სახელმძღვანელო განავითაროს Collision Switch XD206 skiiiD– ით
VGA მონიტორის სპლიტერის გადაყვანა კომპიუტერის კონტროლირებად მონიტორის გადამრთველში: 4 ნაბიჯი
VGA მონიტორის გამყოფის კომპიუტერის კონტროლირებადი მონიტორის გადამრთველად გადაქცევა: ეს გასაგებია, თუ როგორ შეიძლება იაფი (20 ევრო) VGA მონიტორის გამყოფი, რომელიც გამოიყენება ერთი კომპიუტერის ორ მონიტორთან დასაკავშირებლად, კომპიუტერის კონტროლირებადი მონიტორის გადამრთველად. საბოლოო მოწყობილობა კონტროლდება პარალელური პორტის საშუალებით და იძლევა საშუალებას
გააკეთეთ პატარა დინამოს ფანარი უსარგებლოდან 2 ნაბიჯში
გააკეთეთ პატარა დინამოს ფანარი უსარგებლოდან 2 ნაბიჯში: უსარგებლოების ძალა! აქ არის რაღაც მართლაც მაგარი მაგნიტოფონი/ CD პლეერი და LED. ნებისმიერი ძველი LED იმუშავებს, მაგრამ ის გაცილებით ნათელი იქნება, თუკი იპოვით 5 მმ თეთრს. თითქმის ყველა LED ნათურა მუშაობს ბედნიერად (და სამუდამოდ)