feedback control systems mit (complete)
TRANSCRIPT
-
7/27/2019 Feedback Control Systems Mit (Complete)
1/608
Syllabus
The 'Information' section of the course syllabus contains a list of questions each student was asked to answer about
their background. The information provided would have been used to create a class e-mail list and to adjust the paceof the course.
Instructor
z Professor Jonathan P. How
Feedback Control
z Introduction to the state-space approach of analysis and control synthesis.
z State-space representation of dynamic systems; controllability and observability.
z State-space realizations of transfer functions and canonical forms.
z Design of state-space controllers, including pole-placement and optimal control.
z
Introduction to the Kalman filter.z Limitations on performance of control systems.
z Introduction to the robustness of multivariable systems.
Homework
z Weekly problem sets will be handed out on Fridays (due the following week).
There will be approximately two labs that will be graded as part of the homework.
z Midterm: Between Lecture 27 and 28, in class.
z
Final Exam: After Lecture 37.z Course Grades: Homework 30%, Midterm 20%, Final 50%.
Textbooks
Required:
z Pierre Belanger. Control Engineering: A Modern Approach. Oxford University, 1995.
NUMBER OF
LECTURESTOPICS
5Review of Classical Synthesis
Techniques
8 State Space - Linear Systems
7 Full State Feedback
3 State Estimation
4 Output Feedback
7 Robustness
Page 1 of 3MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...
8/12/2005http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...
-
7/27/2019 Feedback Control Systems Mit (Complete)
2/608
Goal
To teach the fundamentals of control design and analysis using state-space methods. This includes both thepractical and theoretical aspects of the topic. By the end of the course, you should be able to designcontrollers using state-space methods and evaluate whether these controllers are robust.
z Review classical control design techniques.z Explore new control design techniques using state-space tools.
z Investigate analysis of robustness.
Prerequisites
z Basic understanding of how to develop system equations of motion.
z Classical analysis and synthesis techniques (root locus, Bode). There will be a brief review during the
first 2 weeks.
z Course assumes a working knowledge of MATLAB.
Policies
z You are encouraged to discuss the homework and problem sets. However, your submitted work
must be your own.
z Homework will be handed out Fridays, due back the following Friday at 5PM. Late homework will not
be accepted unless prior approval is obtained from Professor How. The grade on all late homework willbe reduced 25% per day. No homework will be accepted for credit after the solutions have beenhanded out.
z There will hopefully be 2 Labs later in the semester that will be blended in with the homework. This
will be group work, depending on the class size.
z For feedback and/or questions, contact me through email for the best results.
Supplemental Textbooks
There are many others, but these are the ones on my shelf. All pretty much have the same content, but eachauthor focuses on different aspects.
Mo d e l i n g a n d C o n t r o l
z Palm. Modeling, Analysis, and Control of Dynamic Systems. Wiley.
B a s i c Co n t r o l
z Franklin and Powell. Feedback Control of Dynamics Systems. Addison-Wesley.
z Van de Vegte. Feedback Control Systems. Prentice Hall.
z Di Stefano. Feedback Control Systems. Schaums outline.
z Luenberger. Introduction to Dynamic Systems. Wiley.
Page 2 of 3MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...
8/12/2005http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...
-
7/27/2019 Feedback Control Systems Mit (Complete)
3/608
z Ogata. Modern Control Engineering. Prentice Hall.
L i n e a r Sy s t e m s
z Chen. Linear Systems Theory and Design. Prentice Hall.
z Aplevich. The Essentials of Linear State-Space Systems. Wiley.
S t a t e S p a c e Co n t r o l
z Brogan. Modern Control Theory. Quantum Books.
z Burl. Linear Optimal Control. Prentice Hall.
z Kwakernaak and Sivan. Linear Optimal Control Systems. Wiley Interscience.
Page 3 of 3MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...
8/12/2005http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...
-
7/27/2019 Feedback Control Systems Mit (Complete)
4/608
This course calendar incorporates the lecture schedule and assignment schedule for the semester. Some lecture topicswere taught over several class sessions.
LEC # TOPICS HOMEWORK OUT HOMEWORK IN
1 Introduction HW1
2 Introduction
3 Root Locus Analysis
4 Root Locus Synthesis
5 Bode-Very Brief Discussion HW2 HW1
6 State Space (SS) Introduction
7 Stace Space (SS) to Transfer Function (TF) HW3 HW2
8 Transfer Function (TF) to State Space (SS)
9 Time Domain
10 Observability HW4 HW3
11 Controllability
12 Pole/Zero (P/Z) Cancellation
13 Observability, Residues HW5 HW4
14 Pole Placement
15 Pole Placement HW6 HW5
16 Performance
17 Performance
18 Pole Locations HW7 HW6
19 Pole Locations
20 Pole Locations
21 State Estimators HW8 HW7
22 State Estimators
23 State Estimators
24 Dynamic Output Feedback HW8
25 Dynamic Output Feedback
26 Dynamic Output Feedback
27 Sensitivity of LQG HW9
Quiz
28 Sensitivity of LQG HW9
29 Bounded Gain Theorem HW10
30 Error Models
31 MIMO Systems
Page 1 of 2MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...
8/12/2005http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...
-
7/27/2019 Feedback Control Systems Mit (Complete)
5/608
32 MIMO Systems HW10
33 MIMO Systems
34 LQR Optimal
35 LQR Optimal
36 Reference Cmds II
37 LDOC-Review
Final Exam
Page 2 of 2MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...
8/12/2005http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...
-
7/27/2019 Feedback Control Systems Mit (Complete)
6/608
Lecture #1
16.31 Feedback Control
Copyright2001byJonathanHow.
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
7/608
Fall 2001 16.31 11
Introduction
K(s) G(s) -6
?
u(t)
y(t)e(t)r(t)
d(t)
Goal: Design a controller K(s) so that the systemhas some desired
characteristics. Typical objectives:
Stabilize the system (Stabilization)
Regulate the system about some design point (Regulation)
Follow a given class of command signals (Tracking)
Reduce the response to disturbances. (Disturbance Rejection)
Typically think of closed-loop control so we would analyze theclosed-loop dynamics.
Open-loop control also possible (called feedforward) more
prone to modeling errors since inputs not changed as a result of
measured error.
Note that a typical control system includes the sensors, actuators,
and the control law.
The sensors and actuators need not always be physical devices
(e.g., economic systems).
A good selection of the sensor and actuator can greatly simplify
the control design process.
Course concentrates on the design of the control law given the
rest of the system (although we will need to model the system).
-
7/27/2019 Feedback Control Systems Mit (Complete)
8/608
Fall 2001 16.31 12
Why Control?
Easy question to answer for aerospace because many vehicles (space-
craft, aircraft, rockets) and aerospace processes (propulsion) need to
be controlled just to function
Example: the F-117 does not even fly without computer control,
and the X-29 is unstable
OPERATION IRAQI FREEDOM -- An F-117 from the 8th Expeditionary Fighter Squadron out of Holloman Air Force
Base, N.M., flies over the Persian Gulf on April 14, 2003. The 8th EFS has begun returning to Hollomann A.F.B. after having been deployed to the Middle East in support of Operation Iraqi Freedom. (U.S. Air Force photo by Staff Sgt. Derrick C. Goode). http://www.af.mil/photos.html.
-
7/27/2019 Feedback Control Systems Mit (Complete)
9/608
Fall 2001 16.31 13
Feedback Control Approach
Establish control objectives
Qualitative dont use too much fuel
Quantitative settling time of step response
-
7/27/2019 Feedback Control Systems Mit (Complete)
10/608
Fall 2001 16.31 14
Example: Blimp Control
Control objective
Stabilization
Red blimp tracks the motion of the green blimp
Sensors
GPS for positioning
Compass for heading
Gyros/GPS for roll attitude
Actuators electric motors (propellers) are very nonlinear.
Dynamics
rigid body with strong apparent mass effect. Roll modes.
Modeling
Analytic models with parameter identification to determine mass.
Disturbances wind
-
7/27/2019 Feedback Control Systems Mit (Complete)
11/608
Fall 2001 16.31 15
State-Space Approach
Basic questions that we will address about the state-space approach:
What are state-space models?
Why should we use them?
How are they related to the transfer functions used in classical
control design?
How do we develop a state-space model?
How do we design a controller using a state-space model?
Bottom line:
1. What: representation of the dynamics of an nth-order system
using n first-order differential equations:
mq+ cq+ kq = u
qq
= 0 1k/m c/m q
q
+ 01/m
u x = Ax + Bu
2. Why:
State variable form convenient way to work with complex dy-
namics. Matrix format easy to use on computers.
Transfer functions only deal with input/output behavior, butstate-space form provides easy access to the internal fea-
tures/response of the system.
Allows us to explore new analysis and synthesis tools.
Great for multiple-input multiple-output systems (MIMO),
which are very hard to work with using transfer functions.
-
7/27/2019 Feedback Control Systems Mit (Complete)
12/608
Fall 2001 16.31 16
3. How: There are a variety of ways to develop these state-space
models. We will explore this process in detail.
Linear systems theory
4. Control design: Split into 3 main parts
Full-state feedbackficticious since requires more information
than typically (ever?) available
Observer/estimator designprocess of estimating the sys-
tem state from the measurements that are available. Dynamic output feedback combines these two parts with
provable guarantees on stability (and performance).
Fortunately there are very simple numerical tools available
to perform each of these steps
Removes much of the art and/or magic required in classi-
cal control design design process more systematic.
Word of caution: Linear systems theory involves extensive use
of linear algebra.
Will not focus on the theorems/proofs in class details will be
handed out as necessary, but these are in the textbooks.
Will focus on using the linear algebra to understand the behav-
ior of the system dynamics so that we can modify them using
control. Linear algebra in action
Even so, this will require more algebra that most math courses
that you have taken . . . .
-
7/27/2019 Feedback Control Systems Mit (Complete)
13/608
Fall 2001 16.31 17
My reasons for the review of classical design:
State-space techniques are just another to design a controller
But it is essential that you understand the basics of the control
design process
Otherwise these are just a bunch of numerical tools
To truly understand the output of the state-space control design
process, I think it is important that you be able to analyze it
from a classical perspective.
Try to answer why did it do that? Not always possible, but always a good goal.
Feedback: muddy cards and office hours.
Help me to know whether my assumptions about your back-
grounds is correct and whether there are any questions about
the material.
Matlab will be required extensively. If you have not used it before,
then start practicing.
-
7/27/2019 Feedback Control Systems Mit (Complete)
14/608
Fall 2001 16.31 18
System Modeling
Investigate the model of a simple system to explore the basics of
system dynamics. Provide insight on the connection between the system response
and the pole locations.
Consider the simple mechanical system (2MSS) derive the system
model
1. Start with a free body diagram2. Develop the 2 equations of motion
m1x1 = k(x2 x1)m2x2 = k(x1 x2) + F
3. How determine the relationships between x1, x2 and F?
Numerical integration - good for simulation, but not analysis Use Laplace transform to get transfer functions
Fast/easy/lots of tables Provides lots of information (poles and zeros)
-
7/27/2019 Feedback Control Systems Mit (Complete)
15/608
Fall 2001 16.31 19
Laplace transform
L{f(t)}
0f(t)estdt
Key point: IfL{x(t)} = X(s), then L{x(t)} = sX(s) assuming
that the initial conditions are zero.
Apply to the model
L{m1x1 k(x2 x1)} = (m1s2 + k)X1(s) kX2(s) = 0
L{m2x2 k(x1 x2) F} = (m2s2 + k)X2(s) kX1(s) F(s) =
m1s
2 + k kk m2s2 + k
X1(s)
X2(s)
=
0
F(s)
Perform some algebra to get
X2(s)
F(s)=
m1s2 + k
m1m2s2(s2 + k(1/m1 + 1/m2)) G2(s)
G2(s) is the transfer function between the input F and the
system response x2
-
7/27/2019 Feedback Control Systems Mit (Complete)
16/608
Fall 2001 16.31 110
Given that F G2(s) x2. IfF(t) known, how find x2(t)?1. Find G2(s)
2. Let F(s) = L{F(t)}
3. Set Xs(s) = G2(s) F(s)
4. Compute x2(t) = L1{X2(s)}
Step 4 involves an inverse Laplace transform, which requires an ugly
contour integral that is hardly ever used.
x2(t) =1
2i
c+ici
X2(s)estds
where c is a value selected to be to the right of all singularities of
F(s) in the s-plane.
Partial fraction expansion and inversion using tables is mucheasier for problems that we will be dealing with.
Example with F(t) = 1(t) F(s) = 1/s
X2(s) =m1s
2 + k
m1m2s3(s2 + k(1/m1 + 1/m2))
= c1s
+ c2s2
+ c3s3
+ c4s + c5s2 + k(1/m1 + 1/m2)
Solve for the coefficients ci
Then inverse transform each term to get x2(t).
-
7/27/2019 Feedback Control Systems Mit (Complete)
17/608
Fall 2001 16.31 111
Note that there are 2 special entries in the tables
1. 1(s+a)
eat which corresponds to a pole at s+a = 0, or s =
a
2. 2n
(s2+2ns+2n) ent sin(n
1 2 t)
Corresponds to a damped sinusoidal response
is the damping ratio
n is the natural frequency
d = n
1 2 is the damped frequency.
These results point out that there is a very strong connection be-
tween the pole locations and the time response of the system
But there are other factors that come into play, as we shall see.
-
7/27/2019 Feedback Control Systems Mit (Complete)
18/608
Fall 2001 16.31 112
For a second order system, we can be more explicit and relate the
main features of the step response (time) and the pole locations
(frequency domain).
G(s) =2n
(s2 + 2ns + 2n)
with u(t) a step, so that u(s) = 1/s
Then y(s) = G(s)u(s) = 2n
s(s2+2ns+2n)which gives ( = n)
y(t) = 1 et
cos(dt) +
d sin(dt)
Several key time domain features:
Rise time tr (how long to get close to the final value?)
Settling time ts (how long for the transients to decay?)
Peak overhsoot Mp, tp (how far beyond the final value does the
system respond, and when?) Can analyze the system response to determine that:
1. tr 2.2/wh
wh = wn
1 22 +
2 42 + 441/2
or can use tr 1.8/wn
2. ts(1%) = 4.6/(
n)3. Mp = e
12 and tp = /d
Formulas relate time response to pole locations. Can easily evalute
if the closed-loop system will respond as desired.
Use to determine acceptable locations for closed-loop poles.
-
7/27/2019 Feedback Control Systems Mit (Complete)
19/608
Fall 2001 16.31 113
Examples:
Max rise time - min n
Max settling time min = n
Max overshoot min
Usually assume that the response of more complex systems (i.e.
ones that have more than 2 poles) is dominated by the lowest
frequency pole pair.
Then the response is approximately second order, but we
must check this
These give us a good idea of where we would like the closed-loop
poles to be so that we can meet the design goals.
Feedback control is all about changing the location of the system
poles from the open-loop locations to the closed-loop ones.
This course is about a new way to do these control designs
-
7/27/2019 Feedback Control Systems Mit (Complete)
20/608
Please refer to the Design Aids section of:
Franklin, Gene F., Powell, J. David and Abbas Emami-Naeini. 1994. Feedback Control
of Dynamic Systems 3rd
Ed. Addison-Wesley
-
7/27/2019 Feedback Control Systems Mit (Complete)
21/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
22/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
23/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
24/608
Slow dominant polenum=5;den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Fast dominant polenum=5.5*[1 0.91];den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
25/608
Similar example, but with second order dynamics combined with a simple real pole.
z=.15;wn=1;plist=[wn/2:1:10*wn]; nd=wn^2;dd=[1 2*z*wn wn^2];t=[0:.25:20]';sys=tf(nd,dd);[y]=step(sys,t);for p=plist;
num=nd;den=conv([1/p 1],dd);sys=tf(num,den);[ytemp]=step(sys,t); y=[y ytemp];
endplot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');ylabel('step response');xlabel('time (sec)')legend('2
nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7)))
0 5 10 15 200
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
stepre
sponse
time (sec)
2nd0.52.56.5
For values of p=2.5 and 6.5, the response is very similar to the second order system. The
response with p=0.5 is clearly no longer dominated by the second-order dynamics
-
7/27/2019 Feedback Control Systems Mit (Complete)
26/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
27/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
28/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
29/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
30/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
31/608
2 - 1
-
7/27/2019 Feedback Control Systems Mit (Complete)
32/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
33/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
34/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
35/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
36/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
37/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
38/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
39/608
EX1 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
40/608
EX1
-
7/27/2019 Feedback Control Systems Mit (Complete)
41/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
42/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
43/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
44/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
45/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
46/608
2 - 23
-
7/27/2019 Feedback Control Systems Mit (Complete)
47/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
48/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
49/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
50/608
2 - 27
-
7/27/2019 Feedback Control Systems Mit (Complete)
51/608
2 - 28
-
7/27/2019 Feedback Control Systems Mit (Complete)
52/608
2 - 29
-
7/27/2019 Feedback Control Systems Mit (Complete)
53/608
Example: G(s)=1/2^2Design Gc(s) to put the clp poles at 1 + 2jz=roots([-20 49 -10]);z=max(z),k=25/(5-2*z),alpha=5*z/(5-2*z),num=1;den=[1 0 0];knum=k*[1 z];kden=[1 10*z];rlocus(conv(num,knum),conv(den,kden)); hold;plot(-alpha+eps*j,'d');plot([-1+2*j,-1-2*j],'d');hold offr=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253k = 45.5062alpha = 20.2531These are the actual roots that I found from the locus using a gain of1 (recall that the K gain is already in the compensator)r =-20.2531-1.0000 - 2.0000i-1.0000 + 2.0000i
-20 -15 -10 -5 0 5-20
-15
-10
-5
0
5
10
15
20
Real Axis
ImagAxis
2 - 30
MATLAB is a trademark of The MathWorks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
54/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
55/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
56/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
57/608
Slow dominant polenum=5;den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Fast dominant polenum=5.5*[1 0.91];den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
58/608
Similar example, but with second order dynamics combined with a simple real pole.
z=.15;wn=1;plist=[wn/2:1:10*wn]; nd=wn^2;dd=[1 2*z*wn wn^2];t=[0:.25:20]';sys=tf(nd,dd);[y]=step(sys,t);for p=plist;
num=nd;den=conv([1/p 1],dd);sys=tf(num,den);[ytemp]=step(sys,t); y=[y ytemp];
endplot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');ylabel('step response');xlabel('time (sec)')legend('2
nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7)))
0 5 10 15 200
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
stepre
sponse
time (sec)
2nd0.52.56.5
For values of p=2.5 and 6.5, the response is very similar to the second order system. The
response with p=0.5 is clearly no longer dominated by the second-order dynamics
-
7/27/2019 Feedback Control Systems Mit (Complete)
59/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
60/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
61/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
62/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
63/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
64/608
2 - 1
-
7/27/2019 Feedback Control Systems Mit (Complete)
65/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
66/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
67/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
68/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
69/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
70/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
71/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
72/608
EX1 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
73/608
EX1
-
7/27/2019 Feedback Control Systems Mit (Complete)
74/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
75/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
76/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
77/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
78/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
79/608
2 - 23
-
7/27/2019 Feedback Control Systems Mit (Complete)
80/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
81/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
82/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
83/608
2 - 27
-
7/27/2019 Feedback Control Systems Mit (Complete)
84/608
2 - 28
-
7/27/2019 Feedback Control Systems Mit (Complete)
85/608
2 - 29
-
7/27/2019 Feedback Control Systems Mit (Complete)
86/608
Example: G(s)=1/2^2Design Gc(s) to put the clp poles at 1 + 2jz=roots([-20 49 -10]);z=max(z),k=25/(5-2*z),alpha=5*z/(5-2*z),num=1;den=[1 0 0];knum=k*[1 z];kden=[1 10*z];rlocus(conv(num,knum),conv(den,kden)); hold;plot(-alpha+eps*j,'d');plot([-1+2*j,-1-2*j],'d');hold offr=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253k = 45.5062alpha = 20.2531These are the actual roots that I found from the locus using a gain of1 (recall that the K gain is already in the compensator)r =-20.2531-1.0000 - 2.0000i-1.0000 + 2.0000i
-20 -15 -10 -5 0 5-20
-15
-10
-5
0
5
10
15
20
Real Axis
ImagAxis
2 - 30
MATLAB is a trademark of The MathWorks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
87/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
88/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
89/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
90/608
Slow dominant polenum=5;den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Fast dominant polenum=5.5*[1 0.91];den=conv([1 1],[1 5]);step(num,den,6)
Amplitude
Time (sec.)
Step Response
0 1 2 3 4 5 6
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
91/608
Similar example, but with second order dynamics combined with a simple real pole.
z=.15;wn=1;plist=[wn/2:1:10*wn]; nd=wn^2;dd=[1 2*z*wn wn^2];t=[0:.25:20]';sys=tf(nd,dd);[y]=step(sys,t);for p=plist;
num=nd;den=conv([1/p 1],dd);sys=tf(num,den);[ytemp]=step(sys,t); y=[y ytemp];
endplot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');ylabel('step response');xlabel('time (sec)')legend('2
nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7)))
0 5 10 15 200
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
1.8
stepre
sponse
time (sec)
2nd0.52.56.5
For values of p=2.5 and 6.5, the response is very similar to the second order system. The
response with p=0.5 is clearly no longer dominated by the second-order dynamics
-
7/27/2019 Feedback Control Systems Mit (Complete)
92/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
93/608
2
-
7/27/2019 Feedback Control Systems Mit (Complete)
94/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
95/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
96/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
97/608
2 - 1
-
7/27/2019 Feedback Control Systems Mit (Complete)
98/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
99/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
100/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
101/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
102/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
103/608
-
7/27/2019 Feedback Control Systems Mit (Complete)
104/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
105/608
EX1 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
106/608
EX1
-
7/27/2019 Feedback Control Systems Mit (Complete)
107/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
108/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
109/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
110/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
111/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
112/608
2 - 23
-
7/27/2019 Feedback Control Systems Mit (Complete)
113/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
114/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
115/608
2 -
-
7/27/2019 Feedback Control Systems Mit (Complete)
116/608
2 - 27
-
7/27/2019 Feedback Control Systems Mit (Complete)
117/608
2 - 28
-
7/27/2019 Feedback Control Systems Mit (Complete)
118/608
2 - 29
-
7/27/2019 Feedback Control Systems Mit (Complete)
119/608
Example: G(s)=1/2^2Design Gc(s) to put the clp poles at 1 + 2jz=roots([-20 49 -10]);z=max(z),k=25/(5-2*z),alpha=5*z/(5-2*z),num=1;den=[1 0 0];knum=k*[1 z];kden=[1 10*z];rlocus(conv(num,knum),conv(den,kden)); hold;plot(-alpha+eps*j,'d');plot([-1+2*j,-1-2*j],'d');hold offr=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253k = 45.5062alpha = 20.2531These are the actual roots that I found from the locus using a gain of1 (recall that the K gain is already in the compensator)r =-20.2531-1.0000 - 2.0000i-1.0000 + 2.0000i
-20 -15 -10 -5 0 5-20
-15
-10
-5
0
5
10
15
20
Real Axis
ImagAxis
2 - 30
MATLAB is a trademark of The MathWorks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
120/608
Topic #3
16.31 Feedback Control
Frequency response methods
Analysis
Synthesis
Performance
Stability
Copy right 2001 by Jon at h an H ow.
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
121/608
Fall 2001 16.31 31
Introduction
Root locus methods have:
Advantages:
Good indicator if transient response;
Explicity shows location of all closed-loop poles;
Trade-offs in the design are fairly clear.
Disadvantages:
Requires a transfer function model (poles and zeros);
Difficult to infer all performance metrics; Hard to determine response to steady-state (sinusoids)
Frequency response methods are a good complement to the rootlocus techniques:
Can infer performance and stability from the same plot
Can use measured data rather than a transfer function model
The design process can be independent of the system order
Time delays are handled correctly
Graphical techniques (analysis and synthesis) are quite simple.
-
7/27/2019 Feedback Control Systems Mit (Complete)
122/608
Fall 2001 16.31 32
Frequency response Function
Given a system with a transfer function G(s), we call the G(j),
[0,) the frequency response function (FRF)G(j) = |G(j)| arg G(j)
The FRF can be used to find the steady-state response of a
system to a sinusoidal input. If
e(t) G(s) y(t)
and e(t) = s in2t, |G(2j)| = 0.3, arg G(2j) = 80
, then thesteady-state output is
y(t) = 0.3 sin(2t 80)
The FRF clearly shows the magnitude (and phase) of the
response of a system to sinusoidal input
A variety of ways to display this:
1. Polar (Nyquist) plot Re vs. Im ofG(j) in complex plane.
Hard to visualize, not useful for synthesis, but gives definitive
tests for stability and is the basis of the robustness analysis.
2. Nichols Plot |G(j)| vs. arg G(j), which is very handy for
systems with lightly damped poles.3. Bode Plot Log |G(j)| and arg G(j) vs. Log frequency.
Simplest tool for visualization and synthesis
Typically plot 20log |G| which is given the symbol dB
-
7/27/2019 Feedback Control Systems Mit (Complete)
123/608
Fall 2001 16.31 33
Use logarithmic since if
log |G(s)| =
(s + 1)(s + 2)
(s + 3)(s + 4)
= log |s + 1| + log |s + 2| log |s + 3| log |s + 4|
and each of these factors can be calculated separately and then
added to get the total FRF.
Can also split the phase plot since
arg(s + 1)(s + 2)
(s + 3)(s + 4)= arg(s + 1) + arg(s + 2)
arg(s + 3) arg(s + 4)
The keypoint in the sketching of the plots is that good straightline
approximations exist and can be used to obtain a good prediction
of the system response.
-
7/27/2019 Feedback Control Systems Mit (Complete)
124/608
Fall 2001 16.31 34
Example
Draw Bode for
G(s) =s + 1
s/10 + 1
|G(j)| =|j + 1|
|j/10 + 1|
log |G(j)| = log[1 + (/1)2]1/2 log[1 + (/10)2]1/2
Approximation
log[1 + (/i)2]1/2
0 ilog[/i] i
Two straightline approximations that intersect at i
Error at i obvious, but not huge and the straightline approxima-
tions are very easy to work with.
102
101
100
101
102
100
101
102
Freq
|G|
-
7/27/2019 Feedback Control Systems Mit (Complete)
125/608
Fall 2001 16.31 35
To form the composite sketch,
Arrange representation of transfer function so that DC gain of
each element is unity (except for parts that have poles or zerosat the origin) absorb the gain into the overall plant gain.
Draw all component sketches
Start at low frequency (DC) with the component that has the
lowest frequency pole or zero (i.e. s=0)
Use this component to draw the sketch up to the frequency of
the next pole/zero. Change the slope of the sketch at this point to account for the
new dynamics: -1 for pole, +1 for zero, -2 for double poles, . . .
Scale by overall DC gain
102
101
100
101
102
103
101
100
101
102
Freq
|G|
Figure 1: G(s) = 10(s + 1)/(s + 10) which is a lead.
-
7/27/2019 Feedback Control Systems Mit (Complete)
126/608
Fall 2001 16.31 36
Since arg G(j) = arg(1 + j) arg(1 + j/10), we can construct
phase plot for complete system in a similar fashion
Know that arg(1 + j/i) = tan1(/i)
Can use straightline approximations
arg(1 + j/i)
0 /i 0.1
90 /i 10
45 /i = 1
Draw the components using breakpoints that are at i/10 and 10i
102
101
100
101
102
103
0
10
20
30
40
50
60
70
80
90
100
Freq
ArgG
Figure 2: Phase plot for (s + 1)
-
7/27/2019 Feedback Control Systems Mit (Complete)
127/608
Fall 2001 16.31 37
Then add them up starting from zero frequency and changing the
slope as
102
101
100
101
102
103
80
60
40
20
0
20
40
60
80
Freq
ArgG
Figure 3: Phase plot G(s) = 10(s + 1)/(s + 10) which is a lead.
-
7/27/2019 Feedback Control Systems Mit (Complete)
128/608
Fall 2001 16.31 38
104
103
102
101
100
101
103
102
101
100
Freq (Hz)
Magnitude
ActualLFMFHF
+1
0
2
2
+1
1
104
103
102
101
100
101
102
180
160
140
120
100
80
60
40
20
0
20
Freq (Hz)
Phase(deg)
ActualLFMFHF
Bode for G(s) =4.54s
s3 + 0.1818s2 31.1818s 4.4545.
The poles are at (-0.892, 0.886, -0.0227)
-
7/27/2019 Feedback Control Systems Mit (Complete)
129/608
Fall 2001
Non-minimum Phase Systems
Bode plots are particularly complicated when we have non-minimumphase systems
A system that has a pole/zero in the RHP is called non-minimum
phase.
The reason is clearer once you have studied the Bode Gain-
Phase relationship
Key point: We can construct two (and many more) systems
that have identical magnitude plots, but very different phase
diagrams.
Consider G1(s) =s+1s+2
and G2(s) =s1s+2
101
100
101
102
101
100
Freq
|G| MP
NMP
101
100
101
102
0
50
100
150
200
Freq
ArgG
MPNMP
Figure 4: Magnitude plots are identical, but the phase plots are dramatically different. NMP has a 180 degphase loss over this frequency range.
-
7/27/2019 Feedback Control Systems Mit (Complete)
130/608
Topic #7
16.31 Feedback Control
State-Space Systems
What are state-space models?
Why should we use them?
How are they related to the transfer functions used in classical control designand how do we develop a state-space model?
What are the basic properties of a state-space model, and how do we analyzethese?
Copyright2001byJonathanHow.
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
131/608
Fall 2001 16.31 71
Introduction
State space model: a representation of the dynamics of an Nth order
system as a first order differential equation in an N-vector, whichis called the state.
Convert the Nth order differential equation that governs the dy-
namics into N first-order differential equations
Classic example: second order mass-spring system
mp + c p + kp = F
Let x1 = p, then x2 = p = x1, and
x2 = p = (F c p kp)/m= (F cx2 kx1)/m
p
p
=
0 1k/m c/m
p
p
+
01/m
u
Let u = F and introduce the state
x =
x1
x2
=
p
p
x = Ax + Bu
If the measured output of the system is the position, then we
have that
y = p =1 0
pp
=
1 0
x1x2
= cx
-
7/27/2019 Feedback Control Systems Mit (Complete)
132/608
Fall 2001 16.31 72
The most general continuous-time linear dynamical system has form
x(t) = A(t)x(t) + B(t)u(t)
y(t) = C(t)x(t) + D(t)u(t)
where:
t R denotes time x(t) Rn is the state (vector) u(t) Rm is the input or control
y(t) Rp
is the output
A(t) Rnn is the dynamics matrix B(t) Rnm is the input matrix C(t) Rpn is the output or sensor matrix D(t)
Rpm is the feedthrough matrix
Note that the plant dynamics can be time-varying.
Also note that this is a MIMO system.
We will typically deal with the time-invariant case
Linear Time-Invariant (LTI) state dynamics
x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
so that now A,B,C,D are constant and do not depend on t.
-
7/27/2019 Feedback Control Systems Mit (Complete)
133/608
Fall 2001 16.31 73
Basic Definitions
Linearity What is a linear dynamical system? A system G is
linear with respect to its inputs and output
u(t) G(s) y(t)ifsuperposition holds:
G(1u1 + 2u2) = 1Gu1 + 2Gu2
So if y1 is the response of G to u1 (y1 = Gu1), and y2 is the
response ofG to u2 (y2 = Gu2), then the response to 1u1 + 2u2is 1y1 + 2y2
A system is said to be time-invariant if the relationship between
the input and output is independent of time. So if the response to
u(t) is y(t), then the response to u(t t0) is y(t t0)
x(t) is called the state of the system at t because:
Future output depends only on current state and future input
Future output depends on past input only through current state
State summarizes effect of past inputs on future output like
the memory of the system
Example: Rechargeable flashlight the state is the current state ofcharge of the battery. If you know that state, then you do not need
to know how that level of charge was achieved (assuming a perfect
battery) to predict the future performance of the flashlight.
-
7/27/2019 Feedback Control Systems Mit (Complete)
134/608
Fall 2001 16.31 74
Creating Linear State-Space Models
Most easily created from Nth order differential equations that de-
scribe the dynamics This was the case done before.
Only issue is which set of states to use there are many choices.
Can be developed from transfer function model as well.
Much more on this later
Problem is that we have restricted ourselves here to linear statespace models, and almost all systems are nonlinear in real-life.
Can develop linear models from nonlinear system dynamics
-
7/27/2019 Feedback Control Systems Mit (Complete)
135/608
Fall 2001 16.31 75
Linearization
Often have a nonlinear set of dynamics given by
x = f(x, u)
where x is once gain the state vector, u is the vector of inputs, and
f(, ) is a nonlinear vector function that describes the dynamics
Example: simple spring. With a mass at the end of a linear spring
(rate k) we have the dynamics
mx = kxbut with a leaf spring as is used on car suspensions, we have a
nonlinear spring the more it deflects, the stiffer it gets. Good
model now is
mx = (k1x + k2x3)
which is a cubic spring.
Restoring force depends on the deflection x in a nonlinear way.
0 2 4 6 8 10 122
1
0
1
2
X
Time
Nonlinear
Linear
0 2 4 6 8 10 123
2
1
0
1
2
3
V
Time
Nonlinear
Linear
Figure 1: Response to linear k and nonlinear (k1 = 0, k2 = k) springs (code at the end)
-
7/27/2019 Feedback Control Systems Mit (Complete)
136/608
Fall 2001 16.31 76
Typically assume that the system is operating about some nominal
state solution x0(t) (possibly requires a nominal input u0(t))
Then write the actual state as x(t) = x0(t) + x(t)and the actual inputs as u(t) = u0(t) + u(t)
The is included to denote the fact that we expect the varia-
tions about the nominal to be small
Can then develop the linearized equations by using the Taylor
series expansion off(, ) about x0
(t) and u0
(t).
Recall the vector equation x = f(x, u), each equation of which
xi = fi(x, u)
can be expanded as
d
dt(x0
i + xi) = fi(x0
+ x, u0
+ u)
fi(x0, u0) +fix
0
x +fiu
0
u
wherefix
=
fix1
fixn
and |0 means that we should evaluate the function at the nominal
values of x0
and u0
.
The meaning of small deviations now clear the variations in x
and u must be small enough that we can ignore the higher order
terms in the Taylor expansion of f(x, u).
-
7/27/2019 Feedback Control Systems Mit (Complete)
137/608
Fall 2001 16.31 77
Since ddtx0i = fi(x
0, u0), we thus have that
d
dt(xi) fix
0 x +
fiu
0 u
Combining for all n state equations, gives (note that we also set
=) that
ddtx =
f1x
0
f2
x
0
...
fnx
0
x +
f1u
0
f2
u
0
...
fnu
0
u
= A(t)x + B(t)u
where
A(t)
f1x1
f1x2
f1xn
f2x1
f2x2
f2xn
...fnx1
fnx2
fnxn
0
and
B(t)
f1u1f1u2 f1um
f2u1
f2u2
f2um
...fnu1
fnu2
fnum
0
-
7/27/2019 Feedback Control Systems Mit (Complete)
138/608
Fall 2001 16.31 78
Similarly, if the nonlinear measurement equation is y = g(x, u), can
show that, if y(t) = y0 + y, then
y =
g1x
0
g2x
0
...
gp
x
0
x +
g1u
0
g2u
0
...
gp
u
0
u
= C(t)x + D(t)u
Typically think of these nominal conditions x0, u0 as set points
or operating points for the nonlinear system. The equations
d
dt
x = A(t)x + B(t)u
y = C(t)x + D(t)u
then give us a linearized model of the system dynamic behavior
about these operating/set points.
Note that if x0, u0 are constants, then the partial fractions in the
expressions for AD are all constant LTI linearized model.
One particularly important set of operating points are the equilib-rium points of the system. Defined as the states & control input
combinations for which
x = f(x0, u0) 0provides n algebraic equations to find the equilibrium points.
-
7/27/2019 Feedback Control Systems Mit (Complete)
139/608
Fall 2001 16.31 79
Example
Consider the nonlinear spring with (set m = 1)
y = k1y + k2y3
gives us the nonlinear model (x1 = y and x2 = y)
d
dt
y
y
=
y
k1y + k2y3
x = f(x)
Find the equilibrium points and then make a state space model
For the equilibrium points, we must solve
f(x) =
y
k1y + k2y3
= 0
which givesy0 = 0 and k1y
0 + k2(y0)3 = 0
Second condition corresponds to y0 = 0 or y0 = rk1/k2,
which is only real if k1 and k2 are opposite signs.
For the state space model,
A =
f1x1
f1x2
f2x1
f2x2
0
=
0 1
k1 + 3k2(y)2 0
0
=
0 1
k1 + 3k2(y0)2 0
and the linearized model is x = Ax
-
7/27/2019 Feedback Control Systems Mit (Complete)
140/608
Fall 2001 16.31 710
For the equilibrium point y = 0, y = 0
A0 =
0 1
k1 0
which are the standard dynamics of a system with just a linear
spring of stiffness k1
Stable motion about y = 0 ifk1 < 0
Assume that k1 = 1, k2 =1/2, then we should get an equilibrium
point at y = 0, y = 2, and since k1 + k2(y0)2 = 0
A1 =
0 1
2k1 0
=
0 1
2 0
are the dynamics of a stable oscillator about the equilibrium point
Will explore this in detail later
0 5 10 15 20 25 30 351.3
1.35
1.4
1.45
1.5
y
Time
0 5 10 15 20 25 30 350.1
0.05
0
0.05
0.1
dy/dt
Time
1.34 1.36 1.38 1.4 1.42 1.44 1.46 1.48 1.50.1
0.08
0.06
0.04
0.02
0
0.02
0.04
0.06
0.08
0.1
y
dy/dt
Figure 2: Nonlinear response (k1 = 1, k2 = .5). The figure on the right shows the oscillation about theequilibrium point.
-
7/27/2019 Feedback Control Systems Mit (Complete)
141/608
Fall 2001 16.31 711
Linearized Nonlinear Dynamics
Usually in practice we drop the as they are rather cumbersome,
and (abusing notation) we write the state equations as:
x(t) = A(t)x(t) + B(t)u(t)
y(t) = C(t)x(t) + D(t)u(t)
which is of the same form as the previous linear models
-
7/27/2019 Feedback Control Systems Mit (Complete)
142/608
Fall 2001 16.31 712
Example: Aircraft Dynamics
Assumptions:
1. Earth is an inertial reference frame2. A/C is a rigid body3. Body frame B fixed to the aircraft (~i,~j, ~k)
The basic dynamics are:
~F = m~vcI
and ~T = ~HI
1m
~F = ~vcB
+ BI~ ~vc Transport Thm.
~T =
~H
B
+ BI~ ~H
Instantaneous mapping of~vc and BI~ into the body frame is given
byBI~ = P~i + Q~j + R~k ~vc = U~i + V~j + W~k
BIB =
P
Q
R
(vc)B =
U
V
W
-
7/27/2019 Feedback Control Systems Mit (Complete)
143/608
Fall 2001 16.31 713
The overall equations of motion are then:
1
m~F =
~vc
B
+
BI
~ ~vc
1m
FxFyFz
=
U
V
W
+
0 R QR 0 P
Q P 0
U
V
W
=
U + QWRVV + RU P WW + P VQU
These are clearly nonlinear need to linearize about the equilibrium
states.
To find suitable equilibrium conditions, must solve
1
m
FxFy
Fz
+QWRV+RU P W
+P VQU
= 0
Assume steady state flight conditions with P = Q = R = 0
-
7/27/2019 Feedback Control Systems Mit (Complete)
144/608
Fall 2001 16.31 714
Define the trim angular rates, velocities, and Forces
BIoB =
P
QR
(vc)
oB =
Uo
00
F
oB =
FoxFoyFoz
that are associated with the flight condition (they define the type
of equilibrium motion that we analyze about).
Note:
W0 = 0 since we are using the stability axes, and
V0 = 0 because we are assuming symmetric flight
Can now linearize the equations about this flight mode. To proceed,
defi
neVelocities U0, U = U0 + u U = u
W0 = 0, W = w W = wV0 = 0, V = v V = v
Angular Rates P0 = 0, P = p P = pQ0 = 0, Q = q
Q = q
R0 = 0, R = r R = r
Angles 0, = 0 + = 0 = 0, = = 0 = 0, = =
-
7/27/2019 Feedback Control Systems Mit (Complete)
145/608
Fall 2001 16.31 715
Linearization for symmetric flight
U = U0 + u, V0 = W0 = 0, P0 = Q0 = R0 = 0.
Note that the forces and moments are also perturbed.
1
m
F0x + Fx
= U + QW RV u + qw rv u
1
m
F0y + Fy
= V + RU P W v + r(U0 + u)pw v + rU0
1
m
F0z + Fz
= W + P VQU w +pv q(U0 + u)
w
qU0
1m
FxFyFz
=
u
v + rU0w qU0
Which gives the linearized dynamics for the aircraft motion about
the steady-state flight condition.
Need to analyze the perturbations to the forces and moments to
fully understand the linearized dynamics take 16.61
Can do same thing for the rotational dynamics.
-
7/27/2019 Feedback Control Systems Mit (Complete)
146/608
Fall 2001 16.31 716
% save this entire code as plant.m
%function [xdot] = plant(t,x)
global nxdot(1) = x(2);
xdot(2) = -3*(x(1))^n;
xdot = xdot;
return
% the use this part of the code in Matlab
% to call_plant.mglobal n
n=3; %nonlinearx0 = [-1 2]; % initial condition
[T,x]=ode23(plant, [0 12], x0); %simulate NL equations for 12 secn=1; % linear
[T1,x1]=ode23(plant, [0 12], x0);
subplot(211)
plot(T,x(:,1),T1,x1(:,1),--);
legend(Nonlinear,Linear)
ylabel(X)xlabel(Time)
subplot(212)
plot(T,x(:,2),T1,x1(:,2),--);
legend(Nonlinear,Linear)ylabel(V)xlabel(Time)
MATLAB is a trademark of The MathWorks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
147/608
Topic #8
16.31 Feedback Control
State-Space Systems
What are state-space models?
Why should we use them?
How are they related to the transfer functions used in
classical control design and how do we develop a state-
space model?
What are the basic properties of a state-space model, and how do
we analyze these?
Copyright 2001 by Jonathan How.
-
7/27/2019 Feedback Control Systems Mit (Complete)
148/608
Fall 2001 16.31 81
TFs to State-Space Models
The goal is to develop a state-space model given a transfer function
for a system G(s).
There are many, many ways to do this.
But there are three primary cases to consider:
1. Simple numerator
y
u= G(s) =
1
s3 + a1s2 + a2s + a3
2. Numerator order less than denominator order
y
u = G(s) =
b1s2 + b2s + b3
s3 + a1s2 + a2s + a3 =
N(s)
D(s)
3. Numerator equal to denominator order
y
u= G(s) =
b0s3 + b1s
2 + b2s + b3s3 + a1s2 + a2s + a3
These 3 cover all cases of interest
-
7/27/2019 Feedback Control Systems Mit (Complete)
149/608
Fall 2001 16.31 82
Consider case 1 (specific example of third order, but the extension
to nth follows easily)
yu
= G(s) = 1s3 + a1s2 + a2s + a3
can be rewritten as the differential equation
y(3) + a1y + a2y + a3y = u
choose the output y and its derivatives as the state vector
x = yyy
then the state equations are
x =
y(3)
y
y
=
a1 a2 a3
1 0 0
0 1 0
y
y
y
+
1
0
0
u
y =
0 0 1y
y
y
+ [0]u
This is typically called the controller form for reasons that willbecome obvious later on.
There are four classic (called canonical) forms oberver, con-
troller, controllability, and observability. They are all useful in
their own way.
-
7/27/2019 Feedback Control Systems Mit (Complete)
150/608
Fall 2001 16.31 83
Consider case 2
y
u= G(s) =
b1s2 + b2s + b3
s3 + a1s2 + a2s + a3=N(s)
D(s)
Lety
u=y
vv
uwhere y/v = N(s) and v/u = 1/D(s)
Then the representation ofv/u = 1/D(s) is the same as case 1
v(3)
+ a1v + a2v + a3v = uuse the state vector
x =
v
v
v
to get
x = A2x + B2u
where
A2 =
a1 a2 a3
1 0 0
0 1 0
and B2 =
1
0
0
Then consider y/v = N(s), which implies that
y = b1v + b2v + b3v
=b1 b2 b3
vvv
= C2x + [0]u
-
7/27/2019 Feedback Control Systems Mit (Complete)
151/608
Fall 2001 16.31 84
Consider case 3 with
y
u= G(s) =
b0s3 + b1s
2 + b2s + b3
s3 + a1s2 + a2s + a3
=1s
2 + 2s + 3s3 + a1s2 + a2s + a3
+ D
= G1(s) + D
whereD( s3 +a1s
2 +a2s +a3 )
+( +1s2 +2s +3 )
= b0s3 +b1s
2 +b2s +b3
so that, given the bi, we can easily find the i
D = b01 = b1 Da1
...
Given the i, can find G1(s)
Can make a state-space model for G1(s) as described in case 2
Then we just add the feed-through term Du to the output equa-tion from the model for G1(s)
Will see that there is a lot of freedom in making a state-space model
because we are free to pick the x as we want
-
7/27/2019 Feedback Control Systems Mit (Complete)
152/608
Fall 2001 16.31 85
Modal Form
One particular useful canonical form is called the Modal Form
It is a diagonal representation of the state-space model.
Assume for now that the transfer function has distinct real poles pi(but this easily extends to the case with complex poles)
G(s) =N(s)
D(s)=
N(s)
(sp1)(sp2) (spn)
=r1
sp1+
r2
sp2+ +
rn
spn Now define a collection of first order systems, each with state xi
X1U(s)
=r1
sp1 x1 = p1x1 + r1u
X2U(s)
=r2
sp2 x2 = p2x2 + r2u
...XnU(s)
= rn
spn xn = pnxn + rnu
Which can be written as
x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
with
A =
p1
. . .
pn
B =
r1...
rn
C=
1...
1
T
Good representation to use for numerical robustness reasons.
-
7/27/2019 Feedback Control Systems Mit (Complete)
153/608
Fall 2001 16.31 86
State-Space Models to TFs
Given the Linear Time-Invariant (LTI) state dynamics
x(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t)
what is the corresponding transfer function?
Start by taking the Laplace Transform of these equations
L{x(t) = Ax(t) + Bu(t)}
sX(s) x(0) = AX(s) + BU(s)
L{y(t) = Cx(t) + Du(t)}
Y(s) = CX(s) + DU(s)
which gives
(sI A)X(s) = BU(s) + x(0
) X(s) = (sI A)1BU(s) + (sI A)1x(0)
and
Y(s) =C(sIA)1B + D
U(s) + C(sIA)1x(0)
By definition G(s) = C(sI A)1B + D is called theTransfer Function of the system.
And C(sI A)1x(0) is the initial condition response. It is partof the response, but not part of the transfer function.
-
7/27/2019 Feedback Control Systems Mit (Complete)
154/608
Fall 2001 16.31 87
State-Space Transformations
State space representations are not unique because we have a lot of
freedom in choosing the state vector.
Selection of the state is quite arbitrary, and not that important.
In fact, given one model, we can transformit to another model thatis equivalent in terms of its input-output properties.
To see this, define Model 1 ofG(s) as
x(t) = Ax(t) + Bu(t)y(t) = Cx(t) + Du(t)
Now introduce the new state vector z related to the first state x
through the transformation x = Tz
T is an invertible (similarity) transform matrix
z= T
1
x = T
1
(Ax + Bu)= T1(ATz+ Bu)
= (T1AT)z+ T1Bu = Az+ Bu
and
y = Cx + Du = CTz+ Du = Cz+ Du
So the new model is
z = Az+ Bu
y = Cz+ Du
Are these going to give the same transfer function? They must if
these really are equivalent models.
-
7/27/2019 Feedback Control Systems Mit (Complete)
155/608
Fall 2001 16.31 88
Consider the two transfer functions:
G1(s) = C(sIA)1B + D
G2(s) = C(sI A)1B + D
Does G1(s) G2(s) ?
G1(s) = C(sI A)1B + D
= C(TT1)(sIA)1(TT1)B + D
= (CT)T1(sIA)1T
(T1B) + D
= (C)T1(sIA)T
1(B) + D
= C(sI A)1B + D = G2(s)
So the transfer function is not changed by putting the state-space
model through a similarity transformation.
Note that in the transfer function
G(s) =
b1s2 + b2s + b3
s3 + a1s2 + a2s + a3
we have 6 parameters to choose
But in the related state-space model, we have A 3 3, B 3 1,C 1 3 for a total of 15 parameters.
Is there a contradiction here because we have more degrees of free-dom in the state-space model?
No. In choosing a representation of the model, we are effectively
choosing a T, which is also 3 3, and thus has the remaining 9degrees of freedom in the state-space model.
-
7/27/2019 Feedback Control Systems Mit (Complete)
156/608
Fall 2001 16.31 91
Topic #9
16.31 Feedback Control
State-Space Systems
What are the basic properties of a state-space model,and how do we analyze these?
SS to TF
Copyright 2001 by Jonathan How.
-
7/27/2019 Feedback Control Systems Mit (Complete)
157/608
Fall 2001 16.31 91
SS TF In going from the state space model
x(t) = Ax(t) + Bu(t)y(t) = Cx(t) + Du(t)
to the transfer function G(s) = C(sIA)1B + D need to form the inverseof the matrix (sI A) a symbolic inverse not easy at all.
For simple cases, we can use the following:a1 a2a3 a4
1=
1
a1a4 a2a3
a4 a2a3 a1
For larger problems, we can also use Cramers Rule
Turns out that an equivalent method is to form:
G(s) = C(sI A)1B + D =
det
sIA B
C D
det(sI A)
Reason for this will become more apparent later when we talk about
how to compute the zeros of a state-space model (which are the rootsof the numerator)
Example from before:
A =
a1 a2 a31 0 0
0 1 0
, B =
10
0
, C = b1 b2 b3 T
then
G(s) =1
det(sIA)
s + a1 a2 a3 11 s 0 0
0 1 s 0
b1 b2 b3 0
= b3 + b2s + b1s2
det(sI A)
and det(sI A) = s3 + a1s2 + a2s + s3
Key point: Characteristic equation of this system given by det(sIA)
-
7/27/2019 Feedback Control Systems Mit (Complete)
158/608
Fall 2001 16.31 92
Time Response
Can develop a lot of insight into the system response and how it is modeledby computing the time response x(t)
Homogeneous part
Forced solution
Homogeneous Partx = Ax, x(0) known
Take Laplace transform
X(s) = (sI A)1x(0)
so thatx(t) = L1
(sI A)1
x(0)
But can show
(sIA)1 =I
s+
A
s2+
A2
s3+ . . .
so L1
(sI A)1
= I + At +1
2!(At)2 + . . .
= eAt
Sox(t) = eAtx(0)
eAt is a special matrix that we will use many times in this course
Transition matrix
Matrix Exponential
Calculate in MATLAB
r
using expm.m and not exp.m1
Note that e(A+B)t = eAteBt iff AB = BA
We will say more about eAt when we have said more about A (eigenvaluesand eigenvectors)
Computation ofeAt = L1{(sIA)1} straightforward for a 2-state system
1MATLABr is a trademark of the Mathworks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
159/608
Fall 2001 16.31 93
Example: x = Ax, with
A =
0 1
2 3
(sI A)1 =
s 1
2 s + 3
1
=
s + 3 1
2 s
1
(s + 2)(s + 1)
=
2
s + 1
1
s + 2
1
s + 1
1
s + 2
2
s + 1+
2
s + 2
1
s + 1+
2
s + 2
eAt = 2et e2t et e2t
2et + 2e2t et + 2e2t
-
7/27/2019 Feedback Control Systems Mit (Complete)
160/608
Fall 2001 16.31 101
Topic #10
16.31 Feedback Control
State-Space Systems
What are the basic properties of a state-space model, and how dowe analyze these?
Time Domain Interpretations
System Modes
Copyright 2001 by Jonathan How.
-
7/27/2019 Feedback Control Systems Mit (Complete)
161/608
Fall 2001 16.31 101
Forced Solution
Consider a scalar case:
x = ax + bu, x(0) given
x(t) = eatx(0) +
t0
ea(t)bu()d
where did this come from?
1. x ax = bu
2. eat [x ax] = ddt
(eatx(t)) = eatbu(t)
3.
t0
dd
eax()d = eatx(t) x(0) =
t0
eabu()d
Forced Solution Matrix case:
x = Ax + Bu
where x is an n-vector and u is a m-vector
Just follow the same steps as above to get
x(t) = eAtx(0) +
t0
eA(t)Bu()d
and if y = Cx + Du, then
y(t) = CeAtx(0) + t
0
CeA(t)Bu()d + Du(t)
CeAtx(0) is the initial response
CeA(t)B is the impulse response of the system.
-
7/27/2019 Feedback Control Systems Mit (Complete)
162/608
Fall 2001 16.31 102
Have seen the key role of eAt in the solution for x(t)
Determines the system time response
But would like to get more insight!
Consider what happens if the matrix A is diagonalizable, i.e. there exists aT such that
T1AT = which is diagonal =
1 . . .
n
TheneAt = T etT1
where
et =
e
1t
. . .
ent
Follows since eAt = I + At + 12!(At)2 + . . . and that A = TT1, so we canshow that
eAt = I + At +1
2!(At)2 + . . .
= I + TT1t +1
2!(TT1t)2 + . . .
= T etT1
This is a simpler way to get the matrix exponential, but how find T and ?
Eigenvalues and Eigenvectors
-
7/27/2019 Feedback Control Systems Mit (Complete)
163/608
Fall 2001 16.31 103
Eigenvalues and Eigenvectors
Recall that the eigenvalues ofA are the same as the roots of the characteristic
equation (page 91) is an eigenvalue of A if
det(I A) = 0
which is true iff there exists a nonzero v (eigenvector) for which
(I A)v = 0 Av = v
Repeat the process to find all of the eigenvectors. Assuming that the n
eigenvectors are linearly independent
Avi = ivi i = 1, . . . , n
A
v1 vn
=
v1 vn 1 . . .
n
AT = T T1AT =
One word of caution: Not all matrices are diagonalizable
A =
0 10 0
det(sI A) = s2
only one eigenvalue s = 0 (repeated twice). The eigenvectors solve0 10 0
r1r2
= 0
eigenvectors are of the form r10, r
1= 0 would only be one.
Need the Jordan Normal Form to handle this case (section 3.7.3)
-
7/27/2019 Feedback Control Systems Mit (Complete)
164/608
Fall 2001 16.31 104Mechanics
Consider A =
1 1
8 5
(sI A) =
s + 1 1
8 s 5
det(sI A) = (s + 1)(s 5) + 8 = s2 4s + 3 = 0
so the eigenvalues are s1 = 1 and s2 = 3
Eigenvectors (sI A)v = 0
(s1I A)v1 =
s + 1 1
8 s 5
s=1
v11v21
= 0
2 1
8 4
v11v21
= 0 2v11 v21 = 0, v21 = 2v11
v11 is then arbitrary (= 0), so set v11 = 1
v1 =
12
(s2I A)v2 =
4 1
8 2
v12v22
= 0 4v12 v22 = 0, v22 = 4v12
v2 = 1
4
Confirm that Avi = ivi
-
7/27/2019 Feedback Control Systems Mit (Complete)
165/608
Fall 2001 16.31 105
Dynamic Interpretation
Since A = TT1, then
eAt = T etT1 =
| |v1 vn
| |
e
1t
. . .
ent
w
T1 ...
wTn
where we have written
T1 =
w
T1
... wTn
which is a column of rows.
Multiply this expression out and we get that
eAt =
ni=1
eitviwTi
Assume A diagonalizable, then x = Ax, x(0) given, has solution
x(t) = eAtx(0) = T etT1x(0)
=n
i=1
eitvi{wTi x(0)}
=n
i=1
eitvii
State solution is a linear combination of the system modes viei
eit Determines the nature of the time response
vi Determines extent to which each state contributes to that mode
i Determines extent to which the initial condition excites the mode
-
7/27/2019 Feedback Control Systems Mit (Complete)
166/608
Fall 2001 16.31 106
Note that the vi give the relative sizing of the response of each part of thestate vector to the response.
v1(t) =
10
et mode 1
v2(t) =
0.50.5
e3t mode 2
Clearly eit gives the time modulation
i real growing/decaying exponential response
i complex growing/decaying exponential damped sinusoidal
Bottom line: The locations of the eigenvalues determine the pole locations
for the system, thus:
They determine the stability and/or performance & transient behaviorof the system.
It is their locations that we will want to modify when we start
the control work
-
7/27/2019 Feedback Control Systems Mit (Complete)
167/608
Fall 2001 16.31 107
Zeros in State Space Models
Roots of the transfer function numerator are called the system zeros.
Need to develop a similar way of defining/computing them using a statespace model.
Zero: is a generalized frequency s0 for which the system can have a non-zeroinput u(t) = u0e
s0t, but exactly zero output y(t) 0 t
Note that there is a specific initial condition associated with this response
x0, so the state response is of the form x(t) = x0es0t
u(t) = u0es0t x(t) = x0e
s0t y(t) 0
Given x = Ax + Bu, substitute the above to get:
x0s0es0t = Ax0e
s0t + Bu0es0t s0I A B
x0u0
= 0
Also have that y = Cx + Du = 0 which gives:
Cx0es0t + Du0e
s0t = 0
C D x0
u0
= 0
So we must solve for the s0 that solves: ors0I A B
C D
x0u0
= 0
This is a generalized eigenvalue problem that can be solved inMATLAB r using eig.m or tzero.m 2
2MATLABr is a trademark of the Mathworks Inc.
-
7/27/2019 Feedback Control Systems Mit (Complete)
168/608
Fall 2001 16.31 108
Is a zero at the frequency s0 if there exists a non-trivial solution of
det s0I A B
C D = 0
Compare with equation on page 91
Key Point: Zeros have both a direction
x0u0
and a frequency s0
Just as we would associate a direction (eigenvector) with each pole (fre-quency i)
Example: G(s) = s+2s2+7s+12
A =
7 12
1 0
B = 1
0 C = 1 2 D = 0
det
s0I A B
C D
= det
s0 + 7 12 11 s0 0
1 2 0
= (s0 + 7)(0) + 1(2) + 1(s0) = s0 + 2 = 0
so there is clearly a zero at s0 = 2, as we expected. For the directions,solve:
s0 + 7 12 11 s0 0
1 2 0
s0=2
x01x02
u0
=
5 12 11 2 0
1 2 0
x01x02
u0
= 0?
gives x01 = 2x02 and u0 = 2x02 so that with x02 = 1
x0 =
2
1
and u = 2e2t
-
7/27/2019 Feedback Control Systems Mit (Complete)
169/608
Fall 2001 16.31 109
Further observations: apply the specified control input in the frequencydomain, so that
Y1(s) = G(s)U(s)
where u = 2e2t, so that U(s) = 2s+2
Y1(s) =s + 2
s2 + 7s + 12
2
s + 2=
2
s2 + 7s + 12
Say that s = 2 is a blocking zero or a transmission zero.
The response Y(s) is clearly non-zero, but it does not contain a componentat the input frequency s = 2. That input has been blocked.
Note that the output response left in Y1(s) is of a very special form itcorresponds to the (negative of the) response you would see from the system
with u(t) = 0 and x0 =
2 1T
Y2(s) = C(sI A)1x0
=
1 2 s + 7 12
1 s
1 21
=
1 2 s 12
1 s + 7
21
1
s2 + 7s + 12
=2
s
2
+ 7s + 12
So then the total output is Y(s) = Y1(s) + Y2(s) showing that Y(s) = 0 y(t) = 0, as expected.
-
7/27/2019 Feedback Control Systems Mit (Complete)
170/608
Fall 2001 16.31 1010
Summary of Zeros: Great feature of solving for zeros using the generalizedeigenvalue matrix condition is that it can be used to find MIMO zeros ofa system with multiple inputs/outputs.
det
s0I A B
C D
= 0
Need to be very careful when we find MIMO zeros that have the same fre-quency as the poles of the system, because it is not obvious that a pole/zerocancellation will occur (for MIMO systems).
The zeros have a directionality associated with them, and that mustagree as well, or else you do not get cancellation
More on this topic later.
Relationship to transfer function matrix:
If z is a zero with (right) direction [T , uT ]T, thenzI A B
C D
u
= 0
If z not an eigenvalue of A, then = (zI A)1Bu, which givesC(zI A)1B + D
u = G(z)u = 0
Which implies that G(s) loses rank at s = z
If G(s) is square, can test: det G(s) = 0
If any of the resulting roots are also eigenvalues of A, need to re-checkthe generalized eigenvalue matrix condition.
-
7/27/2019 Feedback Control Systems Mit (Complete)
171/608
Fall 2001 16.31 1011
Note that the transfer function matrix (TFM) notion is a MIMO general-ization of the SISO transfer function
It is a matrix of transfer functions
G(s) =
g11(s) g1m(s). . .
gp1(s) gpm(s)
where gij(s) relates the input of actuator j to the output of sensor i.
Example:
G(s) =
1
s + 10
1
s 2
s 2
s + 2
It is relatively easy to go from a state-space model to a TFM, but notobvious how to go back the other way.
Note: we have to be careful how to analyze these TFMs.
Just looking at the individual transfer functions is not useful.
Need to look at the system as a whole will develop a new tool basedon the singular values of G(s)
-
7/27/2019 Feedback Control Systems Mit (Complete)
172/608
Topic #11
16.31 Feedback Control
State-Space Systems
State-space model features
Observability
Controllability
Minimal Realizations
Copyright2001byJonathanHow.
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
173/608
Fall 2001 16.31 111
State-Space Model Features
There are some key characteristics of a state-space model that we
need to identify.
Will see that these are very closely associated with the concepts
of pole/zero cancellation in transfer functions.
Example: Consider a simple system
G(s) =6
s + 2
for which we develop the state-space model
Model # 1 x = 2x + 2u
y = 3x
But now consider the new state space model x = [x x2]T
Model # 2x =
2 00 1
x +
21
u
y =
3 0
x
which is clearly different than the first model.
But lets looks at the transfer function of the new model:
G(s) = C(sI A)1B + D
-
7/27/2019 Feedback Control Systems Mit (Complete)
174/608
Fall 2001 16.31 112
This is a bit strange, because previously our figure of merit when
comparing one state-space model to another (page 8-8) was whether
they reproduced the same same transfer function Now we have two very different models that result in the same
transfer function
Note that I showed the second model as having 1 extra state,
but I could easily have done it with 99 extra states!!
So what is going on? The clue is that the dynamics associated with the second state
of the model x2 were eliminated when we formed the product
G(s) =
3 0 " 2s+2
1s+1
#
because the A is decoupled and there is a zero in the C matrix
Which is exactly the same as saying that there is a pole-zerocancellation in the transfer function G(s)
6
s + 2=
6(s + 1)
(s + 2)(s + 1), G(s)
Note that model #2 is one possible state-space model of G(s)
(has 2 poles)
For this system we say that the dynamics associated with the second
state are unobservable using this sensor (defines the C matrix).
There could be a lot motion associated with x2, but we would
be unware of it using this sensor.
-
7/27/2019 Feedback Control Systems Mit (Complete)
175/608
Fall 2001 16.31 113
There is an analogous problem on the input side as well. Consider:
Model # 1 x = 2x + 2u
y = 3x
with x = [ x x2]T
Model # 3 x =
2 0
0 1
x +
2
0
u
y = 3 2 xwhich is also clearly different than model #1, and has a different
form from the second model.
G(s) =
3 2sI
2 0
0 1
1
2
0
= 3
s+2
2
s+1 2
0
=
6
s + 2 !!
Once again the dynamics associated with the pole at s = 1 are
cancelled out of the transfer function.
But in this case it occurred because there is a 0 in the B matrix
So in this case we can see the state x2 in the output C =
3 2
,
but we cannot influence that state with the input since B = 2
0
So we say that the dynamics associated with the second state are
uncontrollable using this actuator (defines the B matrix).
-
7/27/2019 Feedback Control Systems Mit (Complete)
176/608
Fall 2001 16.31 114
Of course it can get even worse because we could have
x = 2 0
0 1
x + 20 uy =
3 0
x
So now we have
]G(s) = 3 0 sI
2 0
0 1
1
2
0
=
3s+2
0s+1
20
=
6
s + 2!!
Get same result for the transfer function, but now the dynamics
associated with x2 are both unobservable and uncontrollable.
Summary:Dynamics in the state-space model that are uncontrollable, un-
observable, or both do not show up in the transfer function.
Would like to develop models that only have dynamics that are
both controllable and observable
V called a minimal realization
It is has the lowest possible order for the given transfer function.
But first need to develop tests to determine if the models are ob-
servable and/or controllable
-
7/27/2019 Feedback Control Systems Mit (Complete)
177/608
Fall 2001 16.31 115
Observability
Definition: An LTI system is observable if the initial state
x(0) can be uniquely deduced from the knowledge of the input u(t)and output y(t) for all t between 0 and any T > 0.
If x(0) can be deduced, then we can reconstruct x(t) exactly
because we know u(t) V we can find x(t) t.
Thus we need only consider the zero-input (homogeneous) solu-
tion to study observability.
y(t) = CeAtx(0)
This definition of observability is consistent with the notion we used
before of being able to see all the states in the output of the
decoupled examples
ROT: For those decoupled examples, if part of the state cannot
be seen in y(t), then it would be impossible to deduce that
part ofx(0) from the outputs y(t).
-
7/27/2019 Feedback Control Systems Mit (Complete)
178/608
Fall 2001 16.31 116
Definition: A state x? 6= 0 is said to be unobservable if the
zero-input solution y(t), with x(0) = x?, is zero for all t 0
Equivalent to saying that x? is an unobservable state if
CeAtx? = 0 t 0
For the problem we were just looking at, consider Model #2 with
x?
= [ 0 1 ]
T
6= 0, then
x =
2 0
0 1
x +
2
1
u
y =
3 0
x
so
CeAtx? =
3 0
e
2t
00 et
01
=
3e2t 0 0
1
= 0 t
So, x? = [ 0 1 ]T is an unobservable state for this system.
But that is as expected, because we knew there was a problem with
the state x2 from the previous analysis
-
7/27/2019 Feedback Control Systems Mit (Complete)
179/608
Fall 2001 16.31 117
Theorem: An LTI system is observable iff it has no
unobservable states.
We normally just say that the pair (A,C) is observable.
Pseudo-Proof: Let x? 6= 0 be an unobservable state and compute
the outputs from the initial conditions x1(0) and x2(0) = x1(0)+ x?
Then
y1(t) = CeAtx1(0) and y2(t) = Ce
Atx2(0)
but
Thus 2 different initial conditions give the same output y(t), so it
would be impossible for us to deduce the actual initial condition
of the system x1(t) or x2(t) given y1(t)
Testing system observability by searching for a vector x(0) such thatCeAtx(0) = 0 t is feasible, but very hard in general.
Better tests are available.
-
7/27/2019 Feedback Control Systems Mit (Complete)
180/608
Fall 2001 16.31 118
Theorem: The vector x? is an unobservable state if
C
CACA2
...
CAn1
x? = 0
Pseudo-Proof: Ifx? is an unobservable state, then by definition,
CeAtx? = 0 t 0
But all the derivatives of CeAt exist and for this condition to hold,
all derivatives must be zero at t = 0. Then
CeAtx?
t=0= 0 Cx? = 0
d
dtCeAt
x?
t=0= 0
d2
dt2CeAtx?
t=0
= 0
...
d
k
dtkCeAtx?
t=0
= 0
We only need retain up to the n 1th derivative because of the
Cayley-Hamiltontheorem.
-
7/27/2019 Feedback Control Systems Mit (Complete)
181/608
Fall 2001 16.31 119
Simple test: Necessary and sufficient condition for observability
is that
rank Mo , rank
CCA
CA2
...
CAn1
= n
Why does this make sense?
The requirement for an unobservable state is that for x? 6= 0
Mox? = 0
Which is equivalent to saying that x? is orthogonal to each row
ofMo.
But if the rows ofMo are considered to be vectors and thesespan the full n-dimensional space, then it is not possible
to find an n-vector x? that is orthogonal to each of these.
To determine if the n rows ofMo span the full n-dimensional
space, we need to test their linear independence, which is
equivalent to the rank test1.
1Let M be a mp matrix, then the rank of M satisfies:
1. rank M number of linearly independent columns of M
2. rank M number of linearly independent rows of M
3. rank M min{m, p}
-
7/27/2019 Feedback Control Systems Mit (Complete)
182/608
Topic#1216.31FeedbackControl
State-SpaceSystems State-spacemodel features Controllability
Copyright2001byJonathanHow.
1
-
7/27/2019 Feedback Control Systems Mit (Complete)
183/608
Fall2001 16.31121Controllability
Definition: AnLTIsystem iscontrollable if, foreveryx?(t)andeveryT > 0,thereexistsan input functionu(t),0< t T,suchthatthesystemstategoesfromx(0)=0tox(T) = x?.Startingat 0 is nota special case if wecanget toany state
infinitetime fromtheorigin, thenwecanget fromany initialconditiontothatstateinfinitetimeaswell.
Needonlyconsidertheforcedsolutiontostudycontrollability.x(t) =
Z t0 e
A(t)Bu()d
Changeofvariables2 =t,d =d2 givesx(t) =
Z t0 e
A2Bu(t2)d2
Thisdefinitionofobservabilityisconsistentwiththenotionweusedbeforeofbeingabletoinfluenceallthestatesinthesysteminthedecoupledexampleswelookedatbefore.ROT:Forthosedecoupledexamples,ifpartofthestatecannot
be influenced by u(t), then it would be impossible to movethatpartofthestatefrom0tox?
-
7/27/2019 Feedback Control Systems Mit (Complete)
184/608
Fall2001 16.31122 Definition: Astatex? 6=0issaidtobeuncontrollableifthe
forcedstateresponsex(t)isorthogonaltox?t > 0andallinputfunctions.Youcannotgettherefromhere
Thisisequivalenttosayingthatx? isanuncontrollablestateif(x?)T
Z t0 e
A2Bu(t2)d2
=Z t
0 (x?)TeA2Bu(t2)d2 = 0
Sincethisidentitymustholdforallinputfunctionsu(t2),thiscanonlybetrueif
(x?)TeAtB0 t0
-
7/27/2019 Feedback Control Systems Mit (Complete)
185/608
Fall2001 16.31123 Fortheproblemwewerejust lookingat,considerModel#3with
x? = [ 0 1 ]T 6= 0,then 2 0Model#3 x = x +
0
2u
0 13 2 xy =
so
e2t 0
0 et
02
0 1
et (x?)TeAtB =
20
= 0 t0=
Sox? = [ 0 1 ]T isanuncontrollablestateforthissystem.
Butthatisasexpected,becauseweknewtherewasaproblemwiththestatex2 fromthepreviousanalysis
-
7/27/2019 Feedback Control Systems Mit (Complete)
186/608
Fall2001 16.31124 Theorem: An LTI system is controllable iff it has no
uncontrollablestates.Wenormallyjustsaythatthepair(A,B) iscontrollable.
Pseudo-Proof: Thetheoremessentiallyfollowsbythedefinitionofanuncontrollablestate.Ifyouhadanuncontrollablestatex?,thenitisorthogonaltothe
forcedresponsestatex(t),whichmeansthatthesystemcannotreachitinfinitetime;thesystemwouldbeuncontrollable.
Theorem: Thevector x? isanuncontrollablestate iff(x?)T
B A B A2B An1B
= 0
Seepage81.
Simpletest: Necessaryandsufficientconditionforcontrollabilityis
that
rankMc,rank B A B A2B An1B=n
-
7/27/2019 Feedback Control Systems Mit (Complete)
187/608
Fall2001 Examples 16.31125 2 0
WithModel#2: x =
x +1
2u
0
1y = 3 0 x
C 3 0 M0 =
CA
=6 0
Mc =B AB= 2 41 1
rank
M0 = 1 andrankMc = 2 Sothismodelofthesystemiscontrollable,butnotobservable.
2 0WithModel#3: x = x +
0
2u
0 1
y = 3 2 x C 3 2M0 =
CA
=6 2
Mc =B AB=
2
0 40
rankM0 = 2 andrankMc = 1
So
this
model
of
the
system
is
observable,
but
not
controllable.
Notethatcontrollability/observabilityarenot intrinsicproperties
ofasystem. Whetherthemodelhasthemornotdependsontherepresentationthatyouchoose.Buttheyindicatethatsomethingelsemorefundamentaliswrong...
-
7/27/2019 Feedback Control Systems Mit (Complete)
188/608
Fall2001 16.31126Example: LossofObservability
Typicalscenario:
consider
system
G(s) of the
form
1
s+ax1s+as+ 1 x2u y
sothats+as+ 1
1s+aG(s) =
Clearlyapole-zerocancelationinthissystem(poles=a) Thestatespacemodelforthesystemis:
x1 = ax1+ux2 = x2+ (a1)x2
y = x1+x2