DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Fast Zero Crossing?

Hi there,

 

I have a script running at the moment that performs an element-by-element comparison of the data in a tacho channel to check for a threshold crossing.  When it finds one it gets the channel index and then does a lookup into another channel with that index.

 

It works fine but it seems like there might be a faster way of doing it...  I have 30s of tacho signal data sampled at 600kS/s so it takes a long time - minutes.

 -I tried differentiating the signal but then just end up with the different problem of trying to find the locations of the peaks which seems no faster.

- I looked at the reduction classification with 'threshold' but that seems to count the edges rather than find the location of them

- I did wonder about creating a low resolution copy of my signal, using that to find roughly where the edges are and then using the high resolution copy to home in.  It would be more complicated but would save me lots of stepping.

 

I was just wondering if anyone could share any tips please?

 

Thank you,

 

 

Martin

 

0 Kudos
Message 1 of 3
(4,338 Views)
Call ChnDifferentiate("Grp/Chn1","Grp/Chn2", "Grp2/ChnX", "Grp2/ChnY")
Call ChnPeakFind("Grp2/ChnX","Grp2/ChnY","Grp3/ChnX","Grp3/ChnY",5,"Max.Peaks","Time")

 Both methods can be accessed interactive Via Analysis.

 

Basic Mathematics -> Differentiate

Channel Functions -> Peak Search

 

Greetings

Andreas

 

0 Kudos
Message 2 of 3
(4,333 Views)

Hi Andreas,

Thank you for that.  I had tried it but the problem is my files are so big -  I have over a 100k edges to find.  At the moment I am doing the basic element comparison which is working okay, just a bit slowly.

Regards,

Martin

0 Kudos
Message 3 of 3
(4,325 Views)