exponenta event banner

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

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

  1. Загрузите сохраненный сеанс инструмента Response Optimization.

    load sldo_model1_custom_signal_session
    sdotool(SDOSessionData);

    Следующая модель Simulink® открывается.

    Инструмент Response Optimization, сконфигурированный со следующими настройками, также открывается:

    • Характеристики переходного процесса, заданные на выводе блока Plant, что образцовый вывод должен удовлетворить:

      • Максимальное перерегулирование 5%

      • Максимальное время нарастания 10 секунд

      • Максимальное время установления 30 секунд

    • Разработайте переменный набор с параметрами контроллера Kp, Ki и Kd. Эти параметры имеют минимальное значение 0.

    • Переменные для требований шага (PlantResponse), регистрируемый сигнал (PlantOutput) и переменные проекта (DesignVars), которые появляются в области Data.

  2. Задайте сигнал регистрировать. Вы применяете пользовательское требование к этому регистрируемому сигналу.

    1. Выберите New> Signal.

      Окно открывается, где вы выбираете сигнал регистрировать.

    2. В окне модели Simulink кликните по выводу блока Controller.

      Окно обновляет, чтобы отобразить выбранный сигнал.

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

    4. В Signal set введите PlantActuator.

      Нажмите OK. Новая переменная PlantActuator появляется в области Data.

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

    Пользовательское требование вызывает целевую функцию sldo_model1_minimize_energy, который возвращает энергию в сигнале PlantActuator. Энергия сигнала минимизирована. Эта функция принимает:

    • data входного параметра, который является структурой с полями для переменных проекта в области Data. Сигналы регистрируются для номинальных и неопределенных значений параметров, если существует кто-либо.

    • Возвращает объективное значение, которое будет минимизировано.

    Совет

    Чтобы видеть содержимое этой функции, введите edit sldo_model1_minimize_energy.

    1. Выберите New> Custom Requirement.

      Окно открывается, где вы задаете пользовательское требование.

    2. Задайте MinimizeEnergy как Name.

    3. Задайте @sldo_model1_minimize_energy как Function.

    4. Выберите Minimize the function output как Type.

  4. В области Select Signals and Systems to Bound установите флажок PlantActuator, чтобы сопоставить пользовательское требование с тем сигналом.

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

  5. Нажмите Optimize.

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

  6. Закройте модель.

    setOption(sdotool('sldo_model1'),'NoPromptClose',true)
    bdclose('sldo_model1')

Похожие темы