exponenta event banner

Укажите свойства шины с помощью Simulink.Bus Object Data Types

Шина может быть связана с Simulink.Bus , который задает свойства, используемые Simulink ® для проверки шины .Bus объекты являются необязательными для виртуальных шин, но обязательными для невиртуальных шин.

A Bus объект задает только архитектурные свойства шины в отличие от значений содержащихся в ней сигналов. Например, Bus объект может задавать количество элементов в шине, порядок этих элементов, то, вложены ли элементы и как, и типы данных составляющих сигналов; но не значения сигнала.

A Bus объект аналогичен определению структуры в языке C: он определяет элементы шины, но не создает шину. Bus объект также аналогичен кабельному разъему. Соединитель определяет все контакты и их конфигурацию и управляет типами проводов, которые могут быть к нему подключены. Аналогично, a Bus объект определяет конфигурацию и свойства сигналов, которые должна иметь соответствующая шина.

Рабочий процесс объекта Simulink.Bus

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

Определение необходимости использования объектов Simulink.Bus

Необходимо использовать Bus объекты для этих конфигураций моделирования:

  • Невиртуальные шины

  • Диаграммы Stateflow ® с вводом или выводом шины

  • S-функция или интерфейс Legacy Code Tool с внешним кодом

Можно связать Bus объект с несколькими блоками. Для некоторых блоков необходимо указать Bus объект, если блок имеет вход или выход шины. Дополнительные сведения см. в разделе Блоки с поддержкой шины.

Когда Bus объект управляет входом или выходом сигнала для блока, сигнал должен быть шиной, которая имеет свойства, заданные объектом. Любое отклонение приводит к ошибке.

Если для задания свойств шины используются параметры блока Bus Creator или In Bus Element, все блоки, расположенные ниже по потоку от шины, наследуют одни и те же свойства.

Параметры блока Bus Creator можно использовать для определения виртуальных шин и выполнения ограниченной проверки ошибок. Для выполнения тщательной проверки ошибок на шине необходимо связать Bus объект с этой шиной. Использование Bus объекты для проверки шин на наличие ошибок важны, когда требуется создать повторно используемые и совместно используемые компоненты модели.

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

Определение способа управления объектами Simulink.Bus

Вы можете сохранить Bus объекты в этих расположениях:

  • Словарь данных

  • Функция

  • MAT-файл

  • База данных или другие внешние файлы

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

Отличающийся Bus склады хранения объектов обеспечивают различные преимущества.

МестоположениеСоображения по использованию

Словарь данных

Используется для компонентации больших моделей.

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

Перед сохранением в словаре данных прочтите раздел «Соображения перед переносом в словарь данных».

Функция

Используйте для, когда вы хотите использовать MATLAB ® для отслеживания и разностных моделей.

MAT-файл

Использование для более быстрого Bus сохранение и загрузка объекта.

База данных или другие внешние файлы

Используется для сравнения информации интерфейса шины с конструкторской документацией, хранящейся во внешнем источнике данных.

Создание и задание объектов Simulink.Bus

Создание или изменение Bus в интерактивном режиме используйте Редактор шины (Bus Editor) или Обозреватель моделей (Model Explorer). Bus объекты, созданные с помощью этих инструментов, первоначально хранятся в базовой рабочей области или словаре данных. Для визуализации иерархии шины и возможностей доступа, таких как импорт и экспорт, используйте редактор шины. Когда у вас много Bus объекты или Bus объекты хранятся в нескольких расположениях, используйте Обозреватель моделей. Обозреватель моделей обеспечивает быстрый запуск независимо от количества Bus и позволяет легко переключаться между редактированием Bus объекты в базовой рабочей области и словарях данных.

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

После создания Bus и указать его атрибуты, можно связать его с любым блоком, который должен использовать определение шины, предоставляемое объектом. Чтобы связать блок с шиной, в диалоговом окне «Параметры блока» задайте для параметра «Тип данных» значение Bus: <object name> и заменить <object name> с Bus имя объекта.

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

Во время разработки модели можно изменять шины в соответствии с Bus объекты или изменение Bus объекты, соответствующие шинам.

Если вы не хотите изменять Bus объект, можно:

  • Создать Bus объект, соответствующий изменениям в шине и использующий новый Bus объект для блоков, к которым подключается измененная шина.

  • Откат изменений шины так, чтобы шина продолжала соответствовать связанному Bus объект.

Сохранить объекты Simulink.Bus

Спасти Bus объекты, хранящиеся в базовой рабочей области, можно использовать любой метод MATLAB, который сохраняет содержимое базовой рабочей области. Однако результирующий файл содержит все в базовой рабочей области, а не только Bus объекты.

МестоположениеМетод создания файловСодержимое файла

Словарь данных

См. раздел Перенос моделей для использования словаря данных Simulink.Bus объекты и другие базовые переменные рабочей области, используемые моделью

Функция

Используйте редактор шины или Simulink.Bus.save функция.Bus объекты

MAT-файл

Используйте редактор шины.Bus объекты

База данных или другие внешние файлы

Используйте Simulink.importExternalCTypes функции, скрипты или функции Toolbox™ базы данных в структуре кода C (struct) определения. При подготовке к интеграции существующего алгоритмического кода C для моделирования (например, с помощью инструмента Legacy Code Tool) можно упаковывать данные сигналов или параметров в определения в соответствии с типом структуры.

Bus объекты

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

При изменении сохраненного Bus объекты необходимо сохранить, чтобы сохранить изменения.

Сопоставить объекты Simulink.Bus с моделями

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

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

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

Для обеспечения необходимого Bus загрузка объектов перед выполнением модели, рассмотрим:

  • Проекты - автоматическая загрузка или запуск файлов, определяющих Bus путем настройки файлов для выполнения при открытии проекта. Дополнительные сведения см. в разделе Управление проектами.

  • Словари данных - Хранить Bus объекты с переменными и другие объекты для одной или нескольких моделей.

    Предоставление общего доступа к Bus между моделями можно связать каждую модель со словарем и создать общий словарь ссылок для хранения объекта. Пример см. в разделе Данные словаря разделов с использованием словарей, на которые имеются ссылки.

  • Базы данных - сбор информации о сопоставлении во внешнем источнике данных, например в базе данных.

    Можно настроить Bus путем предоставления пользовательской функции, считывающей данные из расположения вне MATLAB. Дополнительные сведения см. в разделе Настройка импорта и экспорта объектов шины.

  • Обратные вызовы модели - автоматическая загрузка или запуск файлов, определяющих Bus с помощью load функция в обратном вызове модели.

    Если модель использует только несколько Bus объекты, рассмотрите возможность копирования Bus объектный код непосредственно в обратный вызов вместо загрузки файла. Например, открыть модель ex_bus_tutorial_nonvirtual и проверьте обратный вызов.

Чтобы найти, где Bus используется в открытой модели, см. Поиск блоков, использующих определенную переменную.

Совет

Использование строгого и стандартного соглашения по присвоению имен очень полезно для сопоставления Bus использование объекта. Например, рассмотрим модель и данные, необходимые для функции управления исполнительным механизмом. Присвоение модели имени Actuator и порты ввода и вывода Actuator_bus_in и Actuator_bus_out, соответственно, устанавливает соединение между Bus объекты и модель очищаются.

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

См. также

Классы

Связанные темы