LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

plotting derivation of waveform data

I have got 1-D array of raw data which I plot. Now, I need to plot derivative of those data to be able to identify the point when the curve is not linear anymore. I have tried Derivative x(t) and Derivative x(t) PtbyPt neither of them worked due to sink & source different type error.

 

Any suggestion or help?

 

Thank you.

 

 

 

 

Message Edited by xombox@seznam.cz on 04-26-2009 03:38 PM
Download All
0 Kudos
Message 1 of 13
(4,945 Views)

hello,

 

its a litlle bit normal, your array is 2D,

 

i see you were using array sub set , rather use index array if your data are regulary time spaced select the row or culumn you want

 and then apply  derivate  bloc function

 

tell if it works

 

@+

 

Tinnitus

 

 

 

CLAD / Labview 2011, Win Xp
------------------------------------------------------
Mission d'une semaine- à plusieurs mois laissez moi un MP...
RP et Midi-pyrénées .Km+++ si possibilité de télétravail

Kudos always accepted / Les petits clicks jaunes sont toujours appréciés
Don't forget to valid a good answer / pensez à valider une réponse correcte
0 Kudos
Message 2 of 13
(4,938 Views)

You are using an XY data type.  If your X values are evenly spaced, you can easily convert this to a waveform.  The derivative VIs will then work.  Your data is clean, so this should work for you.  If you happen to use noisy data in the future, I would recommend you check out the Savitzky-Golay VIs (use the low level coefficient one and a subsequent convolution), since they do a local polynomial fit to calculate the derivatives, giving much less sensitivity to noise.  This will cause inaccururacies at the discontinuous points of your graph, but better data elsewhere.

 

Let us know if you need help. Please post a copy of your data if you do.

Message Edited by DFGray on 04-27-2009 09:28 AM
0 Kudos
Message 3 of 13
(4,906 Views)
Can you explain more about your problems sink & source different type error?


Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 4 of 13
(4,901 Views)

Indeed, my X values are evenly spaced, so using waveform graph is ok.

 

I have managed to get Derivative x(t).vi working using Array Index as Tinnitus suggested. Then I sadly realized that this Derivative x(t).vi can make only 2nd derivavite. What I need is just 1st derivative 😞

 

I checked Derivative x(t) point by point but it again needs a different input. I`m getting confused with those all of those types.

 

 My data looks like this:

 ...some mess...

"Time sec";"Extension mm";"Load N";"Flexure stress MPa";"Cycle Count ";"Total Cycle Count ";"Repetitions Count ";"Marked Data ";"PIP Count ";"Flexure extension mm";"Flexure strain %";"Flexure load N";"Displacement (Strain 1) mm";"Corrected Position mm"
0;0;0,3478644;-0,6971691;0;0;0;0;0;0;0;-0,3478644;0;0
0,01;0;0,3268822;-0,6551178;0;0;0;0;0;0;0;-0,3268822;0;0
0,02;0;0,3174143;-0,6361427;0;0;0;0;0;0;0;-0,3174143;0;0
0,03;0;0,3425332;-0,6864845;0;0;0;0;0;0;0;-0,3425332;0;0
0,04;0;0,3777467;-0,7570573;0;0;0;0;0;0;0;-0,3777467;0;0
0,05;0;0,4027138;-0,8070949;0;0;0;0;0;0;0;-0,4027138;0;0
0,06;0;0,4040356;-0,809744;0;0;0;0;0;0;0;-0,4040356;0;0
0,07;0;0,392864;-0,7873546;0;0;0;0;0;0;0;-0,392864;0;0

 

Could you just ensure me if is the setting of dt=0,01 with agreement of time sampling rate is 0,01 (x data)?

 

Thank you for such fast help!

 

Download All
0 Kudos
Message 5 of 13
(4,888 Views)

xombox@seznam.cz wrote:  

I have managed to get Derivative x(t).vi working using Array Index as Tinnitus suggested. Then I sadly realized that this Derivative x(t).vi can make only 2nd derivavite. What I need is just 1st derivative 😞


I not sure what you are referring to here. This vi produces the dx/dt function. The equivalent function in continuous math is the 1. derivate. Don let the method input confuse you. It give you some options for selecting method, not derivation order


xombox@seznam.cz wrote:

Could you just ensure me if is the setting of dt=0,01 with agreement of time sampling rate is 0,01 (x data)?


Yes if you set dt=0.01 it is 0.01 seconds between each consecutive sample. Also the same as a 100Hz sampling frequency



Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 6 of 13
(4,879 Views)

hello,

 

i think derivative fct is good,  but big edges result in pics in derivate graph , have a look on zoomed graphs

 

@+

 

tinnitus

 

 

CLAD / Labview 2011, Win Xp
------------------------------------------------------
Mission d'une semaine- à plusieurs mois laissez moi un MP...
RP et Midi-pyrénées .Km+++ si possibilité de télétravail

Kudos always accepted / Les petits clicks jaunes sont toujours appréciés
Don't forget to valid a good answer / pensez à valider une réponse correcte
Download All
0 Kudos
Message 7 of 13
(4,869 Views)

Guys thank you for your answers a lot. I do appreciate this community help. It`s amazing how well it works.

 

I need the graph derivative just to be able to detect the yield point which is defined as a point when the graph is not linear anymore (with some value of confidence).

 

Isn`t it possible to smooth the curve?

I have tried different windowing options (Gaussian, exponencial...) neither worked well. Don`t you have any other idea how to detect the mentioned yield point?

 

 

0 Kudos
Message 8 of 13
(4,848 Views)
In the signal processing toolkit there are several filtering VIs. They should be able to help you out a lot.
Vince M
Applications Engineer
0 Kudos
Message 9 of 13
(4,821 Views)

I think this should be a robust solution. You may have to fine tune it a bit

Good luck

Message Edited by Coq rouge on 04-29-2009 10:11 AM


Besides which, my opinion is that Express VIs Carthage must be destroyed deleted
(Sorry no Labview "brag list" so far)
0 Kudos
Message 10 of 13
(4,800 Views)