Проверяйте, что сигнал удовлетворяет верхним и нижним границам в процессе моделирования
Simulink Design Optimization
Проверяйте, что сигнал удовлетворяет верхним и нижним границам в процессе моделирования:
Если всем границам удовлетворяют, блок ничего не делает.
Если связанному не удовлетворяют, блок утверждает, и предупреждающее сообщение появляется в подсказке MATLAB®. Можно также указать что блок:
Выполните выражение MATLAB.
Остановите симуляцию и подчеркните тот блок.
В процессе моделирования блок может также вывести логический сигнал утверждения:
Если всем границам удовлетворяют, сигнал верен (1
).
Если связанному не удовлетворяют, сигнал является ложным (0
).
Можно добавить Проверку Пользовательские блоки Границ на нескольких сигналах проверять, что они удовлетворяют границам.
Можно также построить границы на графике временной зависимости, чтобы графически проверить, что сигнал удовлетворяет границам.
Этот блок и другие блоки в тесте библиотеки Model Verification, что сигнал остается в заданных границах характеристики временного интервала. Когда модель не нарушает никого связанного, можно отключить блок путем очистки опции утверждения. Если вы изменяете модель, можно повторно позволить утверждению гарантировать, что изменения не заставляют модель нарушать связанное.
Если сигнал не удовлетворяет границам, можно оптимизировать параметры модели, чтобы удовлетворить границам. Если у вас есть программное обеспечение Simulink® Control Design™, можно добавить границы частотного диапазона те, которые Предвещают величину и оптимизируют ответ модели, чтобы удовлетворить и времени - и требованиям частотного диапазона.
Блок может использоваться во всех режимах симуляции в контроле сигналов, но только в Normal
или Accelerator
режим симуляции для оптимизации ответа.
Задача | Параметры |
---|---|
Задайте верхние и нижние границы к:
|
Во вкладке Bounds: |
Задайте опции утверждения (только, когда вы зададите верхние и нижние границы). |
Во вкладке Assertion: |
Открытый инструмент Response Optimization, чтобы оптимизировать ответ модели | Нажмите Response Optimization |
Постройте верхние и нижние границы | Нажмите Show Plot. |
Отобразите окно графика вместо диалогового окна Block Parameters при двойном клике по блоку. | Show plot on block open |
Проверяйте, что сигнал меньше чем или равен верхним границам, заданным в Times (seconds) и Amplitudes, в процессе моделирования. Программное обеспечение выводит предупреждение, если сигнал нарушает верхние границы.
Этот параметр используется в утверждении, только если Enable assertion во вкладке Assertion выбран.
Можно задать несколько верхних границ на различных сигналах модели. Границы также появляются на графике временной зависимости. Если вы очищаете Enable assertion, границы не используются в утверждении, но продолжают появляться на графике.
Значение по умолчанию: на
Проверяйте, что сигнал удовлетворяет заданным верхним границам в процессе моделирования.
Не проверяйте, что сигнал удовлетворяет заданным верхним границам в процессе моделирования.
Очистка этого параметра отключает верхние границы, и программное обеспечение прекращает проверять, что границам удовлетворяют в процессе моделирования. Ограниченные сегменты также greyed на графике.
Чтобы только просмотреть границы на графике, очистите Enable assertion.
Параметр: EnableUpperBound |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'on' |
Временной вектор для одного или нескольких сегментов верхней границы, заданных в секундах.
Задайте соответствующие амплитудные значения в Amplitudes.
Значение по умолчанию: [0 5; 5 10]
Должен быть задан как времена начала и конца:
Положительные конечные числа для сингла, связанного с одним ребром.
Матрица положительных конечных чисел для сингла, связанного с несколькими ребрами.
Например, введите [0.1 1;1 10]
для двух ребер время от времени [0.1 1] и [1 10].
Массив ячеек матриц с положительными конечными числами для нескольких границ.
Чтобы утверждать, что амплитудам, которые соответствуют временным векторам, удовлетворяют, выберите Include upper bound in assertion и Enable assertion.
Можно добавить или изменить времена начала и конца из окна графика:
Чтобы добавить новые временные векторы, щелкните правой кнопкой по желтой области по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в диалоговое окно Edit Bound. Задайте времена начала и конца нового ограниченного сегмента в столбце Time. Задайте соответствующие амплитуды в столбце Amplitude.
Чтобы изменить времена начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые времена в столбце Time.
Необходимо нажать Update Block прежде, чем симулировать модель.
Параметр: UpperBoundTimes |
Ввод: символьный вектор |
Значение: [0 5; 5 10] | positive finite numbers | matrix of positive finite numbers | matrix of positive finite numbers cell array of matrices with positive finite numbers . Должен быть задан в одинарных кавычках ('' ). |
Значение по умолчанию: [0 5; 5 10] |
Амплитудные значения для одного или нескольких сегментов верхней границы.
Задайте соответствующие времена начала и конца в Times (seconds).
Значение по умолчанию: [1.1 1.1; 1.01 1.01]
Должен быть задан как амплитуды начала и конца:
Конечные числа для сингла, связанного с одним ребром
Матрица конечных чисел для сингла, связанного с несколькими ребрами.
Например, введите [0 1; 2 3]
для двух ребер в амплитудах [0 1] и [2 3].
Массив ячеек матриц с конечными числами для нескольких границ
Чтобы утверждать, что амплитудным границам удовлетворяют, выберите Include upper bound in assertion и Enable assertion.
Можно добавить или изменить амплитуды из окна графика:
Чтобы добавить новые амплитуды, щелкните правой кнопкой по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в диалоговое окно Edit Bound. Задайте амплитуды начала и конца нового ограниченного сегмента в столбце Amplitude. Задайте соответствующие времена начала и конца в столбце Time.
Чтобы изменить амплитуды начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые амплитуды в столбце Amplitude.
Необходимо нажать Update Block прежде, чем симулировать модель.
Параметр: UpperBoundAmplitudes |
Ввод: символьный вектор |
Значение: [1.1 1.1; 1.01 1.01] | finite numbers | matrix of finite numbers | cell array of matrices with finite numbers . Должен быть задан в одинарных кавычках ('' ). |
Значение по умолчанию: [1.1 1.1; 1.01 1.01] |
Проверяйте, что сигнал больше или равен нижним границам, заданным в Times (seconds) и Amplitudes, в процессе моделирования.
Этот параметр используется в утверждении, только если Enable assertion во вкладке Assertion выбран.
Можно задать несколько нижних границ на различных сигналах модели. Границы также появляются на графике временной зависимости. Если вы очищаете Enable assertion, границы не используются в утверждении, но продолжают появляться на графике.
Значение по умолчанию: 'off'
Проверяйте, что сигнал удовлетворяет заданным нижним границам в процессе моделирования.
Не проверяйте, что сигнал удовлетворяет заданным нижним границам в процессе моделирования.
Очистка этого параметра отключает нижние границы, и программное обеспечение прекращает проверять, что границам удовлетворяют в процессе моделирования. Ограниченные сегменты также greyed на графике.
Чтобы только просмотреть границы на графике, очистите Enable assertion.
Параметр: EnableLowerBound |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'off' |
Временной вектор для одного или нескольких сегментов нижней границы, заданных в секундах.
Задайте соответствующие амплитудные значения в Amplitudes
Значение по умолчанию: []
Должен быть задан как времена начала и конца:
Положительные конечные числа для сингла, связанного с одним ребром.
Матрица положительных конечных чисел для сингла, связанного с несколькими ребрами.
Например, введите [0.1 1;1 10]
для двух ребер время от времени [0.1 1] и [1 10].
Массив ячеек матриц с положительными конечными числами для нескольких границ.
Чтобы утверждать, что амплитудам, которые соответствуют временным векторам, удовлетворяют, выберите Include lower bound in assertion и Enable assertion.
Можно добавить или изменить времена начала и конца из окна графика:
Чтобы добавить новые временные векторы, щелкните правой кнопкой по желтой области по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в диалоговое окно Edit Bound. Задайте времена начала и конца нового ограниченного сегмента в столбце Time. Задайте соответствующие амплитуды в столбце Amplitude.
Чтобы изменить времена начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые времена в столбце Time.
Необходимо нажать Update Block прежде, чем симулировать модель.
Параметр: LowerBoundTimes |
Ввод: символьный вектор |
Значение: [] | positive finite numbers | matrix of positive finite numbers | cell array of matrices with positive finite numbers . Должен быть задан в одинарных кавычках ('' ). |
Значение по умолчанию: [] |
Амплитудные значения для одного или нескольких сегментов нижней границы.
Задайте соответствующие времена начала и конца в Times (seconds).
Значение по умолчанию: []
Должен быть задан как амплитуды начала и конца:
Конечные числа для сингла, связанного с одним ребром
Матрица конечных чисел для сингла, связанного с несколькими ребрами.
Например, введите [0 1; 2 3]
для двух ребер в амплитудах [0 1] и [2 3].
Массив ячеек матриц с конечными числами для нескольких границ
Чтобы утверждать, что амплитудным границам удовлетворяют, выберите Include lower bound in assertion и Enable assertion.
Можно добавить или изменить амплитуды из окна графика:
Чтобы добавить новые амплитуды, щелкните правой кнопкой по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в диалоговое окно Edit Bound. Задайте амплитуды начала и конца нового ограниченного сегмента в столбце Amplitude. Задайте соответствующие времена начала и конца в столбце Time.
Чтобы изменить амплитуды начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые амплитуды в столбце Amplitude.
Необходимо нажать Update Block прежде, чем симулировать модель.
Параметр: LowerBoundAmplitudes |
Ввод: символьный вектор |
Значение: [] | finite numbers | matrix of finite numbers | cell array of matrices with finite numbers . Должен быть задан в одинарных кавычках ('' ). |
Значение по умолчанию: [] |
Убедитесь, что программное обеспечение симулирует модель, чтобы произвести выход в обметанных краях. Симуляция модели в обметанных краях препятствует тому, чтобы решатель симуляции пропустил обметанный край, не утверждая, что сигнал удовлетворяет, это связало.
Для получения дополнительной информации об обнаружении пересечения нулем смотрите Обнаружение Пересечения нулем (Simulink) в Руководстве пользователя Simulink.
Значение по умолчанию: на
Симулируйте модель в обметанных краях
Эта установка проигнорирована, если решатель Simulink фиксируется шаг.
Не симулируйте модель в обметанных краях. Программное обеспечение не может вычислить выход в обметанных краях.
Параметр: ZeroCross |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'on' |
Позвольте блоку проверять, что границам, заданным и включенным для утверждения во вкладку Bounds, удовлетворяют в процессе моделирования. Утверждение перестало работать, если связанному не удовлетворяют. Предупреждение, сообщая об отказе утверждения, появляется в посдказке MATLAB.
Если утверждение перестало работать, можно опционально указать что блок:
Выполните выражение MATLAB, заданное в Simulation callback when assertion fails (optional).
Остановите симуляцию и подчеркните тот блок путем выбора Stop simulation when assertion fails.
Этот параметр не оказывает влияния, если вы не задаете границ.
Очистка этого параметра отключает утверждение, т.е. блок больше не проверяет, что заданным границам удовлетворяют. Значок блока также обновляется, чтобы указать, что утверждение отключено.
В модели Simulink, в диалоговом окне Configuration Parameters, параметр Model Verification block enabling позволяет вам, чтобы включить или отключить все блоки верификации модели в модели, независимо от установки этой опции в блоке.
Значение по умолчанию: на
Проверяйте, что границам, включенным для утверждения во вкладку Bounds, удовлетворяют в процессе моделирования. Предупреждение, сообщая об отказе утверждения, выведено в посдказке MATLAB, если границы нарушены.
Не проверяйте, что границам, включенным для утверждения, удовлетворяют в процессе моделирования.
Этот параметр включает:
Simulation callback when assertion fails (optional)
Stop simulation when assertion fails
Параметр: enabled |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'on' |
Выражение MATLAB, чтобы выполниться, когда утверждение перестало работать.
Поскольку выражение выполнено в рабочем пространстве MATLAB, задайте все переменные, используемые в выражении в той рабочей области.
Значение по умолчанию: []
Выражение MATLAB.
Enable assertion включает этот параметр.
Параметр: callback |
Ввод: символьный вектор |
Значение: '' | MATLAB expression |
Значение по умолчанию: '' |
Остановите симуляцию, когда связанное, заданное во вкладке Bounds, будет нарушено в процессе моделирования, т.е. сбои утверждения.
Если при запуске симуляцию от окна модели Simulink, окно Simulation Diagnostics открывается, чтобы отобразить сообщение об ошибке. Блок, где связанное нарушение происходит, подсвечен в модели.
Значение по умолчанию: 'off'
Остановите симуляцию, если связанное, заданное во вкладке Bounds, нарушено.
Продолжите симуляцию, если связанное нарушено, и произведите предупреждающее сообщение в посдказке MATLAB.
Поскольку выбор этой опции останавливает симуляцию, как только утверждение перестало работать, об отказах утверждения, которые могут произойти позже во время симуляции, не сообщают. Если вы хотите, чтобы все отказы утверждения были сообщены, не выбирайте эту опцию.
Enable assertion включает этот параметр.
Параметр: stopWhenAssertionFail |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'off' |
Выведите булев сигнал, который, на каждом временном шаге:
Верный (1
) если утверждение успешно выполняется, т.е. всем границам удовлетворяют
Ложь (0
) если утверждение перестало работать, т.е. связанное нарушено.
Тип данных выходного сигнала является булевской переменной, только если, в модели Simulink, в диалоговом окне Configuration Parameters, параметр Implement logic signals as Boolean data выбран. В противном случае тип данных выходного сигнала является двойным.
Выбор этого параметра добавляет выходной порт в блок, который можно соединить с любым блоком в модели.
Дефолт:офф
Выведите булев сигнал указать на состояние утверждения. Добавляет порт к блоку.
Не выводите булев сигнал указать на состояние утверждения.
Используйте этот параметр, чтобы спроектировать комплексную логику утверждения. Для примера смотрите, Проверяют Модель Используя Simulink Control Design и Блоки Верификации Simulink (Simulink Control Design).
Параметр: export |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'off' |
Откройте окно графика вместо диалогового окна Block Parameters, когда вы дважды кликнете блок в модели Simulink.
Используйте этот параметр, если вы предпочитаете открывать и выполнять задачи, такие как добавление или изменение границ, в окне графика вместо диалогового окна Block Parameters. Если вы хотите получить доступ к параметрам блоков из окна графика, выберите Edit или нажатие кнопки.
Для получения дополнительной информации о графике смотрите Show Plot.
Значение по умолчанию: 'off'
Откройте окно графика, когда вы дважды кликнете блок.
Откройте диалоговое окно Block Parameters при двойном клике по блоку.
Параметр: LaunchViewOnOpen |
Ввод: символьный вектор |
Значение: 'on' | 'off' |
Значение по умолчанию: 'off' |
Откройте окно графика.
Используйте график просмотреть:
Характеристики системы и сигналы вычисляются в процессе моделирования
Необходимо нажать эту кнопку, прежде чем вы симулируете модель, чтобы просмотреть характеристики системы или сигнал.
Можно отобразить дополнительные характеристики, такие как время максимальной чувствительности, путем щелчка правой кнопкой по графику и выбора Characteristics.
Границы
Можно задать границы во вкладке Bounds диалогового окна Block Parameters или щелкнуть правой кнопкой по графику и выбрать Bounds> New Bound. Для получения дополнительной информации о типах границ можно задать, видеть отдельные страницы с описанием.
Можно изменить границы путем перетаскивания ограниченного сегмента или путем щелчка правой кнопкой по графику и выбора Bounds> Edit Bound. Прежде чем вы симулируете модель, нажмите Update Block, чтобы обновить связанное значение в параметрах блоков.
Типичные задачи, которые вы выполняете в окне графика, включают:
Открытие диалогового окна Block Parameters путем нажатия или выбора Edit.
Нахождение блока, которому окно графика соответствует путем нажатия или выбора View> Highlight Simulink Block. Это действие делает окно модели активным и подсвечивает блок.
Симуляция модели путем нажатия. Это действие также линеаризует фрагмент модели между заданным вводом и выводом линеаризации.
Добавление легенды на графике характеристики линейной системы путем нажатия.
Откройте инструмент Response Optimization, чтобы оптимизировать ответ модели, чтобы соответствовать конструктивным требованиям, заданным во вкладке Bounds.