Temperature PID closed loop
Temperature PID closed loop
(OP)
Hi.
I have an application where i want to control the temperature in a room with a resistive load, Controlling the load with a PLC.
Ok so im going to use a powercontroller. The power controller takes 4-20mA and controls the load 0-100%. To be able to control the temerature due to a temperature reference, then Im going to use a closed loop PID control approach.
So I have a PLC, a temperature probe (PT100), and a powercontroller.
So I have some basic control question, starting with this:
The setpoint to PID is in degree Celsius. Lest say the setpoint is set to 30 degree Celsisus, then if actual value (temperature probe) is 30 degree celsius as well, then there is no error and the output of the PID is 30 (steady state). So how can I make this into a 4-20mA signal? If it is in steady state, then there should be no power, hence it should give 4mA to the powercontroller.
Thanks!
Best Regards
Hans
I have an application where i want to control the temperature in a room with a resistive load, Controlling the load with a PLC.
Ok so im going to use a powercontroller. The power controller takes 4-20mA and controls the load 0-100%. To be able to control the temerature due to a temperature reference, then Im going to use a closed loop PID control approach.
So I have a PLC, a temperature probe (PT100), and a powercontroller.
So I have some basic control question, starting with this:
The setpoint to PID is in degree Celsius. Lest say the setpoint is set to 30 degree Celsisus, then if actual value (temperature probe) is 30 degree celsius as well, then there is no error and the output of the PID is 30 (steady state). So how can I make this into a 4-20mA signal? If it is in steady state, then there should be no power, hence it should give 4mA to the powercontroller.
Thanks!
Best Regards
Hans





RE: Temperature PID closed loop
Is it how to produce a 4-20 mA output?
Or is it a problem understanding how you can get an output at all when reference and actual values are the same?
Or something else?
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop
Why are you saying, "there is no error and the output of the PID is 30"?
Somewhere in your SW you have to convert the 0-100% result from the PID into 4-20mA output.
Keith Cress
kcress - http://www.flaminsystems.com
RE: Temperature PID closed loop
You need to adjust a hot water valve manually so that the mix of hot and cold water coming out of the faucet is at exactly 30 degrees. You have a thermometer showing the resulting temperature.
What you probably will do is turn on the hot water valve fully until your temperature gets close to 30 degrees (that 'turn on fully' corresponds to your D part). Whwen you are close to 30 degrees, you adjust the valve slowly so you reach exactly 30 derees (that is your I part). You now have zero error and a valve that is set to a suitable aperture. You are satisfied and there is no need to change the valve setting.
What keeps the output of your controller at a higher value than 4 mA is the I (integral) part of the controller. It is only when temperature gets too high that the I part is reduced so that the output is reduced. Or vice versa if the temperature gets too low. Or setpoint is changed.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop
So if set = actual value = no error, the output is 0 right?
Then I could use the 0-100% output and scale it into 4-20mA on the analog 4-20mA output terminal.
I was confused because I have a demo closed loop PID sw program. It simulate the closed loop internaly in software. When I run this program I can see that when it is in steady state, then the output of PID = setpoint value. This is confusing as I thought is should be zero....
RE: Temperature PID closed loop
Another example: You drive a car and want it to run at 100 km/h. You then step on the pedal to reach that speed. When you have reached it - you do not take your foot off the pedal. You keep it in the position that makes your car run at 100 km/h.
The PID controller does exactly the same thing.
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop
BR
Hans P
RE: Temperature PID closed loop
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop
Non integrating systems like temperature and velocity control will go to steady state or ambient when the control output is 0. Therefore it is important to understand your system. Since you are doing a temperature control system the temperature will drop to ambient temperature when there is no control signal.
Peter Nachtwey
Delta Computer Systems
http://www.deltamotion.com
RE: Temperature PID closed loop
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop
PLC people use PID blocks and say they are using a PID whether or not they are really using the derivative gain. Most PLC people don't know when they should use the derivative gain or why.
Hapetter asked the same question on www.plcs.net but worded it slightly differently and added more detail.
h
Peter Nachtwey
Delta Computer Systems
http://www.deltamotion.com
RE: Temperature PID closed loop
Gunnar Englund
www.gke.org
--------------------------------------
100 % recycled posting: Electrons, ideas, finger-tips have been used over and over again...
RE: Temperature PID closed loop