Проверяйте, что сигнал модели удовлетворяет границам в процессе моделирования
Simulink Design Optimization / Model Verification
Simulink Design Optimization / Ограничения Сигнала
Проверяйте, что сигнал удовлетворяет заданным верхним и нижним границам в процессе моделирования.
Если сигнал удовлетворяет всем границам, блок ничего не делает.
Если сигнал не удовлетворяет связанному, предупреждающее сообщение появляется в командном окне MATLAB®. Можно также указать что блок:
Выполните выражение MATLAB.
Остановите симуляцию и возвратите сообщение об ошибке.
В процессе моделирования блок может также возвратить логический сигнал утверждения.
Если сигнал удовлетворяет всем границам, сигнал утверждения верен (1
).
Если сигнал не удовлетворяет связанному, сигнал утверждения является ложным (0
).
Используя блок, можно создать:
Сингл связан с одним ребром
Сингл связан с несколькими ребрами
Несколько границ
Можно добавить блоки Check Custom Bounds в несколько сигналов проверять, что они удовлетворяют границам. Можно также построить границы на графике временной зависимости, чтобы графически проверить, что сигнал удовлетворяет границам.
Этот блок и другие блоки в тесте библиотеки Model Verification, что сигнал остается в заданных границах характеристики временного интервала. Когда модель не нарушает никого связанного, можно отключить блок путем очистки опции утверждения. Если вы изменяете модель, можно повторно позволить утверждению гарантировать, что изменения не заставляют модель нарушать связанное.
Если сигнал не удовлетворяет границам, можно оптимизировать параметры модели, чтобы удовлетворить границам. Если у вас есть программное обеспечение Simulink® Control Design™, можно добавить границы частотного диапазона, такие как Предвещать величина, и оптимизировать ответ модели, чтобы удовлетворить и временному интервалу и требованиям частотного диапазона.
Блок может использоваться во всех режимах симуляции для контроля сигналов, но только в Normal
или Accelerator
режим симуляции для оптимизации ответа.
Port_1 (u)
— Сигнал проверять по заданным границамСигнал проверять по верхним и нижним границам, заданным в Amplitudes и Times в процессе моделирования.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| fixed point
| enumerated
| bus
Port_1 (out)
— Выведите сигнал утверждения
| 0
Выходной сигнал, указывающий, имеет ли входной сигнал внутри границ заданный сигнал утверждения. На каждом временном шаге выходной параметр возвращен как одно из следующего:
Верный (1
) если утверждение успешно выполняется, то есть, сигнал удовлетворяет всем границам
Ложь (0
) если утверждение перестало работать, то есть, сигнал нарушает связанное
Тип данных выходного сигнала является двойным по умолчанию. Чтобы установить тип выходных данных как булевскую переменную для всех блоков, которые генерируют логические сигналы в вашей модели Simulink, выберите Implement logic signals as Boolean data in Configuration Parameters.
Чтобы включить этот порт, на вкладке Assertion, выбирают параметр Output assertion signal.
Типы данных: Boolean
| double
Show Plot
— Открытое окно графикаbutton
Используйте график просмотреть следующее.
Характеристики системы и сигналы, вычисленные в процессе моделирования — Нажимают эту кнопку, прежде чем вы симулируете модель, чтобы просмотреть характеристики системы или сигнал.
Можно отобразить дополнительные характеристики, такие как время максимальной чувствительности, путем щелчка правой кнопкой по графику и выбора Characteristics.
Границы — можно задать границы на вкладке Bounds или путем щелчка правой кнопкой по графику и выбора Bounds> New Bound.
Можно изменить границы путем перетаскивания ограниченного сегмента или путем щелчка правой кнопкой по графику и выбора Bounds> Edit Bound. Прежде чем вы симулируете модель, нажмите Update Block, чтобы обновить связанное значение в параметрах блоков.
Типичные задачи, которые вы выполняете в окне графика, включают:
Открытие диалогового окна Block Parameters путем нажатия или выбора Edit.
Нахождение блока, которому окно графика соответствует путем нажатия или выбора View> Highlight Simulink Block. Это действие делает окно модели активным и подсвечивает блок.
Симуляция модели путем нажатия. Это действие также линеаризует фрагмент модели между заданным вводом и выводом линеаризации.
Добавление легенды на графике характеристики линейной системы путем нажатия.
Show plot on block open
— Дважды кликните блок, чтобы открыть графикoff
(значение по умолчанию) | on
Откройте окно графика вместо параметров блоков, когда вы дважды кликнете блок в модели Simulink.
Используйте этот параметр, если вы предпочитаете открывать и выполнять задачи, такие как добавление или изменение границ, в окне графика вместо параметров блоков. Если вы хотите получить доступ к параметрам блоков из окна графика, выберите Edit или нажатие кнопки.
Для получения дополнительной информации о графике смотрите параметр Show plot.
Параметр:
LaunchViewOnOpen |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Response Optimization
— Открытый Response Optimizerbutton
Откройте Response Optimizer, чтобы оптимизировать ответ модели, чтобы соответствовать конструктивным требованиям, заданным на вкладке Bounds.
Include upper bound in assertion
— Проверяйте, что сигнал удовлетворяет верхней границеon
(значение по умолчанию) | off
Проверяйте, что сигнал меньше чем или равен верхним границам, заданным в верхней границе Times и Amplitudes, в процессе моделирования. Программное обеспечение выводит предупреждение, если сигнал нарушает верхние границы.
Границы также появляются на графике временной зависимости.
Когда вы отключаете этот параметр, программное обеспечение прекращает проверять, что входной сигнал удовлетворяет верхним границам в процессе моделирования. Ограниченные сегменты также grayed на графике.
Чтобы просмотреть только границы и входной сигнал на графике, очистите Enable assertion.
Чтобы использовать этот параметр, на вкладке Assertion, выбирают Enable assertion. Если вы очищаете Enable assertion, программное обеспечение не использует границы для утверждения, но они продолжают появляться на графике.
Параметр:
EnableUpperBound
|
Ввод: символьный вектор |
Значение:
'on' | 'off'
|
Значение по умолчанию:
'on'
|
Times
— Временной вектор верхней границы
(значение по умолчанию) | двухэлементный вектор | матрица 2D столбца | массив ячеекВременной вектор для одного или нескольких сегментов верхней границы, заданных в секундах.
Задайте соответствующие амплитудные значения в Amplitudes.
Чтобы задать сингл, связанный с одним ребром, используйте двухэлементный вектор. Вектор должен иметь форму [Tstart Tend], где Tstart и Tend являются положительными конечными числами с Tstart <Tend.
Например, чтобы создать одну верхнюю границу с амплитудой 1,2 во временном интервале от 0 до 10 секунд, задайте [0 10]
для Times и [1.2 1.2]
для Amplitudes.
Чтобы задать сингл, связанный с несколькими ребрами, используйте матрицу 2D столбца. Матрица должна иметь форму [T1 T2 ; T2 T3; …; Tn Tn+1], где n является количеством ребер в связанном. Сингл, связанный с несколькими ребрами, является кусочно-непрерывным, поэтому задайте временные интервалы, таким образом, что следующее ребро начинается одновременно, где предыдущее ребро заканчивается.
Например, чтобы создать сингл, связанный с двумя ребрами во времена 0–5 и 5–10 секунд с амплитудами 1,2 и 1, соответственно, задают [0 5;5 10]
для Times и [1.2 1.2;1 1]
для Amplitudes.
Чтобы задать несколько границ, используйте массив ячеек двухэлементных векторов, матриц 2D столбца или обоих. Таким образом, используйте массив ячеек нескольких одной границ.
Например, чтобы создать две границы во времена 0–4 и 6–10 секунд с амплитудами 1,2 и 1, соответственно, задают {[0 4] [6 10]}
для Times и {[1.2 1.2] [1 1]}
для Amplitudes.
Можно добавить или изменить времена начала и конца из окна графика.
Чтобы добавить новые временные векторы, щелкните правой кнопкой по желтой области по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в Редактирование Связанное диалоговое окно. Задайте времена начала и конца нового ограниченного сегмента в столбце Time. Задайте соответствующие амплитуды в столбце Amplitude.
Чтобы изменить времена начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые времена в столбце Time.
Нажмите Update Block прежде, чем симулировать модель.
Чтобы проверять, что входной сигнал удовлетворяет амплитудам, которые соответствуют временным векторам верхней границы, выберите Include upper bound in assertion и Enable assertion.
Параметр:
UpperBoundTimes
|
Ввод: символьный вектор |
Значение: двухэлементный вектор | матрица 2D столбца | массив ячеек |
Значение по умолчанию:
[0 5; 5 10]
|
Amplitudes
— Амплитудные значения верхней границы
(значение по умолчанию) | двухэлементный вектор | матрица 2D столбца | массив ячеекАмплитудные значения для одного или нескольких сегментов верхней границы.
Задайте соответствующие времена начала и конца в Times.
Чтобы задать сингл, связанный с одним ребром, используйте двухэлементный вектор. Вектор должен иметь форму [A1 A2], где A1 и A2 являются связанными амплитудами в соответствующих ребрах временного вектора. Для постоянной амплитуды во временном интервале используйте A1 = A2.
Например, чтобы создать одну верхнюю границу с амплитудой 1,2 во временном интервале от 0 до 10 секунд, задайте [0 10]
для Times и [1.2 1.2]
для Amplitudes.
Чтобы задать сингл, связанный с несколькими ребрами, используйте матрицу 2D столбца. Матрица должна иметь форму [A1 B1; …; An Bn], где n является количеством ребер в связанном. Для постоянной амплитуды во временном интервале используйте Ak = Bk, где k = 1, …, n
Например, чтобы создать сингл, связанный с двумя ребрами во времена 0–5 и 5–10 секунд с амплитудами 1,2 и 1, соответственно, задают [0 5;5 10]
для Times и [1.2 1.2;1 1]
для Amplitudes.
Чтобы задать несколько границ, используйте массив ячеек двухэлементных векторов, матриц 2D столбца или обоих. Таким образом, используйте массив ячеек нескольких одной границ.
Например, чтобы создать две границы во времена 0–4 и 6–10 секунд с амплитудами 1,2 и 1, соответственно, задают {[0 4] [6 10]}
для Times и {[1.2 1.2] [1 1]}
для Amplitudes.
Можно добавить или изменить амплитуды из окна графика.
Чтобы добавить новые амплитуды, щелкните правой кнопкой по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в Редактирование Связанное диалоговое окно. Задайте амплитуды начала и конца нового ограниченного сегмента в столбце Amplitude. Задайте соответствующие времена начала и конца в столбце Time.
Чтобы изменить амплитуды начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые амплитуды в столбце Amplitude.
Нажмите Update Block прежде, чем симулировать модель.
Чтобы проверять, что входной сигнал удовлетворяет верхним амплитудным границам, выберите Include upper bound in assertion и Enable assertion.
Параметр:
UpperBoundAmplitudes
|
Ввод: символьный вектор |
Значение: двухэлементный вектор | матрица 2D столбца | массив ячеек |
Значение по умолчанию:
[1.1 1.1; 1.01 1.01]
|
Include lower bound in assertion
— Проверяйте, что сигнал удовлетворяет нижней границеoff
(значение по умолчанию) | on
Проверяйте, что сигнал больше или равен нижним границам, заданным в нижней границе Times и Amplitudes, в процессе моделирования. Программное обеспечение выводит предупреждение, если сигнал нарушает нижние границы.
Границы также появляются на графике временной зависимости.
Когда этот параметр отключен, нижние границы отключены, и программное обеспечение прекращает проверять, что границам удовлетворяют в процессе моделирования. Ограниченные сегменты также greyed на графике.
Чтобы просмотреть только границы и входной сигнал на графике, очистите Enable assertion.
Чтобы использовать этот параметр, на вкладке Assertion, выбирают Enable assertion. Если вы очищаете Enable assertion, программное обеспечение не использует границы для утверждения, но они продолжают появляться на графике.
Параметр:
EnableLowerBound
|
Ввод: символьный вектор |
Значение:
'on' | 'off'
|
Значение по умолчанию:
'off'
|
Times
— Временной вектор нижней границы[]
(значение по умолчанию) | двухэлементный вектор | матрица 2D столбца | массив ячеекВременной вектор для одного или нескольких сегментов нижней границы, заданных в секундах.
Задайте соответствующие амплитудные значения в Amplitudes.
Чтобы задать сингл, связанный с одним ребром, используйте двухэлементный вектор. Вектор должен иметь форму [Tstart Tend], где Tstart и Tend являются положительными конечными числами с Tstart <Tend.
Например, чтобы создать одну нижнюю границу с амплитудой 0,8 во временном интервале от 0 до 10 секунд, задайте [0 10]
для Times и [0.8 0.8]
для Amplitudes.
Чтобы задать сингл, связанный с несколькими ребрами, используйте матрицу 2D столбца. Матрица должна иметь форму [T1 T2 ; T2 T3; …; Tn Tn+1], где n является количеством ребер в связанном. Сингл, связанный с несколькими ребрами, является кусочно-непрерывным, задайте временные интервалы, таким образом, что следующее ребро начинается одновременно, где предыдущее ребро заканчивается.
Например, чтобы создать сингл, связанный с двумя ребрами во времена 0–5 и 5–10 секунд с амплитудами 0,8 и 0.98, соответственно, задают [0 5;5 10]
для Times и [0.8 0.8;0.98 0.98]
для Amplitudes.
Чтобы задать несколько границ, используйте массив ячеек двухэлементных векторов, матриц 2D столбца или обоих. Таким образом, используйте массив ячеек нескольких одной границ.
Например, чтобы создать две границы во времена 0–4 и 6–10 секунд с амплитудами 0,8 и 0.98, соответственно, задают {[0 4] [6 10]}
для Times и {[0.8 0.8] [0.98 0.98]}
для Amplitudes.
Можно добавить или изменить времена начала и конца из окна графика.
Чтобы добавить новые временные векторы, щелкните правой кнопкой по желтой области по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в Редактирование Связанное диалоговое окно. Задайте времена начала и конца нового ограниченного сегмента в столбце Time. Задайте соответствующие амплитуды в столбце Amplitude.
Чтобы изменить времена начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые времена в столбце Time.
Нажмите Update Block прежде, чем симулировать модель.
Чтобы проверять, что входной сигнал удовлетворяет амплитудам, которые соответствуют временным векторам нижней границы, выберите Include lower bound in assertion и Enable assertion.
Параметр:
LowerBoundTimes
|
Ввод: символьный вектор |
Значение: двухэлементный вектор | матрица 2D столбца | массив ячеек |
Значение по умолчанию:
[]
|
Amplitudes
— Амплитудные значения нижней границы[]
(значение по умолчанию) | двухэлементный вектор | матрица 2D столбца | массив ячеекАмплитудные значения для одного или нескольких сегментов нижней границы.
Задайте соответствующие времена начала и конца в Times.
Чтобы задать сингл, связанный с одним ребром, используйте двухэлементный вектор. Вектор должен иметь форму [A1 A2], где A1 и A2 являются связанными амплитудами в соответствующих ребрах временного вектора. Для постоянной амплитуды во временном интервале используйте A1 = A2.
Например, чтобы создать одну нижнюю границу с амплитудой 0,8 во временном интервале от 0 до 10 секунд, задайте [0 10]
для Times и [0.8 0.8]
для Amplitudes.
Чтобы задать сингл, связанный с несколькими ребрами, используйте матрицу 2D столбца. Матрица должна иметь форму [A1 B1; …; An Bn], где n является количеством ребер в связанном. Для постоянной амплитуды во временном интервале используйте Ak = Bk, где k = 1, …, n
Например, чтобы создать сингл, связанный с двумя ребрами во времена 0–5 и 5–10 секунд с амплитудами 0,8 и 0.98, соответственно, задают [0 5;5 10]
для Times и [0.8 0.8;0.98 0.98]
для Amplitudes.
Чтобы задать несколько границ, используйте массив ячеек двухэлементных векторов, матриц 2D столбца или обоих. Таким образом, используйте массив ячеек нескольких одной границ.
Например, чтобы создать две границы во времена 0–4 и 6–10 секунд с амплитудами 0,8 и 0.98, соответственно, задают {[0 4] [6 10]}
для Times и {[0.8 0.8] [0.98 0.98]}
для Amplitudes.
Можно добавить или изменить амплитуды из окна графика.
Чтобы добавить новые амплитуды, щелкните правой кнопкой по графику и выберите Edit. Нажмите Insert, чтобы добавить новую строку в Редактирование Связанное диалоговое окно. Задайте амплитуды начала и конца нового ограниченного сегмента в столбце Amplitude. Задайте соответствующие времена начала и конца в столбце Time.
Чтобы изменить амплитуды начала и конца, перетащите ограниченный сегмент. В качестве альтернативы щелкните правой кнопкой по сегменту и выберите Edit. Задайте новые амплитуды в столбце Amplitude.
Нажмите Update Block прежде, чем симулировать модель.
Чтобы проверять, что входной сигнал удовлетворяет более низким амплитудным границам, выберите Include lower bound in assertion и Enable assertion.
Параметр:
LowerBoundAmplitudes
|
Ввод: символьный вектор |
Значение: двухэлементный вектор | матрица 2D столбца | массив ячеек |
Значение по умолчанию:
[]
|
Enable zero-crossing detection
— Оцените модель в обметанных краяхon
(значение по умолчанию) | off
Убедитесь, что программное обеспечение симулирует модель, чтобы произвести выход в обметанных краях. Симуляция модели в обметанных краях препятствует тому, чтобы решатель симуляции пропустил утверждение, что сигнал удовлетворяет, который связал в его ребре.
Для получения дополнительной информации смотрите Обнаружение Пересечения нулем.
Параметр:
ZeroCross |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Enable assertion
— Включите или отключите проверкуon
(значение по умолчанию) | off
Позвольте блоку проверять, что границам, заданным и включенным для утверждения во вкладку Bounds, удовлетворяют в процессе моделирования. Утверждение перестало работать, если связанному не удовлетворяют. Предупреждение, сообщая об отказе утверждения, появляется в подсказке MATLAB.
Если утверждение перестало работать, можно опционально указать что блок:
Выполните выражение MATLAB, заданное в Simulation callback when assertion fails (optional).
Остановите симуляцию и возвратите сообщение об ошибке путем выбора Stop simulation when assertion fails.
Этот параметр не оказывает влияния, если вы не задаете границ.
Когда вы отключаете этот параметр, блок больше не проверяет, что входной сигнал удовлетворяет заданным границам. Значок блока также обновляется, чтобы указать, что утверждение отключено.
В модели Simulink, в Параметрах конфигурации, параметр Model Verification block enabling позволяет вам включить или отключить все блоки верификации модели в модели, независимо от установки этой опции в блоке.
Параметр:
enabled |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'on' |
Simulation callback when assertion fails (optional)
— Выражение, чтобы оценить, когда утверждение перестало работать''
(значение по умолчанию) | выражение MATLABВыражение MATLAB, чтобы выполниться, когда утверждение перестало работать.
Поскольку выражение выполнено в рабочем пространстве MATLAB, сначала задайте все переменные, используемые в выражении в рабочей области.
Чтобы включить этот параметр, выберите Enable assertion.
Параметр:
callback |
Ввод: символьный вектор |
Значение: Выражение MATLAB |
Значение по умолчанию:
'' |
Stop simulation when assertion fails
— Остановите симуляцию, когда утверждение перестанет работатьoff
(значение по умолчанию) | on
Остановите симуляцию, когда сигнал нарушает связанное, заданное на вкладке Bounds в процессе моделирования, то есть, когда утверждение перестало работать.
Если при запуске симуляцию от окна модели Simulink, окно Simulation Diagnostics открывается, чтобы отобразить сообщение об ошибке. Блок, где связанное нарушение происходит, подсвечен в модели.
Поскольку выбор этой опции останавливает симуляцию, как только утверждение перестало работать, программное обеспечение не сообщает об отказах утверждения, которые могут произойти позже во время симуляции. Если вы хотите сообщить обо всех отказах утверждения, не выбирайте эту опцию.
Чтобы включить этот параметр, выберите Enable assertion.
Параметр:
stopWhenAssertionFail |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Output assertion signal
— Создайте выходной сигналoff
(значение по умолчанию) | on
Выведите булев сигнал, который, на каждом временном шаге:
Верный (1
) если утверждение успешно выполняется, то есть, входной сигнал удовлетворяет всем границам
Ложь (0
) если утверждение перестало работать, то есть, входной сигнал нарушает связанное
Тип данных выходного сигнала является двойным по умолчанию. Чтобы установить тип выходных данных как булевскую переменную для всех блоков, которые генерируют логические сигналы в вашей модели Simulink, выберите сигналы логики Implement как булевы данные в Параметрах конфигурации.
Выбор этого параметра добавляет выходной порт в блок, который можно соединить с любым блоком в модели.
Используйте этот параметр, чтобы спроектировать комплексную логику утверждения. Для примера смотрите, Проверяют Модель Используя Simulink Control Design и Блоки Верификации Simulink (Simulink Control Design).
Параметр:
export |
Ввод: символьный вектор |
Значение:
'on' | 'off' |
Значение по умолчанию:
'off' |
Генерация кода доступна только, когда параметр Output assertion signal включен.
Check Against Reference | Check Step Response Characteristics
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.