solution 9.10.1.7
The rst step is to put the transfer function in time constant form. So we
have
G(s) =
500
s
2
(s
2
+10s +50)
=
500
50s
2
(s=
p
50)
2
+ s=25 + 1)
=
10
s
2
(s=
p
50)
2
+ s=25+ 1)
:
Then the terms to be plotted are
10 ;;
1
s
2
;;and
1
s=
p
50)
2
+ s=25+ 1
:
20log
10
(9:90099) = 20 dB
Atlow frequencies the only terms that contribute are the gain and 1=s
2
.
The term 1=s, whichisastraight line crossing the 0-dB line at ! =1,
with slope ;40 dB/dec. When the gain is added in, it will cross at 20 dB.
The quadratic term is a straightline oout to the vicinityofthenatural
frequency !
n
,and a straightline for frequencies muchlarger than !
n
. The
twostraightline asymptotes shown in Figure 1 capture the behavior away
from the vicinityof!
n
. Note that the slope changes to ;60 dB when the
plot crosses the 0-dB line. The damping ratio of the complex poles is about
0.7. Referring to Figure 9.11(a) weseethat there will be no hump at the
resonantfrequency ( whichisvery close to !
n
). The accurate magnitude
plot, also shown in Figure ??,was generated with the MATLAB statements
w=logspace(-2,3,200);;
s=j*w;;
p1 = 0
p2 = 0
p3 = 5 -j*5
p4 = 5 + j*5
K=500
mag = 20.*log10( K ./( abs( s + p1) .* abs(s + p2).*abs(s + p3).*abs(s + p4) ) );;
semilogx(w,mag);;
grid on
axis([0.1 1000 -100 60])
print -deps 91017a.eps
The phase plot, shown in Figure 2, is generated with the MATLAB state-
ments
1
10
-1
10
0
10
1
10
2
10
3
-100
-80
-60
-40
-20
0
20
40
60
Figure 1: Accurate and asymptotic Bode magnitude plots
w1 = logspace(-2,3,20);;
s1 = j*w1;;
phase = (- angle(s + p1)-angle(s + p2) - angle(s + p3) -angle(s +p4))*180/pi;;
phase1 =( - angle(s1 + p1)-angle(s1 + p2) - angle(s1 + p3)-angle(s1 + p4))*180/pi;;
semilogx(w,phase,'k-',w1,phase1,'rd');;
grid on
axis([0.1 1000 -360 -180])
print -deps 91017b.eps
Note that twentypoint spread over vedecades will giveafairly accurate
phase plot. The complete MATLAB program to drawbothplots is
w=logspace(-2,3,200);;
s=j*w;;
p1 = 0
p2 = 0
p3 = 5 -j*5
p4 = 5 + j*5
K=500
mag = 20.*log10( K ./( abs( s + p1) .* abs(s + p2).*abs(s + p3).*abs(s + p4) ) );;
semilogx(w,mag);;
2
10
-1
10
0
10
1
10
2
10
3
-360
-340
-320
-300
-280
-260
-240
-220
-200
-180
Figure 2: Accurate and approximate Bode phase plots
grid on
axis([0.1 1000 -100 60])
print -deps 91017a.eps
pause
w1 = logspace(-2,3,20);;
s1 = j*w1;;
phase = (- angle(s + p1)-angle(s + p2) - angle(s + p3) -angle(s +p4))*180/pi;;
phase1 =( - angle(s1 + p1)-angle(s1 + p2) - angle(s1 + p3)-angle(s1 + p4))*180/pi;;
semilogx(w,phase,'k-',w1,phase1,'rd');;
grid on
axis([0.1 1000 -360 -180])
print -deps 91017b.eps
3