Mündəricat:
- Addım 1: MPU6050 və düymələri Arduino Leonardo lövhəsinə bağlayın
- Addım 2: Joystick bazasının qurulması
- Addım 3: Arduino IDE qurun
- Addım 4: Arduino Proqramı
- Addım 5: Joystickin sınanması
Video: DIY MPU-6050 USB Joystick: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Microsoft Flight Simulator 2020 ilə bir planı yerinə yetirmək üçün klaviaturadan istifadə etməyin nə qədər çətin olduğunu tez anladım. İnternetdə axtarıb almaq üçün münasib qiymətli joystick tapa bilmədim. Onlayn pərakəndə satıcıların əksəriyyəti stoklarında yox idi. MS Uçuş Simulyatoru və COVID 19 pandemiyasının populyarlığı bütün mövcud joystick ehtiyatlarını yox etdi. Mənim yeganə seçimim özüm tikmək idi.
Oradakı joysticklərin çoxu bazistdəki potensiometrlərdən istifadə edərək joystickin açılarını təyin edir və x və y ox məlumatlarını kompüterə göndərir. Bu yaxşı işləyir, amma joystickin qurulmasını çətinləşdirir. və zaman keçdikcə. potansiyometrlər köhnəlir. Potensiometrlərdən istifadə etmək əvəzinə çubuğun bucaqları haqqında məlumatı kompüterə göndərmək üçün akselerometr/giroskop sensor lövhəsi ilə getməyə qərar verdim.
Müxtəlif Arduino mikroprosessorlarının və müxtəlif sensorların populyarlığı ilə bir Arduino layihəsinin qurulması dəyəri daha əlverişli olur. Ən çox istifadə olunan akselerometr/giroskop sensor lövhələrindən biri də MPU-6050-dir. Kanadada, Amazonda təxminən 7CAN dollara başa gəlir. Çindən daha az göndərilən eBay -dan aldım, amma göndərmə müddəti 3 ay və ya daha çox idi.
www.amazon.ca/Neuftech-MPU-6050-3-Gyroscop…
Hər hansı bir Arduino lövhəsi işləyəcək, ancaq ATmega32u4 əsaslı lövhədən istifadə etmək daha asan olacaq, çünki ATmega32u4 yerli HID (İnsan İnterfeysi Cihazı) dəstəyinə malikdir. Lövhə proqramlaşdırıldıqdan sonra onu hər hansı bir Windows 10 PC -də istifadə edə bilərsiniz və əlavə proqram tələb olunmur. USB qoşulduqda Windows 10 avtomatik olaraq joystick olaraq tanıyacaq. (Başqa tipli Arduino lövhələrinin istifadəsi bu sadə quruluş layihəsi üçün çox mürəkkəbdir).
Arduino Leonardo lövhəsini seçirəm. Amazondan $ 17CAN.
www.amazon.ca/KEYESTUDIO-Leonardo-Developm…
Bu 2 cihaz bu layihə üçün əsas tələblərdir. Kablolar və düymələr kimi digər kiçik əşyalar da lazımdır. Bu layihədə sadəlik üçün yalnız 2 düyməni istifadə etdim.
Joystick sapı PVC su borusundan hazırlanmışdır. Bu, hər hansı bir qısa sərt boru ilə asanlıqla əvəz edilə bilər.
Joystickin əsası taxta parçaya bərkidilmiş yaylı qapı dayanacağıdır.
Bahar qapı dayanacağı Home Depot -dan 2.83CAN dollara əldə edilə bilər.
www.homedepot.ca/product/everbilt-spring-d…
Addım 1: MPU6050 və düymələri Arduino Leonardo lövhəsinə bağlayın
MPU 6050 -də yalnız 4 əlaqə istifadə olunur. VCC, GND, SCL və SDA olaraq etiketlənir.
VCC -ni Arduino Leonardo'da 5v və ya 3.3v -ə qoşun. (MPU 6050 ya 5v, ya da 3.3v istifadə edə bilər. Fərq etməz)
GND -ni Arduino Leonardodakı hər hansı bir GND -yə bağlayın.
SCL -ni Arduino Leonardoda SCL -ə qoşun.
SDA -nı Arduino Leonardo'da SDA -ya bağlayın.
Bu nümayiş üçün yalnız 2 düyməni istifadə edirəm.
İlk basma düyməsi joystick mərkəzini sıfırlamaq üçün istifadə olunur. Bu nümunədə, düymənin bir ucu GND -yə, bir ucu isə PIN 13 -ə bağlıdır.
İkinci basma düyməsi joystick düyməsi kimi istifadə olunur. Bu nümunədə, PIN 9 və GND -yə bağlıdır.
Layihənizdə lazım olduqda əlavə düymələr əlavə edə bilərsiniz.
Addım 2: Joystick bazasının qurulması
Taxta blok parçası tapın. Nə qədər ağır olsa, bir o qədər yaxşıdır. Joystick bazasını daha sabit hala gətirəcək.
Şəkildə göstərildiyi kimi taxta blokun ortasındakı yaylı qapı tıxacını vidalayın.
Joystick sapı kimi qısa bir boru parçası istifadə edin. PVC bir borudan istifadə etdim. Akselerometr/giroskop sensoru borunun üstündə oturması üçün teli bükün.
Sonra borunu yay qapı tıxacının üzərinə qoyun. Sensorun üst hissəsinə yapışdırmaq üçün elektrik lentindən istifadə etdim.
Addım 3: Arduino IDE qurun
Arduino IDE -ni yükləyin və quraşdırın.
Bu layihə üçün Arduino 1.8.13 istifadə etdim. Arduino Web Editor bu layihə üçün də istifadə edilə bilər.
2 kitabxana istifadə olunur.
1. MPU6050_tockn by tockn
github.com/Tockn/MPU6050_tockn
və ya "Kitabxananı İdarə et" menyusunda tapa bilərsiniz.
2. Matthew Heironimus tərəfindən Joystick kitabxanası
github.com/MHeironimus/ArduinoJoystickLibr…
Bu, hazırda yalnız GitHub veb saytında mövcuddur.
Yükləmə kodunu vurun və ZIP yükləyin. ZIP faylını Arduino kitabxana qovluğuna çıxarın.
Mənim vəziyyətimdə E: / PinChung / Documents / Arduino / kitabxanalarıdır
Addım 4: Arduino Proqramı
Pin_Joystick.ino'yu Arduino IDE -yə yükləyin və tərtib edərək Leonardo lövhəsinə yükləyin.
Alətlər menyusunda Arduino Leonardo lövhəsinin seçildiyinə və port nömrəsinin sağ COM -da seçildiyinə əmin olun.
Bir müddət fərq etdim ki, COM portunun səhv kodu ilə proqram yüklənə bilmir. Tərtib edərkən Leonardo lövhəsindəki sıfırlama düyməsini bir neçə dəfə basmaq kömək edə bilər. Windows 10 -u yenidən başlatmaq da COM portunu boşaltmağa kömək edə bilər.
Proqram Leonardo lövhəsinə yükləndikdən sonra, Windows 10 Leonardo Joystick'i avtomatik olaraq aşkar etməlidir. Windows 10 axtarış çubuğuna Oyun Nəzarətçiləri yazın, USB Oyun Nəzarətçiləri qurun.
Leonardo Joystick seçin və Xüsusiyyətlər düyməsini basın. Joystick hərəkəti və 1 saylı joystick düyməsi Windows 10 tərəfindən alınmalıdır.
Joystick mərkəzdə deyilsə, onu buraxdığınız zaman, hazırladığımız joystick mərkəzini sıfırlayın. USB Oyun Nəzarətçiləri mərkəzdəki joystick nöqtəsini göstərməlidir. USB Oyun Nəzarətçisi proqramında joystickin kalibr edilməsinə ehtiyac yoxdur.
Yan Qeyd: Arduino Leonardo ilə tanış olmayanlar üçün cihaz joystick, siçan və ya klaviatura olaraq konfiqurasiya edildikdə, serial port işləməyəcək. Beləliklə, "Serial.print ()" işləməyəcək. Ayrıca, MPU6050 i2c tel kitabxanasından istifadə edir və SDA və SLC pinlərindən istifadə edir. Leonardoda, SDA və SCL həm PIN 2, həm də PIN 3 -ü götürür, buna görə də bu 2 sancağı başqa bir şey üçün istifadə etməyin.
Addım 5: Joystickin sınanması
Microsoft Flight Simulator 2020 -də sınadım və çox yaxşı işləyir. Joystick'i sıfırlamaq üçün bəzən orta düyməni basmalı oluram. MPU6050 sensorunun dəyəri zamanla bir qədər dəyişə bilər.
Daha çox düymələr və qaz tənzimləyiciləri əlavə etmək kimi layihəyə xərcləmək üçün bir çox imkanlar var. Ümid edirik ki, bu, digər tinkerləri şeylərin yeni yollarını kəşf etməyə ilhamlandıracaq.
Tövsiyə:
SIFIR GECİKMƏ USB JOYSTICK - AUTO ANALOG MODİFİKASİYASI: 5 Addım
SIFIR GECİKMƏ USB JOYSTICK - AUTO ANALOG MODİFİKASİYASI: Bu Sıfır Gecikmə USB Kodlayıcı True Analog Joystick Modifikasiyasına əlavə bir layihədir. Bu cihazı əlavə etməzdən əvvəl əvvəlki layihədə Kodlayıcını uğurla dəyişdirməli, sınamalı və kalibr etməlisiniz. Tamamlandıqda və işlədikdə
MPU-6000 və hissəcik fotonundan istifadə edərək hərəkət izlənməsi: 4 addım
MPU-6000 və Partikül Fotonundan istifadə edərək Hərəkət İzləmə: MPU-6000, 3 Eksenli akselerometr və 3 Eksenli giroskopu olan 6 Eksenli Hərəkət İzləmə Sensorudur. Bu sensor, obyektin 3ölçülü müstəvidə dəqiq mövqeyini və yerini səmərəli izləməyə qadirdir. İstifadə oluna bilər
MPU-6000 və Arduino Nano istifadə edərək hərəkət izləmə: 4 addım
MPU-6000 və Arduino Nano-dan istifadə edərək Hərəkət İzləmə: MPU-6000, 3 Eksenli akselerometr və 3 Eksenli giroskopu olan 6 Eksenli Hərəkət İzləmə Sensorudur. Bu sensor, obyektin 3ölçülü müstəvidə dəqiq mövqeyini və yerini səmərəli izləməyə qadirdir. İstifadə oluna bilər
USB Joystick olaraq RC Tx Modulu: 6 addım
USB Joystick Olaraq RC Tx Modulu: Bu təlimat, standart RC ötürücüləri ilə işləyən və USB joystick rolunu oynayan bir ötürücü modulu hazırlamaqla əlaqədardır. Transmitterin göndərdiyi və çevirdiyi PPM siqnalını şərh edir
MPU-6000 və Raspberry Pi istifadə edərək hərəkət izləmə: 4 addım
MPU-6000 və Raspberry Pi-dən istifadə edərək Hərəkət İzləmə: MPU-6000, 3 Eksenli akselerometr və 3 Eksenli giroskopu olan 6 Eksenli Hərəkət İzləmə Sensorudur. Bu sensor, obyektin 3ölçülü müstəvidə dəqiq mövqeyini və yerini səmərəli izləməyə qadirdir. İstifadə oluna bilər