MATLAB Answers


system identification procedure

Asked by Mr Smart on 16 Oct 2012
Hello, anyone knows? How to make implementation or realization system identification procedure in matlab .Using simulink model(electric device model such as transfer function and integrator).From this model I can get experimental data(input and output).

  1 Comment

on 19 Oct 2012
In case it is helpful, there is a System Identification Toolbox for Matlab/Simulink that can be purchased.

Sign in to comment.

1 Answer

Answer by Rajiv Singh on 18 Oct 2012
 Accepted Answer

Have Simulink data available in MATLAB workspace as double vectors. In the GUI (ident) import time signals to load the data. Then you work from there. If you are estimating models in the command line, package the data into an iddata object:
data = iddata(y,u,Ts); % y = output; u = input; Ts = sample time
Then try various estimation commands, e.g:
model = tfest(data, 2); % second order transfer function
The logged data (y,u) must be equi-sampled. If not, interpolate them to a uniform time grid.


what should we do if sample time was not constant?
interpolate or log data from the Simulink model at constant time intervals. Most identification routines do not handle irregularly sampled data.

Sign in to comment.