Përmbajtje:

Thrustmaster Warthog Slew Sensor I2C Përmirësimi: 5 hapa
Thrustmaster Warthog Slew Sensor I2C Përmirësimi: 5 hapa

Video: Thrustmaster Warthog Slew Sensor I2C Përmirësimi: 5 hapa

Video: Thrustmaster Warthog Slew Sensor I2C Përmirësimi: 5 hapa
Video: Hardware Review: Delta Sim Electronics Thumbstick Upgrade für Thrustmaster HOTAS Warthog 2024, Nëntor
Anonim
Thrustmaster Warthog Sensor Sensor I2C Upgrade
Thrustmaster Warthog Sensor Sensor I2C Upgrade

Ky është një udhëzues i përafërt se si të ndërhyni me protokollin I2C të përdorur në sensorin e goditjes së mbytjes ThrustmasterWarthog. Kjo mund të përdoret për të përmirësuar nga shërbimi standard i padobishëm në diçka më të mirë, por akoma duke përdorur kontrolluesin standard USB në njësinë e mbytjes. Kjo bazohet në një postim origjinal në:

forums.eagle.ru/showthread.php?t=200198

Një kuptim themelor nëse supozohet protokolli I2C për shumicën e hapave të mëposhtëm, për një shpjegim të shkëlqyeshëm shkoni te:

learn.sparkfun.com/tutorials/i2c

Çdo pyetje specifike, mos ngurroni të më pyesni, dhe unë do të përpiqem t'i shtoj kësaj të pakontrollueshme në të ardhmen me informacione më të rëndësishme. Kjo nuk është aspak e plotë, por duhet të jetë një pikënisje e mirë.

Ofrohet një kod demo Arduino, por ju lutemi merrni këtë si referencë pasi një Arduino 5V normal nuk mund të përdoret pa modifikim.

Hapi 1: Detajet ekzistuese të sensorit

Detajet e Sensorit Ekzistues
Detajet e Sensorit Ekzistues

Sensori i goditjes ministick që vjen me mbytjen Thrustmaster Wathog i njohur mirë se është një nga dobësitë më të mëdha me një produkt përndryshe të shkëlqyer. Ka pasur një numër përpjekjesh nga njerëzit për ta zëvendësuar atë me diçka më të mirë gjatë viteve, por shumica kanë dalë kundër vështirësive të ndërlidhjes me protokollin dixhital I2C të përdorur prej tij.

Sensori i saktë i përdorur në mbytjen Warthog është N35P112 - EasyPoint, i cili përdor IC sensorin e efektit të sallës AS5013 të bërë nga AMS.

Fleta e të dhënave:

ams.com/eng/Products/Magnetic-Position-Sens…

Shtë interesante që njësia dikur ishte në dispozicion si një modul shpërthimi nga Sparkfun:

www.sparkfun.com/products/retired/10835

Sensori është menduar për aplikacionet e lundrimit në gjëra të tilla si telefonat celularë, dhe është jashtëzakonisht i lirë. Sipas mendimit tim e papranueshme në diçka që kushton gati 500 dollarë.

Hapi 2: Pinout

Pinout
Pinout

Sensori lidhet me PCB në njësinë e mbytjes së dorës së djathtë përmes lidhësit mikro 5 pin.

Pinout është si më poshtë:

  1. Vcc +3.3VDC (

    Rregulluar në nivel lokal nga 5V nga një rregullator linear në anën tjetër të bordit, menjëherë pas lidhësit, duhet të jetë mirë të jetë rreth 20mA, por unë në asnjë mënyrë nuk e kam testuar këtë)

  2. I2C SDA
  3. I2C SCL
  4. GND
  5. Butoni 1 (Normalisht i lartë, tërheqje e brendshme 5V)

Hapi 3: Përshkrimi i Protokollit

Përshkrimi i Protokollit
Përshkrimi i Protokollit

Sensori funksionoi në adresën I2C 0x41 - të gjitha komandat e shkrimit ose leximit fillojnë me këtë adresë.

Kur mbytja lidhet me kompjuterin, ekziston një parathënie prej rreth 250ms në autobusin I2C për të adresuar 0x40, supozoj se kjo është për një version të ndryshëm të sensorit ose diçka të ngjashme, por nuk është e rëndësishme për ne.

Të dhënat e dërguara në autobusin I2C në përdorim normal janë më poshtë, kjo duhet të simulohet nga mikrokontrolluesi ynë për të folur me mbytjen.

Konfigurimi - Këto të dhëna dërgohen një herë, rreth 500ms pasi të jetë lidhur USB, për të vendosur sensorin origjinal për përdorim.

Master Shkruaj: 0x0F (Regjistri i Kontrollit 1)

Të dhënat: 0x02 0b0000 0010 (fillon një rivendosje të butë)

Master Shkruaj: 0x0F (Regjistri i Kontrollit 1)

Master Lexo: 0xF1 0b1111 0001 (rivendoset në 11110000, lsb 1 nënkupton që të dhënat e vlefshme janë gati për t'u lexuar. Ne duhet t'i përgjigjemi kësaj komande saktë për t'u njohur si një pajisje skllave e vlefshme)

Master Shkruaj: 0x2E (Regjistri i Kontrollit 2)

Të dhënat: 0x 86 (kjo vetëm vendos orientimin e magnetit në sensorin origjinal)

Master Shkruaj: 0x0F (Regjistri i Kontrollit 1)

Të dhënat: 0x 80 0b1000 0000 (Vendos pajisjen në modalitetin boshe (matja automatike, jo në modalitetin e energjisë së ulët))

Loop: Kjo përsëritet në rreth 100Hz për të marrë të dhëna të sensorit.

Master Shkruani: 0x10 (regjistri X)

Master Lexo: (skllavi dërgon të dhëna X, vlera plotësuese e 2 bit 8 bit)

Master Shkruani: 0x11 (regjistri Y)

Master Lexo: (skllavi dërgon të dhëna Y, vlera plotësuese e 2 bit 8)

Pjesa përkatëse e hedhjes së protokollit nga analizuesi logjik:

Konfigurimi Shkruani në [0x82] + ACK

0x0F + ACK

0x02 + ACK

Konfigurimi Shkruani në [0x82] + ACK

0x0F + ACK

Konfigurimi Lexo në [0x83] + ACK

0xF1 + NAK

Konfigurimi Shkruani në [0x82] + ACK

0x2E + ACK

0x86 + ACK

Konfigurimi Shkruani në [0x82] + ACK

0x0F + ACK

0x80 + ACK

Konfigurimi Shkruani në [0x82] + ACK

0x10 + ACK

Konfigurimi Lexo në [0x83] + ACK 0xFC + NAK

Konfigurimi Shkruani në [0x82] + ACK 0x11 + ACK

Konfigurimi Lexo në [0x83] + ACK 0xFF + NAK

Hapi 4: Kodi Arduino

Kodi Arduino
Kodi Arduino

Kodi i bashkangjitur Arduino mund të përdoret për të simuluar sensorin.

Ju lutemi vini re: Shumica e bordeve Arduino funksionojnë me 5V, kjo ka nevojë për një bord të pajtueshëm ose të modifikuar me 3.3V për të punuar për të shmangur dëmtimin e levës tuaj.

Hapi 5: Kalibrimi

Kalibrimi
Kalibrimi

Pasi të jetë vendosur sensori juaj i ri, mbytja do të ketë nevojë për kalibrim.

Për të kalibruar mbytjen tuaj ju do të përdorni mjetin e kalibrimit të mbytjes. Kjo mund të shkarkohet nga një numër burimesh të tilla si:

forums.eagle.ru/showthread.php?t=65901

Mos përdorni kalibrimin e dritareve.

Në mënyrë që të përfitoni sa më shumë nga një mod ju duhet të ndryshoni disa vlera në skedarin tuaj të konfigurimit të kalibrimit.

Ndryshoni:

Standard_DZ_SX = 0x10;

Standard_DZ_SY = 0x10;

Linjat në A10_calibration.txt në:

Standard_DZ_SX = 0x01;

Standard_DZ_SY = 0x01;

Kjo do të ndryshojë në zonën e vdekur në kontrollin e goditjes nga 10 në 1 dhe do të japë një kontroll shumë më të mirë. Mund të luani me këtë cilësim dhe pastaj të kalibroni dhe të shihni atë që ju pëlqen më shumë.

Recommended: