LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to understand the relationship between the frequency character and the system 's nonparametric estimation?

Solved!
Go to solution

Hello:

 

 I am in  program about system identification. The process is as below:

 

Firstly, I use a sweeping sine signal (the frequency range is from 0 to 50 Hz) to stimulate the actuator;

 

 

Secondly, , I use a lowpass filter( the cutoff frequence is 45 Hz) to filter the response signal, as the picture below;

 

 

Y]1)BZO6Y9HC6)Z`KKK}SRK.png
 
 
Then ,I use the nonparametric estimation VI to identifiy the frequency character of the system.
 
Before I raise my question, I want to introduce a guess about the frequency character of the system at first.
 

 

As I use a signal filtered by a lowpass filter with a 45Hz cutoff frequence, the magnitude reaponse of the nonparametric system  surely should also be cut off in 45 Hz, which means the magnitude of  high frequence exceeding 45 Hz should be very small. Am I right?

 

But the truth is  ,as the picture below:

KSJ@3LA5]R_(Z4LI9@53W]D.png

 

So, my questions are:

 

How to explain this result,?

Why does the magnitude response first be cut off as my guess, but then rise up in the high frequency range?

How to solve the problem?

 

Any assistance is helpful and welcome.

Thank you!

 

0 Kudos
Message 1 of 12
(3,983 Views)

To help us provide assistance, please attach your actual VI, not a picture of part of your VI.  With a picture, we cannot visualize what isn't shown, and, more important, we cannot execute your code to better understand what it is doing.

 

Since I cannot see the beginning of your code, I can't tell the origin of the signal you are trying to analyze.  Something you could try to debug this yourself is to use a known signal -- build a system that (for example) "does nothing", which can be modelled as a Gain of 1 system.  Do you get a Gain of 1 and Phase of 0?  Building a Low Pass filter is also easy (a Moving Average) -- does it give the expected Low Pass response?

 

Bob Schor

0 Kudos
Message 2 of 12
(3,947 Views)

To help isolate the problem plot the output of the filter directly. Does it roll off and stay low in the higher frequencies? What does the input to the filter look like?  In particular what does its high frequency spectrum look like?  How fast do you sweep the sine signal?

 

What is the behavior of the Nonparametric Estimation VI with a near zero input over a wide frequency range? (I do not have the SI toolkit so cannot look at it).

 

The low frequency portion of the system response appears to have two sharp resonances, one at ~7 Hz and the other possibly at the third harmonic ~21 Hz. From the appearance of the graph I would guess that you do not have enough data near those resonances to adeqautely characterize them. Sweep more slowly and take a lot more datapoints.

 

Lynn

0 Kudos
Message 3 of 12
(3,942 Views)

Thanks for your assistance, Heart

 

I did what you told to me today, and still the problem was the same.

 

Maybe I did not describe my problems clearly, here I give a decription again with more details.

 

I use a sweep sine signal (0—50Hz) to stimulate a structure, and the response signal after being filtered by a lowpass filter (the cutoff  frequence is 45Hz), is as the picture below

@N9L1X%Z~Z@O{PS78FPVQEW.png

 

We can claerly notice that the first three modal frequences of the system are 1.6 Hz. 10Hz and 27Hz respectively. Also,the high frequences exceeding 45Hz  have been cut off. That is reasonable.

 

But the problem is ,when I put this filtered response signal into a nonparametric system identification VI with the stimulating sweep sine signal, the frequency character that the nonparametric system identification VI gives is like this:

 

7I{JWMYNN~Z`]7[$NP)PJ0M.png

 

Yes,we can see the frequency magnitude character that the nonparametric system identification VI gives  is only right  below 50Hz which is near the cutoff frequence of  the  lowpass filter. In fact , if you set the cutoff frequence at 100Hz, the frequency magnitude character will also step up at 100Hz as here in 50Hz.

 

As this is the system that the nonparametric system identification VI gives, when I want to do a parametric system identification, the parametric system identification VI in labview also gives a wrong result, because it will recognise the natural frequences are in the high frequency range.

 

The magnitude character of the system estimated by the  parametric system identification VI  is as below:

_6QQU%MV5VYWNR5ZK@)D_}8.png

 

Right? The use of a filtered response signal leads to a wrong result, in my experiment.

 

Why did I use a  filtered response signal?

 

Because the response signal that I get is also wrong in high frequency range without being filtered. Just as the picture below:

 

YH`JIONZX9V5R0}_B@@AX38.png

 

I cannot explain what is the reason that the response signal in high frequency range is like this. It seems like being mirrored but also descends.

 

We can see at 100Hz, the magnitude character is bigger than the true third modal frequence. That affects the estimation of system.

 

So, please heip me find out the reason and the solution of my problem.

 

Please.......

 

Oh, here is my program.

 

Thank you again.

 

 

 

 

 

 

0 Kudos
Message 4 of 12
(3,923 Views)

Thanks for your assistance.Heart

 

I've given another description with more details and also my VI, so ,please look at it again and help me out .

 

 

Oh, I did the suggestion that you adviced me to do a longer estimation and use  wider range of  sweep sine signal, but the result  is still  unreasonalbe. So ,I have no idea now.........

 

The problem is THE SYSTEM IDENTIFICATION VI, I think.

 

But how to solve the problem?

 

 

Thank you again .

0 Kudos
Message 5 of 12
(3,921 Views)

I do not have the System Identiifcation VI so I cannot see what it does.  Does the detailed help desribe how it calculates the response?

 

If the system response is based on output(f)/input(f), then you would tend to expect a large value for the high frequencies where input(f) is very small.

 

It may not make any sense to consider the output of System Identiifcation VI at frequencies where you did not supply an input.

 

Lynn

0 Kudos
Message 6 of 12
(3,916 Views)

Sorry,here  is my VI and the discription of my problem.

 

I use a sweep sine signal (0—50Hz) to stimulate a structure, and the response signal after being filtered by a lowpass filter (the cutoff  frequence is 45Hz), is as the picture below

@N9L1X%Z~Z@O{PS78FPVQEW.png

 

We can claerly notice that the first three modal frequences of the system are 1.6 Hz. 10Hz and 27Hz respectively. Also,the high frequences exceeding 45Hz  have been cut off. That is reasonable.

 

But the problem is ,when I put this filtered response signal into a nonparametric system identification VI with the stimulating sweep sine signal, the frequency character that the nonparametric system identification VI gives is like this:

 

7I{JWMYNN~Z`]7[$NP)PJ0M.png

 

Yes,we can see the frequency magnitude character that the nonparametric system identification VI gives  is only right  below 50Hz which is near the cutoff frequence of  the  lowpass filter. In fact , if you set the cutoff frequence at 100Hz, the frequency magnitude character will also step up at 100Hz as here in 50Hz.

 

As this is the system that the nonparametric system identification VI gives, when I want to do a parametric system identification, the parametric system identification VI in labview also gives a wrong result, because it will recognise the natural frequences are in the high frequency range.

 

The magnitude character of the system estimated by the  parametric system identification VI  is as below:

_6QQU%MV5VYWNR5ZK@)D_}8.png

 

Right? The use of a filtered response signal leads to a wrong result, in my experiment.

 

Why did I use a  filtered response signal?

 

Because the response signal that I get is also wrong in high frequency range without being filtered. Just as the picture below:

 

YH`JIONZX9V5R0}_B@@AX38.png

 

I cannot explain what is the reason that the response signal in high frequency range is like this. It seems like being mirrored but also descends.

 

We can see at 100Hz, the magnitude character is bigger than the true third modal frequence. That affects the estimation of system.

0 Kudos
Message 7 of 12
(3,893 Views)

You said :"

If the system response is based on output(f)/input(f), then you would tend to expect a large value for the high frequencies where input(f) is very small.

 

It may not make any sense to consider the output of System Identiifcation VI at frequencies where you did not supply an input."

 

I just cannot understand why the output value is large for the high frequencies where input(f) is very small,  doesn't the identified system's frequency character should be the same with the frequency character of the input signal? 

 

It does make sense to consider the output of System Identiifcation VI at frequencies where I did not supply an input. In fact, I think the input signal as below:

 

 @N9L1X%Z~Z@O{PS78FPVQEW.png

does have its value in high frequency range, only to be a little small, am I right? Can't we consider this to be the magnitude character of the system?

If I am wrong ,how to use only the first three modal frequence to estimate the system's model?

 

 

 

0 Kudos
Message 8 of 12
(3,890 Views)

One thing: You don't want the system identifier vi to identify your filter, rigth?

So it migth be a good idea to apply the same filter to both signals ... (the exitation and the response) ...

And guess why the system identification palette also contains a data preprocessing sub palette where the filter (and other vis) affect both traces? 😉

 

And a small bug hint for NI:  At least in my 2012 package the SI Bandpass filter vi for SISO wfrms misses the response signal in connector 😄  (it's in the vi but not on the connector pane)

 

Greetings from Germany
Henrik

LV since v3.1

“ground” is a convenient fantasy

'˙˙˙˙uıɐƃɐ lɐıp puɐ °06 ǝuoɥd ɹnoʎ uɹnʇ ǝsɐǝld 'ʎɹɐuıƃɐɯı sı pǝlɐıp ǝʌɐɥ noʎ ɹǝqɯnu ǝɥʇ'


0 Kudos
Message 9 of 12
(3,857 Views)

Thanks for your lovely replySmiley Very Happy

 

You mean both the exitation and the response should be filtered right?

 

I know there are vis specialise in system identification,just like this one below:

L8GEN}V_`}B%2W1]QN$6)DB.png

 

but still, the result is similar, like this:

 

%7H}(PS]WOQM]8(L2SSPU_0.pngN8IZZ6SU_6GPUI}B8$D}L(G.png

 

I think maybe it is a bug for the algorithm of the system identification vi, for low response in some frequency range,it may lead to absurd results.Smiley Mad

 

As the algorithem of the estimation vi labview gives:

[2C@OB}PWVG6RZ}@{F%]SZH.png

Maybe in frequency range of low response, the cross-spectral density is big, although in my view, it should be small to be reasonable.

 

Anyway,thank you again.

 

greeting from China

 

Lance.

 

0 Kudos
Message 10 of 12
(3,824 Views)