Сделайте индивидуальные настройки постобработки при создании библиотеки пользовательского блока
sl_postprocess(h)
sl_postprocess(h) берет указатель на библиотеку пользовательского блока, h, и позволяет, вы, чтобы сделать библиотеку, постобрабатывающую индивидуальные настройки (например, добавьте передающую таблицу (Simulink)).
Если создаваемый пакет файла Simscape™ содержит sl_postprocess.m файл, затем ssc_build вызовы sl_postprocess однажды библиотека блоков (package_name_lib) сгенерирован, но прежде чем это будет сохранено на диск. Если sl_postprocess генерирует ошибку, библиотека не создает.
Можно включать sl_postprocess.m файл на любом уровне в пакете библиотеки. В верхнем уровне это вносит изменения постобработки в целую библиотеку пользовательского блока. Точно так же, если sl_postprocess.m файл находится в подбиблиотеке в пакете, он берет указатель на ту подбиблиотеку и вносит соответствующие изменения.
Если вы переименовываете блок или изменяете название параметра, необходимо добавить передающую таблицу, чтобы обновить старые модели та ссылка блок. Однако, если вы вручную добавите передающую таблицу в пользовательскую библиотеку, это будет перезаписано каждый раз, когда вы восстанавливаете библиотеку. Вместо этого включайте sl_postprocess.m файл в пакете библиотеки, который добавит передающую таблицу автоматически после восстановления библиотеки:
- +MySimscape |-- sl_postprocess.m |-- +Mechanical | |-- spring.ssc | |-- ...
sl_postprocess.m файл содержит передающую таблицу:
function sl_postprocess(h)
% Forwarding table for the spring block
ft = { {'MySimscape_lib/Mechanical/Ideal Spring', 'MySimscape_lib/Mechanical/Rotational Spring'} }
set_param(h, 'ForwardingTable', ft);
endЭта передающая таблица показывает, что пользовательский блок называет для spring.ssc компонент изменился от 'Ideal Spring' к 'Rotational Spring'.
Обратите внимание на то, что, если вы настроили имена библиотеки с помощью lib.m файлы, необходимо использовать эти пользовательские имена в передающей таблице (например, 'Mechanical Library' вместо 'Mechanical').