Откройте Property Inspector. На вкладке Modeling, под Design, нажмите Property Inspector.
Выберите блок, чей коллбэк вы хотите задать. На вкладке Properties Property Inspector, в разделе Callbacks, выберите коллбэк, который необходимо задать.
В поле введите функции, которые необходимо выполнить при коллбэке.
Чтобы задать программный коллбэк блока, используйте set_param
для назначения MATLAB® код для параметра блочного коллбэка.
Если коллбэк блока выполняется до или после того, как происходит действие моделирования, этот коллбэк происходит непосредственно перед или после действия.
Блок коллбэка | При выполнении |
---|---|
Когда блок будет открыт. Обычно используйте этот параметр с блоками Subsystem. Коллбэк выполняется при двойном клике по блоку или при использовании После добавления Для примеров использования
| |
После загрузки блока. Для блоков Subsystem, |
Изменение параметров коллбэка блоков
Параметры компиляции блоков и симуляции коллбэка
Блок коллбэка | При выполнении |
---|---|
Перед компиляцией блок-схемы и перед оценкой параметров блоков. Для получения дополнительной информации о | |
После компиляции блока и перед началом симуляции. В случае блока S-Function, | |
Прежде чем симуляция продолжится. | |
После паузы симуляции. | |
При любом прекращении симуляции. В случае блока S-Function, |
Параметры сохранения и закрытия коллбэка блоков
Блок коллбэка | При выполнении |
---|---|
Перед сохранением блока. Для блоков Subsystem, | |
После сохранения блока. Для блоков Subsystem, | |
Когда блок закрыт с помощью The Например, чтобы закрыть все открытые окна MATLAB, используйте такую команду, как: set_param('my_model','CloseFcn','close all') | |
Перед закрытием блока. Когда модель закрыта, блок Для блоков Subsystem, |
Параметры коллбэка блока Subsystem
Можно использовать другие параметры коллбэка блоков с блоками Subsystem, но параметры коллбэка в этой таблице специфичны для блоков Subsystem.
Примечание
Коллбэк для маскированной подсистемы не может непосредственно ссылаться на параметры маскированной подсистемы (см. «Создание маски блоков»). Simulink® оценивает коллбэки блоков в базовом рабочем пространстве MATLAB, в то время как параметры маски находятся в частной рабочей области маскированной подсистемы. Однако блок коллбэка может использовать get_param
для получения значения маскирующего параметра. Для примера, вот gain
- имя маскирующего параметра текущего блока:
get_param(gcb, 'gain')
Блок коллбэка | При выполнении |
---|---|
После удаления блока или линии в подсистеме. Если у блока есть | |
Когда произошла ошибка в подсистеме. Используйте следующую форму для кода коллбэка для newException = errorHandler(subsys, ... errorType, originalException) где
Если вы предоставляете исходное исключение, вам не нужно указывать подсистему и тип ошибки. Следующая команда устанавливает set_param(subsys,'ErrorFcn','errorHandler') set_param , не включать входные параметры кода коллбэка. Simulink отображает сообщение об ошибке, возвращенное коллбэком. | |
Перед закрытием подсистемы, содержащей блок, или когда блок сделан частью новой подсистемы, используя:
Когда вы закрываете модель, Simulink не вызывает |
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.