PID controller's terminology

Pandiani

Lifetime Supporting Member
Join Date
Apr 2005
Location
Tz
Posts
718
Hello guys,

Recently, I've read some documentation about software implementation of PID controllers.
I've found something very interesting. For the sake of simplicity I'll give example of PI controller. Basically, documentation distinguishes two type of PI algorithm: multiplicative and additive.
Multiplicative algorithm has the following form:
CO = Kp*error + Kp* integral(error)/TN,
where Kp represents proportional gain, while TN represents so called reset time.
Additive algorithm has the following form:
CO = KO * error + KI * integral(error),
where KO is gain factor and KI represent "Integral time constant"
Since KI is constant, it is dimensionless and since TN is time, it has dimension of seconds.
I googled about this and found that parameter TN (Ideal dependant form) is often called both "reset" and "integral time" interchangeably.
I wonder why term "reset time" is chosen?
Theoretical step response of PI controller (multiplicative) with Kp = 4 and TN = 10 is shown in figure in attachment for the following code:
Code:
   [color=black]t1 = 20;[/color][/font]
    [color=black][font=Arial]Kp = 4;[/font][/color]
    [color=black][font=Arial]TN = 10;[/font][/color]
    [color=black][font=Arial]Ts = 0.02;[/font][/color]
    [color=black][font=Arial]N = t1/Ts;[/font][/color]
      [color=black][font=Arial]e(1:N/2) = 0;[/font][/color]
    [color=black][font=Arial]e(N/2+1:N) = 1;[/font][/color]
    [color=black][font=Arial]I(1)=0;[/font][/color]
    [color=blue][font=Arial]for[/font][/color][color=black][font=Arial] i = 1 : (N-1)[/font][/color]
    [color=black][font=Arial]	I(i+1) = I(i) + Kp*(Ts/TN)*(e(i)+e(i+1))/2;[/font][/color]
    [color=black][font=Arial]	CO(i+1) = Kp*e(i+1) + I(i+1);[/font][/color]
    [color=blue][font=Arial]end[/font][/color]
  [color=black][font=Arial]plot(Ts:Ts:t1, CO, [/font][/color][color=#a020f0][font=Arial]'r'[/font][/color][color=black][font=Arial]);  grid [/font][/color][color=#a020f0][font=Arial]on[/font][/color][color=black][font=Arial]
  hold [/font][/color][color=#a020f0][font=Arial]on[/font][/color][color=black][font=Arial]
  plot (Ts:Ts:t1, e)[/font][/color]
  [font=Arial]
As we know, nothing specially happens after "reset time", integrator keps summing and after t = TN, CO is at 2*Kp...
Does term "reset time" has anything to do with the PI form (algorithm type)?


http://www.plctalk.net/qanda/uploads/PI_response.jpg
 
Last edited:
I am waiting for someone to tell me what gets reset too for a long time

You and I know TN it is a time constant. The process industry uses time constants in minutes because that best matches their applications.

Motion controllers don't normally use time constants. Time constants in the minute or even the second range are too long or slow for system that have time constants in the milliseconds.
 
It goes back to the days when there was a round knob on the front of the new-fangled proportional controller labeled "reset".

When the process stabilized and lined out, typically evident because the controller was part of the a circular chart recorder, the PV was not necessarily at the setpoint.

The operator would turn the reset knob, increasing or decreasing the reset action, until the process lined out at the setpoint.

Fischer_Porter_circular_recorder_controller.jpg
 

Similar Topics

I have an old Chinese Temperature PID controller XMT 8038c2kp that am able to send and receive requests via Modbus poll test center in this format...
Replies
0
Views
441
I have a question regarding the features of the so called incremental (velocity) form of the PID controller. As far as I understand this form in...
Replies
14
Views
2,484
Hi - I have an application where there is an option to use a PID loop embedded in the Transmitter to directly control (via 4-20mA output from the...
Replies
4
Views
1,066
Hi All, I have a PID control application that I would like to get your opinions on. As I am reality new to PID loops I am struggling somewhat...
Replies
14
Views
4,271
Hello, I have been developing a library of function blocks. One of the developed function blocks is the PID controller. I have created a Simulink...
Replies
7
Views
2,980
Back
Top Bottom