Создайте пользовательскую библиотеку

Создайте библиотеку

Можно создать собственную библиотеку и, опционально, добавить его в Simulink® Library Browser. Вы сохраняете библиотеку как .SLX файл, когда вы делаете модель. Однако вы не можете симулировать в библиотеке, и библиотека становится заблокированной для редактирования каждый раз, когда вы закрываете его. Необходимо разблокировать библиотеку, прежде чем вы внесете изменения в нее. Смотрите Блокировку и Разблокируйте Библиотеки.

  1. От начальной страницы Simulink выберите Blank Library и нажмите Create Library.

  2. Добавьте блоки из моделей или библиотек к новой библиотеке. Внесите изменения, которые вы хотите с блоками, такими как изменяющиеся параметры блоков, добавляя маски, или добавляя блоки в подсистемы.

    Имена подсистемы в иерархии библиотеки должны быть уникальными. Например, не создавайте иерархию, такую как Subsystem_Name1/Subsystem_Name2/Subsystem_Name1.

  3. Добавьте аннотации или изображения. Щелкните правой кнопкой по тем, вы хотите появиться в библиотеке в Браузере Библиотеки и выбрать Show in Library Browser.

  4. Если вы планируете добавить библиотеку в Браузер Библиотеки, можно заказать блоки и аннотации в модели библиотеки. По умолчанию они появляются в алфавитном порядке в Браузере Библиотеки с подсистемами сначала, затем блокируется, и затем аннотации. Пользователь вашей библиотеки может использовать контекстное меню Library Browser, чтобы выбрать между просмотром их в алфавитном порядке или порядка, который вы задали. Когда пользователь выбирает эту опцию, порядок, в котором они появляются в вашей модели библиотеки, определяет порядок, они появляются на сетке в библиотеке в Браузере Библиотеки.

  5. Если вы хотите, чтобы библиотека появилась в Браузере Библиотеки, включите свойство EnableLBRepository модели прежде чем вы сохраните библиотеку.

    set_param(gcs,'EnableLBRepository','on');

  6. Сохраните библиотеку.

    То, где вы сохраняете библиотеку, зависит от того, как вы планируете использовать ее. Если вы хотите добавить его в Браузер Библиотеки, сохранить его в папку на пути MATLAB® или добавить местоположение в путь MATLAB. В противном случае сохраните его в местоположение, где модели, которые используют блоки, могут получить доступ к нему.

Если вы хотите, чтобы библиотека появилась в Браузере Библиотеки, необходимо также создать функциональный slblocks на вашем пути MATLAB, который добавляет библиотеку в браузер. Для примера, который показывает полные шаги для добавления библиотеки к браузеру, смотрите, Добавляют Библиотеки к Браузеру Библиотеки.

Примечание

Чтобы обновить Браузер Библиотеки с вашими пользовательскими библиотеками, щелкните правой кнопкой где угодно по библиотеке Library Browser, перечисляют и выбирают Refresh Library Browser. Обновление Браузера Библиотеки также обновляет быстрый список вставок, чтобы включать блоки в пользовательские библиотеки в настоящее время в действительности. Быстрый список вставок позволяет вам добавить блоки в модель, не оставляя холст. Кликните по холсту и начните вводить, чтобы добавить блоки из быстрого списка вставок.

Блоки для пользовательских библиотек

Ваша библиотека может содержать блоки, в которых вы нуждаетесь, сконфигурированный в ваших целях. Подсистемы, маскированные блоки и графики в вашей библиотеке становятся соединенными блоками как экземплярами в модели и остаются в курсе, если вы изменяете их в своей библиотеке. Знание о пользовательских блоках также полезно, когда вы создаете библиотеку. См. Проект и Создайте Пользовательский блок.

Можно создать блоки в пользовательских библиотеках с настройками в определенных целях.

Создайте подбиблиотеку

Если ваша библиотека содержит много блоков, можно сгруппировать блоки в подсистемы или разделить подбиблиотеки. Чтобы создать подбиблиотеку, вы создаете библиотеку подбиблиотечных блоков и ссылаетесь на библиотеку от блока Subsystem в родительской библиотеке.

  1. В библиотеке вы хотите добавить подбиблиотеку в, добавить блок Subsystem.

  2. В блоке Subsystem удалите порты ввода и вывода по умолчанию.

  3. Если вы хотите, создаете маску для подсистемы, которая отображает текст или изображение, которое передает цель подбиблиотеки.

  4. В подсистеме блокируют свойства, набор OpenFcn коллбэк к имени библиотеки вы хотите сослаться.

Чтобы узнать больше о масках, смотрите, Создают Простую Маску.

Препятствуйте тому, чтобы библиотечный блок соединился с экземпляром

Можно сконфигурировать библиотечный блок, таким образом, экземпляры, созданные из него, не соединяются блоки и являются вместо этого копиями. Установите CopyFcn блока 'callback'.

set_param(gcbh,'LinkStatus','none'); 

Включайте описание блока в соединенный блок

Чтобы добавить описание, которое появляется в соединенном блоке, замаскируйте библиотечный блок и добавьте описание в панели Documentation маски. Описания, добавленные к библиотечному блоку через свойства блока, не появляются на соединенном блоке.

Сконфигурируйте блок с ключевыми словами для быстрой вставки

