Using System Identification Toolbox More Effectively

4 views (last 30 days)
Hello,
Let's say I have a system that its output is noisy enough to ident in system identification toolbox.
In this case is it okey to log data after using low pass filter? Because when we use low pass there will be a little phase shift and it can effect the transfer function of the system. This situation concerns me.
Are there any ways to use this noisy or filtered data in system identification toolbox get best estimated transfer function?
Any help will be appreciated.
Thanks.

Accepted Answer

Star Strider
Star Strider on 22 Jul 2022
Because when we use low pass there will be a little phase shift and it can effect the transfer function of the system.’
You are correct to recognise that possibility, however it is straightforward to avoid using the filtfilt function to do the actual filtering of the signal with any filter you design. The lowpass function does this automatically. For best results with it (and its friends) use the ImpulseResponse','iir' name-value paiir.
For broadband (not band-limited) noise use the sgolayfilt funciton. I usually use a 3-degree polynomial and adjust the ‘framelen’ value to get the result I want.
.
  4 Comments

Sign in to comment.

More Answers (1)

Rajiv Singh
Rajiv Singh on 9 Aug 2022
If you have input and output signals separately, you will need to filter both identically, so that in the resulting transfer function, the filter dynamics "cancel out". The net effect of prefiltering the data is to impose a frequency-weighting of the fitting errors. The frequencies where the filter frequency response has lower magnitude are given less importance (smaller weighhting).

Community Treasure Hunt

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

Start Hunting!

Translated by