To simplify model appearance, combine individual signals into composite signals using these techniques:
For a detailed comparison of composite signals, see Types of Composite Signals.
Virtual buses meet most modeling requirements for combining signals into a composite signal and give you flexibility for combining different types of signals.
|Demux||Extract and output elements of virtual vector signal|
|Mux||Combine input signals of same data type and complexity into virtual vector|
|Selector||Select input elements from vector, matrix, or multidimensional signal|
|Vector Concatenate, Matrix Concatenate||Concatenate input signals of same data type to create contiguous output signal|
|Specify properties of buses|
|Specify properties of elements of buses|
|Convert cell array containing bus information to Simulink.Bus objects|
|Create MATLAB structures that use the same hierarchy and attributes as buses|
|Create Simulink.Bus objects from blocks or MATLAB structures|
|Use Simulink.Bus objects to create cell array containing bus information|
|Save Simulink.Bus objects in function|
To reduce visual complexity in a model, combine signals into a composite signal.
Combine signals into virtual buses, which only affect visual appearance.
Display information about buses, such as signal hierarchy and whether the bus is virtual or nonvirtual.
Identify the blocks that support buses as inputs.
Use In Bus Element and Out Bus Element blocks for bus inputs and outputs.
Change the order and hierarchy of nested buses and their elements.
Use a Bus Assignment block to assign values to elements of a bus.
Specify bus element values as initial conditions for buses.
Recognize modeling patterns that cause hidden Bus To Vector and Signal Conversion blocks.
Share blocks that create or interact with buses using subsystem references or custom libraries.
Display interfaces to trace signals through the nested levels, annotate signal characteristics, and view units associated with signals.
Simulink.Bus object uses and
Use functions and classes to define
Bus objects and bus
elements, create bus objects from blocks, or create
from MATLAB® data.
Customize the Bus Editor import and export commands by writing MATLAB functions that provide the desired capabilities. Register these functions using the Simulink® Customization Manager.
Convert virtual buses to nonvirtual buses, which affect simulation and code generation.
Make the sample time of signals the same so that you can group them in a nonvirtual bus.
Code generation uses a structure to represent a nonvirtual bus. You can control data types of initial condition structure fields.
Find nonvirtual buses in generated code for a simple model.
Connect nonvirtual buses to inputs and outputs of referenced models.
Streamline a model by combining nonvirtual buses that have the same bus type
(use the same
Bus object) into an array of buses.
Use array of buses in a model, load array of bus data, and log array of buses.
Set up your model to use an array of buses to select signals, assign values to a signal, perform iterative processing, log and load signals, and initialize signals.
Convert an existing model that does not use arrays of buses to use arrays of buses.