I realize that pH and PIDs don't always mix as the process is very non-linear, however a system I am working on calls for using PID blocks.
The system is different than the usual case in that the wastewater coming into the tank is:
A)Either acid or base (it varies)
B)Varying flow rate, or sometimes intermittantly.
The design spec calls for TWO PID loops:
Each controlling the speed of a pump (0-100% or 0-32000 counts via VFD) which feeds either acid or base into the tank, depending on pH (an "acid" supply pump and a "base" supply pump). Feeds are NaOH and H2SO4 (causic soda and sulfuric acid).
At the moment both PID loops have a setpoint of 7 (though in practice the pH will likely hover in an acceptable range of 6-8).
When pH is 0-6, the PID loop controlling the acid flow is turned off (no incoming acid). Likewise with the base supply pump at 8-14.
I was trying to play around with the configuration, simulating inputs. The PID loops seem to work properly with just proportional action. However, when integral time is introduced it seems that the two PIDs fight eachother.
Also, when the pH reaches the setpoint, the output of the PIDs become static, or change very slowly, while idealy the output should be 0, since the wastewater has been neutralized and no futher addition of acid or base is desired(ignoring buffer effects, obviously this is somewhat simplified/ideal behavior since we are assuming the wastewater has completely neutralized).
Somehow I feel there is an easier way to do this, or that I am missing something, and I feel rather stupid for not being able to figure this out. The problem is most pH control examples I have come across in the past are usually consist of just the waste water feed and 1 neutralization feed (either acid or base, not both).
Any suggestions or opinion? I have not really had much "real world" experience with pH control outside of textbook / classroom examples...
Thanks for the input.
EDIT:
Someone with more experience than I will be finalizing the control on the pH loops, however I'd like to hear the proper (if any) way to deal with this, if nothing else than for my own knowledge / future reference.
The system is different than the usual case in that the wastewater coming into the tank is:
A)Either acid or base (it varies)
B)Varying flow rate, or sometimes intermittantly.
The design spec calls for TWO PID loops:
Each controlling the speed of a pump (0-100% or 0-32000 counts via VFD) which feeds either acid or base into the tank, depending on pH (an "acid" supply pump and a "base" supply pump). Feeds are NaOH and H2SO4 (causic soda and sulfuric acid).
At the moment both PID loops have a setpoint of 7 (though in practice the pH will likely hover in an acceptable range of 6-8).
When pH is 0-6, the PID loop controlling the acid flow is turned off (no incoming acid). Likewise with the base supply pump at 8-14.
I was trying to play around with the configuration, simulating inputs. The PID loops seem to work properly with just proportional action. However, when integral time is introduced it seems that the two PIDs fight eachother.
Also, when the pH reaches the setpoint, the output of the PIDs become static, or change very slowly, while idealy the output should be 0, since the wastewater has been neutralized and no futher addition of acid or base is desired(ignoring buffer effects, obviously this is somewhat simplified/ideal behavior since we are assuming the wastewater has completely neutralized).
Somehow I feel there is an easier way to do this, or that I am missing something, and I feel rather stupid for not being able to figure this out. The problem is most pH control examples I have come across in the past are usually consist of just the waste water feed and 1 neutralization feed (either acid or base, not both).
Any suggestions or opinion? I have not really had much "real world" experience with pH control outside of textbook / classroom examples...
Thanks for the input.
EDIT:
Someone with more experience than I will be finalizing the control on the pH loops, however I'd like to hear the proper (if any) way to deal with this, if nothing else than for my own knowledge / future reference.
Last edited: