Можно использовать Редактор Шины, чтобы импортировать Bus
объекты к базовому рабочему пространству и экспортировать Bus
объекты от базового рабочего пространства, как описано в Сохранении Simulink. Соедините шиной Объекты. По умолчанию Редактор Шины может сохранить объекты шины в и импортировать Bus
объекты от, функция или MAT-файл. Файлы должны быть в месте, которое является доступным использованием обычного диалогового окна Open или Save.
Можно записать, настроил функции MATLAB®, которые обеспечивают альтернативный импорт или экспорт (или оба) функциональность. Например, можно записать индивидуально настраиваемую функцию, которая хранит объекты как записи в базе данных в формате, который использует организация.
После вас разработка и реализация пользовательский Bus
возразите импорту или экспорту функций, используйте Simulink® Customization Manager, чтобы зарегистрировать функцию. Процесс регистрации устанавливает пользовательские функции импорта и экспорта как коллбэки для Редактора Шины Импорт в Базовое рабочее пространство и Экспорт в команды Файла. Коллбэки заменяют поддержку по умолчанию Редактора Шины. Настройка Редактора Шины возможности импорта и экспорта не оказывает влияния на другой MATLAB или функции Simulink. Отмена импорта или индивидуальной настройки экспорта восстанавливает Редактор Шины по умолчанию возможности той операции, не влияя на другой.
Создать Bus
объекты от внешнего кода С, вы не должны делать индивидуальные настройки. Смотрите Создают Объекты Шины из Внешнего кода С.
Настройка Bus
возразите импорту, или экспорт требует, чтобы вы поняли:
Язык MATLAB и методы программирования
Simulink Bus
объектный синтаксис
Собственный формат, в который вы переводите Bus
объекты и методы, необходимые, чтобы получить доступ к средству, которое хранит объекты.
Любые специфичные для платформы методы для получения данных от пользователя, такие как имя местоположения, в котором можно сохранить или получить доступ к Bus
объекты.
Пользовательский Bus
объектный экспорт функций требует по крайней мере одного аргумента. Можно использовать дополнительные аргументы, чтобы обработать специальные действия функцией. Значение первого аргумента является массивом ячеек, содержащим имена всего Bus
объекты, которые выбрал Редактор Шины. Можно использовать функции, глобальные переменные, или любой другой метод MATLAB, чтобы ввести значения для любых дополнительных аргументов. Общий алгоритм индивидуально настраиваемого экспорта функций:
Выполните итерации по списку имен объектов в первом аргументе.
Получите Bus
объект, соответствующий каждому имени.
Переведите Bus
возразите против собственного синтаксиса.
Сохраните переведенный Bus
объект в локальном репозитории.
Этот пример показывает, что синтаксический интерпретатор такой функции обратного вызова экспорта:
function myExportCallBack(selectedBusObjects) disp('Custom export was called!'); for idx = 1:length(selectedBusObjects) disp([selectedBusObjects{idx} ' was selected for export.']); end
Несмотря на то, что эта функция не экспортирует Bus
объекты, это синтаксически допустимо и может быть указано. Это принимает массив ячеек Bus
имена объектов, выполняет итерации по ним и распечатывает каждое имя. Операционный экспорт функций:
Использование каждое имя, чтобы получить соответствующий Bus
объект от базового рабочего пространства
Преобразует объект в собственный формат
Хранит преобразованный объект
Дополнительная логика специфична для предприятия.
Пользовательский Bus
возразите, что функция импорта может взять нуль или больше аргументов, чтобы выполнить его задачу. Можно использовать функции, глобальные переменные или любой другой метод MATLAB, чтобы обеспечить значения аргументов. Кроме того, функция может опросить пользователя относительно информации, такой как обозначение того, где получить Bus
информация об объекте. Общий алгоритм пользовательского Bus
возразите, что функция импорта:
Получите Bus
информация об объекте от локального репозитория.
Переведите каждый Bus
определение объекта к Simulink.Bus
объект.
Сохраните каждый Bus
возразите против базового рабочего пространства MATLAB.
Этот пример показывает, что синтаксический интерпретатор функции обратного вызова импорта:
function myImportCallBack disp('Custom import was called!');
Несмотря на то, что эта функция не импортирует Bus
объекты, это синтаксически допустимо и может быть указано с менеджером по Индивидуальной настройке Simulink. Операционная функция импорта:
Получает обозначение того, где получить Bus
объекты импортировать
Преобразует каждый Bus
возразите против Simulink.Bus
объект
Хранит объект в базовом рабочем пространстве
Дополнительная логика специфична для предприятия.
Настроить Bus
возразите импорту или экспорту, обеспечьте регистрационную функцию индивидуальной настройки, которая вводит и конфигурирует менеджера по Индивидуальной настройке каждый раз, когда вы запускаете программное обеспечение Simulink или обновляете индивидуальные настройки Simulink. Шаги для использования регистрационной функции индивидуальной настройки:
Создайте файл с именем sl_customization.m
содержать регистрационную функцию индивидуальной настройки. В качестве альтернативы можно использовать существующий файл настройки.
Наверху файла создайте функцию с именем sl_customization
это берет отдельный аргумент (или используйте специальную функцию в существующем файле). Когда функция вызывается, значение этого аргумента является менеджером по Индивидуальной настройке.
Сконфигурируйте sl_customization
функционируйте, чтобы установить importCallbackFcn
и exportCallbackFcn
быть указателями на функцию, которые задают ваш индивидуально настраиваемый Bus
возразите функциям импорта и экспорта.
Если sl_customization.m
новый файл настройки, поместите его где угодно на путь поиска файлов MATLAB. Два часто используемых места matlabroot
и текущая рабочая папка. В качестве альтернативы можно расширить путь поиска файлов.
Вот простой пример регистрационной функции индивидуальной настройки:
function sl_customization(cm) disp('My customization file was loaded.'); cm.BusEditorCustomizer.importCallbackFcn = @myImportCallBack; cm.BusEditorCustomizer.exportCallbackFcn = @(x)myExportCallBack(x);
Когда Simulink запускает, он пересекает путь поиска файлов MATLAB, ища файлы с именем sl_customization.m
. Simulink загружает каждый такой файл, который он находит (не только первый файл) и выполняет sl_customization
функция в ее верхней части, устанавливая индивидуальные настройки, которые задает функция.
Выполнение специальной функции в качестве примера отображает сообщение (который фактическая функция, вероятно, не была бы). Функция устанавливает, что Редактор Шины использует функцию с именем myImportCallBack()
импортировать Bus
объекты и функция с именем myExportCallBack(x)
экспортировать Bus
объекты.
Функция, соответствующая указателю, который появляется в регистрации коллбэка, может быть не определена, когда регистрация происходит. Однако это должно быть задано, когда Редактор Шины вызывает функцию. Та же широта и требование применяются к любым функциям, или глобальные переменные раньше вводили значения дополнительных аргументов.
Другие функции могут также существовать в sl_customization.m
файл. Однако программное обеспечение Simulink игнорирует файлы с именем sl_customization.m
, кроме тех случаев, когда это запускает или обновляет индивидуальные настройки. Любые изменения в функциях в файле настройки проигнорированы, пока одно из тех событий не имеет место. В отличие от этого, изменения в других функциях на пути MATLAB сразу вступают в силу.
Для получения дополнительной информации смотрите Индивидуальные настройки Регистрации.
Можно изменить указатели, установленные в sl_customization
функция:
Изменение функции, чтобы задать измененные указатели
Сохранение функции
Обновляющие индивидуальные настройки путем выполнения sl_refresh_customizations
Simulink пересекает путь MATLAB и перезагружает весь sl_customization.m
файлы, которые это находит, выполняя первую функцию в каждом, как это сделало на запуске Simulink.
Можно вернуться к импорту по умолчанию или экспортировать поведение путем начинания sl_customization
функционируйте соответствующий BusEditorCustomizer
элемент к []
и затем обновляющие индивидуальные настройки. В качестве альтернативы можно устранить обе индивидуальных настройки в одной операции путем выполнения:
cm.BusEditorCustomizer.clear
где cm
был ранее установлен в менеджера по индивидуальной настройке объект (см. Индивидуальные настройки Регистра).
Изменения в самих функциях обратного вызова импорта и экспорта, в отличие от изменений в указателях, которые указывают их как индивидуальные настройки, сразу вступают в силу, если они не находятся в sl_customization.m
сам файл. Если функции обратного вызова находятся в sl_customization.m
файл, они вступают в силу в следующий раз, когда вы обновляете индивидуальные настройки. Хранение функций обратного вызова в отдельных файлах обычно обеспечивает более гибкие и модульные результаты.
Simulink.BlockDiagram.addBusToVector
| Simulink.Bus.cellToObject
| Simulink.Bus.createMATLABStruct
| Simulink.Bus.createObject
| Simulink.Bus.objectToCell
| Simulink.Bus.save