İçindekiler:
- Adım 1: MPU6050 ve Basmalı Düğmeleri Arduino Leonardo Kartına Bağlama
- 2. Adım: Joystick Tabanını Oluşturma
- Adım 3: Arduino IDE'yi kurun
- Adım 4: Arduino Programı
- Adım 5: Joystick'i Test Etme
Video: DIY MPU-6050 USB Kumanda Kolu: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Microsoft Flight Simulator 2020 ile bir planı uçurmak için klavye kullanmanın ne kadar zor olduğunu hemen anladım. İnternette araştırdığımda, satın almak için makul fiyatlı bir joystick bulamadım. Çoğu çevrimiçi perakendecinin stokları tükendi. MS Flight Simulator ve COVID 19 pandemisinin popülaritesi, mevcut tüm joystick stoklarını sildi. Tek seçeneğim kendim bir tane inşa etmekti.
Dışarıdaki joysticklerin çoğu, joystick'in açılarını belirlemek ve x ve y ekseni bilgilerini bilgisayara geri göndermek için tabandaki potansiyometreleri kullanır. Bu iyi çalışıyor ancak joystick'in yapısını zorlaştırıyor. ve zamanla. potansiyometreler aşınabilir. Potansiyometre kullanmak yerine, çubuğun açıları hakkında bilgisayara bilgi göndermek için ivmeölçer/jiroskop sensör kartı ile gitmeye karar verdim.
Çeşitli Arduino mikroişlemcilerinin ve çeşitli sensörlerin popülaritesi ile bir Arduino projesi oluşturmanın maliyeti çok daha uygun hale geliyor. Yaygın olarak kullanılan ivmeölçer/jiroskop sensör kartlarından biri MPU-6050'dir. Kanada'da, Amazon'da yaklaşık 7 CAN maliyeti. Çin'den çok daha ucuza eBay'den benimkini aldım, ancak nakliye süresi 3 ay veya daha uzundu.
www.amazon.ca/Neuftech-MPU-6050-3-Gyroscop…
Herhangi bir Arduino kartı işe yarayabilir, ancak ATmega32u4 tabanlı kartı kullanmak çok daha basit olacaktır, çünkü ATmega32u4 yerel HID (İnsan Arayüzü Aygıtı) desteğine sahiptir. Kart programlandıktan sonra herhangi bir Windows 10 PC'de kullanabilirsiniz ve ek bir yazılım gerekmez. Windows 10, USB takıldığında bunu otomatik olarak bir joystick olarak tanıyacaktır. (Diğer tip Arduino kartlarının kullanımı bu basit yapı projesi için çok karmaşıktır).
Arduino Leonardo tahtasını seçiyorum. Amazon'dan 17 Kanada Doları.
www.amazon.ca/KEYESTUDIO-Leonardo-Developm…
Bu 2 cihaz, bu proje için temel gereksinimlerdir. Kablolar ve basmalı düğmeler gibi diğer daha küçük parçalar da gereklidir. Bu projede sadelik için sadece 2 adet buton kullandım.
Joystick kolu, hurda PVC su borusundan yapılmıştır. Bu, herhangi bir kısa sert boru ile kolayca değiştirilebilir.
Joystick'in tabanı, bir tahta parçasına sabitlenmiş bir yaylı kapı durdurucudur.
Yaylı kapı durağı, Home Depot'ta 2.83 CAN karşılığında mevcuttur.
www.homedepot.ca/product/everbilt-spring-d…
Adım 1: MPU6050 ve Basmalı Düğmeleri Arduino Leonardo Kartına Bağlama
MPU 6050'de sadece 4 bağlantı kullanılır. VCC, GND, SCL ve SDA olarak etiketlenirler.
Arduino Leonardo'da VCC'yi 5v veya 3.3v'ye bağlayın. (MPU 6050, 5v veya 3.3v kullanabilir. Fark etmez)
GND'yi Arduino Leonardo'daki herhangi bir GND'ye bağlayın.
Arduino Leonardo'da SCL'yi SCL'ye bağlayın.
Arduino Leonardo'da SDA'yı SDA'ya bağlayın.
Bu gösterim amacıyla sadece 2 basmalı düğme kullanıyorum.
İlk basma düğmesi joystick merkezini sıfırlamak için kullanılır. Bu örnekte, basmalı düğmenin bir ucu GND'ye ve bir ucu PIN 13'e bağlanmıştır.
İkinci basma düğmesi, joystick düğmesi olarak kullanılır. Bu örnekte, PIN 9 ve GND'ye bağlanmıştır.
Projenizde gerektiği gibi ek düğmeler ekleyebilirsiniz.
2. Adım: Joystick Tabanını Oluşturma
Bir parça tahta blok bulun. Ne kadar ağır olursa o kadar iyi. Joystick tabanını daha kararlı hale getirecek.
Yaylı kapı durdurucuyu resimde gösterildiği gibi ahşap bloğun ortasına vidalayın.
Joystick kolu olarak bir parça kısa boru kullanın. Bir sıyırıcı PVC boru kullandım. İvmeölçer/jiroskop sensörü borunun üzerine oturacak şekilde kabloyu ezin.
Ardından boruyu yaylı kapı stoperinin üzerine koyun. Sensörü üste bantlamak için elektrik bandı kullandım.
Adım 3: Arduino IDE'yi kurun
Arduino IDE'yi indirin ve kurun.https://www.arduino.cc/en/Main/Software
Bu proje için Arduino 1.8.13 kullandım. Arduino Web Editor bu proje için de kullanılabilir.
2 kütüphane kullanılmaktadır.
1. MPU6050_tockn tarafından tockn
github.com/Tockn/MPU6050_tockn
veya "Kütüphaneyi Yönet" menüsünde bulabilirsiniz.
2. Matthew Heironimus'tan Joystick kitaplığı
github.com/MHeironimus/ArduinoJoystickLibr…
Bu, şu anda yalnızca GitHub web sitesinde mevcuttur.
Kodu indir ve ZIP'i İndir'e tıklayın. ZIP dosyasını Arduino kitaplıkları dizininize çıkarın.
Benim durumumda, bu E:\PinChung\Documents\Arduino\libraries
Adım 4: Arduino Programı
Pin_Joystick.ino'yu Arduino IDE'ye yükleyin ve derleyin ve Leonardo panosuna yükleyin.
Arduino Leonardo kartının seçildiğinden ve Araçlar menüsü altında sağ COM: bağlantı noktası numarasının seçildiğinden emin olun.
Bir süre fark ettim, program COM bağlantı noktasının hata koduyla yüklenemedi. Derleme sırasında Leonardo kartındaki sıfırlama düğmesine birkaç kez basmak yardımcı olabilir. Ayrıca Windows 10'u yeniden başlatmak, COM bağlantı noktasını boşaltmaya da yardımcı olabilir.
Program Leonardo panosuna yüklendikten sonra Windows 10, Leonardo Joystick'i otomatik olarak algılamalıdır. Windows 10 arama çubuğuna Oyun Denetleyicileri yazın, USB Oyun Denetleyicilerini Kur'u çalıştırın.
Leonardo Joystick'i seçin ve Özellikler'e tıklayın. Joystick hareketi ve joystick #1 düğmesi Windows 10 tarafından alınmalıdır.
Joystick merkezde değilse, bıraktığınızda, az önce yaptığımız joystick'i sıfırla orta düğmesine tıklayın. USB Oyun Denetleyicileri, ortada joystick noktasını göstermelidir. USB Game Controller programında joystick'i kalibre etmeye gerek yoktur..
Yan Not: Arduino Leonardo'ya aşina olmayanlar için cihaz joystick, fare veya klavye olarak yapılandırıldığında seri port çalışmayacaktır. Böylece "Serial.print()" çalışmayacaktır. Ayrıca MPU6050, i2c tel kitaplığını kullanır ve SDA ve SLC pinlerini kullanır. Leonardo'da SDA ve SCL, hem PIN 2 hem de PIN 3'ü alır, bu nedenle bu 2 pimi başka bir şey için kullanmayın.
Adım 5: Joystick'i Test Etme
Microsoft Flight Simulator 2020'de test ettim ve çok iyi çalışıyor. Joystick'i sıfırlamak için bazen orta tuşa basmam gerekiyor. MPU6050 sensör değeri zamanla biraz kayabilir.
Daha fazla düğme eklemek ve gaz kelebeği kontrolleri eklemek gibi projeye harcamak için birçok fırsat var. Umarım bu, diğer tamircilere bir şeyler yapmanın yeni yollarını keşfetmeleri için ilham verir.
Önerilen:
Servo Robot Kolu: 4 Adım
Servo Robot Kolu: Nesneleri alıp belirlenmiş bir alana yerleştirebilen basit bir servo robot koludur. Bu proje, kolun stabil olmasını ve diğer görevleri yerine getirebilmesini sağlamanın öneminden dolayı zamanının çoğunu montaj için gerektirecektir
Döner Enkoder Kontrollü Robot Kolu: 6 Adım
Rotary Enkoder Kontrollü Robot Kol: howtomechatronics.com'u ziyaret ettim ve orada bluetooth kontrollü robot kolunu gördüm.Bluetooth kullanmayı sevmiyorum, ayrıca rotary enkoder ile servo kontrol edebildiğimizi gördüm, bu yüzden robotu kontrol edebileceğim şekilde yeniden tasarladım. kol döner kodlayıcıyı kullanın ve kaydedin
Kendin Yap Robotik - Eğitici 6 Eksen Robot Kolu: 6 Adım (Resimli)
Kendin Yap Robotik | Eğitici 6 Eksenli Robot Kolu: DIY-Robotics eğitici hücresi, 6 eksenli robotik kol, elektronik kontrol devresi ve bir programlama yazılımı içeren bir platformdur. Bu platform, endüstriyel robotik dünyasına bir giriş niteliğindedir. DIY-Robotics bu proje sayesinde
4dof Ps2 Kontrol Arduino Akrilik Robot Kolu: 5 Adım
4dof Ps2 Kontrol Arduino Akrilik Robot Kolu: mearmlist bazında: 1set mearm akrilik arm1pc arduino uno2pc ps2
DIY PVC $10 Sualtı Işık Kolu: 5 Adım
DIY PVC 10 $ Sualtı Hafif Kol: Geçenlerde SCUBA dalışı için yeni bir kamera aldım ve bir aydınlatma teçhizatında biraz para biriktirmeye karar verdim. Kameram ve ışığım için özel bir kol almak için büyük paralar ödemek istemedim, bu yüzden PVC'den bir şeyler bir araya getirdim. 3/4 inç pvc kullanıyorum çünkü