|On this page…|
Add model simulation blocks to your Simulink® model from the System Identification Toolbox™ block library when you want to:
Represent the dynamics of a physical component in a Simulink model using a data-based nonlinear model.
Replace a complex Simulink subsystem with a simpler data-based nonlinear model.
You use the model simulation blocks to import the models you identified using System Identification Toolbox software from the MATLAB® workspace into the Simulink environment. For a list of System Identification Toolbox simulation blocks, see Summary of Simulation Blocks.
The following table summarizes the blocks you use to import models from the MATLAB environment into a Simulink model for simulation. Importing a model corresponds to entering the model variable name in the block parameter dialog box.
|Idmodel||Simulate a linear identified model in Simulink software. The model can be a process (idproc), linear polynomial (idpoly), state-space (idss), grey-box (idgrey) and transfer-function (idtf) model.|
|Nonlinear ARX Model||Simulate idnlarx model in Simulink.|
|Hammerstein-Wiener Model||Simulate idnlhw model in Simulink.|
|Nonlinear Grey-Box Model||Simulate nonlinear ODE (idnlgrey model object) in Simulink.|
After you import the model into Simulink software, use the block parameter dialog box to specify the initial conditions for simulating that block. (See Specifying Initial Conditions for Simulation.) For information about configuring each block, see the corresponding reference pages.
For accurate simulation of a linear or a nonlinear model, you can use default initial conditions or specify the initial conditions for simulation using the block parameters dialog box.
Specify the initial states for simulation in the Initial states (state space only: idss, idgrey) field of the Function Block Parameters: Idmodel dialog box:
For models other than idss and idgrey, initial conditions are zero.
In some situations, you may want to match the simulated response of the model to a certain input/output data set:
Convert the identified model into state-space form (idss model), and use the state-space model in the block.
Compute the initial state values that produce the best fit between the model output and the measured output signal using findstates(idParametric).
Specify the same input signal for simulation that you used as the validation data in the app or in the compare plot.
% Convert to state-space model mss = idss(m); % Estimate initial states from data X0 = findstates(mss,z);
z is the data set you used for validating the model m. Use the model mss and initial states X0 in the Idmodel block to perform the simulation.
The states of a nonlinear ARX model correspond to the dynamic elements of the nonlinear ARX model structure, which are the model regressors. Regressors can be the delayed input/output variables (standard regressors) or user-defined transformations of delayed input/output variables (custom regressors). For more information about the states of a nonlinear ARX model, see the idnlarx reference page.
For simulating nonlinear ARX models, you can specify the initial conditions as input/output values, or as a vector. For more information about specifying initial conditions for simulation, see the IDNLARX Model reference page.
The states of a Hammerstein-Wiener model correspond to the states of the embedded linear (idpoly or idss) model. For more information about the states of a Hammerstein-Wiener model, see the idnlhw reference page.
The default initial state for simulating a Hammerstein-Wiener model is 0. For more information about specifying initial conditions for simulation, see the IDNLHW Model reference page.