Upload
knk89
View
256
Download
0
Embed Size (px)
Citation preview
8/2/2019 Basic Root Locus
1/24
Topic #2
16.31 Feedback Control Systems
Basic Root Locus
Basic aircraft control concepts
Basic control approaches
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
2/24
Fall 2007 16.31 21
Aircraft Longitudinal Control
Consider the short period approximate model of an 747 aircraft.
xsp = Aspxsp + Bspe
where e is the elevator input, and
xsp =
w
q
, Asp =
Zw/m U0
I1yy (Mw + MwZw/m) I1yy (Mq + MwU0)
Bsp = Ze/m
I1yy (Me + MwZe/m)
Add that = q, so s = q
Take the output as , input is e, then form the transfer function
(s)
e(s)=
1
s
q(s)
e(s)=
1
s
0 1
(sI Asp)
1Bsp
For the 747 (40Kft, M = 0.8) this reduces to:
(s)
e(s)=
1.1569s + 0.3435
s(s2 + 0.7410s + 0.9272) Ge(s)
so that the dominant roots have a frequency of approximately 1
rad/sec and damping of about 0.4
1 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 0.11
0.8
0.6
0.4
0.2
0
0.2
0.4
0.6
0.8
10.090.20.30.420.540.68
0.84
0.95
0.090.20.30.420.540.68
0.84
0.95
0.2
0.4
0.6
0.8
0.2
0.4
0.6
0.8
PoleZero Map
Real Axis
ImaginaryAxis
Figure 1: Pole-zero map for Gqe
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
3/24
Fall 2007 16.31 22
Basic problem is that there are vast quantities of empirical data to
show that pilots do not like the flying qualities of an aircraft with
this combination of frequency and damping
What is preferred?
Figure 2: Thumb Print criterion
This criterion was developed in 1950s, and more recent data is
provided in MILSPEC8785C
Based on this plot, a good target: frequency 3 rad/sec and
damping of about 0.6
Problem is that the short period dynamics are no where near these
numbers, so we must modify them.
Could do it by redesigning the aircraft, but it is a bit late for
that...
September 2, 2007
6
7
4
5
2
3
0
0.1 0.2 0.4 0.6 0.8 1 2 4
1
POOR
ACCEPTABLE
UNACCEPTABLE
SATISFACTORY
Damping ratio s
Undampednaturalfrequencysrad/sec
Figure by MIT OpenCourseWare.
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
4/24
Fall 2007 16.31 23
First Short Period Autopilot
First attempt to control the vehicle response: measure and feed
it back to the elevator command e.
Unfortunately the actuator is slow, so there is an apparent lag
in the response that we must model
ce
4
s + 4
ae Ge(s)
k
c
Dynamics: ae is the actual elevator deflection, ce is the actuator
command created by our controller
= Ge(s)ae ;
ae = H(s)
ce; H(s) =
4s + 4
The control is just basic proportional feedback
ce = k( c)
which gives that
= Ge(s)H(s)k( c)
or that(s)
c(s)=
Ge(s)H(s)k1 + Ge(s)H(s)k
Looks good, but how do we analyze what is going on?
Need to be able to predict where the poles are going as a func-
tion ofk Root Locus
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
5/24
Fall 2007 16.31 24
Root Locus Basics
r
e Gc(s)
u Gp(s)
y
Assume that the plant transfer function is of the form
Gp = KpNpDp = K
pi(s zpi)
i(s ppi)
and the controller transfer function is
Gc(s) = KcNcDc
= Kc
i(s zci)i(s pci)
Signals are:
u control commands
y output/measurements
r reference input
e response error
Unity feedback form. We could add the controller Gc in the feed-
back path without changing the pole locations.
Will discuss performance and add disturbances later, but for now
just focus on the pole locations
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
6/24
Fall 2007 16.31 25
Basic questions:
Analysis: Given Nc and Dc, where do the closed loop poles
go as a function of Kc?
Synthesis: Given Kp, Np and Dp, how should we chose Kc, Nc, Dcto put the closed loop poles in the desired locations?
Block diagram analysis: Since y = GpGce and e = r y, theneasy to show that
y
r=
GcGp1 + GcGp
Gcl(s)
where
Gcl(s) =KcKpNcNp
DcDp + KcKpNcNpis the closed loop transfer function
Denominator called characteristic equation c(s) and the
roots ofc(s) = 0 are called the closed-loop poles (CLP).
The CLP are clearly functions ofKc for a given Kp, Np, Dp, Nc, Dc a locus of roots [Evans, 1948]
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
7/24
Fall 2007 16.31 26
Root Locus Analysis
General root locus is hard to determine by hand and requires Mat-
lab tools such as rlocus(num,den) to obtain full result, but wecan get some important insights by developing a short set of plot-
ting rules.
Full rules in FPE, page 260.
Basic questions:
1. What points are on the root locus?
2. Where does the root locus start?3. Where does the root locus end?4. When/where is the locus on the real line?5. Given that s0 is found to be on the locus, what gain is need for
that to become the closed-loop pole location?
Question #1: is point s0 on the root locus? Assume that Ncand Dc are known, let
Ld =NcDc
NpDp
and K = KcKp
c(s) = 1 + KLd(s) = 0
So values of s for which Ld(s) = 1/K, with K real are on theRL.
For K positive, s0 is on the root locus if
Ld(s0) = 180 l 360, l = 0, 1, . . .
If K negative, s0 is on the root locus if [0 locus]
Ld(s0) = 0
l 360
, l = 0, 1, . . .These are known as the phase conditions.
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
8/24
Fall 2007 16.31 27
Question #2: Where does the root locus start?
c = 1 + KNcNpDcDp
= 0
DcDp + KNcNp = 0
So if K 0, then locus starts at solutions of DcDp = 0 which
are the poles of the plant and compensator.
Question #3: Where does the root locus end?
Already shown that for s0 to be on the locus, must have
Ld(s0) = 1
K
So ifK , the poles must satisfy:
Ld =NcNpDcDp
= 0
There are several possibilities:
1. Poles are located at values ofs for which NcNp = 0, which are
the zeros of the plant and the compensator
2. If Loop Ld(s) has more poles than zeros
As |s| , |Ld(s)| 0, but we must ensure that thephase condition is still satisfied.
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
9/24
Fall 2007 16.31 28
More details as K :
Assume there are n zeros and p poles ofLd(s)
Then for large |s|,
Ld(s) 1
(s )pn
So the root locus degenerates to:
1 +1
(s )pn= 0
So n poles head to the zeros of Ld(s) Remaining p n poles head to |s| = along asymptotes
defined by the radial lines
l =180 + 360 (l 1)
p nl = 1, 2, . . .
so that the number of asymptotes is governed by the number
of poles compared to the number of zeros (relative degree). Ifzi are the zeros ifLd and pj are the poles, then the centroid
of the asymptotes is given by:
=
ppj
nzi
p n
Example: L(s) = s4
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
10/24
Fall 2007 16.31 29
Question #4: When/where is the locus on the real line?
Locus points on the real line are to the left of an odd number
of real axis poles and zeros [K positive].
Follows from the phase condition and the fact that the phase
contribution of the complex poles/zeros cancels out
Question #5: Given that s0 is found to be on the locus, whatgain is needed for that to become the closed-loop pole location?
Need
K 1
|Ld(s0)|=
Dp(s0)Dc(s0)Np(s0)Nc(s0)
Since K = KpKc, sign ofKc depends on sign of Kp
e.g., assume that Ld(s0) = 180, then need Kc and Kp to
be same sign so that K > 0
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
11/24
Fall 2007 16.31 210
Root Locus Examples
Figure 3: Basic Figure 4: Two poles
Figure 5: Add zero Figure 6: Three poles
Figure 7: Add zero
Examples similar to control design process: add compensator dynamics to
modify root locus and then chose gain to place CLP at desired location on
the locus.
September 2, 2007
Im
Re
Im
Re
Im
Re0
Im
Re
Im
Re0
Figure by MIT OpenCourseWare.
Figure by MIT OpenCourseWare.Figure by MIT OpenCourseWare.
Figure by MIT OpenCourseWare.Figure by MIT OpenCourseWare.
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
12/24
Fall 2007 16.31 211
Figure 8: Complex case
Figure 9: Very complex case
September 2, 2007
Im
Re0 0
Asymptotes
Real line
Keys to a good sketch
0
Figure by MIT OpenCourseWare.
Figure by MIT OpenCourseWare.
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
13/24
Fall 2007 16.31 212
Performance Issues
Interested in knowing how well our closed loop system can track
various inputs Steps, ramps, parabolas
Both transient and steady state
For perfect steady state tracking want error to approach zero
limt
e(t) = 0
Can determine this using the closed-loop transfer function and
the final value theorem
limt
e(t) = lims0
se(s)
So for a step input r(t) = 1(t) r(s) = 1/s
y(s)
r(s) =G
c(s)G
p(s)
1 + Gc(s)Gp(s)
y(s)
e(s) = Gc(s)Gp(s)
e(s)
r(s)=
1
1 + Gc(s)Gp(s)
so in the case of a step input, we have
e(s) =r(s)
1 + Gc(s)Gp(s)
1/s
1 + Gc(s)Gp(s)
lims0
se(s) = l i ms0
s1/s
1 + Gc(s)Gp(s)=
1
1 + Gc(0)Gp(0) e()
So the steady state error to a step is given by
ess =1
1 + Gc(0)Gp(0)
to make the error small, we need to make one (or both) ofGc(0), Gp(0) very large
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
14/24
Fall 2007 16.31 213
Clearly ifGp(s) has a free integrator (or two) so that it resembles1
sn(s+)m with n 1, then
lims0 Gp(s) ess 0
Can continue this discussion by looking at various input types (step,
ramp, parabola) with systems that have a different number of free
integrators (type), but the summary is this:
step ramp parabola
type 0 11 + Kp
type 1 01
Kv
type 2 0 01
Ka
where
Kp = lims0
Gc(s)Gp(s) Position Error Constant
Kv = lims0
sGc(s)Gp(s) Velocity Error Constant
Ka = lims0
s2Gc(s)Gp(s) Acceleration Error Constant
which are a good simple way to keep track of how well your system
us doing in terms of steady state tracking performance.
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
15/24
Fall 2007 16.31 214
Dynamic Compensation
For a given plant, can draw a root locus versus K. But if desired
pole locations are not on that locus, then need to modify it usingdynamic compensation.
Basic root locus plots give us an indication of the effect of
adding compensator dynamics. But need to know what to add
to place the poles where we want them.
New questions:
What type of compensation is required?
How do we determine where to put the additional dynamics?
There are three classic types of controllers u = Gc(s)e
1. Proportional feedback: Gc Kg a gain, so that Nc =
Dc = 1
Same case we have been looking at.
2. Integral feedback:
u(t) = Ki
t0
e()d Gc(s) =Kis
Used to reduce/eliminate steady-state error
If e() is approximately constant, then u(t) will grow to bevery large and thus hopefully correct the error.
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
16/24
Fall 2007 16.31 215
Consider error response of Gp(s) = 1/(s + a)(s + b)
(a > 0, b > 0) to a step,
r(t) = 1(t) r(s) = 1/swhere
e
r=
1
1 + GcGp e(s) =
r(s)
(1 + GcGp)
To analyze error, use FVT limt e(t) = lims0 se(s)
so that with proportional control,
limt
ess = lims0
ss
11 + KgGp(s)
=1
1 +Kgab
so can make ess small, but only with a very large Kg
With integral control, lims0 Gc(s) = , so ess 0
Integral control improves the steady state, but this is at
the expense of the transient response
Typically gets worse because the system is less well damped
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
17/24
Fall 2007 16.31 216
Example #1: G(s) =1
(s + a)(s + b), add integral feedback
to improve the steady state response.
Figure 10: RL after adding integral FB
Increasing Ki to increase speed of the response pushes the
poles towards the imaginary axis more oscillatory re-
sponse.
Combine proportional and integral (PI) feedback:
Gc = K1 +K2s
=K1s + K2
s
which introduces a pole at the origin and zero at s = K2/K1
PI solves many of the problems with just integral control (I).
Figure 11: RL with proportional and integral FB
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
Im
Re
Im
Re00
Figure by MIT OpenCourseWare.
Figure by MIT OpenCourseWare.
8/2/2019 Basic Root Locus
18/24
Fall 2007 16.31 217
3. Derivative Feedback: u = Kde so that Gc(s) = Kds
Does not help with the steady state
Provides feedback on the rate of change of e(t) so that thecontrol can anticipate future errors.
Example # 2: G(s) =1
(s a)(s b), (a > 0, b > 0)
with Gc(s) = Kds
Figure 12: RL with derivative FB
Derivative feedback is very useful for pulling the root locus
into the LHP - increases damping and more stable response.
Typically used in combination with proportional feedback to
form proportional-derivative feedback PD
Gc(s) = K1 + K2s
which moves the zero from the origin.
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
0
Im
Re
Figure by MIT OpenCourseWare.
8/2/2019 Basic Root Locus
19/24
Fall 2007 16.31 218
Controller Synthesis
First determine where the poles should be located
Will proportional feedback do the job?
What types of dynamics need to be added? Use main building
block
GB(s) = Kc(s + z)
(s + p)
Can look like various controllers, depending how Kc, p, and zpicked
If pick z > p, with p small, then
GB(s) Kc(s + z)
s
which is essentially a PI compensator, called a lag.
If pick p z, then at low frequency, the impact of p/(s + p)
is small, so
GB(s) Kc(s + z)
which is essentially PD compensator, called a lead.
Various algorithms exist to design the components of the lead andlag compensators
September 2, 2007
Im
Re0
Im
Re0
Figure by MIT OpenCourseWare.
Figure by MIT OpenCourseWare.
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
20/24
Fall 2007 16.31 219
Classic Root Locus Approach
Consider a simple system Gp = s2 for which we want the closed
loop poles to be at 1 2i Will proportional control be sufficient? no
So use compensator with 1 pole.
Gc = K(s + z)
(s + p)
So there are 3 CLP.
To determine how to pick the p, z, and k, we must use the
phase and magnitude conditions of the RL
To proceed, pick evaluate the phase of the loop
Ld(s) =s + z
(s + p)s2
at s0 = 1 + 2i. Since we want s0 to be on the new locus, we
know that Ld(s0) = 180 360l
Figure 13: Phase condition
As shown in the figure, there are four terms in Ld(s0) the
three poles at the origin contribute 117 each
Given the assumed location of the compensator pole/zero, can
work out their contribution as well
September 2, 2007
(-1,2i)
0
- p - z
Im
Re0
Figure by MIT OpenCourseWare.
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
21/24
Fall 2007 16.31 220
Geometry for the real zero: tan = 2z1 and for the real pole:
tan = 2p1
Since we expect the zero to be closer to the origin, put it firston the negative real line, and then assume that p = z, where
typically 5 10 is a good ratio.
So the phase condition gives:
2(117) + = 180
arctan2
z 1 arctan
2
10z 1 = 53
but recall that
tan(A B) =tan(A) tan(B)
1 + tan(A)tan(B)
so( 2z1) (
210z1)
1 + ( 2z1)(2
10z1)= 1.33
which give z = 2.2253, p = 22.2531, kc = 45.5062
% RL design using angles
clear all
target = -1+2*j;
phi_origin= 180-atan(imag(target)/-real(target))*180/pi;
syms z M; ratio=10;
phi_z=(imag(target)/(z+real(target)));
phi_p=(imag(target)/(ratio*z+real(target)));
M=(phi_z-phi_p)/(1+phi_z*phi_p);
test=solve(M-tan(pi/180*(2*phi_origin-180)));
Z=eval(test(1));
P=ratio*Z;
K=1/abs((target+Z)/(target^2*(target+P)));
[Z P K]
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
22/24
Fall 2007 16.31 221
Pole Placement
Another option for simple systems is called pole placement.
Know that the desired characteristic equation is
d(s) = (s2 + 2s + 5)(s + ) = 0
Actual closed loop poles solve:
c(s) = 1 + GpGc = 0
s2(s + p) + K(s + z) = 0
s3 + s2p + Ks + Kz = 0
Clearly need to pull the poles at the origin into the LHP, so need
a lead compensator Rule of thumb: take p = 5 10z. Compare the characteristic equations:
c(s) = s2 + 10zs2 + Ks + Kz = 0
d(s) = (s2 + 2s + 5)(s + )
= s3 + s2( + 2) + s(2 + 5) + 5 = 0
givess2 + 2=10z
s 2 + 5=K
s0 5=zK
solve for , z, K
K =25
5 2z
; =5z
5 2z z = 2.23, = 20.25, K = 45.5
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
23/24
Fall 2007 16.31 222
25 20 15 10 5 020
15
10
5
0
5
10
15
20
Root Locus
Real Axis
ImaginaryAxis
Figure 14: CLP with pole placement
September 2, 2007
Cite as: Jonathan How, course materials for 16.31 Feedback Control Systems, Fall 2007. MIT OpenCourseWare(http://ocw.mit.edu), Massachusetts Institute of Technology. Downloaded on [DD Month YYYY].
8/2/2019 Basic Root Locus
24/24
Fall 2007 16.31 723
Observations
In a root locus design it is easy to see the pole locations, and thus
we can relatively easily identify the dominant time response Caveat is that near pole/zero cancelation complicates the pro-
cess of determining which set of poles will dominate
Some of the performance specifications are given in the frequency
response, and it is difficult to determine those (and the correspond-
ing system error gains) in the RL plot
Easy for low-order systems, very difficult / time consuming forhigher order ones
As we will see, extremely difficult to identify the robustness margins
using a RL plot
A good approach for a fast/rough initial design
Matlab tool called sisotool provides a great interface for design-
ing and analyzing controllers