From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

DASYLab

cancel
Showing results for 
Search instead for 
Did you mean: 

Detecting change on a signal.

Solved!
Go to solution

Hi Folks,

 

Can anyone suggest a method for detecting that a signal is changing either up or down rather than being in a steady state?

As signals contains noise im really looking for changes of 0.1vdc and or above up or down rather than miniscule changes.

I simply want to indictae that change is currently being detected on an imput signal. The signal will be ramping up when the system under measurement is operating starting at 0 and ending up around 2.5 volts.

 

Any help or guidance would be greatly appreciated.

 

Regards

 

Willie

0 Kudos
Message 1 of 5
(3,575 Views)

Hi Willie,

 

You can use the Data Trigger in Slope mode to detect when the slope (rate of change) is in or out of the defined range. 

If you have a smooth ramp, then compute the normal slope, and use a value larger than that for the trigger. 

Noise in the signal can cause problems with this - so, use an Average (Data Reduction Group) module to smooth out the noise.

 

The Trigger on Demand specifically looks for change, and outputs a pulse when the data changes by the defined amount. 

This may be smoother and allow you to ignore the little noise.

 

Of course, independent of the triggers, you can just compute the slope using the Differentiation module, and use that for a trigger. If the slope is zero, or close to zero, the line is steady.  If it is positive or negative, it's changing. 

Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab.
0 Kudos
Message 2 of 5
(3,567 Views)

Hi CJ,

 

Unfortunately none of these approaches worked. Even with the averaging and the block size set to 40 , the rate of change on the noise within the original signal caused erranous detections. I managed to do it a more crude way by simply deteting a signal over a threshold rather than a rate of change signal.Thank you for your suggestions.

 

I'm now looking into sending the value from a digital meter module to a message box along side some other text. can you perhaps provide some guidance on this please?

 

regards

 

Willie

0 Kudos
Message 3 of 5
(3,549 Views)
Solution
Accepted by topic author WillieNHS

UPDATE,

 

to concatenate strings & variable, simply paste the global varaible designation into the message box test!

 

Thanks

 

Willie

0 Kudos
Message 4 of 5
(3,537 Views)

I'm glad that you were able to figure it out!

 

In addition to simply combining text, strings and variables in the Message module (actually, in the Action module that activates an Action), you can do some concatenation or computation in the Define Global String dialog.

 

Select a string and click the Advanced button. There will be an Expression field where you can do computations, string manipulations and other functions. 

 

For example, when you use the Action to tell the Message to display

 

Count ${VAR_1}

 

It will show the leading zeros as blank and all defined decimals. 

 

Count     1.00

 

You can define a string using the Expression as

"Count " + strfmt ( ${VAR_1},4 ,0 )

 

The result will be a string "Count 0"

 

No leading spaces, no decimal. 

Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab.
0 Kudos
Message 5 of 5
(3,531 Views)