Სარჩევი:

DIY MPU-6050 USB ჯოისტიკი: 5 ნაბიჯი
DIY MPU-6050 USB ჯოისტიკი: 5 ნაბიჯი

ვიდეო: DIY MPU-6050 USB ჯოისტიკი: 5 ნაბიჯი

ვიდეო: DIY MPU-6050 USB ჯოისტიკი: 5 ნაბიჯი
ვიდეო: Usb 3D Mouse Using Arduino and Mpu6050 Accelerometer #programming #arduino #arduinotutorial 2024, ნოემბერი
Anonim
DIY MPU-6050 USB ჯოისტიკი
DIY MPU-6050 USB ჯოისტიკი

Microsoft Flight Simulator 2020 -ით სწრაფად მივხვდი, რამდენად რთულია კლავიატურის გამოყენება გეგმის განსახორციელებლად. ინტერნეტში ძებნისას მე ვერ ვიპოვე გონივრული ფასის ჯოისტიკი შესყიდვისთვის. ონლაინ საცალო ვაჭრობის უმეტესობას ჰქონდა მათი მარაგი. MS Flight Simulator– ის და COVID 19 პანდემიის პოპულარობამ წაშალა ჯოისტიკების ყველა არსებული მარაგი. ჩემი ერთადერთი ვარიანტი იყო საკუთარი თავის აშენება.

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

Arduino– ს სხვადასხვა მიკროპროცესორების და სხვადასხვა სენსორების პოპულარობით, Arduino– ს პროექტის მშენებლობის ღირებულება გაცილებით ხელმისაწვდომი ხდება. ერთ-ერთი ყველაზე ხშირად გამოყენებული ამაჩქარებელი/გიროსკოპის სენსორული დაფა არის MPU-6050. კანადაში, ამაზონში $ 7CAN ღირს. მე მივიღე eBay– დან ჩინეთიდან გაცილებით ნაკლები, მაგრამ გადაზიდვის დრო იყო 3 თვე ან მეტი.

www.amazon.ca/Neuftech-MPU-6050-3-Gyroscop…

Arduino– ს ნებისმიერი დაფა იმუშავებს, მაგრამ ATmega32u4 დაფაზე დაფუძნებული გამოყენება გაცილებით მარტივი იქნება, რადგან ATmega32u4– ს აქვს მშობლიური HID (ადამიანის ინტერფეისის მოწყობილობა) მხარდაჭერა. დაფის დაპროგრამების შემდეგ შეგიძლიათ გამოიყენოთ იგი Windows 10 კომპიუტერზე და არ გჭირდებათ დამატებითი პროგრამული უზრუნველყოფა. Windows 10 ავტომატურად აღიარებს მას როგორც ჯოისტიკას, როდესაც USB ჩართულია. (სხვა ტიპის Arduino დაფის გამოყენება ძალიან რთულია ამ მარტივი მშენებლობის პროექტისათვის).

მე ვირჩევ არდუინო ლეონარდოს დაფას. $ 17CAN ამაზონიდან.

www.amazon.ca/KEYESTUDIO-Leonardo-Developm…

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

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

ჯოისტიკის საფუძველია ხის ნაჭერზე დაფიქსირებული საგაზაფხულო კარის გაჩერება.

საგაზაფხულო კარის გაჩერება შესაძლებელია Home Depot– დან 2,83 დოლარად.

www.homedepot.ca/product/everbilt-spring-d…

ნაბიჯი 1: MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან

MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან
MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან
MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან
MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან
MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან
MPU6050 და Push ღილაკების დაკავშირება Arduino Leonardo დაფასთან

MPU 6050 -ზე გამოიყენება მხოლოდ 4 კავშირი. მათ აქვთ წარწერა VCC, GND, SCL და SDA.

დაუკავშირეთ VCC 5v ან 3.3v არდუინო ლეონარდოზე. (MPU 6050– ს შეუძლია გამოიყენოს ან 5 ვ, ან 3.3 ვ. მნიშვნელობა არ აქვს)

დაუკავშირეთ GND ნებისმიერ GND– ს Arduino Leonardo– ზე.

შეაერთეთ SCL SCL– ს არდუინო ლეონარდოსთან.

დაუკავშირეთ SDA SDA– ს Arduino Leonardo– ზე.

ამ სადემონსტრაციო მიზნით მე მხოლოდ 2 ღილაკს ვიყენებ.

პირველი ღილაკი გამოიყენება ჯოისტიკის ცენტრის გადასაყენებლად. ამ მაგალითში, ღილაკის ერთი ბოლო უკავშირდება GND- ს და ერთი ბოლო PIN 13 -ს.

მეორე ღილაკი გამოიყენება როგორც ჯოისტიკის ღილაკი. ამ მაგალითში ის დაკავშირებულია PIN 9 -თან და GND- თან.

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

ნაბიჯი 2: ჯოისტიკის ბაზის მშენებლობა

ჯოისტიკის ბაზის მშენებლობა
ჯოისტიკის ბაზის მშენებლობა
ჯოისტიკის ბაზის მშენებლობა
ჯოისტიკის ბაზის მშენებლობა
ჯოისტიკის ბაზის მშენებლობა
ჯოისტიკის ბაზის მშენებლობა

