help writing pump alarm

ganutenator

Lifetime Supporting Member
Join Date
May 2002
Location
kansas
Posts
1,440
Everyone keeps telling me how simple this is yet I don't have a good idea yet.

Scope: Write a pump cavitation alarm. inputs: pump running, pressure transducer.

Right now I have a tmr that says that the pump has been running for time (need to run long enough to build up pressure).

That timer done is a condition for the second timer (pmp alarm tmr) along with the (pressure <= alarm pressure sp).

The idea is that since the customer has had so many problems with different low level sensors, we thought we could monitor pressure as a way to know if we ran out of water in the tank as a means of protecting the pump.
 
Last edited:
yes, that is what I am currently using. But it isn't protecting me against pump cavitation because when the water gets low and the pump cavitates, the pressure fluctuates in and out of the ok range and resets the alarm timer. Additionally, when starting the pump, the logic is using the accumulation of both timers. When the pump is running and it happens, then only the alarm timer accum is used.
 
I am going to trend the pressure and start times. Maybe this will give me a better understanding on what to do.
 
Cavitation alarm

One suggestion would be to use a counter to count the low pressure instances in a predetermined amount of time. Reset your timer at a predetermined interval and reset the counter as well. If the timer is done and the counter has reached it's set-point, then trigger an alarm, if not reset both and continue monitoring.
 
the pressure fluctuates in and out of the ok range and resets the alarm timer.

Then latch the shutdown the first time the pressure drops below setpoint.

You may want to consider flow instead of pressure to shut-down your pump.

Just a comment, it's hard to understand why you can't find a reliable low level device.
Most systems will have a low-level shutdown and a Low-Low level device to back it up.
 
I am with Mickey. You have a minimum time to get up to pressure, once that's done, you want to fault as soon as you drop below some alarm value (which might be a few units of measure less than normal running pressure).

Up to speed and with a steady supply, there should be an absolute minimum pressure, and any air that gets sucked in should cause a significant dip in that signal as long as it is being updated in the PLC relatively quickly.

I think you'll be fine once you offset your alarm trigger value a little bit from your normal running pressure, and seal or latch the alarm as Mickey suggests. If you need a debounce timer to prevent false trips during normal operation, I would expect that debounce time to be very short.

Trending the signal (as fast as RSLogix allows) is a very good idea to better see what you're dealing with.
 
Last edited:
First off, cavitation occurs at the pump inlet if the pressure at the inlet falls below the minimum allowable. This is shown on pump curves as NPSHR (Net Positive Suction Head Required). The water essentially boils, and when the bubbles collapse they erode the impeller. http://www.pump-zone.com/pumps/centrifugal-pumps/net-positive-suction-head-npshr-and-npsha.html

That means you will need a suction transmitter (transmits pressure below atmospheric) or what is known as a compound transmitter (transmits pressure above and below atmospheric) or an absolute transmitter.

First use a compare to see if the suction pressure is below your allowable (set this a little above NPSHR). Then in series put a NO run contact and NO contact that closes if the compare is "true". If they are both closed then start a timer, and when the timer times out stop the pump.
 
Last edited:
the pressure fluctuates in and out of the ok range and resets the alarm timer.
If (Pump Has Been Running for Start-up Time) and (Pressure = Low FOR SOME TIME PERIOD) then: Trigger Cavitation Alarm.
Monitor pump and pressure to determine how long to wait before triggering the cavitation alarm. It may be that the time is eratic, sometimes long, sometimes short. In which case you need a different method.

Alternative: Add a Level Switch in the Tank, stop Pump when Low Level Alarm = ON.
 
a basic alarm program ...

here's a down-and-dirty (but highly adjustable) alarm program that might be helpful ...

the pressure fluctuates in and out of the ok range and resets the alarm timer.

see if the ideas included here could be adapted for your system ... the basic idea is to monitor each "field condition" with TWO timers – instead of just one ... each timer is individually adjustable – which gives quite a bit of control over how each of the system's alarms will function ...

the first timer decides how long the field condition must be "bad" before an "alarm" is declared ...

the second timer decides how long the field condition must be "good" before the "alarm" can be cleared ...

there is also provision for a "nag timer" – which keeps the operator from just silencing the alarm HORN – and then simply ignoring the alarm BEACON for the rest of his shift ... after an adjustable "grace period" the HORN comes back on again as a "nagging" reminder that something in the system is still not right ...

naturally you'll have to tweak the code for your particular "field signal" but the basic ideas above might be adaptable to prevent the "nuisance tripping" that I believe you're up against ...

.
 
Last edited:
How about monitoring motor current? configure a Setpoint from a known good state and alarm outside that range. Would cover most problems is the range can be held tight enough. 4-20 Current loops are fairly inexpensive.
 
How about monitoring motor current?

Nope. You can have pump flow and discharge pressure and power draw, but still be cavitating the pump. Cavitation is not air lock - it is caused by low pressure on the suction side of the pump. I suppose you could monitor the acoustic signature of the pump, but really, a compound pressure transmitter on the pump suction is really simpler.
 

Similar Topics

Hello, i am currently trying to create a plc programme from my Tia portal v16 for a package filling machine. But i am kinda new to the plc stuff...
Replies
48
Views
17,262
i am new to these things. I have no intention of using this in a commercial way whatsoever. I wanted to write a small plc programme for myself. We...
Replies
18
Views
7,830
Could somebody please point me in the right direction? I'm trying to incorporate a table into each motor's faceplate. It's a simple, two...
Replies
2
Views
3,193
Hi friends, I m new to plc programming and i don't know how to write data block in boolean method. I m needed to write data block to...
Replies
0
Views
1,684
Hello everyone. My question is about moving data into selective bits in Controllogix. I want to move a hex value into the last word(bits 16-31) of...
Replies
3
Views
1,455
Back
Top Bottom