Main Content

Varying Observer Form

Observer-form state-space model with varying matrix values

  • Varying Observer Form block

Control System Toolbox / Linear Parameter Varying


Use this block to implement a continuous-time varying state-space model in observer form. The system matrices A, B, C, and D describe the plant dynamics, and the matrices K and L specify the state-feedback and state-observer gains, respectively. Feed the instantaneous values of these matrices to the corresponding input ports. The observer form is given by:


where u is the plant input (control signal), y is the plant output, xe is the estimated state, and ε is the innovation, the difference between the predicted and measured plant output. The observer form works well for gain scheduling of state-space controllers. In particular, the state xe tracks the plant state, and all controllers are expressed with the same state coordinates.

Use this block and the other blocks in the Linear Parameter Varying library to implement common control elements with variable parameters or coefficients. For more information, see Model Gain-Scheduled Control Systems in Simulink.


Avoid making the K matrix depend on the control signal u. If you have such dependence, the resulting equation u = –K(u)xe creates an algebraic loop, because computing the block output value requires knowing the block output value. This algebraic loop is prone to instability and divergence. Instead, try expressing K in terms of the time t and the block input y.

For similar reasons, avoid making A and B depend on the dxe output.



expand all

Measured plant output signal.

Plant state matrix of dimensions Nx-by-Nx, where Nx is the number of plant states.

Plant input matrix of dimensions Nx-by-Nu, where Nu is the number of plant inputs.

Plant output matrix Ny-by-Nx, where Ny is the number of plant outputs.

Plant feedforward matrix of dimensions Ny-by-Nu.

State-feedback matrix of dimensions Nu-by-Nx.

State-observer matrix of dimensions Nx-by-Ny.


expand all

Control signal (plant input).

Vector of estimated plant states.


To enable this port, select the Output states parameter.

Derivatives of the corresponding estimated states in xe.


To enable this port, select the Output state updates parameter.


expand all

Initial state values, specified as a scalar or a vector whose length is the number of plant states.

To identify plant states, specify state names as a:

  • character vector, for a one-state plant.

  • Cell array of character vectors, for a multistate plant.

Select to enable the estimated states output port, xe.

Select to enable the estimated state derivatives output port, dxe.

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using Simulink® Coder™.

Version History

Introduced in R2017b