იპოვეთ ხის ბლოკის ნაჭერი. რაც უფრო მძიმეა მით უკეთესი. ის ჯოისტიკების ბაზას უფრო სტაბილურს გახდის.

მიამაგრეთ გაზაფხულის კარის საცობი ხის ბლოკის ცენტრში, როგორც ეს ნაჩვენებია სურათზე.

ჯოისტიკის სახელურად გამოიყენეთ მოკლე მილის ნაჭერი. მე გამოვიყენე ნაკაწრი PVC მილი. მიჰყევით მავთულს ისე, რომ ამაჩქარებელი/გიროსკოპის სენსორი ზის მილის თავზე.

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

ნაბიჯი 3: დააინსტალირეთ Arduino IDE

ჩამოტვირთეთ და დააინსტალირეთ Arduino IDE.https://www.arduino.cc/en/Main/Software

მე გამოვიყენე Arduino 1.8.13 ამ პროექტისთვის. Arduino ვებ რედაქტორი შეიძლება გამოყენებულ იქნას ამ პროექტისთვისაც.

გამოიყენება 2 ბიბლიოთეკა.

1. MPU6050_tockn მიერ tockn

github.com/Tockn/MPU6050_tockn

ან შეგიძლიათ იპოვოთ "ბიბლიოთეკის მართვა" მენიუში.

2. ჯოისტიკის ბიბლიოთეკა მათე ჰეირონიმუსის მიერ

github.com/MHeironimus/ArduinoJoystickLibr…

ეს ამჟამად ხელმისაწვდომია მხოლოდ GitHub ვებსაიტზე.

დააჭირეთ ჩამოტვირთვის კოდს და ჩამოტვირთეთ ZIP. ამოიღეთ ZIP ფაილი თქვენი Arduino ბიბლიოთეკების დირექტორიაში.

ჩემს შემთხვევაში, ეს არის E: / PinChung / Documents / Arduino / ბიბლიოთეკები

ნაბიჯი 4: Arduino პროგრამა

ჩატვირთეთ Pin_Joystick.ino Arduino IDE– ზე და შეადგინეთ და ატვირთეთ ლეონარდოს დაფაზე.

დარწმუნდით, რომ არდუინო ლეონარდოს დაფა არჩეულია და პორტის ნომერი შერჩეულია მარჯვნივ COM: ინსტრუმენტების მენიუში.

გარკვეული პერიოდი შევამჩნიე, რომ პროგრამის ატვირთვა შეუძლებელია COM პორტის შეცდომის კოდით. ლეონარდოს დაფაზე გადატვირთვის ღილაკის დაჭერა რამდენჯერმე შეიძლება დაგეხმაროს. Windows 10 -ის გადატვირთვამ ასევე შეიძლება დაგეხმაროთ COM პორტის განთავისუფლებაში.

მას შემდეგ რაც პროგრამა აიტვირთება ლეონარდოს დაფაზე, Windows 10 -მა ავტომატურად უნდა აღმოაჩინოს ლეონარდო ჯოისტიკი. Windows 10 საძიებო ზოლში ჩაწერეთ Game Controllers, გაუშვით USB Game Controllers- ის დაყენება.

აირჩიეთ ლეონარდო ჯოისტიკი და დააწკაპუნეთ თვისებებზე. ჯოისტიკის მოძრაობა და ჯოისტიკი #1 ღილაკი უნდა აიყვანოს Windows 10 -მა.

თუ ჯოისტიკი არ არის ორიენტირებული, როდესაც მას გაუშვებთ, დააწკაპუნეთ ჩვენ მიერ გაკეთებული ჯოისტიკის ცენტრის გადატვირთვის ღილაკზე. USB თამაშის კონტროლერებმა უნდა აჩვენონ ჯოისტიკის წერტილი ცენტრში. არ არის საჭირო ჯოისტიკის დაკალიბრება USB Game Controller პროგრამაში..

გვერდითი შენიშვნა: მათთვის, ვინც არ იცნობს არდუინო ლეონარდოს, როდესაც მოწყობილობა კონფიგურირებულია როგორც ჯოისტიკი, მაუსი ან კლავიატურა, სერიული პორტი არ იმუშავებს. ასე რომ, "Serial.print ()" არ იმუშავებს. ასევე, MPU6050 იყენებს i2c მავთულის ბიბლიოთეკას და იყენებს SDA და SLC ქინძისთავებს. ლეონარდოზე, SDA და SCL იკავებენ როგორც PIN 2 -ს, ასევე PIN 3 -ს, ასე რომ არ გამოიყენოთ ეს 2 პინი სხვა არაფერში.

ნაბიჯი 5: ჯოისტიკის გამოცდა

მე გამოვცადე ის Microsoft Flight Simulator 2020 -ზე და ის ძალიან კარგად მუშაობს. მე ზოგჯერ უნდა დავაჭირო ცენტრის ღილაკს ნულოვანი ჯოისტიკი. MPU6050 სენსორის მნიშვნელობა შეიძლება დროთა განმავლობაში ოდნავ ცვიოდეს.

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

გირჩევთ: