Orodha ya maudhui:

Thrustmaster Warthog Slew Sensor I2C Boresha: 5 Hatua
Thrustmaster Warthog Slew Sensor I2C Boresha: 5 Hatua

Video: Thrustmaster Warthog Slew Sensor I2C Boresha: 5 Hatua

Video: Thrustmaster Warthog Slew Sensor I2C Boresha: 5 Hatua
Video: Hardware Review: Delta Sim Electronics Thumbstick Upgrade für Thrustmaster HOTAS Warthog 2024, Novemba
Anonim
Kiboreshaji cha Warthog Slew Sensor I2C Boresha
Kiboreshaji cha Warthog Slew Sensor I2C Boresha

Huu ni mwongozo mbaya juu ya jinsi ya kuingiliana na itifaki ya I2C iliyotumiwa kwenye sensorer ya ThrustmasterWarthog. Hii inaweza kutumiwa kusasisha kutoka kwa kiwango kisicho na maana cha huduma hadi kitu bora, Lakini bado ukitumia mtawala wa kawaida wa USB katika kitengo cha kukaba. Hii ni msingi wa chapisho la asili kwenye:

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

Uelewa wa kimsingi ikiwa itifaki ya I2C inadhaniwa kwa hatua nyingi zifuatazo, kwa maelezo bora nenda kwa:

learn.sparkfun.com/tutorials/i2c

Maswali yoyote maalum, jisikie huru kuniuliza, na nitajaribu kuongeza hii isiyowezekana katika siku zijazo na habari muhimu zaidi. Hii sio kamili, lakini inapaswa kuwa hatua nzuri ya kuanzia.

Nambari zingine za onyesho la Arduino zimetolewa lakini tafadhali chukua hii kama kumbukumbu kama kawaida 5V Arduino haiwezi kutumika bila marekebisho.

Hatua ya 1: Maelezo ya Sura zilizopo

Maelezo ya Sura zilizopo
Maelezo ya Sura zilizopo

Sensick ya sleick inayokuja na thrustmaster Wathog throttleis inayojulikana kuwa moja ya udhaifu mkubwa na bidhaa bora zaidi. Kumekuwa na majaribio kadhaa ya watu kuibadilisha na kitu bora zaidi ya miaka, lakini wengi wamekuja dhidi ya shida za kuingiliana na itifaki ya dijiti ya I2C inayotumiwa nayo.

Sensor halisi inayotumiwa katika kaba ya Warthog ni N35P112 - EasyPoint, ambayo hutumia sensa ya athari ya ukumbi wa AS5013 IC iliyotengenezwa na AMS.

Karatasi ya data:

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

Inafurahisha kuwa kitengo hicho kilipatikana kama moduli ya kuzuka na Sparkfun:

www.sparkfun.com/products/retired/10835

Sensor imeundwa kwa matumizi ya urambazaji katika vitu kama simu za rununu, na ni ya bei rahisi sana. Kwa maoni yangu haikubaliki katika kitu ambacho kinagharimu karibu $ 500.

Hatua ya 2: pinout

Kujifunga
Kujifunga

Sensor inaunganisha na PCB katika kitengo cha kulia cha mkono wa kulia kupitia kontakt ndogo ya pini 5.

Kuandika ni kama ifuatavyo:

  1. Vcc + 3.3VDC (

    Iliyodhibitiwa ndani kutoka 5V na mdhibiti wa laini upande wa pili wa bodi, nyuma tu ya kontakt, inapaswa kuwa nzuri kupanga 20mA, lakini sijajaribu hii kwa njia yoyote)

  2. I2C SDA
  3. I2C SCL
  4. GND
  5. Kitufe 1 (kawaida juu, ndani 5V pullup)

Hatua ya 3: Maelezo ya Itifaki

Maelezo ya Itifaki
Maelezo ya Itifaki

Sensor ilifanya kazi kwenye anwani ya I2C 0x41 - zote zinaandika au kusoma amri kuanza na anwani hii.

Wakati kaba inaunganishwa na kompyuta, kuna utangulizi wa karibu 250ms kwenye basi ya I2C kushughulikia 0x40, nadhani hii ni kwa toleo tofauti la sensorer au kitu kama hicho, lakini sio muhimu kwetu.

