विषयसूची:

थ्रस्टमास्टर वॉर्थोग स्लीव सेंसर I2C अपग्रेड: 5 चरण
थ्रस्टमास्टर वॉर्थोग स्लीव सेंसर I2C अपग्रेड: 5 चरण

वीडियो: थ्रस्टमास्टर वॉर्थोग स्लीव सेंसर I2C अपग्रेड: 5 चरण

वीडियो: थ्रस्टमास्टर वॉर्थोग स्लीव सेंसर I2C अपग्रेड: 5 चरण
वीडियो: Thrustmaster Warthog Slew Upgrade 2024, सितंबर
Anonim
थ्रस्टमास्टर वार्थोग स्लीव सेंसर I2C अपग्रेड
थ्रस्टमास्टर वार्थोग स्लीव सेंसर I2C अपग्रेड

यह थ्रस्टमास्टर वॉर्थोग थ्रॉटल स्लीव सेंसर पर उपयोग किए गए I2C प्रोटोकॉल के साथ इंटरफेस करने के तरीके के बारे में एक मोटा गाइड है। इसका उपयोग काफी बेकार मानक मिनीस्टिक से कुछ बेहतर करने के लिए किया जा सकता है, लेकिन फिर भी थ्रॉटल यूनिट में मानक यूएसबी नियंत्रक का उपयोग कर रहा है। यह एक मूल पोस्ट पर आधारित है:

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

एक बुनियादी समझ अगर I2C प्रोटोकॉल को निम्नलिखित चरणों में से अधिकांश के लिए माना जाता है, तो एक उत्कृष्ट स्पष्टीकरण के लिए यहां जाएं:

learn.sparkfun.com/tutorials/i2c

कोई भी विशिष्ट प्रश्न, मुझसे पूछने के लिए स्वतंत्र महसूस करें, और मैं भविष्य में और अधिक प्रासंगिक जानकारी के साथ इसे जोड़ने का प्रयास करूंगा। यह किसी भी तरह से पूर्ण नहीं है, लेकिन यह एक अच्छा प्रारंभिक बिंदु होना चाहिए।

कुछ डेमो Arduino कोड प्रदान किए गए हैं, लेकिन कृपया इसे केवल एक संदर्भ के रूप में लें क्योंकि सामान्य 5V Arduino का उपयोग संशोधन के बिना नहीं किया जा सकता है।

चरण 1: मौजूदा सेंसर विवरण

मौजूदा सेंसर विवरण
मौजूदा सेंसर विवरण

मिनीस्टिक स्लीव सेंसर जो थ्रस्टमास्टर वाथोग थ्रॉटल के साथ आता है, एक अन्य उत्कृष्ट उत्पाद के साथ सबसे बड़ी कमजोरियों में से एक के रूप में जाना जाता है। पिछले कुछ वर्षों में लोगों द्वारा इसे कुछ बेहतर से बदलने के लिए कई प्रयास किए गए हैं, लेकिन अधिकांश इसके द्वारा उपयोग किए जाने वाले डिजिटल I2C प्रोटोकॉल के साथ इंटरफेस करने की कठिनाइयों के खिलाफ सामने आए हैं।

Warthog थ्रॉटल में इस्तेमाल किया गया सटीक सेंसर N35P112 - EasyPoint है, जो AMS द्वारा बनाए गए AS5013 हॉल इफेक्ट सेंसर IC का उपयोग करता है।

डेटा शीट:

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

दिलचस्प बात यह है कि यूनिट एक बार स्पार्कफुन द्वारा ब्रेकआउट मॉड्यूल के रूप में उपलब्ध थी:

www.sparkfun.com/products/retired/10835

सेंसर मोबाइल फोन जैसी चीजों में नेविगेशन अनुप्रयोगों के लिए है, और यह बेहद सस्ता है। मेरी राय में लगभग 500 डॉलर की लागत वाली किसी चीज़ में अस्वीकार्य है।

चरण 2: पिनआउट

बाहर पिन
बाहर पिन

सेंसर माइक्रो 5 पिन कनेक्टर के माध्यम से दाहिने हाथ की थ्रॉटल इकाई में पीसीबी से जुड़ता है।

पिनआउट इस प्रकार है:

  1. वीसीसी +3.3वीडीसी (

    बोर्ड के दूसरी तरफ एक रैखिक नियामक द्वारा स्थानीय रूप से 5V से विनियमित, कनेक्टर के ठीक पीछे, 20mA के आसपास अच्छा होना चाहिए, लेकिन मैंने किसी भी तरह से इसका परीक्षण नहीं किया है)

  2. I2C एसडीए
  3. I2C एससीएल
  4. जीएनडी
  5. बटन 1 (सामान्य रूप से उच्च, आंतरिक 5V पुलअप)

चरण 3: प्रोटोकॉल विवरण

प्रोटोकॉल विवरण
प्रोटोकॉल विवरण

I2C पते 0x41 पर संचालित सेंसर - सभी लिखने या पढ़ने के आदेश इस पते से शुरू होते हैं।

