Используйте команду libinfo
, чтобы получить информацию о соединенных блоках в модели. libinfo
также предоставляет информацию о родительских блоках библиотеки соединенного блока.
Например, вот модель с соединенными блоками:
Когда вы выполняете команду libinfo(gcb)
на этом блоке:
Block: 'slexMaskVariantExample/VariantSubsystem2' %Linked block Library: 'slexMaskingVariants_libraryblock' %Parent library block ReferenceBlock: 'slexMaskingVariants_libraryblock/VariantSubsystem2' LinkStatus: 'resolved' %Link status
Свойство ReferenceBlock
дает путь блока библиотеки, с которым соединяется блок. Можно изменить этот путь программно при помощи команды set_param
. Например:
set_param('slexMaskVariantExample/VariantSubsystem2', 'ReferenceBlock', 'slexMaskVariantExample2/VariantSubsystem')
Здесь, slexMaskVariantExample/VariantSubsystem2
является исходным блоком path библиотеки, и slexMaskVariantExample2/VariantSubsystem
является новым блоком path библиотеки.
Не рекомендуется изменить свойства блока, на который ссылаются, при помощи команды set_param
в коде инициализации маски или коде обратного вызова того же блока. Для таких шаблонов моделирования это - вы, может использовать Различные блоки (Маскирующий различные блоки) или использовать команду referenceblock
на коде обратного вызова или маске intialization код родительского блока ссылочного блока.
Используйте команду LockLinksToLibrary
, чтобы заблокировать или разблокировать соединенный блок в библиотеке из командной строки. Когда вы устанавливаете значение LockLinksToLibrary
к on
, соединенные блочные ссылки на библиотеку заблокированы.
set_param('MyLibraryName', 'LockLinksToLibrary', 'on') %Lock links
set_param('MyLibraryName', 'LockLinksToLibrary', 'off') %Unlock links
Все блоки имеют параметр LinkStatus
и параметр StaticLinkStatus
, чтобы указать, является ли блок соединенным блоком.
Используйте get_param(gcb, 'StaticLinkStatus')
, чтобы запросить состояние ссылки, не обновляя соединенные блоки. Можно использовать StaticLinkStatus
, чтобы запросить состояние соединенного блока что или активный или устаревший.
Используйте get_param
, чтобы отправить запрос, чтобы получить значение LinkStatus
.
Получите значение LinkStatus | Описание |
---|---|
'none' | Блок не является соединенным блоком. |
resolved | Разрешенная ссылка. |
unresolved | Неразрешенная ссылка. |
implicit | Блок находится в блоке библиотеки и является самостоятельно не ссылкой на блок библиотеки. Предположим, что A является ссылкой на подсистему в библиотеке, которая содержит блок Gain. Если вы открываете A и выбираете блок Gain, |
inactive | Отключенная ссылка. |
Используйте set_param
, чтобы установить LinkStatus
.
Установите значение LinkStatus | Описание |
---|---|
| Разрывает связь. Используйте |
| Разрывает связи на месте, не повреждая вложенную родительскую иерархию ссылки. Например, |
| Отключает ссылку. Используйте |
| Восстанавливает неактивную или отключенную ссылку на блок библиотеки и отменяет любые изменения, сделанные к локальной копии блока библиотеки. Например,
|
| Нажатия любые изменения, внесенные в отключенную ссылку на библиотеку, блокируются, и восстанавливает ее ссылку. |
| Восстановления все отключенные ссылки в иерархии с их соответствующими блоками библиотеки. |
| Нажатия все ссылки с изменениями в иерархии к их библиотекам. |
Когда вы используете get_param
, чтобы запросить состояние ссылки блока, устаревшие блочные ссылки также решают.
Используя команду StaticLinkStatus
, чтобы запросить состояние ссылки, когда get_param
используется в коде обратного вызова дочернего блока, рекомендуется. команда StaticLinkStatus
не разрешает устаревших ссылок.
Если вы вызываете get_param
на блоке в ссылке библиотеки, Simulink® разрешает ссылку везде, где необходимо. Выполнение get_param
может включить часть загрузки библиотеки и выполнения обратных вызовов.