Mündəricat:
- Addım 1: Mövcud Sensor Təfərrüatları
- Addım 2: Pinout
- Addım 3: Protokolun Təsviri
- Addım 4: Arduino Kodu
- Addım 5: Kalibrləmə
Video: Thrustmaster Warthog Sensor I2C Yeniləmə: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bu, ThrustmasterWarthog qaz tənzimləyici sensöründə istifadə olunan I2C protokolu ilə necə əlaqə quracağınıza dair kobud bir bələdçidir. Bu, kifayət qədər yararsız standart ministickdən daha yaxşı bir şeyə yüksəltmək üçün istifadə edilə bilər, amma yenə də qaz cihazında standart USB nəzarətçisini istifadə edir. Bu, orijinal bir yazıya əsaslanır:
forums.eagle.ru/showthread.php?t=200198
Aşağıdakı addımların çoxu üçün I2C protokolunun qəbul edildiyi əsas bir anlayış, əla bir izah üçün:
learn.sparkfun.com/tutorials/i2c
Hər hansı bir konkret sualınız varsa, mənə müraciət etməkdən çekinmeyin və gələcəkdə bu mövzuya daha uyğun məlumatlar əlavə etməyə çalışacağam. Bu heç də tam deyil, amma yaxşı bir başlanğıc nöqtəsi olmalıdır.
Bəzi demo Arduino kodu verilir, ancaq zəhmət olmasa bunu yalnız bir istinad olaraq qəbul edin, çünki normal 5V Arduino dəyişdirilmədən istifadə edilə bilməz.
Addım 1: Mövcud Sensor Təfərrüatları
Thrustmaster Wathog throttleis ilə birlikdə gələn ministick, başqa bir əla məhsulla ən böyük çatışmazlıqlardan biri olaraq bilinir. İnsanlar illər ərzində onu daha yaxşı bir şeylə əvəz etmək üçün bir çox cəhdlər etdilər, lakin əksəriyyəti istifadə etdiyi rəqəmsal I2C protokolu ilə əlaqə qurmaqda çətinlik çəkdi.
Warthog qazında istifadə edilən dəqiq sensor, AMS tərəfindən hazırlanan AS5013 zal effekti sensoru IC istifadə edən N35P112 - EasyPoint -dir.
Məlumat cədvəli:
ams.com/eng/Products/Magnetic-Position-Sens…
Maraqlıdır ki, vahid bir vaxtlar Sparkfun tərəfindən ayrılma modulu olaraq mövcud idi:
www.sparkfun.com/products/retired/10835
Sensor cib telefonu kimi şeylərdə naviqasiya tətbiqləri üçün nəzərdə tutulmuşdur və son dərəcə ucuzdur. Fikrimcə, təxminən 500 dollara başa gələn bir şeydə qəbuledilməzdir.
Addım 2: Pinout
Sensor, mikro qazma konnektoru vasitəsi ilə sağ qaz tənzimləyicisindəki PCB -yə qoşulur.
Pinout aşağıdakı kimidir:
-
Vcc +3.3VDC (
Lövhənin digər tərəfində, konnektorun arxasındakı xətti bir tənzimləyici tərəfindən yerli olaraq 5V -dən tənzimlənir, 20mA ətrafında olmalıdır, amma bunu heç bir şəkildə sınamamışam)
- I2C SDA
- I2C SCL
- GND
- Düymə 1 (Normalda yüksək, daxili 5V çəkmə)
Addım 3: Protokolun Təsviri
Sensor 0x41 I2C ünvanında işləyir - bütün yazma və ya oxumaq əmrləri bu ünvandan başlayır.
Qaz kompüterə qoşulduqda, 0x40 ünvanlı I2C avtobusunda təxminən 250 ms -lik bir giriş var, bunun fərqli bir sensor versiyası və ya buna bənzər bir şey üçün olduğunu düşünürəm, amma bizimlə əlaqəli deyil.
Normal istifadədə olan I2C avtobusuna göndərilən məlumatlar aşağıda verilmişdir, bu, qazla danışmaq üçün mikrokontrollerimiz tərəfindən simulyasiya edilməlidir.
Quraşdırma - Bu məlumatlar, USB bağlandıqdan təxminən 500 ms sonra, orijinal sensoru işə salmaq üçün bir dəfə göndərilir.
Usta Yazı: 0x0F (Nəzarət Qeydiyyatı 1)
Məlumat: 0x02 0b0000 0010 (yumşaq sıfırlama başlayır)
Usta Yazı: 0x0F (Nəzarət Qeydiyyatı 1)
Master Oxu: 0xF1 0b1111 0001 (11110000 olaraq sıfırlanır, lsb 1 etibarlı məlumatların oxunmağa hazır olduğunu bildirir. Etibarlı bir qulluq cihazı olaraq tanınmaq üçün bu əmrə düzgün cavab verməliyik)
Usta Yazı: 0x2E (Nəzarət Qeydiyyatı 2)
Məlumat: 0x86 (bu, orijinal sensordakı maqnitin istiqamətini təyin edir)
Master Yazı: 0x0F (Nəzarət Qeydiyyatı 1)
Məlumat: 0x 80 0b1000 0000 (Cihazı boş rejimə qoyur (avtomatik ölçmə, aşağı güc rejimində deyil))
Döngü: Sensor məlumatlarını əldə etmək üçün təxminən 100 Hz -də təkrarlanır.
Usta Yazı: 0x10 (X reyestri)
Master Oxu: (qul X məlumatlarını, 2 -nin tamamlayıcı 8 bit dəyərini göndərir)
Usta Yazı: 0x11 (Y qeydiyyatı)
Master Oxu: (qul Y məlumatlarını, 2 -nin tamamlayıcı 8 bit dəyərini göndərir)
Məntiq analizatorundan protokol zibilinin müvafiq hissəsi:
[0x82] + ACK -a yazın
0x0F + ACK
0x02 + ACK
[0x82] + ACK -a yazın
0x0F + ACK
Oxumanı [0x83] + ACK olaraq qurun
0xF1 + NAK
[0x82] + ACK -a yazın
0x2E + ACK
0x86 + ACK
[0x82] + ACK -a yazın
0x0F + ACK
0x80 + ACK
[0x82] + ACK -a yazın
0x10 + ACK
Oxumanı [0x83] + ACK 0xFC + NAK olaraq qurun
Quraşdır [0x82] + ACK 0x11 + ACK -a yaz
Oxumanı [0x83] + ACK 0xFF + NAK olaraq qurun
Addım 4: Arduino Kodu
Əlavə edilmiş Arduino kodu sensoru simulyasiya etmək üçün istifadə edilə bilər.
Diqqət edin: Əksər Arduino lövhələri 5V ilə işləyir, bunun üçün joystickə zərər verməmək üçün işləmək üçün 3.3V uyğun və ya dəyişdirilmiş bir lövhə lazımdır.
Addım 5: Kalibrləmə
Yeni sensoru quraşdırdıqdan sonra qazın kalibrlənməsi lazımdır.
Qazınızı kalibr etmək üçün qaz kalibrləmə vasitəsi olacaqsınız. Bu kimi bir çox mənbədən yükləyə bilərsiniz:
forums.eagle.ru/showthread.php?t=65901
Pəncərə kalibrindən istifadə etməyin.
Moddan maksimum istifadə etmək üçün kalibrləmə konfiqurasiya sənədinizdəki bir neçə dəyəri dəyişdirməlisiniz.
Dəyişdirin:
Standart_DZ_SX = 0x10;
Standart_DZ_SY = 0x10;
A10_calibration.txt -dəki sətirlər:
Standart_DZ_SX = 0x01;
Standart_DZ_SY = 0x01;
Bu, 10 -dan 1 -ə qədər sürüşmə nəzarətində ölü zonaya çevriləcək və daha yaxşı bir nəzarət verəcəkdir. Bu parametrlə oynaya və sonra yenidən kalibr edə və ən çox bəyəndiyinizi görə bilərsiniz.
Tövsiyə:
Rayotron Gecə İşığı Yeniləmə (2 -ci hissə): 13 addım
Rayotron Gecə İşığının Yeniləməsi (2-ci hissə): Mənim Rayotron gecə işığım, atom fizikasında araşdırma aparmaq üçün yüksək enerjili rentgen şüaları istehsal etmək üçün hazırlanmış yarım milyon voltluq elektrostatik generatordan ilham almışdır. Orijinal layihə, xəstələnən kiçik bir elektron hava iyonizatorunu işə salmaq üçün 12 volt DC təchizatı istifadə etdi
1998 'Robotron Plotter Yeniləmə: 3 Addım
1998 'Robotron Plotter Yeniləmə: Köhnə (lakin istifadə olunmayan) plotteri Bluetooth COM portu ilə təchiz etmək. Sonra ilk PCB və çantanın arxa plakasını hazırlayırıq. Nə üçün? Niyə adi printerlər deyil? Bir işin üz panelinə bir lazer/mec quraşdırmaq üçün PCB çəkmək mümkündür
Blu Media Robotu (Yeniləmə): 7 addım
Blu Media Robotu (Yeniləmə): blu, mənim kimi makeblock -dan satın ala biləcəyiniz hissələr siyahısı üçün elektronika üçün makeblock anakart və moruq ilə işləyən bir robotdur, indi mənim 3d printerim var (wanahoa i3 +) və yükləyə bilərsiniz onları çap etmək üçün fərqli hissələr
Lockdown Monitor Yeniləmə: 5 addım
Lockdown Monitor Yeniləmə: Beləliklə, təxminən 18 ay əvvəl qaraj atelyemizi yeniləyir, üzərində işlədiyim bütün elektronika və 3D çap bitləri və parçaları ilə birlikdə təşkil etməyə çalışırdım. CAD etmək üçün divara asmaq üçün ucuz bir kompüter monitoru alacağımı düşündüm
Thrustmaster Warthog Joystick Addon: 5 addım (şəkillərlə)
Thrustmaster Warthog Joystick Addon: salam zəhmət olmasa mənə qarşı yumşaq olun .. bu mənim ilk təlimatımdır. "Warthog" da daha bir neçə düyməyə və baltaya ehtiyacım var. joystick, elitada oynamaq təhlükəli. joystick ilə klaviatura arasında " rift " sənin üzərində