Обратный маятник
Содержание
- 1 Цель проекта
- 2 Проектная команда
- 3 Модель
- 4 Нахождение коэффициентов регулятора методом подбора
- 5 Нахождение коэффициентов регулятора по методу Зиглера и Никольса
- 6 Пример сохранения устойчивости
- 7 Нахождение коэффициентов регулятора с помощью генетического ралгоритма
- 8 Планы развития проекта
- 9 Ссылки
Цель проекта[править]
Написание ряда алгоритмов для балансировки обратного маятника
Проектная команда[править]
- Руководитель проекта - Лобода Ольга Сергеевна
- Опочанский Александр (разработка модели обратного маятника)
- Поцелуев Павел (разработка алгоритмов балансировки)
Модель[править]
Аналитически обратный маятник описывается следующей системой дифференциальных уравнений
Для изучения обратного маятника была разработана модель в системе Matlab Simulink. На данный момент в модели реализован алгоритм балансировки с помощью отдельных ПИД-регуляторов для контроля за устойчивостью маятника и положением каретки. На рисунке представлена реализация модели в программном пакете simulink. В схему добавлено запаздывающее звено, которое эмитирует задержку в управлении, вызванной скоростью работы контроллера.
Можно загрузить модель для simulink
Нахождение коэффициентов регулятора методом подбора[править]
Сначала подбирается коэффициент Kp с тем, чтобы системы выходила на предел устойчивости, как только значение получено, от него берётся 0,6 и вычисляются остальные значения коэффициентов регулятора.
Нахождение коэффициентов регулятора по методу Зиглера и Никольса[править]
подробно метод изложен на странице 88 документа http://www.cta.ru/cms/f/374303.pdf система должна быть устойчивой, поэтому сначала коэффициенты подбираются для маятника в нижнем положении находим коэффициенты a=11.5 L=0.13 T = 0.5c
пользуемся формулой находим K_p = 26 отклик на воздействиеПример сохранения устойчивости[править]
Пример сохранения устойчивости, при отклонении маятника на 10 градусов от вертикали.
Нахождение коэффициентов регулятора с помощью генетического ралгоритма[править]
Был реализован алгоритм автоматической настройки ПИД-регулятора с помощью генетических алгоритмов (использовался toolbox gatool в системе Matlab). По ссылке можно скачать архив с файлами, необходимыми для экспериментов с моделью.
Ниже на видео показана реакция системы (с настроенными ПИД-регуляторами) на приложенный импульс, справа изображен график сходимости генетического алгоритма
Планы развития проекта[править]
- Нами также был реализован нейроэволюционный алгоритм на языке Java. В будущем планируется применить его для балансировки обратного маятника (возможно, для этого понадобится реализовать модель маятника на Java) и провести сравнительный анализ различных алгоритмов балансировки
- Реализовать модель обратного маятника в Fablab Политех, проверить работу различных алгоритмов на практике