Этот пример показывает, как создать библиотеку блоков и добавить его к Simulink® Library Browser. Вы также добавляете аннотацию к библиотеке, которая появляется в Браузере Библиотеки.
Вы создаете функциональный slblocks
, чтобы задать информацию о вашей библиотеке. Можно сохранить функцию как файл .mlx
или .m
. Вы не можете сохранить его как Pcode-файл.
Из начальной страницы Simulink выберите Blank Library и нажмите Create Library.
Добавьте блок Gain и два блока Подсистемы к библиотеке. Назовите блоки Подсистемы Subsystem1 и Subsystem2. В свойствах Subsystem2, набор обратный вызов OpenFcn
к mylib2
.
В командной строке MATLAB® введите эту команду, чтобы включить образцовое свойство EnableLBRepository
. Ваша библиотека может появиться в браузере, только если это свойство включено, когда вы сохраняете свою библиотеку.
set_param(gcs,'EnableLBRepository','on');
Сохраните библиотеку в папке по пути MATLAB. Для этого примера назовите библиотеку mylib
.
Создайте другую библиотеку mylib2
и добавьте некоторые блоки и аннотацию, которая содержит текст My annotation
. Щелкните правой кнопкой по аннотации и выберите Show in Library Browser.
Добавьте описание для аннотации. Описание появляется в Браузере Библиотеки, когда вы нависаете над аннотацией. Можно сделать это программно использование set_param
. Используйте find_system
, чтобы получить указатель аннотации. Используйте часть своего текста аннотации с аргументом 'Name'
. Аргумент 'RegExp'
включает частичные соответствия.
ann = find_system('mylib2','findall','on','RegExp',... 'on','Type','annotation','Name','annotation'); set_param(ann,'Description',... 'Use this annotation to label the model.');
Сохраните mylib2
в ту же папку, к которой вы сохранили mylib
.
Можно закрыть обе библиотеки, если вы хотите.
В MATLAB щелкните правой кнопкой по папке, к которой вы сохранили библиотеку, и выберите New File> Script. Назовите файл slblocks.m
m.
Открытый slblocks.m
m. Добавьте эту функцию к нему и сохраните.
function blkStruct = slblocks % This function specifies that the library should appear % in the Library Browser % and be cached in the browser repository Browser.Library = 'mylib'; % 'mylib' is the name of the library Browser.Name = 'My Library'; % 'My Library' is the library name that appears % in the Library Browser blkStruct.Browser = Browser;
В Браузере Библиотеки, обновление, чтобы видеть новую библиотеку. Щелкните правой кнопкой по списку библиотек и выберите Refresh Library Browser.
Данные показывают, что библиотека mylib
в качестве примера с Браузером Библиотеки называет Мою Библиотеку.
Из-за обратного вызова вы создали, нажатие по Subsystem2 отображает содержимое библиотеки mylib2
. Парение над аннотацией в Браузере Библиотеки отображает описание.
Если вы сохранили свою библиотеку без установки 'EnableLBRepository'
к 'on'
, сообщение появляется наверху Браузера Библиотеки.
Нажмите Fix и ответьте на подсказку как соответствующую.
Можно задать порядок библиотеки относительно других библиотек в списке путем добавления файла sl_customization.m
к пути MATLAB и установки приоритета вида библиотеки. Например, чтобы видеть вашу библиотеку наверху списка, можно установить приоритет вида на -2
. По умолчанию приоритетом вида Библиотеки Simulink является -1
. Другие библиотеки имеют приоритет вида 0
по умолчанию, и эти библиотеки появляются ниже Библиотеки Simulink. Библиотеки с тем же приоритетом вида появляются в алфавитном порядке.
Это демонстрационное содержимое файла sl_customization.m
размещает новую библиотеку наверху списка библиотек.
function sl_customization(cm) % Change the order of libraries in the Simulink Library Browser. cm.LibraryBrowserCustomizer.applyOrder({'My Library',-2}); end
Чтобы заставить индивидуальную настройку сразу вступить в силу, в командной строке, войдите:
sl_refresh_customizations