जाइरोस्कोप का उपयोग करके दो पहिए वाले रोबोट को संतुलित करने के लिए मुझे किस एल्गोरिथ्म का उपयोग करना चाहिए?


25

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


मैं इस पर भी काम करने जा रहा हूं। आपको अपने कच्चे डेटा को फ़िल्टर करने के लिए एक कलमन फ़िल्टर का उपयोग करना होगा। और इसे ट्यून करने के लिए एक पीआईडी ​​एल्गोरिथ्म का उपयोग करें।
हुजो

जवाबों:


16

सबसे सरल नियंत्रक एक रैखिक राज्य प्रतिक्रिया नियंत्रक है। अनिवार्य रूप से 4 अलग-अलग राज्य हैं जिनके लिए आपको लाभ चाहिए। ये झुकाव कोण, झुकाव दर, गति और स्थिति हैं।


LQR (रैखिक द्विघात नियामक) इन लाभों को डिजाइन करने की एक विधि है (आपके सिस्टम के रैखिक-राज्य-प्रतिनिधित्व को प्राप्त करने के बाद)। यदि आपके पास एक राज्य अंतरिक्ष प्रतिनिधित्व नहीं है (आप शायद नहीं), तो आप गति के समीकरण प्राप्त कर सकते हैं और मापदंडों को माप सकते हैं। यदि आपके पास एक राज्य स्थान प्रतिनिधित्व नहीं है, तो आपको केवल मैन्युअल रूप से लाभ (एलक्यूआर के बिना या पोल प्लेसमेंट जैसे अन्य तरीकों के बिना) ट्यून करना चाहिए ।


ट्यूनिंग लाभ मैन्युअल रूप से:

झुकाव कोण, स्थिति / गति और पहिया टोरों को मानते हुए सभी को आगे (यदि सकारात्मक) निर्देशित किया जाता है, तो आप अपने झुकाव कोण और झुकाव की दर पर सकारात्मक लाभ चाहते हैं, साथ ही स्थिति और गति पर एक सकारात्मक लाभ प्राप्त करते हैं।

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

स्थिति / गति नियंत्रण दोनों राज्यों को शून्य पर नियंत्रित करेगा। कुछ अन्य मूल्य को नियंत्रित करने के लिए, आपको केवल नियंत्रक (जैसे वर्तमान गति - गति संदर्भ) में फीड करने से पहले राज्यों को उनकी त्रुटियों से बदलकर एक संदर्भ ट्रैकिंग नियंत्रक की आवश्यकता होती है।

Yaw का नियंत्रण स्वतंत्र रूप से किया जा सकता है (मुख्य संतुलन / गति / स्थिति नियंत्रक में जोड़े गए व्हील टोर के अंतर के साथ)।


9

मेरा मानना ​​है कि इस समस्या का सबसे लोकप्रिय समाधान एक एलक्यूआर नियंत्रक है। आप जिस समस्या को हल करने की कोशिश कर रहे हैं, वह उलटी पेंडुलम समस्या है । उन कीवर्ड का उपयोग करते हुए, आपको Google के किसी ओपन-सोर्स कोड में सक्षम होना चाहिए। अगली समस्या आपके आवेदन (वजन, मोटर टोक़, आदि ...) के लिए सबसे अधिक प्रासंगिक भौतिकी मात्रा की मैपिंग होगी।


5

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

कुछ साल पहले मैंने इसका इस्तेमाल अपने ओडोमेट्री के आधार पर दो पहियों वाले लेगो माइंडस्टॉर्म रोबोट को नियंत्रित करने के लिए किया था और यह काफी अच्छा काम करता था। इसे घूमने के लिए, आपको निर्धारित बिंदुओं के साथ खेलना होगा।

बेशक, बाद में आप पहले उल्लेख किए गए एलक्यूआर जैसे अधिक उन्नत नियंत्रण कानूनों का उपयोग करके अपने नियंत्रक (स्थिरता, मजबूती आदि) की गुणवत्ता में सुधार कर सकते हैं।

सौभाग्य!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.