Takwimu zilizotumwa kwenye basi ya I2C kwa matumizi ya kawaida ziko chini, hii lazima ifanishwe na mdhibiti wetu mdogo kuzungumza na kaba.

Usanidi - Takwimu hizi zinatumwa mara moja, karibu 500ms baada ya USB kushikamana, kuweka sensa ya asili kwa matumizi.

Andika Mwalimu: 0x0F (Daftari La Kudhibiti 1)

Takwimu: 0x02 0b0000 0010 (huanzisha upya laini)

Andika Mwalimu: 0x0F (Daftari La Kudhibiti 1)

Kusoma kwa Mwalimu: 0xF1 0b1111 0001 (inaweka upya hadi 11110000, lsb 1 inaashiria data halali iko tayari kusomwa. Lazima tujibu amri hii kwa usahihi ili kutambuliwa kama kifaa halali cha mtumwa)

Andika Mwalimu: 0x2E (Daftari La Kudhibiti 2)

Takwimu: 0x 86 (hii inaweka tu mwelekeo wa sumaku katika sensa ya asili)

Andika Mwalimu: 0x0F (Daftari La Kudhibiti 1)

Takwimu: 0x 80 0b1000 0000 (Inaweka kifaa kwa hali ya uvivu (kipimo cha kiotomatiki, sio katika hali ya nguvu ya chini))

Kitanzi: Hii inarudiwa karibu na 100Hz kupata data ya sensorer.

Andika Mwalimu: 0x10 (X sajili)

Kusoma kwa Mwalimu: (mtumwa hutuma data ya X, 2 inayosaidia thamani 8 kidogo)

Andika Mwalimu: 0x11 (Y kujiandikisha)

Kusoma kwa Mwalimu: (mtumwa hutuma data ya Y, 2 huongeza thamani 8 kidogo)

Sehemu inayofaa ya dampo la itifaki kutoka kwa analyzer ya mantiki:

Sanidi Andika kwa [0x82] + ACK

0x0F + ACK

0x02 + ACK

Sanidi Andika kwa [0x82] + ACK

0x0F + ACK

Sanidi Soma kwa [0x83] + ACK

0xF1 + NAK

Sanidi Andika kwa [0x82] + ACK

0x2E + ACK

0x86 + ACK

Sanidi Andika kwa [0x82] + ACK

0x0F + ACK

0x80 + ACK

Sanidi Andika kwa [0x82] + ACK

0x10 + ACK

Sanidi Soma kwa [0x83] + ACK 0xFC + NAK

Sanidi Andika kwa [0x82] + ACK 0x11 + ACK

Sanidi Soma kwa [0x83] + ACK 0xFF + NAK

Hatua ya 4: Msimbo wa Arduino

Msimbo wa Arduino
Msimbo wa Arduino

Nambari ya Arduino iliyoambatanishwa inaweza kutumika kuiga sensa.

Tafadhali kumbuka: Bodi nyingi za Arduino zinazoendeshwa na 5V, hii inahitaji bodi inayoendana au iliyobadilishwa 3.3V kufanya kazi ili kuepuka uharibifu wa fimbo yako ya furaha.

Hatua ya 5: Upimaji

Upimaji
Upimaji

Mara tu sensor yako mpya imewekwa, kaba itahitaji usawazishaji.

Ili kusawazisha kaba yako utakuwa zana ya usuluhishi ya kaba. Hii inaweza kupakuliwa kutoka kwa vyanzo kadhaa kama vile:

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

Usitumie upimaji wa windows.

Ili kupata zaidi kutoka kwa mod unahitaji kubadilisha maadili kadhaa kwenye faili yako ya usanidi wa upimaji.

Badilisha:

Kiwango_DZ_SX = 0x10;

Kiwango_DZ_SY = 0x10;

Mistari katika A10_calibration.txt kwa:

Kiwango_DZ_SX = 0x01;

Kiwango_DZ_SY = 0x01;

Hii itabadilika kuwa eneo lililokufa kwenye udhibiti wa slew kutoka 10 hadi 1, na kutoa udhibiti bora zaidi. Unaweza kucheza na mpangilio huu na kisha ujipime tena na uone unachopenda zaidi.

Ilipendekeza: