exponenta event banner

Оптимизация конструкции для удовлетворения пользовательских требований к сигналу (GUI)

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

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

    load sldo_model1_custom_signal_session
    sdotool(SDOSessionData);

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

    Также открывается оптимизатор ответа, настроенный со следующими настройками:

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

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

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

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

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

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

  2. Укажите сигнал для регистрации. К этому зарегистрированному сигналу применяется пользовательское требование.

    1. Выберите «Создать» > «Сигнал».

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

    2. В окне Модель симулятора (Simulink model) щелкните вывод Controller блок.

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

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

    4. В поле Signal set (Набор сигналов) введите PlantActuator.

      Нажмите кнопку ОК. Новая переменная PlantActuator появляется в области Данные.

  3. Укажите пользовательское требование для применения к сигналу.

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

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

    • Возвращает целевое значение, которое должно быть свернуто.

    Совет

    Для просмотра содержимого этой функции введите edit sldo_model1_minimize_energy .

    1. Выберите «Создать» > «Пользовательское требование».

      Откроется окно, в котором можно указать пользовательское требование.

    2. Определить MinimizeEnergy в качестве имени.

    3. Определить @sldo_model1_minimize_energy в качестве функции.

    4. Выбрать Minimize the function output в качестве типа.

  4. В области «Выбор сигналов и систем для ограничения» выберите PlantActuator , чтобы связать пользовательское требование с этим сигналом.

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

  5. Щелкните Оптимизировать (Optimize).

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

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

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

Связанные темы