Шина может быть сопоставлена с Simulink.Bus
объект, который задает свойства что Simulink® использование, чтобы подтвердить шину. Bus
объекты являются дополнительными для виртуальных шин, но требуемые для невиртуальных шин.
Bus
объект задает только архитектурные свойства шины, в отличие от значений сигналов, которые он содержит. Например, Bus
объект может задать число элементов в шине, порядке тех элементов, ли и как элементы вкладываются, и типы данных составляющих сигналов; но не значения сигналов.
Bus
объект походит на определение структуры в C: это задает члены шины, но не создает шину. Bus
объект также похож на коннектор кабеля. Коннектор задает все контакты и их настройку и управляет тем, какие типы проводов могут быть соединены с ним. Точно так же Bus
объект задает настройку и свойства сигналов, что связанная шина должна иметь.
Используя Bus
объекты в модели включают выполнение этих задач, во многих случаях итеративно.
Необходимо использовать Bus
объекты для этих настроек моделирования:
Невиртуальные шины
Stateflow® графики с вводом или выводом шины
S-функция или интерфейс Legacy Code Tool с внешним кодом
Можно сопоставить Bus
объект с несколькими блоками. Некоторые блоки требуют, чтобы вы задали Bus
возразите, имеет ли блок ввод или вывод шины. Для получения дополнительной информации смотрите Способные к шине Блоки.
Когда Bus
объект управляет вводом или выводом сигнала для блока, сигнал должен быть шиной, которой задал свойства объект. Любое отклонение вызывает ошибку.
Если вы используете Bus Creator или параметры блоков In Bus Element, чтобы задать свойства шины, все блоки ниже шины наследовали те же свойства.
Можно использовать параметры блоков Bus Creator, чтобы задать виртуальные шины и выполнить ограниченную проверку ошибок. Чтобы выполнить полную проверку ошибок на шине, сопоставьте Bus
объект с той шиной. Используя Bus
объекты к контрольным шинам для ошибок важны, когда это необходимо, чтобы создать допускающие повторное использование и общие компоненты модели.
Чтобы сделать трассировку соответствия между моделью и сгенерированным кодом для шины легче, используйте невиртуальную шину. Сгенерированный код для невиртуальной шины производит структуру. Невиртуальные шины могут привести к нескольким копиям некоторых шин.
Можно сохранить Bus
объекты к этим местоположениям:
Словарь данных
Функция
Matfile
База данных или другие внешние файлы
Если вы не сохраняете Bus
объекты, затем когда вы вновь открыли модель, которая использует Bus
объекты, необходимо воссоздать Bus
объекты.
Различный Bus
местоположения хранения объектов обеспечивают различные преимущества.
Местоположение | Рекомендации по использованию |
---|---|
Словарь данных | Используйте для компонентизации большой модели. Когда вы сохраняете в словарь данных от базового рабочего пространства, вы получаете все переменные, используемые моделью, не только Прежде чем вы сохраните в словарь данных, считайте Факторы прежде, чем Мигрировать на Словарь Данных. |
Функция | Используйте для, когда это необходимо, чтобы использовать MATLAB® для трассируемости и дифференцирования модели. |
Matfile | Используйте для более быстрого |
База данных или другие внешние файлы | Используйте для сравнения информации об интерфейсе шины с документами проекта, хранившими во внешнем источнике данных. |
Создать или отредактировать Bus
объекты в интерактивном режиме, используйте Bus Editor или Model Explorer. Bus
объекты, созданные с этими инструментами, первоначально хранятся в словаре данных или базовом рабочем пространстве. Чтобы визуализировать иерархию шины и возможности доступа, такие как импорт и экспорт, используйте Bus Editor. Когда у вас есть многие Bus
объекты или Bus
объекты хранятся в нескольких местоположениях, используют Model Explorer. Model Explorer обеспечивает быстрый запуск независимо от количества Bus
объекты и позволяют вам легко переключаться между редактированием Bus
объекты в базовом рабочем пространстве и словарях данных.
Создать и отредактировать Bus
объекты программно, смотрите, Создают Объекты Шины Программно. Bus
объекты первоначально хранятся или в базовом рабочем пространстве, словаре данных или в функции.
После того, как вы создаете Bus
возразите и задайте его атрибуты, можно сопоставить его с любым блоком, который должен использовать определение шины, которое предоставляет объект. Чтобы сопоставить блок с шиной, в диалоговом окне Block Parameters, устанавливают Output data type или Data type к Bus: <object name>
и замените <object name>
с Bus
имя объекта.
Можно задать Bus
возразите как тип данных блока или прежде или после определения Bus
объект. Однако, прежде чем вы симулируете модель, Bus
возразите и соответствующая шина должна иметь то же количество элементов шины в том же порядке. Кроме того, каждый элемент в Bus
возразите и в соответствующей шине должен иметь совпадающий тип данных и размерности.
Во время разработки моделей можно изменить шины, чтобы совпадать с Bus
объекты или изменяют Bus
объекты совпадать с шинами.
Если вы не хотите изменять Bus
объект, вы можете:
Создайте Bus
возразите, что совпадает с изменениями в шине, и используйте новый Bus
объект для блоков, с которыми соединяется измененная шина.
Откатите изменения шины так, чтобы шина продолжила совпадать со связанным Bus
объект.
Сохранить Bus
объекты сохранили в базовом рабочем пространстве, можно использовать любой метод MATLAB, который сохраняет содержимое базового рабочего пространства. Однако получившийся файл содержит все в базовом рабочем пространстве, не только Bus
объекты.
Можно сохранить Bus
объекты во множестве местоположений.
Местоположение | Метод создания файла | Содержимое файла |
---|---|---|
Словарь данных | Смотрите перемещают модели, чтобы использовать словарь данных Simulink. | Bus объекты и другие переменные базового рабочего пространства используются моделью |
Функция | Используйте редактор шины или Simulink.Bus.save функция. | Bus объекты |
Matfile | Используйте редактор шины. | Bus объекты |
База данных или другие внешние файлы | Используйте | Bus объекты |
Можно настроить Bus
возразите экспорту путем обеспечения пользовательской функции, которая пишет в местоположение вне MATLAB. Например, экспортируемый Bus
объекты могут быть сохранены как записи в базе данных. Смотрите Настраивают Импорт и экспорт Объекта Шины для деталей.
Когда вы изменяете сохраненный Bus
объекты, необходимо повторно сохранить их, чтобы сохранить изменения.
Прежде чем вы симулируете модель, весь Bus
объекты, которые это использует, должны загрузиться в базовое рабочее пространство или словарь данных, используемый моделью. Для автоматизации и непротиворечивости через модели, сопоставляя Bus
объекты к моделям важны.
Путем идентификации всего Bus
объекты, которых требует модель, можно гарантировать, что те объекты загружаются перед выполнением модели.
Путем идентификации всех моделей, которые используют Bus
объект, можно гарантировать что изменения в Bus
объект не вызывает неожиданные изменения ни в одной из моделей, которые используют Bus
объект.
Гарантировать необходимый Bus
загрузка объектов перед выполнением модели, рассмотрите:
Проекты — Автоматически загружают или запускают файлы, которые задают Bus
объекты путем конфигурирования файлов, чтобы запуститься, когда вы открываете проект. Для получения дополнительной информации смотрите управление проектами.
Словари данных — Хранилище Bus
объекты с переменными и другие объекты для одной или нескольких моделей.
Совместно использовать Bus
объект среди моделей, можно соединить каждую модель со словарем и создать общий словарь, на который ссылаются, чтобы хранить объект. Для примера смотрите, что Данные о Словаре Раздела Используют Словари, на которые Ссылаются.
Базы данных — информация об отображении Получения во внешнем источнике данных, такие как база данных.
Можно настроить Bus
возразите импорту путем обеспечения пользовательской функции, которая читает из местоположения вне MATLAB. Смотрите Настраивают Импорт и экспорт Объекта Шины для деталей.
Коллбэки модели — Загрузка или файлы запуска, которые задают Bus
объекты при помощи коллбэка модели, такой как PreLoadFcn
. Для получения дополнительной информации смотрите Коллбэки Модели.
Если модель использует только некоторых Bus
объекты, рассмотрите копирование Bus
объектный код непосредственно в коллбэк, вместо того, чтобы загрузить файл. Для примера откройте модель ex_bus_tutorial_nonvirtual
и исследуйте коллбэк.
Найти где Bus
объект используется в открытой модели, смотрите Блоки Открытия Который Использование Определенная Переменная.
Совет
Используя строгое и стандартное соглашение о присвоении имен очень полезно для отображения Bus
объектное использование. Например, считайте модель и данные требуемыми для функции управления привода. Именование модели Actuator
и порты Actuator_bus_in
ввода и вывода и
Actuator_bus_out
, соответственно, устанавливает связь между Bus
объекты и модель clear.
Обратите внимание на то, что этот подход может вызвать проблемы, если выход из одной модели питается непосредственно другую модель. В этом случае несоответствие именования приводит к ошибке.