thecarb Posted May 7, 2017 Report Share Posted May 7, 2017 Hi there! I am using on a project and one part of it is filling a tank to a specified pressure and then giving an audible alarm. Pressure value will be added from the PLC, and then when the tank connected to the pneumatic line of the device, it will fill the tank to the specified pressure. It is very similar to the tyre inflation stations. However, in my program filling solenoid is not very stable and it opens/closes too fast, like 3 times in 2 seconds. What is the best way to program it for a more stable version? I have used a "Compare" function, which compares the actual pressure with the set value and it opens the filling valve. Thanks in advance. Link to comment Share on other sites More sharing options...
MVP 2023 Ausman Posted May 7, 2017 MVP 2023 Report Share Posted May 7, 2017 Have you got a differential set up on the setpoint? Without this a change of +/- 1 might trip things incessantly. cheers, Aus Link to comment Share on other sites More sharing options...
hotwires Posted May 8, 2017 Report Share Posted May 8, 2017 A hysteresis. I use start and stop setpoints for filling liquid levels in tanks (and alarms). open/close valve setpoints that are very close will result in chatter. PSI value reached could be the valve off setpoint and a value some PSI lower could be the fill valve open setpoint. Depends on how tight of a pressure value you are needing to maintain. If you have to keep a tight value at all times..... not sure.... a PID control? You generally don't want the valve open and close to trigger on the same setpoint. Heavy filtering on the pressure transducer integer would dampen the oscillation potential some. Just a burst of thoughts. Link to comment Share on other sites More sharing options...
MVP 2023 Joe Tauser Posted May 8, 2017 MVP 2023 Report Share Posted May 8, 2017 Both Aus and hotwires are correct in suggesting deadband control. Your output is going to chatter incessantly with one compare block, which is basically trying to hold 1 PSI. Here's some simple hysteresis logic for a Jazz: Feel free to critique my logic. I didn't have a Jazz handy to test it on. Joe T. Link to comment Share on other sites More sharing options...
thecarb Posted May 8, 2017 Author Report Share Posted May 8, 2017 Thanks all for your response. I used a subtract function and high filtering but didn't really help. @Joe Tauser Thanks for the example but I couldn't really get the concept of the second net. When tank pressure is equal or below set point, MB0 energized. And when MB0 energized, Output 0 is not energized. Link to comment Share on other sites More sharing options...
MVP 2023 Joe Tauser Posted May 8, 2017 MVP 2023 Report Share Posted May 8, 2017 Reviewing it today I realize that what I wrote won't work; it was late when I put it together. As I like to say, my code never works right the first time. Take a look at this Joe T. Link to comment Share on other sites More sharing options...
hotwires Posted May 8, 2017 Report Share Posted May 8, 2017 Carb, Here is a modified snippet from some working code I used to control the water level in a tank. It's the simplest form of an OUTPUT commanded by START and STOP setpoints. Might help to scale PSI to include tenths of PSI, if IF you had a 0-100 PSI transducer then linearize to 0- 1000. 1000 meaning 100.0 PSI. Then you can tweak your setpoints down to a tenth of a PSI. Happy composing. P.S. Obviously you would want to put an enable/disable contact in between the set/reset bit and the output coil. MB1 MB2 O0 AUTO bit S/R bit driven by compare blocks Control valve -----| |---------------------| |---------------------------------------------------( )-------------- HotwireS Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now