Настройте импорт и экспорт объекта шины

Можно использовать Редактор Шины, чтобы импортировать Bus объекты к базовому рабочему пространству и экспортировать Bus объекты от базового рабочего пространства, как описано в Сохранении Simulink. Соедините шиной Объекты. По умолчанию Редактор Шины может сохранить объекты шины в и импортировать Bus объекты от, функция или MAT-файл. Файлы должны быть в месте, которое является доступным использованием обычного диалогового окна Open или Save.

Можно записать, настроил функции MATLAB®, которые обеспечивают альтернативный импорт или экспорт (или оба) функциональность. Например, можно записать индивидуально настраиваемую функцию, которая хранит объекты как записи в базе данных в формате, который использует организация.

После вас разработка и реализация пользовательский Bus возразите импорту или экспорту функций, используйте Simulink® Customization Manager, чтобы зарегистрировать функцию. Процесс регистрации устанавливает пользовательские функции импорта и экспорта как коллбэки для Редактора Шины Импорт в Базовое рабочее пространство и Экспорт в команды Файла. Коллбэки заменяют поддержку по умолчанию Редактора Шины. Настройка Редактора Шины возможности импорта и экспорта не оказывает влияния на другой MATLAB или функции Simulink. Отмена импорта или индивидуальной настройки экспорта восстанавливает Редактор Шины по умолчанию возможности той операции, не влияя на другой.

Создать Bus объекты от внешнего кода С, вы не должны делать индивидуальные настройки. Смотрите Создают Объекты Шины из Внешнего кода С.

Необходимое фоновое знание

Настройка Bus возразите импорту, или экспорт требует, чтобы вы поняли:

  • Язык MATLAB и методы программирования

  • Simulink Bus объектный синтаксис

  • Собственный формат, в который вы переводите Bus объекты и методы, необходимые, чтобы получить доступ к средству, которое хранит объекты.

  • Любые специфичные для платформы методы для получения данных от пользователя, такие как имя местоположения, в котором можно сохранить или получить доступ к Bus объекты.

Запишите экспорт функций объекта шины

Пользовательский Bus объектный экспорт функций требует по крайней мере одного аргумента. Можно использовать дополнительные аргументы, чтобы обработать специальные действия функцией. Значение первого аргумента является массивом ячеек, содержащим имена всего Bus объекты, которые выбрал Редактор Шины. Можно использовать функции, глобальные переменные, или любой другой метод MATLAB, чтобы ввести значения для любых дополнительных аргументов. Общий алгоритм индивидуально настраиваемого экспорта функций:

  1. Выполните итерации по списку имен объектов в первом аргументе.

  2. Получите Bus объект, соответствующий каждому имени.

  3. Переведите Bus возразите против собственного синтаксиса.

  4. Сохраните переведенный 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 возразите, что функция импорта:

  1. Получите Bus информация об объекте от локального репозитория.

  2. Переведите каждый Bus определение объекта к Simulink.Bus объект.

  3. Сохраните каждый Bus возразите против базового рабочего пространства MATLAB.

Этот пример показывает, что синтаксический интерпретатор функции обратного вызова импорта:

function myImportCallBack
disp('Custom import was called!');

Несмотря на то, что эта функция не импортирует Bus объекты, это синтаксически допустимо и может быть указано с менеджером по Индивидуальной настройке Simulink. Операционная функция импорта:

  • Получает обозначение того, где получить Bus объекты импортировать

  • Преобразует каждый Bus возразите против Simulink.Bus объект

  • Хранит объект в базовом рабочем пространстве

Дополнительная логика специфична для предприятия.

Укажите индивидуальные настройки

Настроить Bus возразите импорту или экспорту, обеспечьте регистрационную функцию индивидуальной настройки, которая вводит и конфигурирует менеджера по Индивидуальной настройке каждый раз, когда вы запускаете программное обеспечение Simulink или обновляете индивидуальные настройки Simulink. Шаги для использования регистрационной функции индивидуальной настройки:

  1. Создайте файл с именем sl_customization.m содержать регистрационную функцию индивидуальной настройки. В качестве альтернативы можно использовать существующий файл настройки.

  2. Наверху файла создайте функцию с именем sl_customization это берет отдельный аргумент (или используйте специальную функцию в существующем файле). Когда функция вызывается, значение этого аргумента является менеджером по Индивидуальной настройке.

  3. Сконфигурируйте sl_customization функционируйте, чтобы установить importCallbackFcn и exportCallbackFcn быть указателями на функцию, которые задают ваш индивидуально настраиваемый Bus возразите функциям импорта и экспорта.

  4. Если 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 файл, они вступают в силу в следующий раз, когда вы обновляете индивидуальные настройки. Хранение функций обратного вызова в отдельных файлах обычно обеспечивает более гибкие и модульные результаты.

Смотрите также

Блоки

Функции

Классы

Похожие темы