ПИД, настраивающийся с неуверенностью отслеживания уставки и объекта

Этот пример показывает, как использовать Simulink® Design Optimization™, чтобы отследить ссылочный сигнал и оптимизировать ответ с неуверенностью в модели объекта управления. Модель объекта управления состоит из передаточной функции объекта и включает блок Saturation и блок Rate Limits. Чтобы просмотреть результаты, используйте следующие шаги.

Откройте модель pidtrack_demo с помощью команды ниже и запустите симуляцию. Симуляция производит неоптимизированный переходной процесс и исходные данные для оптимизации.

open_system('pidtrack_demo')

Дважды кликните блок Scope, чтобы просмотреть неоптимизированный переходной процесс.

Дважды кликните блок Step Response Specifications, чтобы просмотреть ограничения на ответ объекта, включая время нарастания, время установления и максимальное перерегулирование.

Дважды кликните блок Reference Tracking Specifications, чтобы просмотреть ссылочный сигнал, что контроллер должен отследить.

Можно запустить Response Optimization Tool с помощью меню Analysis в Simulink или команды sdotool в MATLAB. Можно запустить предварительно сконфигурированную задачу оптимизации в Response Optimization Tool первым открытием модель и путем двойного клика на оранжевом блоке в нижней части модели. От Response Optimization Tool нажмите кнопку Plot Model Response, чтобы моделировать модель и показать, как хорошо первоначальный проект удовлетворяет конструктивные требования.

Сплошные линии в графиках указывают на ответ объекта, не рассматривая неуверенности, и пунктирные линии указывают на неопределенные ответы.

Мы запускаем оптимизацию путем нажатия кнопки Optimize от Response Optimization Tool.

Настроенные параметры являются усилениями ПИД-регулятора Kp, Ki и Kd. Параметры объекта a1 и a2 только известны в 10% (неуверенность).

Оптимизация стремится минимизировать разрыв между фактическими и идеальными ответами для номинальной стоимости (сплошные линии) и значения min (пунктирные линии) / макс. значения (пунктирные линии) a1 и a2.

Графики обновляются, чтобы указать, что конструктивные требования теперь удовлетворены.

% Close the model
bdclose('pidtrack_demo')