Sign in to follow this  
Followers 0
NorOntScout

Honeywell HC900 PID

9 posts in this topic

Hello All, Looking for help in setup for a 5 loop PID system. I am not a process engineer but do a lot of large equipment automation projects. I have 5 Tanks using Level control (Radar) and a discharge valve on each tank. The 5 tanks are connected in series. Tank 1 receives liquid from the plant at various rates uncontrolled by me. Tank 1 feeds Tank 2 through the Tank 1 discharge valve. Tank 2 feeds Tank 3 through the Tank 2 discharge valve, etc until Tank 5 which simply discharges to further processing by other equipment. They are currently in operation as 5 independent loops. As you get a large disturbance on Tank 1 you can see it cascade out to the other tanks in sequence. I have tried reducing this reaction by increasing P and decreasing I as you go down the system, which seems to have helped. Using a Honeywell HC900 controller with 4-20ma signal control. The PID function block selected in controller are set to PID A control (3 mode control) no SP tracking, P is gain (No units), I is Reset (Minutes), D is Rate (Minutes) and not used. Feedforward gain is available but not being used. I do not have the process modeled, I did initial tuning by WAG. My questions 1 - can I cascade these loops using Tank 1 as the central loop, since it has the largest disturbances, and the other tanks connecting in order of flow. 2 - How do I do this. 3 - Is there another way to better handle the fluctuations Let me know if I am missing some information and I will endeavour to provide it to allow better assistance. Marc Edited by NorOntScout

Share this post


Link to post
Share on other sites
If you want to have smoother level changes to the tanks down the line, have you tried using an averaging function instead of PID the raw value of tank 1. If the fluctuations are short in duration this could keep the tanks from rippling the tank 1 rush. Still use the raw data for alarms and it is a good idea to put in an override if the level were to get too high. An averaging function should have an input that allows the raw data to be passed through in certian circumstance. AB does it when you have the Initialize bit enabled and the input is at 1. The input data is put directly to the output until the bit is clear. The HC900 should have this in there too, the engineers come from the same school of thought. So does the processor and rack, looking at it you would think it was a slick 500 with someone elses name on it.

Share this post


Link to post
Share on other sites
Not sure if I follow. Each Tank has radar reading a float for level indication and using a pinch valve for the discharge port. What you suggest is to leave the Tank 2-5 inputs alone, continue to feed the levels to each PV input on the PID block, but add an intermidiate block for Tank 1. So for Tank 1 I would have the Level go to an Averaging block, from the averaging block I would take this to the PV input on the PID block ? Most surges last up to 5 or 10 minutes, and at current configuration creates a series of fluctuation on the system that last up to 30 minutes. After this period all the tanks have stabilized again. Having the averaging block there wouldn't it cause the system to react slower to the incoming surge ? The honeywell controller is a rebranded red lion system. Kind of wishing the system would have let take the logs from the hmi. Marc

Share this post


Link to post
Share on other sites
If the system operates in the way I questioned above, it sounds like you may have to do some math. Tank 1 recieves an increase of X. Volume of increase = % deviation * tank volume. To level all tanks Deviation volume/5 tanks. I the problem with this is that it only corrects an occurence, not a continuous addition. More information on your process would be helpful.

Share this post


Link to post
Share on other sites
Essentially this is a bank of floatation cells. Add your slurry to the tank, which contains your desired material, the garbage and a chemical reagent. Feed the tank at a rate of X ton/hr, add air to create a froth at the top, maintain a fixed level allowing the froth to bubble over and collect it for further processing. The slurry is constantly flowing from one tank to the next. each tank has a step down in installed height. Tank 5 is at floor level, Tank 4 is 24" off the floor, Tank 3 is 48" off the floor, etc allowing for some natural head to be acheived between each tank. I have static feed rate into the tank according to the operators, but I also have an uncontrolled adder to the feed when they wash down the floors, all the floor drains get fed back into my feed which is the highest source of fluctutaions. Usually what occurs during this period Tank 1 receives a sudden increase in tank height, the controller reacts by opening the pinch valve. Tank 2 reacts in the same manner. Tank 3 shortly there after reacts the same, etc Tank 1 starts to see it is losing height too quickly and starts clamping down on flow, Tank 2 gets the same reaction, etc, see the pattern ? I have tried tuning with my limited experience as possible. I had some really wild swings initially and played with it, now my swings are not so wild but the system is slow to react to all surges. the small disturbances are not an issue but the larger ones are. Does this help to describe the process a little better ? Marc

Share this post


Link to post
Share on other sites
It almost seems you need a ramp down function. If tank 1 rises 10% above desired height, it opens the valve and drains. From what you say it sounds like it then closes the valve after passing the desired height so then you are below level. You need some way of determining that the level is approaching your setpoint, and slows the release of material. The valves, are they two position or variable position?

Share this post


Link to post
Share on other sites
If you can calculate the percentage above setpoint, then you can use that number to open the valve. The larger the overage, the more the valve will open, and conversley as the tank drains and approaches the setpoint again the valve will begin to close. This should keep the surging of the tank down. It is still a PID it is just that the output is controlled by a derivative instead of the raw data.

Share this post


Link to post
Share on other sites
I will see what I can do the next site visit to try these things and implement them. Marc

Share this post


Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0