0
\$\begingroup\$

I made a temperature control system without PID (just on/off with an offset) to control the temperature in a tank.

I can only cool the tank with a cooling coil inside the tank (so there is no heating element.) However, I can never reach the target temperature 20C due to the remaining cold water inside the coil (although the pump which transfer the cooling water inside the coil is turned off,) so the temperature drops after some hour or hours below 20C.

If I buy a commercial PID controller can I solve the problem?

If not, what can I do?

\$\endgroup\$
9
  • 1
    \$\begingroup\$ No, PID won’t help if the sense temp is wrong. Keep the pump or another low power pump flowing to circulate fluid to sensor to read temperature better. The “plant is so slow” that. All you need is P and not PID with a small amount of hysteresis to suit desired tolerance and motor cycle rate to extend the life of the pump. \$\endgroup\$ – Tony Stewart EE75 Jan 7 at 17:52
  • 1
    \$\begingroup\$ So, the thermal mass of static cold water causes your temperature to drop below your desired set-point? \$\endgroup\$ – Andy aka Jan 7 at 17:54
  • \$\begingroup\$ @TonyStewartSunnyskyguyEE75 If I understood the question correctly, the issue is that the cooling element remains cold after the surrounding water have reached the target, continuing to cool it down. Better circulation or better sensing will help a bit, but not entirely. I think it needs to be calibrated to take this offset in account. But without heating element it will never be perfect. \$\endgroup\$ – Eugene Sh. Jan 7 at 17:54
  • 1
    \$\begingroup\$ Ok if there is a large gap between coil and sensor Kd will assist that. But choosing the T sense location is key , because the mass of the coil is smaller than the tank not too close, yet not too far away from rise time issues from dispersion. In a house the sensor is far enough away from the ducts to give at least 10minute cycle time. 1 minute is too fast and 20 minutes too slow. Yours may vary \$\endgroup\$ – Tony Stewart EE75 Jan 7 at 17:55
  • \$\begingroup\$ "choosing the T sense location is key" yes, this \$\endgroup\$ – Pete W Jan 7 at 18:22
1
\$\begingroup\$

just on/off with an offset

You probably mean an ON/OFF controller with hysteresis? The ON/OFF controller is always stable, meanwhile the PID is not. The PID controller has to be tuned to work properly. It can be very painful to properly tune it, even for an engineer that has a big theoretical knowledge on closed loop control. The ON/OFF control drawback compared to PID, is that ON/OFF control produces higher overshoots/undershoots as it is constantly oscillating around the setpoint value, but for rude regulation it is OK. Also not complicated, easy to setup.

If this kind of control can't provide a stable oscillating control value around setpoint, neither a PID would be able to control.

\$\endgroup\$
12
  • \$\begingroup\$ 1. If you define stability condition as the amplitude of the limit cycle less than X, then PID and similar can do better. 2. modern "PID" controllers have many other features, like rate limits and sometimes setpoint filter, that reduce the shortcomings of PI without D, for ease of use. also ctrlr features can address the heat/cool asymmetry 3. autotune ..... the cost is complexity with typically 40 parameters in a single loop controller to wonder about \$\endgroup\$ – Pete W Jan 7 at 21:12
  • \$\begingroup\$ @PeteW ON/OFF control is ALWAYS stable, while the P, PI, PID, PD can be become unstable no matter what countermeasures you introduce. The true fact is that more gain makes the loop more dynamic and susceptible to unstability, low gain makes it unresponsible. I tell you again: ON/OFF control is ALWAYS stable. \$\endgroup\$ – Marko Buršič Jan 7 at 21:56
  • \$\begingroup\$ yes, but I don't think unbounded instability was the original problem \$\endgroup\$ – Pete W Jan 7 at 22:04
  • \$\begingroup\$ @MarkoBuršič So you say that is difficult to tune a PID for this purpose? \$\endgroup\$ – hmmy92 Jan 8 at 7:13
  • \$\begingroup\$ @hmmy92 Most autotuning PIDs calculate parameters so that start with on/off control mode. If the on/off control doesn't work for you, then there is no such other known controller that will do the magic. \$\endgroup\$ – Marko Buršič Jan 8 at 8:50
0
\$\begingroup\$

This will sound a little counter-intuitive, but adding a very slight amount of constant heating, so that the cooling control loop has something to work against, might be something to explore.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.