Multiple types of signals can connect the blocks in a model. For example, a model may contain a control signal to initiate the execution of another block and buses to simplify line routing.
The following table summarizes the types of Simulink® signals.
|Array||Composite signal that provides index-based signal access.|
|Array of Buses||Concatenated signal that contains nonvirtual buses.|
|Bus||Composite signal that provides name-based signal access.|
|Composite Signal||Signal composed of other signals. See Composite Signals.|
|Concatenated Signal||Nonvirtual composite signal that provides index-based signal access.|
|Control Signal||Signal used by a block to initiate the execution of another block. For example, a signal that executes a function-call subsystem or an action subsystem. See Control Signals.|
|Matrix||Two-dimensional composite signal that provides index-based signal access.|
|Multidimensional (N-D) Signal||Composite signal with more than two dimensions that provides index-based signal access.|
|Mux Signal||Virtual composite signal that provides index-based signal access. Also known as a virtual vector.|
|Nonscalar Signal||Signal with at least one dimension, such as a vector (1-D), matrix (2-D), or multidimensional array (N-D). Nonscalar signals are a type of composite signal.|
|Nonvirtual Signal||Signal that affects simulation and code generation. See Virtual and Nonvirtual Signals.|
|Scalar Signal||Signal that supports only one value at a time.|
|Variable-Size Signal||Signal whose size (the number of elements in a dimension), in addition to its values, can change during a model simulation.|
|Vector||One-dimensional composite signal that provides index-based signal access.|
|Virtual Signal||Signal that represents another signal or set of signals. A virtual signal is used for graphical purposes and has no functional effect. See Virtual and Nonvirtual Signals.|
Signals may also have application-specific types such as wind velocity, tire pressure,
or water temperature. To assign or validate the properties of a signal based on an
application-specific type, use a
A control signal is a signal used by a block to initiate the execution of another block. For example, a signal that executes a function-call or action subsystem is a control signal. When you update or simulate a block diagram, Simulink uses a dash-dot pattern to draw lines that represent the control signals.
You can group multiple signals in a composite signal, route the signal from block to block, and extract the constituent signals where needed. When you have many parallel signals, composite signals can simplify the appearance of a model and help to clarify generated code. Composite signals can be virtual or nonvirtual.
Types of composite signals include:
Arrays of buses
For more information on composite signals, see Types of Composite Signals.
Virtual and Nonvirtual Signals
A virtual signal is a signal that graphically represents other signals or parts of other signals. Virtual signals are purely graphical entities; Simulink ignores them when simulating a model, and they do not exist in generated code. Some blocks, such as the Mux block, always generate virtual signals. Others, such as the Bus Creator block, can generate either virtual or nonvirtual signals. A signal is virtual if the block that generates it is virtual.
A nonvirtual signal is a signal that affects simulation and code generation. Some blocks, such as the Vector Concatenate block, always generate nonvirtual signals. A signal is nonvirtual if the block that generates it is nonvirtual.
For information on virtual and nonvirtual blocks, see Nonvirtual and Virtual Blocks.