Read a block state
Simulink / Signal Routing
The State Reader block reads the current state of a supported state owner block.
State Reader blocks can read state from these state owner blocks:
Discrete Transfer Fcn
Discrete FIR Filter
Outport of conditional subsystem blocks such as Enabled Subsystem, Triggered Subsystem, and Function-Call Subsystem
S-Function with multiple discrete states
To configure an S-Function block as a state owner block, each data type work vector must be declared as a discrete state vector using
ssSetDWorkUsedAsDStateand named using
You can determine whether a block is a supported state owner block by the value of
IsStateOwnerBlock parameter. The
blk is a block name or handle, returns
'on' if the block is a supported state owner block and
To add a State Reader or State Writer block to your
model, click on a state owner block to highlight it. Then, from the current block tab of
the Simulink® toolstrip, click Reader-Writer. From the menu, select
State Reader Block or
The current block tab of the toolstrip might be labeled with the name of the highlighted block, for example, Outport, or it might be labeled Block, depending on the type of block you highlight.
If the state owner block has multiple states, then the State Reader or State Writer block dialog opens. Select a state from the State Owner Selector Tree.
Before adding a State Reader or State Writer block for a Second-Order Integrator block, you must explicitly name the states. See Specifying the State Names.
After you create a State Reader or State Writer block, a badge appears above the state owner block, and the name of the state owner block appears next to the State Reader or State Writer block.
A State Reader or State Writer block cannot remain in the same system as its state owner block. After you create a State Reader or State Writer block, cut and paste it to move it to the desired location within the model hierarchy.
Alternatively, you can add a State Reader or State Writer block to your model from the Simulink Library Browser, then set the State owner block parameter from the block parameters dialog.
When you create a library block with a State Reader or State Writer block, you must also include the corresponding state owner block in the library block.
You can select a State Reader or State Writer block or a corresponding state owner block to highlight blocks related to it. To show a related block in an open diagram or new tab, pause on the ellipsis that appears after selection. Then, select Related Blocks from the action bar. When multiple blocks correspond to the selected block, a list of related blocks opens. You can filter the list of related blocks by entering a search term in the text box. After you select a related block from the list, window focus goes to the open diagram or new tab that shows the related block.
Out — State value
scalar | vector
State value read from a state owner block.
The dimension of the output is the dimension of the full state vector.
Refer to the Initial conditions parameter for
specific blocks. For example, for a Delay block with a
Delay length of
State Reader block returns a state vector of length
State owner block — Name of state owner block
Name of state owner block whose state this block is reading. To change the state owner block, select a block from the State Owner Selector Tree.
If the name of a state owner block contains a slash
/), the slash appears as two slashes
//) in the State Reader block
parameters dialog. This notation distinguishes the slash in the block
name itself from slashes that separate names at different levels of the
|Type: character vector