Эта тема показывает, как задать пользовательские требования в инструменте Response Optimization.
Можно задать пользовательские требования, такие как минимизация системной энергии. Задавать пользовательские требования:
В инструменте Response Optimization, в New выпадающее меню, выбирают Custom Requirement. Диалоговое окно Create Requirement открывается, где вы задаете пользовательское требование.
Задайте имя требования в Name.
Задайте тип требования в Type выпадающее меню.
Задайте имя функции, которое содержит пользовательское требование в Function. Поле должно быть определено функцией указатель с помощью @
. Функция должна быть на пути MATLAB®. Щелкните, чтобы рассмотреть или отредактировать функцию.
Если функция не существует, нажатие открывает файл MATLAB шаблона. Используйте этот файл, чтобы реализовать пользовательское требование. Именем функции по умолчанию является myCustomRequirement
.
(Необязательно), Чтобы препятствовать тому, чтобы решатель рассмотрел определенные комбинации параметра, выберите Error if constraint is violated. Используйте эту опцию в ограничениях только для параметра.
Во время итерации оптимизации решатель сначала оценивает требования с этой выбранной опцией.
Если ограничение нарушено, пропуски решателя, оценивающие какие-либо остающиеся требования и доходы к следующей итерации.
Если ограничение не нарушено, решатель оценивает остающиеся требования для текущей итерации. Если какое-либо из остающихся требований связало сигналы или системы, то решатель симулирует модель.
Для получения дополнительной информации смотрите Симуляцию модели Пропуска На основе Ограничительного Нарушения Параметра (графический интерфейс пользователя).
Если вы устанавливаете этот флажок, то не задавайте сигналы или системы к связанному. Если вы действительно задаете сигналы или системы, то этот флажок проигнорирован.
(Необязательно) Задайте сигнал или систему или обоих, чтобы быть связанными.
Можно применить это требование к сигналам модели, или линеаризация модели Simulink® (требует Simulink Control Design™), или оба.
Нажмите Select Signals and Systems to Bound (Optional), чтобы просмотреть сигнал и область выбора ввода-вывода линеаризации.
Применять это требование к сигналу модели:
В области Signal выберите регистрируемый сигнал, к которому вы примените требование.
Если вы уже выбрали сигнал регистрировать, как описано в Задают Сигналы Регистрировать, это появляется в списке. Установите соответствующий флажок.
Если вы не выбрали сигнал регистрировать:
Щелкнуть. Диалоговое окно Create Signal Set открывается, где вы задаете регистрируемый сигнал.
В окне модели Simulink кликните по сигналу, в который вы хотите добавить требование.
Диалоговое окно Create Signal Set обновляет и отображается имя блока и номера порта, где выбранный сигнал расположен.
Выберите сигнал и нажатие кнопки, чтобы добавить его в набор сигнала.
В поле Signal set введите имя для выбранного набора сигнала.
Нажмите OK. Новая переменная, с указанным именем, появляется в области Data инструмента Response Optimization.
Применять это требование к линейной системе:
Задайте время симуляции, в котором модель линеаризуется в Snapshot Times. В течение нескольких раз снимка состояния симуляции задайте вектор.
Выберите набор ввода/вывода линеаризации из области Linearization I/O.
Если вы уже создали набор ввода/вывода линеаризации, это появляется в списке. Установите соответствующий флажок.
Если вы не создали набор ввода/вывода линеаризации, щелкните, чтобы открыть Создать диалоговое окно набора ввода-вывода линеаризации. Для получения дополнительной информации об использовании этого диалогового окна смотрите, Создают Наборы ввода-вывода Линеаризации.
Для получения дополнительной информации о линеаризации смотрите то, Что Линеаризация? (Simulink Control Design).
Нажмите OK.
Новая переменная, с указанным именем, появляется в области Data инструмента Response Optimization. Графический дисплей требования также появляется в окне инструментов Оптимизации Ответа.