me 534 - 04 controller design ii (rev. 1.3).pptme.metu.edu.tr/courses/me534/protected/me 534 -...
TRANSCRIPT
Outline – Root Locus
• Root Locus TechniqueRoot Locus Technique– Review– Examplesp– Calculation of gain
• Dominant Poles– Case studies– Bandwidth– Bode plot
• Design Exampleg p
Chapter 4b ME 534 2
Root Locus of a Negative Feedback CTS
Consider the TF of the CLcontrol system w/o D(s) :
)()()(1)()(
)()(
sHsGsGsGsG
sRsY
pc
pc
+=
)()()()( pc
Characteristic equation is 0)(11 =+=+ sGHGG OCharacteristic equation is 0)(11 =+=+ sGHGG OLpc
)()(b
zsM
i+∏or 0)(1 =+ sKG where
)()(
)(
)()( 1
sasb
pssG N
i
ii
=+
=
∏
∏=
Chapter 4b ME 534 3
1i=
Root Locus (Cont’d)( )Roots of a(s) are the open loop (OL) poles while those of b(s) are calledthe OL zeros Hence the characteristic equation becomesthe OL zeros. Hence, the characteristic equation becomes
0)()()( =+= sKbsasA
where the roots of A(s) give the CL poles (or eigenvalues). To satisfy thecharacteristic equation, we obtain the following conditions:
Magnitude Condition:
1)(1)(0)(1 =∴−=⇒=+ sGsGsG OLOLOL
Angle Condition:
1)(1)(0)(1 −∠=∠∴−=⇒=+ sGsGsG OLOLOL
)12(180)()01()( +±=∠⇒+−∠=∠ ksGjsG oOLOL
1)(1)(0)(1 ∠∠∴⇒+ sGsGsG OLOLOL
where k ∈ {0 1 2 }Chapter 4b ME 534 4
where k ∈ {0, 1, 2, ...}
Root Locus (Cont’d)( )Our objective is to draw the loci of CL poles as K varies. In fact, the anglecondition is sufficient to form such a plot. Magnitude condition could beused to calibrate the resulting plot.
Test Point (so) As an illustration, consider a CTS( )
pole2
with 3 OL poles and a zero. A test point (so) is selected and theangle condition is queried:
l
pole2g q
)12(180)( 0 +±=∠ ksG oOL
?pole1
l
zero1 )12(1803211 +±=−−− koθθθϕ
If this condition is satisfied, s0 is onpole3If this condition is satisfied, s0 is onthe root loci. Unfortunately, thetechnique is very cumbersome!
Chapter 4b ME 534 5
Analytical Approach for Calculating Root Locus
• A straightforward method for calculating root loci isroot loci is– To increment K systematically
To calculate the roots of corresponding– To calculate the roots of corresponding A(K,s) = num{1 + GOL(K,s)}.
• MATLAB employs this simple algorithm to• MATLAB employs this simple algorithm to plot root locus of a control system with arbitrary complexityarbitrary complexity.
Chapter 4b ME 534 6
ExamplePlot the root locus of the following system using analytical techniques:
K)1(
)(+
=ssKsGOL
Solution:So u o
Characteristic polynomial of this system is
(K = 0 25)
))(()(
21
2
pspsKsssA++=
++= (K = 0) (K = 0)(K = 0.25)
-12))(( 21 pp
Hence,
411 K±
2
2411
2,1Kp −±−
=
Chapter 4b ME 534 7
Root Locus TechniqueRoot Locus Technique
• First developed by Evans in 1948.p y• Method can be applied to both CTS and
DTSDTS.• Procedure includes 6 steps to sketch the
root locus easily.
Chapter 4b ME 534 8
Procedure for Sketching Root LocusLocus
1. Plot the OL poles and zeros in s-plane. Root locus branches start from OL poles pand terminate either at zeros or at infinity:infinity:• If n is the number of OL poles and m is the
b f OL ( ≥ ) thnumber of OL zeros (n ≥ m), then mbranches end up at zeros while n-mb h i d tbranches wind up at ∞.
Chapter 4b ME 534 9
Procedure (Cont’d)( )
2. Determine the root loci on the real axis.
• Pick a test point on real axis. If total number of “ l” d “ l”“real” zeros and “real”poles at the right side of this point is an odd
1 (odd)
1 ( dd)
2 ( )
3 ( dd)this point is an odd
number (1, 3, 5, ...), then that point lies on the root
(odd)(odd)(even)(odd)
plocus.
Chapter 4b ME 534 10
Procedure (Cont’d)( )3(a). Determine the asymptotes of root loci:( ) y p
}...,,1,0{)12(180 mnkka −∈
+±=Φ
mn −
3(b) Determine the abscissa of intersection of the3(b). Determine the abscissa of intersection of the asymptotes:
zerospoles −∑ ∑mn
zerospoles iia −
−= ∑ ∑σ
Thi i l t th t ti f t fThis is analogous to the computation for center of gravity.
Chapter 4b ME 534 11
Procedure (Cont’d)( )
4 Find the breakaway and break in points on4. Find the breakaway and break-in points onthe root loci:
)()(0)()(
sbsaKsbKsa −
=⇒=⋅+
02 =⋅−⋅
=b
abdsdK ds
dbdsda
Real roots of this equation yield the locations of either
bds
break-away or break-in points on the real axis.
Chapter 4b ME 534 12
Procedure (Cont’d)( )
5(a) Determine the angle of departure of the root locus5(a). Determine the angle of departure of the root locus from a complex pole:
∠departure = 180o – (∑ angles of vectors to the complex ∠departure = 180 – (∑ angles of vectors to the complex pole in question from other poles)
+ (∑ angles of vectors to complex pole inquestion from other zeros)question from other zeros)
5(b). Determine the angle of arrival at a complex zero:
∠arrival = 180o – (∑ angles of vectors to the complex pole in question from other zeros) f
+ (∑ angles of vectors to complex pole inquestion from other poles)
Chapter 4b ME 534 13
Procedure (Cont’d)( )As an illustration, consider the CTSwith three OL poles. Let us find the
2
angle of departure from the complexpole2. From geometry, the angles ofvectors can be directly determined: 2 y
θ1 = 135 oθ3 = 90 o
1
3ϕ1 = 0 o (no zero)
Therefore,3
o
oooo
450)90135(1802
=
++−=
θ
θTherefore,
452 −=θThat is, the locus is leaving off thispole towards the first one.
Chapter 4b ME 534 14
p
Procedure (Cont’d)( )
6. Find the break-away point at s = jω(imaginary axis)(imaginary axis). • From this point on, the CL poles enter the
i t bilit i Th t binstability region. The system becomes unstable.
• For DTS, one needs to determine the breakaway points on the unit circle.
Chapter 4b ME 534 15
Example 1pSketch the root locus of the following system:
1+s)4(
1)( 2 ++
=ss
sKsGOL
Solution: tes
So u o
1. Poles: p1 = p2 = 0 (repeated poles); p3 = -4 (n = 3)
Z 1 ( 1) asym
ptot
Zeros: z1 = -1 (m = 1).
2. Root loci on the real axis: -4 ≤ s ≤ -1pole3
pole
2zero
1
a
5.1)1()400(−=
−−−+=σ
3. Asymptotes:pole1,2
5.113 −aσ
oo
a 9013
180±=
−±
=Φ
Chapter 4b ME 534 16
13 −
Solution of Example 1 (Cont’d)p ( )4. Break-away / break-in points:
0=−dsdba
dsdab
y p
0)4()83)(1( 232 =+−++ sssssdsds
0
5. Branches depart from poles @ 0
s = 0 s = -1.75 ± j0.97 (nonsense!)
2
5. Branches depart from poles @ 0with ∠±90o.
6. No crossing of imaginary axis.g g y
Chapter 4b ME 534 17
Solution of Example 1 (Cont’d)
3
4Root Locus
p ( )
L t if lt i
2
3Let us verify our results usingMatlab:
% d fi l f
0
1
ary
Axi
s
% define open-loop TF of CTS% (K is excluded in OLTF)G = tf([1 1],[1 4 0 0]); % plot root locus
-1
0
Imag
ina% p ot oot ocus
rlocus(G);
-3
-2
-4 -3.5 -3 -2.5 -2 -1.5 -1 -0.5 0-4
3
Real Axis
Chapter 4b ME 534 18
Real Axis
Example 2pSketch the root locus of the following system:
1)2)(1(
1)(++
=sss
KsGOL
Solution:t t
So u o
1. Poles: p1 = 0; p2 = -1; p3 =-2 (n = 3)Zeros: none (m = 0).
asymptote
2. Root loci on the real axis: -1 ≤ s ≤ 0 and s ≤ -2
pole3 pole1pole2 60o
-60o
10)210(−=
−−−=σ
3. Asymptotes:
asymptote
60
103 −aσ
oooo
ak 300,180,6003
)12(180=
+±=Φ
Chapter 4b ME 534 19
03 −
Solution of Example 2 (Cont’d)p ( )4. Break-away / break-in points:
0=−dsdba
dsdab
y p
0)263( 2 =++− ssdsds
0 4226-0.4226
5 No departure from poles
s = -0.4226 s = -1.5774 (nonsense!)
5. No departure from poles.
6. Locus is to cross imaginary axis.
Chapter 4b ME 534 20
Solution of Example 2 (Cont’d)4
Root Locus
p ( )Let us verify this result with
2
3y
Matlab again:
% define open-loop TF of CTS
0
1
ry A
xis
p pG = tf(1,poly([0 -1 -2]));% plot root locusrlocus(G);
-1
0
Imag
inar
-3
-2
-6 -5 -4 -3 -2 -1 0 1 2-4
3
Real Axis
Chapter 4b ME 534 21
Real Axis
Example 3 – DTS pSketch the root locus of the following system:
50z2)1(5.0)(
−−
=zz
zKzGOL
Solution:
Imz-plane
jasymptote
So u o
1. Poles: p1 = 0; p2 = p3 = 1 (n = 3)Zeros: z1 = 0.5 (m = 1).
2. Root loci on the real axis: 0 ≤ z ≤ 0.5 Re
2pole1 zero1 pole2,3-10.50
75.03
5.0)011(=
−++=aσ
3. Asymptotes:
13 −a
oo
ak 9013
)12(180±=
+±=Φ
-j
Chapter 4b ME 534 22
13 −
Solution of Example 3 (Cont’d)p ( )4. Break-away / break-in points:
Imz-plane
0=−dzdba
dzdab
y pj
05.135.32 23 =−+− zzzdzdz
z = 12-1
5 Branches depart from poles
z1 = 1 z2,3 = 0.375 ± j0.7806 (nonsense)
Re0.50
5. Branches depart from poles@ 1 with ±90o
6. Locus does not cross the unit -j6. Locus does not cross the unitcircle.
NOT POSSIBLE TO STABILIZE!
Chapter 4b ME 534 23
Solution of Example 3 (Cont’d)0 8
1
0 7 /T
0.6π/T0.5π/T
0 3 /T
0.4π/T
0 1
Root Locus
p ( )Let us verify this result with
0 4
0.6
0.8
0.8π/T
0.7π/T
0.2π/T
0.3π/T0.1
0.2
0.3
0.4
0.5
0 6
yMatlab again:
% define open-loop TF of DTS
0
0.2
0.4
0.9π/T 0.1π/T
0.9
π/T
0.7
0.8
0.6
ry A
xis
G = tf([1 -.5],poly([0 1 1]),-1);% plot root locusrlocus(G);zgrid;
-0.2
0π/T
0.1π/T0.9π/T
π/T
Imag
inar
-0.6
-0.4
0 3 /T
0.2π/T0.8π/T
0 7 /T
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1
-0.8
0.6π/T0.5π/T
0.4π/T
0.3π/T0.7π/T
Real Axis
Chapter 4b ME 534 24
Obtaining Gain from the Plotg
• Once the root locus plot is obtained, appropriate CL pole locations are selected.
• Gain (K) yielding the desired pole locations are determined from the plot using the magnitude condition:
|GOL(s0)| = |KG(s0)| = 1K = 1 / |G(s0)|
where s0 is the desired location on the plot.0 p
Chapter 4b ME 534 25
ExampleConsider the root locus of the followingsystem:
K]16)4[(
)( 2 ++=
ssKsGOL
D t i K f th CL l ( ) hpole2 s0
|s0 - s2|
Determine K for the CL poles (■) shown on the plot.
pole1
|s0 - s1||s0 - s3|
Solution: pole1
pole3
Solution:
1||||||
)|(|302010
0 =−−−
=ssssss
KsGOL302010
51|||||| 302010 =−−−=434214342143421ssssssK/8.5/2.2/0.4 sradsradsrad
Be careful with the scale and units. After the vector length is measured(say in mm) one needs to convert it to [rad/s] for the calculationChapter 4b ME 534 26
(say in mm), one needs to convert it to [rad/s] for the calculation.
CL Pole and Gain Calculation with Matlab
• Matlab uses an interactive function to calculate the gain yielding the CL poles selected by the user:>> rlocus(G);
[K l ] l fi d(G)>> [K,poles] = rlocfind(G)• Once rlocus plots the root locus, Matlab
t th t i t th d i d lprompts the user to point the desired pole locations on the graph (No need to be exact!).
• Hence, rlocfind returns not only the gain but also the selected CL poles.
Chapter 4b ME 534 27
Example – Gain Calculation8
10Root Locus
pRevisit the previous example.
4
6G = tf([1],[1 8 32 0])); rlocus(G);[K,poles] = rlocfind(G)
0
2
4
ary
Axi
s
Matlab’s Output:Select a point in the Graphics window
Selected CL poles
4
-2
0
Imag
ina
pselected_point =-2.6588 + 3.3075i
-6
-4K =47.5909
poles =
-6 -5 -4 -3 -2 -1 0 1 2-10
-8
Real Axis
poles -2.6581 + 3.2660i-2.6581 - 3.2660i-2.6839
Chapter 4b ME 534 28
Dominant Poles
A typical control system may have several poles• A typical control system may have several poles (eigenvalues). – The system might be decomposed into several paralel y g p p
subsystems with different “weights” and “operating speeds.”• In controls literature, the dominant pole of a control
system refers to the slowest pole (“subsystem”) thatsystem refers to the slowest pole ( subsystem ) that dominates the overall dynamics of the system.
• To use root locus tools efficiently, one needs to y,understand:– How zeros and poles interact with each other,
How the location of closed loop poles affect the system dynamics– How the location of closed loop poles affect the system dynamics,– How to simplify the overall system.
Chapter 4b ME 534 29
Dominant Poles – Case 1
Im
To see the effect of pole locations a unit step to thislocations, a unit step to this system. At each test, the location of the pole at δ is ReResponsepchanged. Response
gets faster
Chapter 4b ME 534 30
Dominant Poles - Case 1 (Cont’d)
0.9
1Step Response
0.7
0.8
δ ∈ {0.6, 0.7, 0.8, 0.9}
0.5
0.6
plitu
de
A th l t δ t d th
0.3
0.4
Am
p As the pole at δ moves towards the origin, the response gets faster.
0.1
0.2
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50
0.1
Time (sec)
Chapter 4b ME 534 31
( )
Dominant Poles – Case 2
0
A h d dIm
As the next case, a second-order system with two real roots is considered Slowest pole at δ isconsidered. Slowest pole at δ is fixed while the location of the other pole is incrementally Rep ymoved towards the origin at each test.
ReResponse does not
change much!
Chapter 4b ME 534 32
Dominant Poles – Case 2 (Cont’d)
0.9
1Step Response
0.7
0.8
0 5
0.6
0.7
itude
δ = 0.9 ε ∈ {0.6, 0.7, 0.8, 0.9}
0 3
0.4
0.5
Am
pli
Slowest pole at δ dominates the system dynamics Thus
0 1
0.2
0.3 the system dynamics. Thus, changing the location of the fastest pole at ε does not havethat much effect
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50
0.1
Time (sec)
that much effect.
Chapter 4b ME 534 33
Time (sec)
Dominant Poles – Case 3
ImA zero (at ξ), which is adjacent to the slowest pole at δ, is added to the previous system. Pole at δ as
ell as the ero are all stationar
ReResponse gets
well as the zero are all stationary while the location of the other pole is incrementally moved Response gets
noticeably faster!pole is incrementally moved towards the origin at each test.
Chapter 4b ME 534 34
Dominant Poles – Case 3 (Cont’d)
0.9
1Step Response
0 7
0.8δ = 0.9 and ξ = 0.85ε ∈ {0 6 0 7 0 8 0 9}
0 5
0.6
0.7
tude
ε ∈ {0.6, 0.7, 0.8, 0.9}
0 3
0.4
0.5
Am
plit
Effect of the slowest pole at δ iscompensated by the adjacent zero!
0.2
0.3 compensated by the adjacent zero!Thus, changing the location of the other pole at ε does have a noticeable i fl th
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.50
0.1 influence on the response.
Chapter 4b ME 534 35
Time (sec)
System Simplificationy p
• If the pole pi is close to the unit circle pi is relativelyIf the pole pi is close to the unit circle, pi is relatively more “dominant” over the other poles since the transient response associated with it decays slowly.– After a while, the system dynamics will be completely dominated
by that pole.
If l i l t it ff t th t i t• If a pole is very close to a zero, its effect on the transient response can be neglected. – That pole and corresponding zero can be excluded from the CL– That pole and corresponding zero can be excluded from the CL
transfer function.– This omission is more justified when
• That pole is close to other poles and far from zeros (large residue) • That pole is far from other poles and close to zeros (small residue)
Chapter 4b ME 534 36
Simplification (Cont’d)p ( )Im Im
System might becharacterized by the slowest pole!
Reslowfast Reslow
the slowest pole!
)( 0KG )(' 0KG)9.0(
)( 0
−=
zzzG
9.0)(' 0
−=
zzG
Chapter 4b ME 534 37
Simplification (Cont’d)
0 9
1G'(z)G(z)
Step Response
p ( )
0 7
0.8
0.9 ( )
0 5
0.6
0.7
tude
D it th i lifi ti
0 3
0.4
0.5
Am
plit Despite the simplification,
the difference in responsesis quite small...
0 1
0.2
0.3
0 10 20 30 40 50 600
0.1
Time Index k (sec)
Chapter 4b ME 534 38
Time Index k (sec)
Bandwidth Frequencyq ySometimes, the location of dominant pole is indirectly specified in terms of a bandwidth frequency or break frequency (fb):
sfbf
ee aTπ
δ2−− ==
in terms of a bandwidth frequency or break frequency (fb):
where fs =1/T is the sampling frequency.
B k f f th t ll d
max
Break frequency of the controlledsystem is to meet the specifiedbandwidth frequency.
f sm
This could be verified by checking the frequency which correspondsq y pto -3 dB point in the Bode plot.
Chapter 4b ME 534 39
Bode Plot of a Discrete-time System
Consider CL transfer function of a discrete-time control system:
)()( FzY )()()( zF
zRzY
=
Bode plot of this system is obtained byBode plot of this system is obtained by
TjzFjF ω = )()(' TjezzFjF ωω
=)()(
Magnitude (in dB) = 20 log |F ’(jω)|
where 0 ≤ ω ≤ 2πfs/2 = π/T. By default, the sampling frequency must be at least twice the specified bandwidth frequency.
Chapter 4b ME 534 40
p q y
ExampleConsider the following discrete-time plant:
)( zzY2)1(
)()()(
−==
zzzG
zMzY
p
where sampling period (T) is selected as 0.001 seconds. Design a PD controller to achieve a (CL) bandwidth frequency of at least 100 Hz while the maximum overshoot is not to exceed 10%while the maximum overshoot is not to exceed 10%.
Solution:
TF function of the PD controller is
bzKzKKG −− −11)( TK
pKK d+=̂
zbzK
TzKKzG dpc =+=
1)( where
dp
d
p
KTKKb+
=̂
Chapter 4b ME 534 41
dp
Solution (Cont’d)OL transfer function becomes
)( −bzK2)1()()(
−−
=z
bzKzGOL
I t l d i t h i th OL (b) i l t d fi t ThIn root-locus design technique, the OL zero (b) is selected first. Thenthe CL poles are placed to desired location in the z-plane so as to achieve the desired CL bandwidth frequency. For instance,
5335.0001./110022
=== −− ππδ ee sf
bf (points the location ofdominant pole!)
Accompanying Matlab script is utilized in the design. Hence, the gains are
⎫02590K⇒
⎪⎭
⎪⎬⎫
×=
=-4104.9225
0259.0
d
p
KK fb = 127 [Hz] > 100 Hz.
Mp = 8% < 10%
Chapter 4b ME 534 42
Solution (Cont’d)1
0 6π/T0.5π/T
0 4π/T
Root Locus
( )
Matlab’s Output:
0.6
0.8
0.8π/T
0.7π/T
0.6π/T
0.2π/T
0.3π/T
0.4π/T
0.2
0.1
0.3
0.40 5
Matlab s Output:
Select a point in the graphics window
0.2
0.4
0.9π/T 0.1π/T
π/T
0.8
0.9
0.7
0.50.6
y A
xis
selected_point =0.5379 - 0.0031i
-0.4
-0.2
0 π/T
0.1π/T0.9π/T
π/T
Imag
inar
y
K =0.5182
poles =
-0.8
-0.6
0.4
0.7π/T 0.3π/T
0.2π/T0.8π/T
poles 0
0.94390.5379
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1-1 0.5π/T
0.4π/T0.6π/T
Real Axis
Chapter 4b ME 534 43
Solution (Cont’d)0
2
System: Gcl
Bode Diagram
-4
-2
gnitu
de (
dB)
y Frequency (rad/sec): 796 Magnitude (dB): -3
-10
-8
-6
Mag
-45
0
g)
-10
-180
-135
-90
Pha
se (
deg
101
102
103
104
-225
-180
Frequency (rad/sec)
Chapter 4b ME 534 44
Frequency (rad/sec)
Solution (Cont’d)1.4
S t G l
Step Response
1
1.2 System: Gcl Time (sec): 0.00847 Amplitude: 1.08
0.8
itude
0.6Am
pli
An overshoot is observed as the effectof zero @ 0.95 is not perfectly cancelled by that of the pole sitting at 0 9439!
0.2
0.4 by that of the pole sitting at 0.9439!
0 0.005 0.01 0.015 0.02 0.025 0.03 0.035 0.04 0.045 0.050
Time (sec)
Chapter 4b ME 534 45
Time (sec)
Matlab ScriptpT = 0.001; b = .95; % ParametersGp = tf([1 0],[1 -2 1],T); % Define plant's TFGc = tf([1 -b],[1 0],T); % Now PD controllerG = Gc*Gp; % OL TF w/o Krlocus(G); zgrid; % Plot root locusrlocus(G); zgrid; % Plot root locus[K,poles] = rlocfind(G) % Place the CL polesGcl = feedback(K*G,1); % CL TFfigure(2); bode(Gcl); % Check the bandwidthfigure(3); step(Gcl); % and transient resp.Kd = b*K*T; Kp = K - Kd/T; % Calculate gains
Chapter 4b ME 534 46