Professional Documents
Culture Documents
Venkata Sonti∗
In this lecture we shall look at the PID control of a 1-DOF spring mass damper system (Figure
1). The open loop transfer function is given by:
0.045
0.04
M=1, K=20, C=10
0.035
0.03
Amplitude
0.025
0.02
0.015
0.01
C
0.005
M
0
0 0.5 1 1.5 2
K Time (sec.)
Figure 1:
F (s)
X(s) =
+ Cs + KM s2
The open loop step response is given in figure 1. It can be seen that the open loop is inadequate.
The response saturates at 0.05 and has a rise time of 1 sec. The poles of the open loop system
are at s=-7.23 and -2.76. Both are on the real axis and hence heavily damped with no oscillatory
imaginary parts. The step response is in league with the pole positions.
∗
1
1 Proportional Controller
We should first reduce the steady state error, for which we look at the proportional controller.
The block diagram for the proportional controller is given in figure 2.
1.2
Kp=300, M=1, K=20, C=10
1
Amplitude
0.8
0.6
0.4
r(t) 1
+ Kp 0.2
R(s) - 2
s +10s+20
0
0 0.2 0.4 0.6 0.8 1 1.2
Time (sec.)
Figure 2: Block diagram for proportional controller. Step response of proportional controller.
Kp=300.
where H=1 for us. It can already be seen that for Kp = ∞ Tf=1. Hence larger values of Kp will
reduce steady state error. The relevant Matlab commands for step response and root locus look
as follows:
• numc = kp denc = [1 10 20 + kp ] −→ step(numc, denc). This is directly in terms of the
closed loop.
• or we can begin with the loop transfer function GH, i.e., num = kp , den = [1 10 20] −→
[numc, denc] = cloop(num, den) −→ step(numc, denc). The cloop command converts the
loop Tr.Fn.=GH to closed loop Tr. Fn. and then we get the step response.
• In root locus, as seen before we use the loop transfer function KpG∗ H ∗ .
rlocus(num, den) plots the rlocus for Kp, where num and den are as defined above.
The step response is shown in figure 2 for a Kp=300. As can be seen there is a significant
improvement in the steady state error. We will try to understand this using Root Locus.
kp
1 + GH = 1 + = 1 + kp G∗ H ∗
s2
+ 10s + 20
The root locus is given in figure 3. The position on the locus marked as kp=31.28 should give
an indication where kp=300 would lie. At kp=300 the roots are far from the real axis hence
damping is low and so the system is underdamped and overshoot is high. At kp=300 the poles
are at −5±i17.1756. Let us say that we have the following requirements: the step response should
have a) < 10% overshoot, b) rise time < 0.1 sec and c) no steady state error.
2
Root locus for the proportional controller
6
kp=31.28
4
Imag Axis
S=−7.23 kp=0
0
S=−2.76 kp=0
−2
−4
−6
−8 −6 −4 −2 0 2
Real Axis
r(t) 1 c(t)
+ Kp+Kd s
R(s) - s2 +10s+20 C(s)
Prop−Der control step response Root locus for the prop. der. controller Kp=300
1 20
s=−5 + j 17
0.8 10
kp=300 and kd=20
Imag Axis
Amplitude
0.6 Kd=25.6613
To: Y(1)
0
0.4
−10
0.2
0 −20
0 0.2 0.4 0.6 0.8 1 1.2 −20 −15 −10 −5 0
Time (sec.) Real Axis
Figure 5: Step response of Proportional Derivative Controller. Kp=300 and Kd=20. Root locus
of proportional derivative controller.
kp + kd s
G= H =1
s2 + 10s + 20
3
kp +kd s
G 2 kp + kd s
= s +10s+20
k +k s
= 2
1 + GH p
1 + s2 +10s+20
d s + (10 + kd )s + 20 + kp
The above expression can be used to find the step response of the PD controller. We take Kp=300
and Kd=20. The poles at these values are given by −15 ± i9.7468. The absolute value of the
root is the natural frequency. It is 17.88 here. And so ξ the damping coefficient is given by
15/17.88 = 0.8385 which is very heavy damping, close to critical. We shall look at the root locus
diagram for Kd. When Kd=0 the poles are at −5 ± i17.1756. Hence this is where the root locus
diagram will begin. Looking at 1+GH, the root locus expression for Kd is
1 + GH = s2 + 10s + 20 + kp + kd s = 0
kd s
1+ =0
s2 + 10s + 20 + kp
The step response of PD controller and the root locus for Kd at Kp=300 are shown in figure
5. The root locus begins at the points s = −5 ± j17 and proceeds towards the real axis. The
point kd=25 is very close to the real axis and thus kd=20 is also quite close. This explains the
damped nature of the step response in figure 5. If you actually compute the break-in point it is
at kd = 25.775 and the pole locations are s = ±17.8885. So Kd reduces overshoot but not the
steady state error.
kp s + ki
T r.f n. =
s3 + 10s2 + (20 + kp )s + ki
It can be seen that ki raises the denominator order. Lets plot the step response for kp=300,
ki=1000 and the root locus for ki at kp=300 in figure 6. The poles of the system at these kp,ki
values are at s = −3.3± i17 and s = −3.36. There is a system zero at s = −3.3. The real pole and
zero approximately cancel and the response is mainly due to the complex poles. It may be noted
that the locus begins at the poles of the proportional controlled system at s = −5 ± i17. The
rlocus crosses the imaginary axis going right at ki=3164 at which point the system is unstable.
To be noted is that ki gives an overshoot since the roots move toward the imaginary axis which
reduces damping. Also, system becomes relatively more unstable. However, ki eliminates steady
state error. Thus, it is evident that just proportional and integral controller cannot match the
specs. We need the derivative controller.
4 PID Controller
The PID controller and the rlocus for kd is shown in figure 7.
The kd parameter chosen is kd=50 where we get a remarkably good response. The reason
being that here pole zero cancellations occur. The numerator zeros are at s = −3 ± i3.317 and
the poles are at s = −54.4614 and s = −2.7693 ± i3.27. The zeros and poles nearly cancel giving
a good response although there are regions where all the poles and zeros are on the real axis.
When kd is around 21-35, the poles are closer to the origin hence there is an overshoot. However,
around kd=40, the zeros come closer to the origin reducing the overshoot.
4
Comparison Prop VS PI controller Rlocus for Ki at Kp=300
20
2
1.8 15 ki=300
1.6
Kp=300, Ki=1000 10
1.4
5
Imag Axis
Amplitude
1.2
To: Y(1)
1 0
0 −20
0 0.3 0.6 0.9 1.2 1.5 1.8 −6 −4 −2 0 2
Time (sec.) Real Axis
Figure 6: Step response of Proportional Integral Controller. Kp=300 and Ki=1000. Root locus
of proportional integral controller for Ki.
1.2 10
Kp=300, Ki=1000 and kd=50
Step response
1 5 kd=36.7
Imag Axis
kd=21.7
0.8 Kp=300, M=1, K=20, C=10 0
kd=1674
−5
0.6
−10
0.4
−15
0.2
−20
0 −15 −10 −5 0
0 0.3 0.6 0.9 1.2 1.5 1.8 Real Axis
Figure 7: Step response of PID Controller. Kp=300 and Ki=1000 and kd=50. Root locus of PID
controller for kd.
5
Table 1: PID gains tuning using Zeigler Nichols method.
Type of Controller Kp Ti Td
P 0.5 Ku 0 0
Pu
PI 0.45 Ku 1.2 0
Pu Pu
PID 0.6 Ku 2 8
1.2
1
Amplitude
0.6
0.4
0.2
0
0 0.5 1 1.5 2
Time (sec.)