Toggle parameter between two values
Simulink / Dashboard
The Toggle Switch block toggles the value of the connected block parameter between two values during simulation. For example, you can connect the Toggle Switch block to a Switch block in your model and change its state during simulation. Use the Toggle Switch block with other Dashboard blocks to create an interactive dashboard for your model.
Double-clicking the Toggle Switch block does not open its dialog box during simulation and when the block is selected. To edit the block's parameters, you can use the Property Inspector, or you can right-click the block and select Block Parameters from the context menu.
Dashboard blocks do not use ports to make connections. To connect Dashboard blocks to variables and block parameters in your model, use connect mode. Connect mode facilitates the process of connecting Dashboard blocks in your model, especially when you want to connect multiple blocks at once. If you only want to connect a single Dashboard block, you can also use the Connection table in the block dialog box to make the connection.
Dashboard blocks cannot connect to variables until you update your model diagram. To connect Dashboard blocks to variables or modify variable values between opening your model and running a simulation, update your model diagram using Ctrl+D.
To enter connect mode, click the Connect button that appears above your unconnected Dashboard block when you pause on it.
In connect mode, when you select one or more signals or blocks, a list of parameters and signals available for connection appears. Select a signal or parameter from the list to connect the selected Dashboard block. To connect another Dashboard block, pause on the block and click the Connect button above it. Then, make a selection of signals and blocks in your model, and choose a signal or parameter to connect.
When you finish connecting the Dashboard blocks in your model, click the Exit button in the upper-right of the canvas to exit connect mode.
Tunable parameters connected to Dashboard blocks are logged to the Simulation Data
Inspector, where you can view parameter values along with logged signal data. You can access
logged parameter data in the MATLAB® workspace by exporting the parameter data from the Simulation Data Inspector
UI or by using the
Simulink.sdi.exportRun function. For more information about exporting
data with the Simulation Data Inspector UI, see Export Data from the Simulation Data Inspector. The
parameter data is stored in a
Simulink.SimulationData.Parameter object, accessible as an element in the
Dashboard blocks can only connect to real scalar signals.
You cannot use the Connection table to connect a Dashboard block to a block that is commented out. When you connect a Dashboard block to a commented block using connect mode, the Dashboard block does not display the connected value until the you uncomment the block.
Dashboard blocks cannot connect to signals inside referenced models.
Parameters specified by indexing a variable array do not appear in the
Connection table. For example, a block parameter defined as
engine(1) using the variable
engine does not
appear in the table.
To access the parameter in the Connection table, assign the
indexed value to a scalar variable, such as
engine_1. Then, use the
scalar variable to define the block parameter.
When you simulate a model in external mode with the Default parameter behavior set to Inlined, Dashboard blocks can appear to change parameter and variable values. However, the change does not propagate to the simulation. For example, the Gain block displays changes made to its Gain parameter using the Dashboard blocks, but the Gain value used in the simulation does not change.
Connection— Select a variable or block parameter to connect
Select the variable or block parameter to control using the Connection table. Populate the Connection table by selecting one or more blocks in your model. Select the radio button next to the variable or parameter you want to control, and click Apply.
To see workspace variables in the connection table, update the model diagram using Ctrl+D.
To programmatically connect a Dashboard block to a tunable parameter or a
variable, use a
Simulink.HMI.ParamSourceInfo object. The
Simulink.HMI.ParamSourceInfo object contains four
properties. Some of the properties apply to connecting Dashboard blocks to
parameters, and some apply to connecting Dashboard blocks to variables. Not all
fields have a value for a connection because a given Dashboard block connects to
either a parameter or a variable.
States— Pair values and labels
Pairs of values to assign to the connected variable or parameter and text to display on the block. Switches have two states — Top and Bottom — one corresponding to each switch position. Each state contains a Value and a Label.
Value — Value to assign to the connected variable or parameter when the switch is in the corresponding position.
Label — Text to display on the block for the corresponding position.
This table describes the default configuration for the block.
|Position||State Value||State Label|
To configure the States for the block programmatically,
specify the value of the
States parameter as a structure
array containing two elements with fields:
Value — Scalar double value for the
Label — String or character array to use as the
label for the switch position.
topState.Value = 0; topState.Label = 'Off'; bottomState.Value = 1; bottomState.Label = 'On'; switchStates = [topState bottomState];
|Type: two element array of structures|
Label— Block label position
Position of the block label. When the block is connected to an element in the model, the label is the name of the connected element.
|Type: character vector|