Обратный маятник — различия между версиями
(→Модель) |
|||
(не показано 15 промежуточных версий этого же участника) | |||
Строка 15: | Строка 15: | ||
На рисунке представлена реализация модели в программном пакете simulink. | На рисунке представлена реализация модели в программном пакете simulink. | ||
В схему добавлено запаздывающее звено, которое эмитирует задержку в управлении, вызванной скоростью работы контроллера. | В схему добавлено запаздывающее звено, которое эмитирует задержку в управлении, вызванной скоростью работы контроллера. | ||
− | [[File:TSxame.png|600px|none]] | + | [[File:TSxame.png|600px|none]] |
− | + | Можно загрузить [[Media:Pendulum4.zip|модель для simulink]] | |
===Нахождение коэффициентов регулятора методом подбора=== | ===Нахождение коэффициентов регулятора методом подбора=== | ||
Строка 27: | Строка 27: | ||
находим коэффициенты a=11.5 L=0.13 T = 0.5c | находим коэффициенты a=11.5 L=0.13 T = 0.5c | ||
пользуемся формулой [[File:Image266.gif|none]] находим K_p = 26 отклик на воздействие | пользуемся формулой [[File:Image266.gif|none]] находим K_p = 26 отклик на воздействие | ||
− | + | [[File:Founda pend.png|400px|none]] | |
− | ==Пример сохранения устойчивости== | + | ===Пример сохранения устойчивости=== |
Пример сохранения устойчивости, при отклонении маятника на 10 градусов от вертикали. | Пример сохранения устойчивости, при отклонении маятника на 10 градусов от вертикали. | ||
− | [[ | + | [[Изображение:PictOfbalance.png|thumb|500px|center|верхний график--угол отклонения от вертикали. средний положение каретки, нижний-- приложенная сила, Н]] |
− | |||
− | |||
===Нахождение коэффициентов регулятора с помощью генетического ралгоритма=== | ===Нахождение коэффициентов регулятора с помощью генетического ралгоритма=== | ||
Строка 53: | Строка 51: | ||
== Ссылки == | == Ссылки == | ||
* [https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B0%D1%8F%D1%82%D0%BD%D0%B8%D0%BA Обратный маятник]+ | * [https://ru.wikipedia.org/wiki/%D0%9E%D0%B1%D1%80%D0%B0%D1%82%D0%BD%D1%8B%D0%B9_%D0%BC%D0%B0%D1%8F%D1%82%D0%BD%D0%B8%D0%BA Обратный маятник]+ | ||
− | * [http://www.cta.ru/cms/f/374303.pdf | + | * [http://www.cta.ru/cms/f/374303.pdf ПИД-регуляторы:вопросы реализации] |
− | вопросы реализации] | + | * [http://www.bookasutp.ru/Chapter5_1_4.aspx Идентификация в замкнутом и разомкнутом контуре] |
− | * [http://www.bookasutp.ru/Chapter5_1_4.aspx |
Текущая версия на 17:59, 27 ноября 2015
Содержание
- 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 Политех, проверить работу различных алгоритмов на практике