Я прочитав деякі документи для управління нелінійними системами (наприклад, нелінійний маятник). Існує кілька підходів до орієнтації на нелінійні системи. Найпоширенішими з них є регулятори лінійного зворотного зв’язку , регулювання зворотного кроку та ковзання .
У моєму випадку я зробив теоретичні та практичні частини управління нелінійною моделлю простого маятника плюс інші проблеми маніпуляторів в C ++. Для маятника я використав резервний контролер для вирішення задачі відстеження кутового переміщення та швидкості. Результати є
де і .
Результати хороші. Однак налаштування контролера забирає багато часу. Більшість статей використовують генетичні алгоритми для настройки своїх контролерів, таких як PD, PID та резервні контролери. Я не знаю в цій галузі, і я сподіваюся, що хтось пролиє трохи світла на цю концепцію, бажано, якщо є зразок MATLAB, принаймні для контролю простого маятника.
Поки я розробив простий графічний інтерфейс в C ++ / Qt, щоб настроїти контролер вручну. На малюнку нижче відповідь контролера для крокової функції.