Mundarija:
- 1 -qadam: MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
- 2 -qadam: Joystick bazasini yaratish
- 3 -qadam: Arduino IDE -ni o'rnating
- 4 -qadam: Arduino dasturi
- 5 -qadam: Joystikni sinovdan o'tkazish
Video: DIY MPU-6050 USB joystik: 5 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Microsoft Flight Simulator 2020 yordamida men rejani amalga oshirish uchun klaviaturadan foydalanish qanchalik qiyinligini tezda angladim. Internetda qidirib, sotib olish uchun o'rtacha narxdagi joystikni topa olmadim. Aksariyat onlayn -chakana sotuvchilarda ularning zaxirasi yo'q edi. MS Flight Simulator va COVID 19 pandemiyasining ommabopligi joystikning barcha mavjud aktsiyalarini yo'q qildi. Mening yagona variantim - o'zim qurish.
Joystiklarning aksariyati joystikning burchaklarini aniqlash va x va y o'qlari haqidagi ma'lumotlarni kompyuterga yuborish uchun bazadagi potentsiometrlardan foydalanadi. Bu yaxshi ishlaydi, lekin joystikning qurilishini murakkablashtiradi. va vaqt o'tishi bilan. potentsiometrlar eskirishi mumkin. Potentsiometrlarni ishlatishning o'rniga, men akselerometr/giroskop sensorlar paneli yordamida tayoqning burchaklari bo'yicha kompyuterga ma'lumot yuborishga qaror qildim.
Har xil Arduino mikroprotsessorlari va turli xil sensorlarning mashhurligi tufayli Arduino loyihasini qurish narxi ancha arzon bo'ladi. Tez-tez ishlatiladigan akselerometr/giroskop sensorlar paneli-MPU-6050. Kanadada Amazonda uning narxi 7 dollar atrofida. Men Xitoydan eBay -dan ancha arzon narxda jo'natildim, lekin etkazib berish muddati 3 oy yoki undan ko'p edi.
www.amazon.ca/Neuftech-MPU-6050-3- Giroskop…
Har qanday Arduino kartasi ishlaydi, lekin ATmega32u4 asosidagi kartani ishlatish ancha oson bo'ladi, chunki ATmega32u4 mahalliy HID (inson interfeysi qurilmasi) qo'llab -quvvatlashiga ega. Kengash dasturlashtirilgandan so'ng, siz uni har qanday Windows 10 kompyuterida ishlatishingiz mumkin va qo'shimcha dasturiy ta'minot talab qilinmaydi. Windows 10 USB ulanganda avtomatik ravishda uni joystik deb tan oladi. (Boshqa turdagi Arduino platasidan foydalanish bu oddiy qurilish loyihasi uchun juda murakkab).
Men Arduino Leonardo taxtasini tanlayman. Amazondan $ 17CAN.
www.amazon.ca/KEYESTUDIO-Leonardo-Developm…
Ushbu 2 ta qurilma ushbu loyihaning asosiy talablari hisoblanadi. Kabellar va tugmachalar kabi boshqa kichik narsalar ham kerak. Ushbu loyihada men soddaligi uchun faqat 2 ta tugmani ishlatardim.
Joystik tutqichi PVX suv quvurining hurdasidan qilingan. Buni har qanday qisqa quvur bilan osongina almashtirish mumkin.
Joystikning asosi - bu yog'och bo'lagiga o'rnatilgan bahorli eshik to'xtash joyi.
Bahorgi eshik to'xtash joyini Home Depot -dan $ 2.83CANga sotib olish mumkin.
www.homedepot.ca/product/everbilt-spring-d…
1 -qadam: MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
MPU 6050 -da faqat 4 ta ulanish ishlatiladi. Ular VCC, GND, SCL va SDA deb etiketlanadi.
Arduino Leonardodagi VCC -ni 5v yoki 3.3v ga ulang. (MPU 6050 5v yoki 3.3v ni ishlatishi mumkin. Muhim emas)
GND ni Arduino Leonardodagi istalgan GND ga ulang.
SCL -ni SCL -ga Arduino Leonardoda ulang.
Arduino Leonardoda SDA -ni SDA -ga ulang.
Buning uchun men faqat 2 ta tugmani ishlataman.
Birinchi tugma joystik markazini tiklash uchun ishlatiladi, bu misolda tugmachaning bir uchi GND ga, bir uchi esa PIN 13 ga ulangan.
Ikkinchi tugma joystik tugmasi sifatida ishlatiladi. Bu misolda u PIN 9 va GND ga ulangan.
Loyihangizga kerak bo'lganda qo'shimcha tugmalarni qo'shishingiz mumkin.
2 -qadam: Joystick bazasini yaratish
Yog'och blokning bir qismini toping. Og'irligi qanchalik yaxshi bo'lsa. Bu joystick bazasini yanada barqaror qiladi.
Rasmda ko'rsatilgandek, yog'och blokning o'rtasiga buloqli eshik tiqinini burab qo'ying.
Joystik tutqichi sifatida qisqa trubadan foydalaning. Men PVX trubkasini qirib tashladim. Ipni aylantiring, shunda akselerometr/giroskop sensori trubaning tepasida joylashgan.
Keyin quvurni buloqli eshik tiqiniga qo'ying. Sensorni tepaga yopishtirish uchun men elektr tasmasini ishlatardim.
3 -qadam: Arduino IDE -ni o'rnating
Arduino IDE -ni yuklab oling va o'rnating.
Men bu loyiha uchun Arduino 1.8.13 dan foydalanardim. Arduino veb -muharriri ushbu loyiha uchun ham ishlatilishi mumkin.
2 ta kutubxona ishlatiladi.
1. MPU6050_tockn by tockn
github.com/Tockn/MPU6050_tockn
yoki uni "Kutubxonani boshqarish" menyusidan topishingiz mumkin.
2. Metyu Xeyronimus tomonidan "Joystik" kutubxonasi
github.com/MHeironimus/ArduinoJoystickLibr…
Bu hozircha faqat GitHub veb -saytida mavjud.
Yuklab olish kodini bosing va ZIP -ni yuklab oling. ZIP faylini Arduino kutubxonalari katalogiga chiqaring.
Menimcha, bu E: / PinChung / Documents / Arduino / kutubxonalari
4 -qadam: Arduino dasturi
Pin_Joystick.inoni Arduino IDE -ga yuklang va kompilyatsiya qilib Leonardo taxtasiga yuklang.
Arduino Leonardo taxtasi tanlanganiga va port raqami o'ngdagi COM: asboblar menyusi ostida tanlanganligiga ishonch hosil qiling.
Men bir muncha vaqt payqadim, COM portining xato kodi bilan dasturni yuklab bo'lmadi. Kompilyatsiya paytida Leonardo taxtasida reset tugmasini bir necha marta bosish yordam berishi mumkin. Windows 10 -ni qayta ishga tushirish COM portini bo'shatishga yordam beradi.
Dastur Leonardo taxtasiga yuklangandan so'ng, Windows 10 avtomatik ravishda Leonardo Joystikni aniqlab olishi kerak. Windows 10 qidiruv satriga O'yin boshqaruvchilari buyrug'ini kiriting, USB o'yin boshqaruvchilarini sozlash -ni ishga tushiring.
Leonardo Joystick -ni tanlang va Xususiyatlar -ni bosing. Joystik harakati va 1 -sonli joystick tugmachasini Windows 10 olishi kerak.
Agar joystik markazlashtirilmagan bo'lsa, uni qo'yib yuborganingizda, biz tayyorlagan joystick markazini tiklash tugmasini bosing. USB o'yin boshqaruvchilari markazda joystik nuqtasini ko'rsatishi kerak. USB O'yin boshqaruvi dasturida joystikni kalibrlashning hojati yo'q.
Yon eslatma: Arduino Leonardo bilan tanish bo'lmaganlar uchun, qurilma joystik, sichqoncha yoki klaviatura sifatida sozlanganda, ketma -ket port ishlamaydi. Shunday qilib, "Serial.print ()" ishlamaydi. Bundan tashqari, MPU6050 i2c simli kutubxonasidan foydalanadi va SDA va SLC pinlaridan foydalanadi. Leonardoda SDA va SCL ikkala PIN 2 va PIN 3 ni oladi, shuning uchun bu 2 pinni boshqa hech narsa uchun ishlatmang.
5 -qadam: Joystikni sinovdan o'tkazish
Men uni Microsoft Flight Simulator 2020 da sinab ko'rdim va u juda yaxshi ishlaydi. Ba'zan joystickni o'chirish uchun markaziy tugmani bosishim kerak. Vaqt o'tishi bilan MPU6050 sensori biroz o'zgarishi mumkin.
Loyihaga ko'proq tugmachalarni qo'shish va gazni boshqarish moslamalarini qo'shish kabi ko'p imkoniyatlar mavjud. Umid qilamanki, bu boshqa xayolparastlarni narsalarning yangi usullarini kashf etishga ilhomlantiradi.
Tavsiya:
GoBabyGo: Joystik boshqariladigan minadigan avtomashina yasang: 10 qadam (rasmlar bilan)
GoBabyGo: Djoystik boshqariladigan minadigan avtomashinani yarating: Delaver universiteti professori tomonidan asos solingan GoBabyGo-bu global tashabbus bo'lib, u oddiy odamlarga o'yinchoq minadigan mashinalarni qanday o'zgartirish kerakligini ko'rsatib beradi, shuning uchun ularni harakatchanligi cheklangan bolalar ishlatishi mumkin. Oyoq pedalini almashtirishni o'z ichiga olgan loyiha
Analog joystik yordamida 2 ta servo boshqaruv: 5 qadam (rasmlar bilan)
Analog Joystick yordamida 2 ta servolarni boshqarish: Salom bolalar, bu mening birinchi ko'rsatmam va men bu maqolada Arduino UNO yordamida servolarni boshqarish uchun Analog Joystikdan qanday foydalanishni aytib beraman. Men buni iloji boricha sodda tushuntirishga harakat qilaman. u
Joystik bilan boshqariladigan g'ildirakli stul to'siqlarni kuzatuvchi: 3 qadam (rasmlar bilan)
Joystik bilan boshqariladigan nogironlar aravachasi to'siqlarni kuzatuvchi: Jismoniy nogironlarni xavfsiz boshqarishni osonlashtirish uchun yo'lda mavjud bo'lgan to'siqlarni kuzatish uchun ultratovush sensori ishlatiladi. Joystikning harakatiga asoslanib, dvigatellar nogironlar aravachasini istalgan to'rt yo'nalishda va har bir yo'nalishda tezlik bilan boshqaradi
RC Tx moduli USB -joystik sifatida: 6 qadam
RC Tx moduli USB -joystik sifatida: Bu standart RC transmitterlari bilan ishlaydigan va USB -joystik vazifasini bajaruvchi transmitter modulini ishlab chiqarishga bag'ishlangan. U uzatuvchi yuboradigan va o'zgartiradigan PPM signalini izohlaydi
Kichik USB joystik: 5 qadam (rasmlar bilan)
Kichik USB -joystik: bu oddiy USB -joystikni qanday yasashni ko'rsatib beradi