Проектируйте оптимизацию для отслеживания опорного сигнала (GUI)

В этом примере показов, как оптимизировать параметры контроллера для отслеживания опорного сигнала с помощью Response Optimizer. Вы задаете опорный сигнал, не добавляя никаких блоков Check к модели.

Структура модели

Модель sldo_model1 включает следующие блоки:

  • Controller блок, ПИД-регулятор, управляет выходом Plant подсистема.

  • Unit Step блок применяет шаговый вход.

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

  • Plant подсистема является системой второго порядка с задержкой. Он содержит блоки Передаточная функция и Transport Delay.

Требования к проектированию

Выходные данные модели должны отслеживать опорный сигнал y=1exp(0.1×t), где t время.

Задайте опорный сигнал

  1. Откройте Simulink® модель.

    sys = 'sldo_model1';
    open_system(sys);

    Чтобы узнать больше о модели, см. «Структура модели».

  2. Чтобы открыть Response Optimizer, в окне модели Simulink, на вкладке Apps, в галерее, под Control Systems, выберите Response Optimizer.

  3. Выберите сигнал модели, чтобы отследить опорный сигнал.

    1. В раскрывающемся списке New выберите Signal, чтобы открыть окно Create Signal Set.

    2. Чтобы отобразить сигнал в окне, щелкните выход блока Plant в окне модели Simulink.

    3. Выберите сигнал и щелкните, чтобы добавить его к набору сигналов.

    4. В Signal set введите PlantOutput как имя выбранного сигнала.

    Щелкните OK, чтобы создать переменную PlantOutput. Оно появляется в Data области Response Optimizer.

  4. Задайте опорный сигнал для отслеживания выхода модели.

    1. В раскрывающемся списке New выберите Signal Tracking, чтобы открыть окно Create Requirement.

    2. В Name поле редактирования введите ref_sig.

    3. В Time vector поле редактирования введите linspace(0,50,200)

    4. В Amplitude поле редактирования введите 1-exp(-0.1*linspace(0,50,200)).

      Оставьте Tracking Method следующим SSE что означает, при каждой итерации оптимизации решатель пытается уменьшить сумму квадратичных невязок между моделируемым выходом и опорным сигналом.

    5. Нажмите Update reference signal data.

    6. В области Specify Signal to Track Reference Signal установите флажок, соответствующий сигналу, выбранному на предыдущем шаге, и нажмите OK.

      Новый сигнал уставки ref_sig создается и появляется в области Data. Окно Оптимизации отклика обновляется, чтобы построить график опорного сигнала.

Задайте конструктивные переменные

Когда вы оптимизируете ответ модели, программное обеспечение изменяет значения переменных проекта, чтобы соответствовать требованиям проекта.

На вкладке Response Optimization:

  1. Создайте новый набор переменных проектов.

    В раскрывающемся списке Design Variables Set выберите New.

    В окне Create Проекта Variables Set показаны параметры модели, которые можно использовать как проект переменные, и указаны их местоположения в подсистемах модели.

  2. Добавьте параметры в набор конструктивных переменных.

    Выберите Kd, Ki, и Kp, и щелкните, чтобы добавить выбранные параметры.

    В списке переменных проектов отображаются следующие настройки параметра:

    • Variable - Имя параметра

    • Value - Текущее значение параметров

    • Minimum и Maximum - Ограничения параметра

    • Scale - Масштабный коэффициент для параметра

  3. Ограничьте параметры положительными значениями. Для этого введите 0 для минимального значения каждого параметра в соответствующем поле Minimum и нажмите Enter на клавиатуре.

    Нажмите OK. Новая конструктивная переменная DesignVars создается и появляется в Data области Response Optimizer.

Оптимизация отклика модели

  1. Чтобы просмотреть ответ текущей модели, нажмите Plot Model Response.

    График показывает, что реакция модели не отслеживает опорного сигнала.

  2. Нажмите Optimize.

    При каждой итерации решатель оптимизации Gradient descent (fmincon) изменяет параметры контроллера, чтобы минимизировать ошибку между симулированным откликом и опорным сигналом. Чтобы узнать больше, см., Как алгоритм оптимизации формулирует задачи минимизации.

    Сообщение Optimization converged в отчете о ходе оптимизации указывается, что метод оптимизации нашел решение, которое отслеживает опорный сигнал в пределах допусков и параметра границ. Для получения дополнительной информации о выходах, отображаемых в Отчете об Прогрессе Оптимизации, смотрите Итерационное отображение.

  3. Проверьте, что ответ отслеживает опорный сигнал, наблюдая амплитуду от графика времени.

    Оптимизированный ответ тесно отслеживает опорный сигнал.

  4. Чтобы просмотреть оптимизированные значения параметров, нажмите DesignVars в Data области Response Optimizer. Просмотрите обновленные значения в области Variable Preview.

    Оптимизированные значения конструктивных переменных автоматически обновляются в модели Simulink.

Похожие темы