Можно добавить одно или несколько ключевых слов в блок в библиотеке. Ключевое слово позволяет вам добавить блок в свою модель от быстрой подсказки вставки путем ввода ключевого слова или имени блока.

Например, предположите, что у вас есть пользовательский блок Gain в вашей библиотеке. Можно добавить ключевое слово My Gain с блоком. Затем можно добавить блок в модель путем ввода My Gain в быстрой подсказке вставки.

Примечание

Вы не можете добавить ключевые слова в блоки из Commonly Used Blocks, когда они - место, чтобы просмотреть часто используемые блоки из различных библиотек. Если вы хотите добавить ключевые слова в блок, доступный в Commonly Used Blocks, убедитесь, что вы устанавливаете его в библиотеке, где блок задан.

Чтобы добавить ключевое слово в блок в вашей библиотеке, используйте set_param с 'BlockKeywords' параметр. Можно использовать вектор символов, представить в виде строки скаляр или массив строк как значение. Например:

set_param(gcb,'BlockKeywords',{"My Gain","Your Gain"})
set_param(gcb,'BlockKeywords','My Integrator')

Примечание

Поддерживаемыми специальными символами в ключевых словах является '&', '(', ')', '+', '@', '!'.

Сконфигурируйте подсистемы с коллбэком OpenFcn для браузера библиотеки

Общее использование блока Subsystem в пользовательской библиотеке должно установить OpenFcn свойство коллбэка открыть библиотеку, создавая иерархию библиотеки. Однако можно использовать OpenFcn свойство коллбэка блока Subsystem для других целей, например, чтобы запустить код MATLAB или открыть ссылку.

Если ваш блок подсистемы в библиотеке пуст и ее OpenFcn коллбэк содержит код, который выполняет действие кроме точки к библиотеке или модели, затем необходимо добавить 'ShowInLibBrowser' параметр маски к подсистеме, чтобы иметь его появляется в Браузере Библиотеки.

  1. Щелкните правой кнопкой по подсистеме и выберите Mask> Create Mask. Если блок уже имеет маску, выберите Edit Mask вместо этого.

  2. Во вкладке Mask Editor Parameters & Dialog, на панели Controls, нажимают Check box.

  3. В панели Dialog box, набор подсказка и имя для нового флажка к ShowInLibBrowser и нажмите OK.

Аннотации в пользовательских библиотеках

Можно добавить аннотации в пользовательской библиотеке и опционально сделать, чтобы они появились в Браузере Библиотеки. Например, можно добавить аннотацию, это документирует библиотеку. Можно также добавить аннотации, которые пользователь библиотеки может добавить в их модель от Браузера Библиотеки. Аннотации могут содержать текст и изображения или отобразить уравнение. Аннотации могут также выполнить действие, когда кликнувшийся. Узнайте больше об аннотациях в, Описывают Модели Используя Аннотации.

Можно добавить линии выноски от аннотаций до блоков в библиотеке. Однако выноски не появляются в Браузере Библиотеки.

Если вы хотите, чтобы аннотация появилась в Браузере Библиотеки, после того, как вы добавляете его в свою библиотеку, щелкните правой кнопкой по нему и выберите Show in Library Browser. Если вы хотите, чтобы описание появилось в подсказке, когда пользователь наводит на аннотацию в Браузере Библиотеки, добавьте описание в аннотацию программно. В командной строке MATLAB, введите:

set_param(annotationHandle,'Description','descriptionText)

Чтобы получить указатель аннотации, используйте find_system. Этот пример получает все аннотации в библиотеке mylib:

ann = find_system('mylib','FindAll','on','Type','annotation');

Чтобы получить определенную аннотацию, включите регулярное выражение, ищут и задают часть текста аннотации с 'Name' аргумент:

ann = find_system('mylib2',FindAll','on','RegExp',...
'on','Type','annotation','Name','matchingText');

Добавьте, что Библиотеки к Браузеру Библиотеки включают инструкции для добавления аннотации, которая появляется в Браузере Библиотеки.

Заблокируйте и разблокируйте библиотеки

Когда вы закрываете библиотеку, это становится заблокированным для редактирования. Когда вы затем открываете его, разблокировали его, если вы хотите внести изменения в него. Кликните по значку блокировки в нижнем левом углу библиотеки, чтобы разблокировать его. Кроме того, при попытке изменить заблокированную библиотеку, сообщение предлагает вам разблокировать ее.

Можно разблокировать библиотеку программно. В командной строке MATLAB, введите:

set_param('library_name','Lock','off');

Заблокировать библиотеку программно, введите:

set_param('library_name','Lock','on');

Предотвратите отключение ссылок библиотеки

По умолчанию пользователь блоков в вашей библиотеке может отключить ссылку на библиотечные блоки. Если вы хотите управлять редактированием соединенных блоков и препятствовать тому, чтобы пользователь блока отключил ссылки, можно заблокировать ссылки на библиотеку. Блокировка ссылок библиотеки препятствует тому, чтобы пользователь внес любые изменения в экземпляры блока.

  • В вашей библиотеке, на вкладке Library, нажимают Lock Links.

Чтобы изучить, как пользователь блока взаимодействует с блоками из заблокированных библиотек, смотрите Ссылки Блокировки на Блоки в Библиотеке.

Похожие темы