जब थ्रॉटल कंप्यूटर से जुड़ा होता है, तो 0x40 को संबोधित करने के लिए I2C बस में लगभग 250ms की प्रस्तावना होती है, मुझे लगता है कि यह एक अलग सेंसर संस्करण या कुछ इसी तरह के लिए है, लेकिन यह हमारे लिए प्रासंगिक नहीं है।

सामान्य उपयोग में I2C बस पर भेजा गया डेटा नीचे है, इसे थ्रॉटल से बात करने के लिए हमारे माइक्रोकंट्रोलर द्वारा अनुकरण किया जाना चाहिए।

सेटअप - मूल सेंसर को उपयोग के लिए सेट करने के लिए, यह डेटा USB कनेक्ट होने के लगभग 500ms बाद एक बार भेजा जाता है।

मास्टर राइट: 0x0F (कंट्रोल रजिस्टर 1)

डेटा: 0x02 0b0000 0010 (सॉफ्ट रीसेट शुरू करता है)

मास्टर राइट: 0x0F (कंट्रोल रजिस्टर 1)

मास्टर पढ़ें: 0xF1 0b1111 0001 (11110000 पर रीसेट, lsb 1 दर्शाता है कि वैध डेटा पढ़ने के लिए तैयार है। हमें एक वैध दास डिवाइस के रूप में पहचाने जाने के लिए इस आदेश का सही उत्तर देना चाहिए)

मास्टर राइट: 0x2E (कंट्रोल रजिस्टर 2)

डेटा: 0x 86 (यह सिर्फ मूल सेंसर में चुंबक के उन्मुखीकरण को सेट करता है)

मास्टर राइट: 0x0F (कंट्रोल रजिस्टर 1)

डेटा: 0x 80 0b1000 0000 (डिवाइस को निष्क्रिय मोड में सेट करता है (ऑटो माप, कम पावर मोड में नहीं))

लूप: सेंसर डेटा प्राप्त करने के लिए इसे लगभग 100Hz पर दोहराया जाता है।

मास्टर राइट: 0x10 (X रजिस्टर)

मास्टर रीड: (दास एक्स डेटा भेजता है, 2 का पूरक 8 बिट मान)

मास्टर राइट: 0x11 (वाई रजिस्टर)

मास्टर रीड: (दास वाई डेटा भेजता है, 2 का पूरक 8 बिट मान)

तर्क विश्लेषक से प्रोटोकॉल डंप का प्रासंगिक हिस्सा:

[0x82] + ACK. पर लिखें सेटअप करें

0x0F + एसीके

0x02 + एसीके

[0x82] + ACK. पर लिखें सेटअप करें

0x0F + एसीके

[0x83] + ACK. पर पढ़ें सेटअप

0xF1 + एनएके

[0x82] + ACK. पर लिखें सेटअप करें

0x2E + एसीके

0x86 + एसीके

[0x82] + ACK. पर लिखें सेटअप करें

0x0F + एसीके

0x80 + एसीके

[0x82] + ACK. पर लिखें सेटअप करें

0x10 + एसीके

[0x83] + ACK 0xFC + NAK. पर पढ़ें सेटअप

सेटअप लिखें [0x82] + ACK 0x11 + ACK

[0x83] + ACK 0xFF + NAK. पर पढ़ें सेटअप

चरण 4: Arduino कोड

Arduino कोड
Arduino कोड

संलग्न Arduino कोड का उपयोग सेंसर को अनुकरण करने के लिए किया जा सकता है।

कृपया ध्यान दें: अधिकांश Arduino बोर्ड 5V से चलते हैं, इसे आपके जॉयस्टिक को नुकसान से बचाने के लिए काम करने के लिए 3.3V संगत या संशोधित बोर्ड की आवश्यकता होती है।

चरण 5: अंशांकन

कैलिब्रेशन
कैलिब्रेशन

एक बार आपका नया सेंसर फिट हो जाने के बाद, थ्रॉटल को कैलिब्रेट करने की आवश्यकता होगी।

अपने थ्रॉटल को कैलिब्रेट करने के लिए आप थ्रॉटल कैलिब्रेशन टूल करेंगे। इसे कई स्रोतों से डाउनलोड किया जा सकता है जैसे:

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

विंडोज़ कैलिब्रेशन का उपयोग न करें।

एक मॉड का अधिकतम लाभ उठाने के लिए आपको अपनी कैलिब्रेशन कॉन्फ़िगरेशन फ़ाइल में कुछ मानों को बदलने की आवश्यकता है।

बदलें:

Standard_DZ_SX = 0x10;

Standard_DZ_SY = 0x10;

A10_calibration.txt में पंक्तियाँ:

Standard_DZ_SX = 0x01;

Standard_DZ_SY = 0x01;

यह 10 से 1 तक स्लीव कंट्रोल पर डेड ज़ोन में बदल जाएगा और बहुत बेहतर नियंत्रण देगा। आप इस सेटिंग के साथ खेल सकते हैं और फिर पुनर्गणना कर सकते हैं और देख सकते हैं कि आपको सबसे ज्यादा क्या पसंद है।

सिफारिश की: