Current Noise as PV

mcfarlde

Lifetime Supporting Member
Join Date
Mar 2010
Location
Alberta
Posts
13
Can anyone think of a calculation that will result in a PV with a range of 0 to 100% that is based upon the 'noise' of a signal? I'm controlling the speeds of pumps with a low select and want to add a PV that represents the noisiness of the current signal. The noisiness is an indicator that a known situation is approaching if we continue to allow speed increases. I've tried 'rolling my own' calcs with success, but am thinking that some arm of automation may have a tried and true method. I know that APC applications determine the 'confidence' of signals while developing models, just can't find any documentation about how.
 
work it out as being the signal a statistic number
the time frame does count here, and the repeating, like day/night or alike.
on your calculator are a number of functions used for this.
 
Something quick and dirty would be to take the signal, subtract a constant, take the absolute value of that result, then put the result through a lag filter (or first order filter, or exponentially weighted moving average filter, or whatever you want to call it).
In other words,
Lag(abs(signal - constant)),
where the constant could be zero or some other baseline. The lag filter term would be adjusted to suit your application (speed of response versus persistence of noise, for instance).
There are other more elaborate filters, but this should be simpleset to implement.
 
The short answer is no but....

Usually one calculates the standard deviation or variance of a signal. The standard deviation or variance is not going to be a number between 0% and 100% but you may be able to use the standard deviation which is the square root of the variance. The idea is to calculate the standard deviation of the PV. To do this one must also compute a filtered value of the PV. One can then add 3 standard deviations to the filtered PV to get the PV to use for the PID. This would tend to minimize the unfiltered PV when it is noisy. I used 3 standard deviations because then you can be sure that the measured PV will be below the modified PV 99.5% of the time. The disadvantage to this technique is that if the SP changes quickly the filtered value may not keep up.

Calculating the filtered value has been covered before. Calculating the variance isn't too hard but the square root function must be used to get the standard deviation.
 
Thanks for your replies. One method I have tried is using the difference between a lag filtered PV and the PV. To the difference, I have applied many different calculations trying to arrive at a usable PV for control. The result of the calc goes through another lag filter to smooth things out. The lag is not a concern as the PIDs take days to settle out after a step change. Peter got me thinking that maybe a log of the difference between filtered variance and variance with some limits imposed upon it may work. I'll give it go. I'll also try the SD3 thing, after I do some reading and understand it more.

Another method I tried was to sample at a set interval looking at the rate of change and amplitude of the noise. If they exceeded thresholds, I would add 5 to a number if was below the threshold, I would subtract 3 from the number. Determining the sample interval, thresholds and +/- setup proved to be difficult. It was kinda touchy and hard to do in function block. I've got dozens of pumps and they are all a little different.
 
Thanks for your replies. One method I have tried is using the difference between a lag filtered PV and the PV.
Look at this
http://www.johndcook.com/standard_deviation.html

It computes the running variance. It is just a little more sophisticated than what you suggested above. See the formula for S(k) and M(k). M(k) is a lag filtered PV like what you are already doing. S(k) is the variance. It isn't a PV from 0-100% but I would start here because it has some statistical basis for being valid.

I have found that there is little reason to kludge your own solutions. If you can find a statistical justification for what you are doing and are able to document it you are much better off than rolling your own.

If I had a better idea of what you are really trying to do I may be able to come up with the right solution. I get into all sorts of advance math where one deals with covariances and estimations.
 
Thanks Peter. I will read the paper tomorrow and I agree that math should be applied properly.

I can't fully describe the application here, but could PM you if you would like a full description.
 
Peter, I read up a bit and what you are suggesting is determining the RMS value of the noise. That is kind of where I was headed, but with function block limitations and the fact I didn't realize the underlying principle. I am determining the mean value with a lag filter, then determining the difference of the raw signal from that mean value. What I am missing is the sum of squares portion. Squaring the difference, dividing by one and taking the square root results back at the difference. Using the absolute difference between the mean and raw and lag filtering the result, should result close to RMS. I'll put a sine wave through it and see what comes out.
 
So, we still don't know what you're trying to do with your pumps and why.
Before you go too far down the road your on, understand that assuming your process noise is normally distributed (follows a gaussian distribution) may very well be wrong. This could result in a poor/non-robust soft-sensor implementation that you're trying to create.
 

Similar Topics

My TV reception gets snowy due to various appliances being used throughout the house. I then go around and turn on, then off things like bathroom...
Replies
13
Views
6,133
Today I was working on my project for school and we were using a power supply with 24V and we accidentally had the current at 0.9A. We heard a pop...
Replies
9
Views
547
Hi all, I have been working on a project that requires me to measure the current across a 90 VDC motor of a medical device (similar to an...
Replies
26
Views
1,528
HI i have a delta VFD M-series in the manual, in order to enter the motor rated current you set the parameter P,52 =the motor rated current my...
Replies
7
Views
665
HI! HOW COULD I OBTAIN THE NAMES OF THE STEPS OF A ROUTINE IN SFC LANGUAGE IN STUDIO5000? Or is there a system variable that gives me those...
Replies
0
Views
339
Back
Top Bottom