Professional Documents
Culture Documents
PID
Compensation Networks
Proportional Control
A proportional controller attempts to perform better than the On-off type by
applying power in proportion to the difference in temperature between the
measured and the set-point. As the gain is increased the system responds faster to
changes in set-point but becomes progressively underdamped and eventually
unstable. The final temperature lies below the set-point for this system because
some difference is required to keep the heater supplying power.
Proportional+Integral+Derivative Control
Although PD control deals neatly with the overshoot and ringing
problems associated with proportional control it does not cure the
problem with the steady-state error. Fortunately it is possible to eliminate
this while using relatively low gain by adding an integral term to the
control function which becomes
Proportional Control
By only employing proportional control, a steady state error
occurs.
CL RESPONSE
RISE TIME
OVERSHOOT
SETTLING TIME
S-S ERROR
Kp
Decrease
Increase
Small Change
Decrease
Ki
Decrease
Increase
Increase
Eliminate
Kd
Small Change
Decrease
Decrease
Small Change
2.
3.
4.
5.
Adjust each of Kp, Ki, and Kd until you obtain a desired overall
response.
Lastly, please keep in mind that you do not need to implement all three controllers
(proportional, derivative, and integral) into a single system, if not necessary. For
example, if a PI controller gives a good enough response (like the above
example), then you don't need to implement derivative controller to the system.
Keep the controller as simple as possible.
1
2
s 10s 20
num=1;
den=[1 10 20];
step(num,den)
T( s )
MATLAB Example
s 10 s ( 20 Kp )
Step Response
From: U(1)
1.4
Kp=300;
1.2
num=[Kp];
step(num,den,t)
0.9
0.8
0.8
0.7
0.6
0.4
K=300
0.2
0.6
To: Y(1)
Amplitude
t=0:0.01:2;
From: U(1)
To: Y(1)
den=[1 10 20+Kp];
Step Response
1
Amplitude
0.5
K=100
0.4
0.3
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
1.8
0.2
0.1
0
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
1.8
T( s )
MATLAB Example
s ( 10 Kd ) s ( 20 Kp )
Step Response
From: U(1)
1.4
1.2
Kp=300;
t=0:0.01:2;
From: U(1)
0.8
0.9
0.6
0.8
0.7
Kd=10
0.4
0.2
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
0.6
To: Y(1)
Step Response
Amplitude
num=[Kd Kp];
To: Y(1)
Amplitude
Kd=10;
0.5
0.4
1.8
0.3
Kd=20
0.2
step(num,den,t)
0.1
0
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
1.8
T( s )
MATLAB Example
s 10 s ( 20 Kp ) s Ki
Step Response
From: U(1)
1.4
Kp=30;
1.2
Step Response
t=0:0.01:2;
step(num,den,t)
1.2
0.8
Ki=70
0.4
To: Y(1)
0.6
A m plitude
To: Y(1)
num=[Kp Ki];
Amplitude
Ki=70;
0.2
From: U(1)
1.4
0.8
0.6
0.4
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
1.8
Ki=100
2
0.2
0.2
0.4
0.6
0.8
Time (sec.)
1.2
1.4
1.6
1.8
RLTOOL
Syntax
rltool
rltool(sys)
rltool(sys,comp)
RLTOOL
RLTOOL
RLTOOL
RLTOOL
Example - Practice
Consider the following configuration:
Example - Practice