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:
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
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]
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: