Mundarija:

DIY MPU-6050 USB joystik: 5 qadam
DIY MPU-6050 USB joystik: 5 qadam

Video: DIY MPU-6050 USB joystik: 5 qadam

Video: DIY MPU-6050 USB joystik: 5 qadam
Video: Lesson 24: Smart Car Part 2: Moving Forwared, Reverse, left and right and Controling Speed of Car 2024, Iyul
Anonim
DIY MPU-6050 USB boshqaruv paneli
DIY MPU-6050 USB boshqaruv paneli

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

MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
MPU6050 va tugmachalarni Arduino Leonardo kartasiga ulash
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

Joystick bazasini qurish
Joystick bazasini qurish
Joystick bazasini qurish
Joystick bazasini qurish
Joystick bazasini qurish
Joystick bazasini qurish

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: