Filter löschen
Filter löschen

Estimating the Impulse Response from Data, SISO system.

2 Ansichten (letzte 30 Tage)
Emanuel
Emanuel am 12 Apr. 2011
Hello,
I would like to know more details on how does the function impulse work? In case,
ze = iddata(y,u,Ts)
impulse(ze)
Where, y= output sampled data; u= input sampled data; Ts= sample time
The explanation given in http://www.mathworks.com/help/toolbox/ident/ref/impulse.html is very superficial. Could you give me more details (mathematically speaking) on the function impulse? If possible please point me to articles that talk about it.
Thanks.

Akzeptierte Antwort

Rajiv Singh
Rajiv Singh am 12 Apr. 2011
It performs FIR modeling for an appropriately selected number of lags: y(t) = \sum_{i=0}{N-1} b_i*u(t-i). For example, you may do arx(data, [na nb nk]) where na = 0, nb = 20, nk = 0 for a SISO system.
The "data" here in an iddata object containing the measured output signal and a "pre-whitened" input signal (u_white). The prewhitening of the input is performed by filtering the actual input signal using the model: u_white(t) = 1/a(q) u(t). For example, do the following to obtain the prewhitened input:
M = arx(u, 4); A = M.a; u_white = filter(u,A,[1, zeros(1,3)]);
The time horizon selected for estimation includes a portion of negative real axis so that feedback effects in the data may be detected. Please see the code in iddata/impulse to see how this is done. In many situations, this detail is irrelevant.

Weitere Antworten (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by