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

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

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

Модель watertank_stepinput Simulink® включает нелинейный Системный объект Бака для воды и контроллер PI в одноконтурной системе с обратной связью.

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

Эти данные показывают Систему Бака для воды.

Вода вводит корпус наверху на уровне, пропорциональном открытию клапана. Открытие клапана пропорционально напряжению, V, применился к насосу. Вода уезжает посредством открытия в основе корпуса на уровне, который пропорционален квадратному корню из высоты воды, H. Присутствие квадратного корня в уровне потока воды приводит к нелинейному объекту.

Следующая таблица описывает переменные, параметры, дифференциальные уравнения, состояния, входные параметры и выходные параметры Системы Бака для воды.

Переменные

H является высотой воды в корпусе.

Vol является объемом воды в корпусе.

V является напряжением, применился к насосу.

Параметры

A является площадью поперечного сечения корпуса.

b является константой, связанной со скоростью потока жидкости в корпус.

a является константой, связанной со скоростью потока жидкости из корпуса.

Дифференциальное уравнение

ddtVol=AdHdt=bVaH

СостоянияH
Входные параметрыV
Выходные параметры H

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

Высота воды в корпусе, H, должна удовлетворить требования ответа следующего шага:

  • Время нарастания меньше чем 2,5 секунды

  • Время установления меньше чем 20 секунд

  • Перерегулирование меньше чем 5%

Задайте требования переходного процесса

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

    sys = 'watertank_stepinput';
    open_system(sys);

  2. Добавьте блок Check Step Response Characteristics в модель.

    В окне модели Simulink выберите View> Library Browser. Расширьте узел Simulink Design Optimization и выберите Signal Constraints.

    Перетащите мышью блок Check Step Response Characteristics в окно модели и соедините блок с выводом. Блок соединяется с сигналом, для которого вы хотите задать конструктивные требования.

  3. Задайте требования переходного процесса.

    Дважды кликните блок Check Step Response Characteristics, чтобы открыть Параметры блоков Приемника: диалоговое окно Check Step Response Characteristics.

    • В Rise time (seconds) введите 2.5.

    • В Settling time (seconds) введите 20.

    • В % Overshoot введите 5.

    • В Initial value введите 1.

    • В Final value введите 2.

    Нажмите OK.

Вместо того, чтобы задать требования временного интервала в блоках Проверки, можно задать их в инструменте Response Optimization, не добавляя блоки. Для примера, который использует этот подход, смотрите Оптимизацию Проекта, чтобы Отследить Ссылочный Сигнал (графический интерфейс пользователя).

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

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

  1. Откройте инструмент Response Optimization для модели.

    В окне модели Simulink выберите Analysis> Response Optimization.

    Также в диалоговом окне Sink Block Parameters, нажмите Response Optimization.

    Область, ограниченная сегментами черной линии в Time plot 1, показывает требования переходного процесса, чтобы вы задали в блоке Check Step Response Characteristics.

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

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

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

    Примечание

    В вашем приложении, если параметры модели вы интересуетесь оптимизацией, не перечислены в диалоговом окне Create Design Variables Set, сначала задают эти параметры как переменные. Смотрите, Добавьте Параметры модели как Переменные для Оптимизации.

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

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

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

    • Variable — Имя переменной

    • Значение Текущее значение переменных

    • Minimum и Maximum — Переменные границы

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

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

    Нажмите OK. Новая переменная DesignVars проекта создается и появляется в области Data инструмента Response Optimization. Можно кликнуть по переменной, чтобы просмотреть ее содержимое в области Variable Preview.

Если ваша модель имеет много параметров, можно сначала использовать анализ чувствительности, чтобы определить самые влиятельные параметры, чтобы оптимизировать или получить исходные предположения для переменных проекта. Чтобы открыть Sensitivity Analysis tool, во вкладке Response Optimization, нажимают Sensitivity Analysis. В инструменте Sensitivity Analysis можно исследовать пробел проекта оптимизации ответа путем изменения переменных проекта, идентифицировать параметры, что большая часть влияния задача оптимизации, и вычисляет начальные значения.

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

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

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

  2. Нажмите Optimize.

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

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

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

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

  4. Просмотрите оптимизированные значения параметров. Нажмите DesignVars in Model Workspace и просмотрите обновленные значения в области Variable Preview.

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

Сохраните сеанс

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

В инструменте Response Optimization, во вкладке Response Optimization, в Save Session выпадающий список, выбирают Save to model workspace.

В окне Save Session задайте имя сеанса в поле Session.

Совет

Чтобы открыть сохраненный сеанс, в инструменте Response Optimization для модели, в Open Session выпадающий список, кликают по опции Open from model workspace.

Похожие темы