मैंने nonlinear सिस्टम (जैसे nonlinear पेंडुलम) को नियंत्रित करने के लिए कुछ पेपर पढ़े हैं । Nonlinear सिस्टम को लक्षित करने के लिए कई दृष्टिकोण हैं। सबसे आम होते हैं प्रतिक्रिया linearizaing , backstepping , और मोड रपट नियंत्रकों।
मेरे मामले में, मैंने C ++ में एक साधारण पेंडुलम और अन्य मैनिपुलेटर्स समस्याओं के नॉनलाइन मॉडल को नियंत्रित करने के सैद्धांतिक और व्यावहारिक भागों को किया है। पेंडुलम के लिए, मैंने कोणीय विस्थापन और वेग के लिए ट्रैकिंग कार्य को हल करने के लिए एक बैकस्टैपिंग नियंत्रक का उपयोग किया है। परिणाम हैं
कहाँ पे तथा ।
परिणाम अच्छे हैं। हालांकि, नियंत्रक को ट्यूनिंग करने में समय लगता है। अधिकांश कागजात पीडी, पीआईडी और बैकस्टैपिंग कंट्रोलर जैसे अपने नियंत्रकों को ट्यूनिंग के लिए आनुवंशिक एल्गोरिदम का उपयोग करते हैं । मैं इस क्षेत्र में संघर्षरत हूं और मुझे उम्मीद है कि कोई इस अवधारणा पर कुछ प्रकाश डालेगा, अगर कोई साधारण पेंडुलम को नियंत्रित करने के लिए MATLAB नमूना है तो बेहतर होगा।
अब तक मैंने C ++ / Qt में एक साधारण GUI डिज़ाइन किया है ताकि कंट्रोलर को मैन्युअल रूप से ट्यून किया जा सके। नीचे दी गई तस्वीर में, चरण फ़ंक्शन के लिए नियंत्रक की प्रतिक्रिया।