Сигнальные линии группы в виртуальные шины

Можно объединить сигналы в шину и затем получить доступ к шине в целом или выбрать определенные сигналы из шины. Виртуальная шина Simulink® походит на связку проводов, скрепленную стяжками. Для сравнения невиртуальная шина Simulink походит на struct в коде С.

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

То, как вы создаете виртуальные шины, отличается на основе местоположения сигналов, что вы хотите сгруппироваться.

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

Совет

Когда вы создаете шину, обновления стиля линии, когда вы симулируете модель или на вкладке Modeling, нажимают Update Model.

Сигнальные линии группы в компоненте

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

Откройте модель в качестве примера, которая содержит три блока.

Чтобы создать шину, которая содержит сигналы от нескольких блоков, перетащите, чтобы выбрать блоки. В данном примере выберите блоки Sine Wave и Chirp Signal. В строке меню, которая появляется, нажмите Create Bus.

Simulink добавляет блок Bus Creator и соединяет входные сигналы с тем блоком. Выход блока Bus Creator является виртуальной шиной.

Чтобы облегчить идентифицировать элементы шины, пометьте входные сигналы с блоком Bus Creator. Пометьте выходной сигнал блока Chirp Signal путем двойного клика по сигнальной линии и ввода Chirp. Точно так же пометьте выходной сигнал блока Sine Wave Sine.

Чтобы создать вторую шину, которая содержит первую шину и выходной сигнал блока Step, перетащите, чтобы выбрать блоки Step и Bus Creator. В строке меню, которая появляется, нажмите Create Bus. Начиная с Sine и Chirp сигналы являются элементами входной шины, Simulink создает ту же шину независимо от того, включает ли ваш выбор Sine wave и блоки Сигнала Щебета.

Simulink добавляет другой блок Bus Creator и соединяет входные сигналы с тем блоком. Пометьте выходной сигнал блока Step Step и выходной сигнал первого блока Bus Creator NestedBus. Можно вложить шины на любую глубину. Если одни из входных параметров с блоком Bus Creator являются шиной, то ее выход является иерархией шины, которая содержит по крайней мере одну вложенную шину.

Соедините выходной сигнал второго блока Bus Creator с блоком Outport и пометьте TopBus сигнала. Теперь, когда все сигнальные линии соединяются, симулируют модель.

Соедините несколько выходных сигналов с портом

В этом примере показано, как объединить выходные сигналы подсистемы или модели в виртуальную шину, использующую блоки Элемента Шины.

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

Откройте подсистему и добавьте блок Out Bus Element в нее. Блок Out Bus Element похож на блок Bus Creator, соединенный с блоком Outport. Соедините выход блока Chirp Signal с блоком Out Bus Element.

Метка рядом с блоком Out Bus Element имеет две части. Первая часть метки описывает шину (OutBus) и вторая часть метки описывает элемент шины (signal1). Чтобы сделать элементы идентификации шины легче, переименуйте элемент путем двойного клика по signal1 и ввод Chirp.

Используйте Ctrl+drag на блоке Out Bus Element, чтобы сделать две копии блока. При копировании блока этот путь необходимо задать, создать ли новый порт или использовать существующий порт. Чтобы создать одну выходную шину, которая содержит все сигналы, выберите Use Existing Port каждый раз, когда вы копируете блок, затем соединяете сигналы.

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

Смотрите иерархию в диалоговом окне параметров блоков для порта путем двойного клика на любом из блоки Элемента Шины.

В качестве альтернативы, если вы сгруппировали Sine и Step сигналы в виртуальную шину с помощью блока Bus Creator, вы могли соединить ту шину с блоком Out Bus Element. Метка задает имя элемента, соединенного с блоком, который является NestedBus виртуальная шина.

Возвратитесь к топ-модели. Три блоки Элемента Шины соответствуют одному порту. Соедините выход этого порта с блоком Outport и симулируйте модель.

Объедините несколько портов подсистемы в один порт

Этот пример показывает три способа упростить интерфейс подсистемы путем преобразования нескольких портов и их связанных сигналов в один порт и шину.

Откройте модель в качестве примера, которая содержит две подсистемы с несколькими портами ввода и вывода.

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

Simulink заменяет блоки Inport и Outport в источнике и целевых подсистемах с В Элементе Шины и блоках Элемента Шины.

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

Simulink добавляет блок Bus Creator перед первой подсистемой и заменяет блоки Inport в первой подсистеме с В блоках Элемента Шины.

Перетащите рамку выделения вокруг сигнальных линий между блоками second subsystem и Scope. От строки меню, которая появляется, нажмите Create Bus.

Simulink заменяет блоки Выходного порта во второй подсистеме с Элементом Шины, блокирует и добавляет блок Селектора Шины после второй подсистемы.

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

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

| | |

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте