विषयसूची:

Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन: 5 चरण
Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन: 5 चरण

वीडियो: Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन: 5 चरण

वीडियो: Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन: 5 चरण
वीडियो: ADXL345 कैसे use करें | How to use ADXL345 accelerometer sensor using arduino in hindi 2024, जुलाई
Anonim
Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन
Gyro, Accelerometer और Arduino का उपयोग करके कोण मापन

डिवाइस एक मोटा प्रोटोटाइप है जो अंततः सेल्फ बैलेंस रोबोट बन जाएगा, यह होल थिंग का दूसरा भाग है (एक्सेलेरोमीटर पढ़ें और सेल्फ बैलेंस के लिए मोटर को नियंत्रित करें)। केवल जाइरो के साथ पहला भाग यहां पाया जा सकता है। इस निर्देश पर हम जाइरो और एक्सेलेरोमीटर दोनों का उपयोग करके कोण को मापेंगे, और एक तकनीक का उपयोग करके एक सहज संकेत प्राप्त करने के लिए दोनों सेंसर को मर्ज करेंगे। तकनीक को "पूरक फिल्टर" कहा जाता है। पिछला

चरण 1: हमें क्या चाहिए:

हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए
हमें क्या चाहिए

कुछ भाग को बदला जा सकता है, और आपके हार्डवेयर को फिट करने के लिए कोड में कुछ संशोधन करना होगा। इस परियोजना पर हम उपयोग करेंगे: - ब्रेडबोर्ड- माइक्रोकंट्रोलर, मैंने Arduinoboard- वायर- जम्पर वायर- Gyroscope XV-8100- Nunchuck Wii का उपयोग किया (एक्सेलेरोमीटर के लिए)- Arduino के लिए Nunchuck Wii अडैप्टर

चरण 2: बिल्डिंग…

इमारत…
इमारत…
इमारत…
इमारत…
इमारत…
इमारत…

सर्किट में एक जाइरोस्कोप होता है जो आपके arduino पर पोर्ट 0 से सीधे जुड़ा होता है और I2C पोर्ट पर एक nunchuck wii कनेक्ट होता है। जाइरो को असेंबल करना: 1। - गायरो को ब्रेडबोर्ड2 पर प्लग करें। - वायर एवर थिंग: - आर्डिनो (लाइट ऑरेंज वायर) पर एनालॉग पोर्ट 0 से जुड़े जाइरो से वो पिन - ग्राउंड से जुड़े जाइरो से जी पिन (व्हाइट वायर) - वी + पिन जाइरो से वीडीडी (3.3 वी) (ऑरेंज वायर) असेंबलिंग से जुड़ा है। एक्सेलेरोमीटर:1. - एडेप्टर को nunchuck2 पर प्लग करें। - एडेप्टर 3 का उपयोग करके आर्डिनो पर नंचक को प्लग करें। - एक्सेल सेंसर को ऊपर फोटो की तरह लगाएं

चरण 3: आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी

आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी
आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी
आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी
आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी
आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी
आगे बढ़ने से पहले कुछ अतिरिक्त जानकारी

दोनों सेंसर से हम कोण को माप सकते हैं लेकिन दो अलग तकनीक का उपयोग कर सकते हैं। गायरो का उपयोग करके कोण को मापने के लिए हमें सिग्नल को एकीकृत करना होगा। लेकिन हमें ऐसा क्यों करना है? क्योंकि जाइरो हमें कोणीय दर देता है, इसलिए कोण प्राप्त करने का एक सरल तरीका है कोणीय दर को समय से गुणा करना [कोण = कोण + w * dt] एक्सेलेरोमीटर का उपयोग करके कोण को मापने के लिए हमें प्रत्येक में गुरुत्वाकर्षण को समझना होगा एक्सेलेरोमीटर की धुरी, इसका क्या अर्थ है, सेंसर की प्रत्येक दिशा पर गुरुत्वाकर्षण त्वरण का प्रक्षेपण हमें कोण के बारे में एक विचार देता है। [angle_accel = arctg(Ay / sqrt(Ax^2 + Az^2))] तो हम एक के बजाय दो सेंसर का उपयोग क्यों करेंगे? दोनों सेंसर गुणों का लाभ उठाने के लिए। यदि आप ग्राफिक को देखें तो जाइरो डेटा लगातार बढ़ता है, इसे ड्रिफ्ट कहा जाता है और एक्सेलेरोमीटर डेटा थोड़े समय में बहुत बदल जाता है। और दोनों सिग्नल को कैसे मर्ज किया जाए? हम पूरक फिल्टर नामक तकनीक का उपयोग करेंगे। मैं इसके पीछे सटीक सिद्धांत नहीं जानता, लेकिन यह ठीक काम करता है। इंटरनेट पर कुछ जानकारी है, अगर आपको अधिक जानकारी चाहिए तो बस इसे गूगल करें। इस लिंक में बहुत सारी जानकारी है और यह उपयोगी हो सकती है।filtered_angle = HPF*(filtered_angle + w* dt) + LPF*(angle_accel); जहां एचपीएफ + एलपीएफ = 1 एचपीएफ और एलपीएफ के मान इस लिंक पर, फिल्टर.पीडीएफ फाइल पर पाए जा सकते हैं। "द DIY सेगवे" से आप लोगों को धन्यवाद। बस परीक्षण के उद्देश्य से हम इस तरह के मान निर्धारित करेंगे, एचपीएफ = 0.98 और एलपीएफ = 0.02।

चरण 4: कोड:

कोड एक कोड से एक अनुकूलन है जिसे मैंने किसी अन्य प्रोजेक्ट पर उपयोग किया था। संभवत: कुछ चर अप्रयुक्त हैं। मैंने https://todbot.com/blog/ से नंचक डेटा पढ़ने के लिए एक पुस्तकालय का उपयोग किया। धन्यवाद टॉड ई. कर्ट। कोड पर टिप्पणियां पुर्तगाली में हैं, जैसे ही मेरे पास खाली समय होगा, मैं इसका अनुवाद करूंगा। कोड आउटपुट इस पैटर्न के साथ सीरियल लाइन को कुछ नंबर देता है: डीटी: डब्ल्यू: टेटा: पिच: filter_teta $time:angular_velocity:gyro_angle:accel_angle:filtered_angle$ तो आप इस मान को सीरियल टर्मिनल पर सहेज सकते हैं और ग्राफिक प्लॉट कर सकते हैं या अन्य चीजों के लिए कोण का उपयोग कर सकते हैं। यदि आपको कोड के बारे में कोई स्पष्टीकरण चाहिए तो पूछने के लिए स्वतंत्र हो गया। कोड है ज़िपित। बस अनज़िप करें, खोलें और इसे अपने arduino पर अपलोड करें।

चरण 5: परीक्षण और निष्कर्ष

परीक्षण और निष्कर्ष
परीक्षण और निष्कर्ष
परीक्षण और निष्कर्ष
परीक्षण और निष्कर्ष

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

सिफारिश की: