Why bus creater (non-virtual) accepts elements according to order defined in Simulink.Bus object

7 views (last 30 days)
I am using Matlab R2015b.
When I create a non-virtual bus using Bus Creator, input signals (with signal names same as bus element name) to bus creator must be in order defined in Simulink.Bus object. If order is not followed then simulink throws error.
Buses are generally equivalent to structure in C. So it should be possible to refer the bus elements with names only provided that signal names are same as element name.
But why its depend on sequence of elements defined in Simulink.Bus object ??

Answers (1)

Ralf
Ralf on 26 Apr 2018
I've got the same question.
In addition, is there a way to assemble a non-virtual bus without beeing forced to respect the order of the elements in bus object?
  3 Comments
Chuck Olosky
Chuck Olosky on 9 Dec 2021
For the default bus signal, you can use a constant block with a value of Simulink.Bus.createMATLABStruct('BUS_OBJ_NAME') and a data type of Bus: BUS_OBJ_NAME. Then feed this into the Bus Assignment block without needing to use a Bus Creator block.

Sign in to comment.

Categories

Find more on Composite Interfaces in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!