Разработайте оптимизацию, чтобы отследить ссылочный сигнал (графический интерфейс пользователя)

Этот пример показывает, как оптимизировать параметры контроллера, чтобы отследить ссылочный сигнал с помощью инструмента Response Optimization. Вы задаете ссылочный сигнал, не добавляя блоков Проверки в модель.

Образцовая структура

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

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

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

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

  • Подсистема объекта является системой второго порядка с задержкой. Это содержит Передаточную функцию и Транспортные блоки Задержки.

Конструктивные требования

Образцовый вывод должен отследить ссылочный сигнал y=1exp(0.1×t), где t время.

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

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

    sys = 'sldo_model1';
    open_system(sys);

    Чтобы узнать больше о модели, смотрите Образцовую Структуру.

  2. Чтобы открыть инструмент Response Optimization, выберите Analysis> Response Optimization.

  3. Выберите образцовый сигнал отследить ссылочный сигнал.

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

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

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

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

    Нажмите OK, чтобы создать переменную PlantOutput. Это появляется в области Data инструмента Response Optimization.

  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.

      Новая ссылка signalref_sig создается и появляется в области Data. Окно Response Optimization обновляет, чтобы построить ссылочный сигнал.

Задайте переменные проекта

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

Во вкладке Response Optimization:

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

    В Design Variables Set выпадающий список выбирают New.

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

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

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

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

    • Variable — 'ParameterName'

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

    • Minimum и Maximum — Границы параметра

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

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

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

Оптимизируйте образцовый ответ

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

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

  2. Нажмите Optimize.

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

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

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

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

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

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

Похожие темы