Using System Identification Toolbox More Effectively
11 views (last 30 days)
Show older comments
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.
0 Comments
Accepted Answer
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
More Answers (1)
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).
See Also
Categories
Find more on Linear Model Identification in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!