• No results found

Feedback Control Systems Mit (Complete)

N/A
N/A
Protected

Academic year: 2021

Share "Feedback Control Systems Mit (Complete)"

Copied!
609
0
0

Loading.... (view fulltext now)

Full text

(1)

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 pace of 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

LECTURES TOPICS

5 Review of Classical Synthesis Techniques 8 State Space - Linear Systems 7 Full State Feedback

3 State Estimation 4 Output Feedback

7 Robustness

Page 1 of 3 MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...

8/12/2005 http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...

(2)

Goal

To teach the fundamentals of control design and analysis using state-space methods. This includes both the practical and theoretical aspects of the topic. By the end of the course, you should be able to design

controllers 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 will be reduced 25% per day. No homework will be accepted for credit after the solutions have been handed 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 each author focuses on different aspects.

Modeling and Control

z Palm. Modeling, Analysis, and Control of Dynamic Systems. Wiley.

Basic Control

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. Schaum’s outline. z Luenberger. Introduction to Dynamic Systems. Wiley.

Page 2 of 3 MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...

8/12/2005 http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...

(3)

z Ogata. Modern Control Engineering. Prentice Hall.

Linear Systems

z Chen. Linear Systems Theory and Design. Prentice Hall. z Aplevich. The Essentials of Linear State-Space Systems. Wiley.

State Space Control

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 3 MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...

8/12/2005 http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...

(4)

This course calendar incorporates the lecture schedule and assignment schedule for the semester. Some lecture topics were 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 2 MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...

8/12/2005 http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...

(5)

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 2 MIT OpenCourseWare | Aeronautics and Astronautics | 16.31 Feedback Control Systems,...

8/12/2005 http://ocw.mit.edu/OcwWeb/Aeronautics-and-Astronautics/16-31Feedback-Control-Syste...

(6)

Lecture #1

16.31 Feedback Control

Copyright 2001 by Jonathan How.

(7)

Fall 2001 16.31 1—1

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 system has 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 the

closed-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).

(8)

Fall 2001 16.31 1—2

Why Control?

• Easy question to answer for aerospace because many vehicles (space-craft, air(space-craft, 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.

(9)

Fall 2001 16.31 1—3

Feedback Control Approach

• Establish control objectives

— Qualitative — don’t use too much fuel

— Quantitative — settling time of step response <3 sec

— Typically requires that you understand the process (expected commands and disturbances) and the overall goals (bandwidths). — Often requires that you have a strong understanding of the phys-ical dynamics of the system so that you do not “fight” them in appropriate (i.e., inefficient) ways.

• Select sensors & actuators

— What aspects of the system are to be sensed and controlled? — Consider sensor noise and linearity as key discriminators. — Cost, reliability, size, . . .

• Obtain model

— Analytic (FEM) or from measured data (system ID)

Evaluation model → reduce size/complexity → Design model — Accuracy? Error model?

• Design controller

— Select technique (SISO, MIMO), (classical, state-space) — Choose parameters (ROT, optimization)

• Analyze closed-loop performance. Meet objectives? — Analysis, simulation, experimentation, . . .

(10)

Fall 2001 16.31 1—4

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

(11)

Fall 2001 16.31 1—5

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:

m¨q + c ˙q + kq = u    ˙q ¨ q    =    0 1 −k/m −c/m       q ˙q   +    0 1/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, but state-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.

(12)

Fall 2001 16.31 1—6

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 feedback —ficticious since requires more information than typically (ever?) available

— Observer/estimator design —process 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 . . . .

(13)

Fall 2001 16.31 1—7

• 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.

(14)

Fall 2001 16.31 1—8

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 diagram 2. Develop the 2 equations of motion

m1x¨1 = k(x2 − x1)

m22 = 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

(15)

Fall 2001 16.31 1—9

• Laplace transform

L{f(t)} ≡ 0∞− f (t)e−stdt

Key point: If L{x(t)} = X(s), then L{ ˙x(t)} = sX(s) assuming that the initial conditions are zero.

• Apply to the model

L{m1x¨1 − k(x2 − x1)} = (m1s2 + k)X1(s) − kX2(s) = 0 L{m2x¨2 − k(x1 − x2) − F } = (m2s2 + k)X2(s) − kX1(s) − F (s) = 0    m1s 2 + k −k −k 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)) ≡ G 2(s)

• G2(s) is the transfer function between the input F and the

(16)

Fall 2001 16.31 1—10

• Given that F → G2(s) → x2. If F (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) = L−1{X2(s)}

• Step 4 involves an inverse Laplace transform, which requires an ugly contour integral that is hardly ever used.

x2(t) = 1 2πi σc+i∞ σc−i∞ 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 much easier for problems that we will be dealing with.

• Example with F (t) = 1(t) ⇒ F (s) = 1/s X2(s) = m1s2 + k m1m2s3(s2 + k(1/m 1 + 1/m2)) = c1 s + c2 s2 + c3 s3 + c4s + c5 s2 + k(1/m 1 + 1/m2)

— Solve for the coefficients ci

(17)

Fall 2001 16.31 1—11

• Note that there are 2 special entries in the tables

1. (s+a)1 ⇔ e−at which corresponds to a pole at s+a = 0, or s = −a

2. ωn2 (s2+2ζωns+ωn2) ⇔ e −ζωnt 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

(18)

Fall 2001 16.31 1—12

• 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) = ω 2 n (s2 + 2ζω ns + ωn2)

with u(t) a step, so that u(s) = 1/s • Then y(s) = G(s)u(s) = ωn2

s(s2+2ζωns+ω2n) which gives (σ = ζωn) y(t) = 1 − e−σt  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 − 2ζ2 + 2 − 4ζ2 + 4ζ4 1/2 or can use tr ≈ 1.8/wn 2. ts(1%) = 4.6/(ζωn) 3. Mp = e −πζ √ 1−ζ2 and t p = π/ωd

• Formulas relate time response to pole locations. Can easily evalute if the closed-loop system will respond as desired.

(19)

Fall 2001 16.31 1—13

• 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.

(20)

Please refer to the “Design Aids” section of:

Franklin, Gene F., Powell, J. David and Abbas Emami-Naeini. 1994. Feedback Control

(21)
(22)
(23)
(24)

Slow dominant pole num=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 pole

num=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

(25)

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]; end plot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');

ylabel('step response');xlabel('time (sec)')

legend('2nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7))) 0 5 10 15 20 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 step response time (sec) 2nd 0.5 2.5 6.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

(26)
(27)
(28)
(29)

2 - 8

(30)
(31)
(32)
(33)
(34)
(35)
(36)
(37)
(38)
(39)
(40)
(41)
(42)
(43)
(44)
(45)
(46)
(47)
(48)
(49)
(50)
(51)
(52)
(53)

Example: G(s)=1/2^2

Design Gc(s) to put the clp poles at –1 + 2j

z=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 off r=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253 k = 45.5062 alpha = 20.2531

These are the actual roots that I found from the locus using a gain of 1 (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 Imag Axis 2 - 30

(54)
(55)
(56)
(57)

Slow dominant pole num=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 pole

num=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

(58)

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]; end plot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');

ylabel('step response');xlabel('time (sec)')

legend('2nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7))) 0 5 10 15 20 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 step response time (sec) 2nd 0.5 2.5 6.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

(59)
(60)
(61)
(62)

2 - 8

(63)
(64)
(65)
(66)
(67)
(68)
(69)
(70)
(71)
(72)
(73)
(74)
(75)
(76)
(77)
(78)
(79)
(80)
(81)
(82)
(83)
(84)
(85)
(86)

Example: G(s)=1/2^2

Design Gc(s) to put the clp poles at –1 + 2j

z=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 off r=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253 k = 45.5062 alpha = 20.2531

These are the actual roots that I found from the locus using a gain of 1 (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 Imag Axis 2 - 30

(87)
(88)
(89)
(90)

Slow dominant pole num=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 pole

num=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

(91)

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]; end plot(t,y(:,1),'d',t,y(:,2),'+',t,y(:,4),'+',t,y(:,8),'v');

ylabel('step response');xlabel('time (sec)')

legend('2nd',num2str(plist(1)),num2str(plist(3)),num2str(plist(7))) 0 5 10 15 20 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 step response time (sec) 2nd 0.5 2.5 6.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

(92)
(93)
(94)
(95)

2 - 8

(96)
(97)
(98)
(99)
(100)
(101)
(102)
(103)
(104)
(105)
(106)
(107)
(108)
(109)
(110)
(111)
(112)
(113)
(114)
(115)
(116)
(117)
(118)
(119)

Example: G(s)=1/2^2

Design Gc(s) to put the clp poles at –1 + 2j

z=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 off r=rlocus(conv(num,knum),conv(den,kden),1)' z = 2.2253 k = 45.5062 alpha = 20.2531

These are the actual roots that I found from the locus using a gain of 1 (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 Imag Axis 2 - 30

(120)

Topic #3

16.31 Feedback Control

Frequency response methods • Analysis

• Synthesis • Performance • Stability

Copy right 2001 by Jon at h an H ow.

(121)

Fall 2001 16.31 3–1

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 root

locus 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

(122)

Fall 2001 16.31 3–2

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) = sin 2t, |G(2j)| = 0.3, arg G(2j) = 80◦ , then the

steady-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 of G(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

(123)

Fall 2001 16.31 3–3 • 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.

(124)

Fall 2001 16.31 3–4

Example

• Draw Bode for

G(s) = s + 1

s/10 + 1

|G(jω)| = |jω/10 + 1||jω + 1|

log|G(jω)| = log[1 + (ω/1)2]1/2 − log[1 + (ω/10)2]1/2

• Approximation log[1 + (ω/ωi)2]1/2      0 ω ωi log[ω/ω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.

10−2 10−1 100 101 102 100 101 102 Freq |G|

(125)

Fall 2001 16.31 3–5

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 zeros at 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

10−2 10−1 100 101 102 103 10−1 100 101 102 Freq |G|

(126)

Fall 2001 16.31 3–6 • 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) = tan−1(ω/ω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 10ωi

10−2 10−1 100 101 102 103 0 10 20 30 40 50 60 70 80 90 100 Freq Arg G

(127)

Fall 2001 16.31 3–7 • Then add them up starting from zero frequency and changing the

slope as ω → ∞ 10−2 10−1 100 101 102 103 −80 −60 −40 −20 0 20 40 60 80 Freq Arg G

(128)

Fall 2001 16.31 3–8 10−4 10−3 10−2 10−1 100 101 10−3 10−2 10−1 100 Freq (Hz) Magnitude Actual LF MF HF +1 0 −2 −2 +1 −1 10−4 10−3 10−2 10−1 100 101 102 −180 −160 −140 −120 −100 −80 −60 −40 −20 0 20 Freq (Hz) Phase (deg) Actual LF MF HF Bode for G(s) = 4.54s s3 + 0.1818s2− 31.1818s − 4.4545.

(129)

Fall 2001

Non-minimum Phase Systems

• Bode plots are particularly complicated when we have non-minimum

phase 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) = s−1s+2 10−1 100 101 102 10−1 100 Freq |G| MP NMP 10−1 100 101 102 0 50 100 150 200 Freq Arg G MP NMP

Figure 4: Magnitude plots are identical, but the phase plots are dramatically different. NMP has a 180 deg phase loss over this frequency range.

(130)

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 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.

(131)

Fall 2001 16.31 7—1

Introduction

• State space model: a representation of the dynamics of an Nth order system as a first order differential equation in an N -vector, which is 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 m ¨p + 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 1 −k/m −c/m       p ˙p   +    0 1/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 ¸    p ˙p    = ∙ 1 0 ¸    x1 x2    = cx

(132)

Fall 2001 16.31 7—2

• 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) ∈ Rn×n is the dynamics matrix — B(t) ∈ Rn×m is the input matrix

— C(t) ∈ Rp×n is the output or sensor matrix — D(t) ∈ Rp×m 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)

(133)

Fall 2001 16.31 7—3

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) if superposition holds:

G(α1u1 + α2u2) = α1Gu1 + α2Gu2

So if y1 is the response of G to u1 (y1 = Gu1), and y2 is the response of G to u2 (y2 = Gu2), then the response to α1u1 + α2u2 is α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 of charge 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.

(134)

Fall 2001 16.31 7—4

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 state space models, and almost all systems are nonlinear in real-life.

(135)

Fall 2001 16.31 7—5

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

m¨x = kx

but 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

m¨x = (k1x + k2x3) which is a “cubic spring”.

— Restoring force depends on the deflection x in a nonlinear way.

0 2 4 6 8 10 12 −2 −1 0 1 2 X Time Nonlinear Linear 0 2 4 6 8 10 12 −3 −2 −1 0 1 2 3 V Time Nonlinear Linear

(136)

Fall 2001 16.31 7—6

• 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 of f (·, ·) 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(x 0 i + δxi) = fi(x0 + δx, u0 + δu) ≈ fi(x0, u0) + ∂fi ∂x ¯ ¯ ¯ ¯ ¯ ¯0δx + ∂fi ∂u ¯ ¯ ¯ ¯ ¯ ¯0δu where ∂fi ∂x =   ∂fi ∂x1 · · · ∂fi ∂xn  

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).

(137)

Fall 2001 16.31 7—7

• Since dtdx0i = fi(x0, u0), we thus have that d dt(δxi) ≈ ∂fi ∂x ¯ ¯ ¯ ¯ ¯ ¯0δx + ∂fi ∂u ¯ ¯ ¯ ¯ ¯ ¯0δu

• Combining for all n state equations, gives (note that we also set “≈” → “=”) that d dtδx =                         ∂f1 ∂x ¯ ¯ ¯ ¯ ¯ ¯0 ∂f2 ∂x ¯ ¯ ¯ ¯ ¯ ¯0 ... ∂fn ∂x ¯ ¯ ¯ ¯ ¯ ¯0                         δx +                         ∂f1 ∂u ¯ ¯ ¯ ¯ ¯ ¯0 ∂f2 ∂u ¯ ¯ ¯ ¯ ¯ ¯0 ... ∂fn ∂u ¯ ¯ ¯ ¯ ¯ ¯0                         δu = A(t)δx + B(t)δu where A(t)                 ∂f1 ∂x1 ∂f1 ∂x2 · · · ∂f1 ∂xn ∂f2 ∂x1 ∂f2 ∂x2 · · · ∂f2 ∂xn ... ∂fn ∂x1 ∂fn ∂x2 · · · ∂fn ∂xn                 0 and B(t)                 ∂f1 ∂u1 ∂f1 ∂u2 · · · ∂f1 ∂um ∂f2 ∂u1 ∂f2 ∂u2 · · · ∂f2 ∂um ... ∂fn ∂u1 ∂fn ∂u2 · · · ∂fn ∂um                 0

(138)

Fall 2001 16.31 7—8

• Similarly, if the nonlinear measurement equation is y = g(x, u), can show that, if y(t) = y0 + δy, then

δy =                         ∂g1 ∂x ¯ ¯ ¯ ¯ ¯ ¯0 ∂g2 ∂x ¯ ¯ ¯ ¯ ¯ ¯0 ... ∂gp ∂x ¯ ¯ ¯ ¯ ¯ ¯0                         δx +                         ∂g1 ∂u ¯ ¯ ¯ ¯ ¯ ¯0 ∂g2 ∂u ¯ ¯ ¯ ¯ ¯ ¯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 A—D 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) ≡ 0

(139)

Fall 2001 16.31 7—9

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 gives ˙y0 = 0 and k1y0 + k2(y0)3 = 0

— Second condition corresponds to y0 = 0 or y0 = ±r−k1/k2, which is only real if k1 and k2 are opposite signs.

• For the state space model, A =           ∂f1 ∂x1 ∂f1 ∂x2 ∂f2 ∂x1 ∂f2 ∂x2           0 =       0 1 k1 + 3k2(y)2 0       0 =       0 1 k1 + 3k2(y0)2 0      

(140)

Fall 2001 16.31 7—10

• 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 if k1 < 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 35 1.3 1.35 1.4 1.45 1.5 y Time 0 5 10 15 20 25 30 35 −0.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.5 −0.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 the

(141)

Fall 2001 16.31 7—11

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)

(142)

Fall 2001 16.31 7—12

Example: Aircraft Dynamics

• Assumptions:

1. Earth is an inertial reference frame 2. A/C is a rigid body

3. Body frame B fixed to the aircraft (~i,~j, ~k)

• The basic dynamics are: ~ F = m ˙~vc I and ~T = H˙~ I ⇒ 1 mF = ˙~ ~vc B + BI~ω × ~vc Transport Thm. ⇒ ~T = H˙~ B + BI~ω × ~H

• Instantaneous mapping of ~vc and BI~ω into the body frame is given

by BI~ω = P~i + Q~j + R~k ~v c = U~i + V ~j + W~k ⇒ BIωB =        P Q R        ⇒ (vc)B =        U V W       

(143)

Fall 2001 16.31 7—13

• The overall equations of motion are then: 1 m ~ F = ˙~vc B + BI~ω × ~vc ⇒ m1        Fx Fy Fz        =        ˙ U ˙ V ˙ W        +        0 −R Q R 0 −P −Q P 0               U V W        =        ˙ U + QW − RV ˙ V + RU − P W ˙ W + P V − QU       

• These are clearly nonlinear — need to linearize about the equilibrium states.

• To find suitable equilibrium conditions, must solve 1 m        Fx Fy Fz        −        +QW − RV +RU − P W +P V − QU        = 0

(144)

Fall 2001 16.31 7—14

• Define the trim angular rates, velocities, and Forces

BIωo B =        P Q R        (vc) o B =        Uo 0 0        F o B =        Fxo Fyo Fzo       

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, define Velocities U0, U = U0 + u ⇒ U = ˙u˙ W0 = 0, W = w ⇒ W = ˙˙ w V0 = 0, V = v ⇒ V = ˙v˙ Angular Rates P0 = 0, P = p ⇒ P = ˙p˙ Q0 = 0, Q = q Q = ˙q˙ R0 = 0, R = r R = ˙r˙ Angles Θ0, Θ = Θ0 + θ Θ = ˙θ˙ Φ0 = 0, Φ = φ ⇒ ˙Φ = ˙φ Ψ0 = 0, Ψ = ψ ⇒ Ψ = ˙˙ ψ

(145)

Fall 2001 16.31 7—15

• 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 ∙ Fx0 + ∆Fx ¸ = ˙U + QW − RV ≈ ˙u + qw − rv ≈ ˙u 1 m ∙ Fy0 + ∆Fy¸ = ˙V + RU − P W ≈ ˙v + r(U0 + u) − pw ≈ ˙v + rU0 1 m ∙ Fz0 + ∆Fz ¸ = W + P V˙ − QU ≈ ˙w + pv − q(U0 + u) ≈ ˙w − qU0 ⇒ 1 m        ∆Fx ∆Fy ∆Fz        =        ˙u ˙v + rU0 ˙ w − 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

(146)

Fall 2001 16.31 7—16

% save this entire code as plant.m %

function [xdot] = plant(t,x) global n

xdot(1) = x(2);

xdot(2) = -3*(x(1))^n; xdot = xdot’;

return

% the use this part of the code in Matlab % to call_plant.m

global n

n=3; %nonlinear

x0 = [-1 2]; % initial condition

[T,x]=ode23(’plant’, [0 12], x0); %simulate NL equations for 12 sec n=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.®

(147)

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?

(148)

Fall 2001 16.31 8–1

TF’s 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 + a 1s2 + a2s + a3

2. Numerator order less than denominator order

y u = G(s) = b1s2 + b2s + b3 s3 + a 1s2 + a2s + a3 = N(s) D(s)

3. Numerator equal to denominator order

y

u = G(s) =

b0s3 + b1s2 + b2s + b3

s3 + a

1s2 + a2s + a3

(149)

Fall 2001 16.31 8–2 • Consider case 1 (specific example of third order, but the extension

to nth follows easily) y u = G(s) = 1 s3 + a 1s2 + a2s + a3

can be rewritten as the differential equation

y(3) + a1y + a¨ 2˙y + a3y = u

choose the output y and its derivatives as the state vector

x =   y¨˙y y   then the state equations are

˙x =   y (3) ¨ y ˙y   = 

−a1 1 −a0 2 −a0 3

0 1 0     y¨˙y y   +   10 0   u y =  0 0 1    y¨˙y y + [0]u

• This is typically called the controller form for reasons that will

become obvious later on.

– There are four classic (called canonical) forms – oberver,

con-troller, controllability, and observability. They are all useful in their own way.

(150)

Fall 2001 16.31 8–3 • Consider case 2 y u = G(s) = b1s2 + b2s + b3 s3 + a 1s2 + a2s + a3 = N(s) D(s) • Let y u = y v · v u

where y/v = N(s) and v/u = 1/D(s)

• Then the representation of v/u = 1/D(s) is the same as case 1

v(3) + a1v + a¨ 2˙v + a3v = u

use the state vector

x =   v¨˙v v   to get ˙x = A2x + B2u where A2 = 

−a1 1 −a02 −a0 3

0 1 0   and B2 =   10 0  

• Then consider y/v = N(s), which implies that

y = b1v + b¨ 2˙v + b3v =  b1 b2 b3    v¨˙v v   = C2x + [0]u

(151)

Fall 2001 16.31 8–4 • Consider case 3 with

y u = G(s) = b0s3 + b1s2 + b2s + b3 s3 + a 1s2 + a2s + a3 = β1s 2 + β 2s + β3 s3 + a 1s2 + a2s + a3 + D = G1(s) + D where D( s3 +a1s2 +a2s +a3 ) +( 1s2 2s +β3 ) = b0s3 +b1s2 +b2s +b3

so that, given the bi, we can easily find the βi

D = b0

β1 = 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

(152)

Fall 2001 16.31 8–5

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) (s − p1)(s − p2)· · · (s − pn) = r1 s − p1 + r2 s − p2 +· · · + rn s − pn

• Now define a collection of first order systems, each with state xi

X1 U(s) = r1 s − p1 ⇒ ˙x1 = p1x1 + r1u X2 U(s) = r2 s − p2 ⇒ ˙x2 = p2x2 + r2u ... Xn U(s) = rn s − pn ⇒ ˙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 =   r...1 rn C =   1... 1   T

(153)

Fall 2001 16.31 8–6

State-Space Models to TF’s

• 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(sI − A)−1B + DU(s) + C(sI − A)−1x(0−)

• By definition G(s) = C(sI − A)−1B + D is called the

Transfer Function of the system.

• And C(sI − A)−1x(0) is the initial condition response. It is part

(154)

Fall 2001 16.31 8–7

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 transform it to another model that

is equivalent in terms of its input-output properties.

• To see this, define Model 1 of G(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 = T z

– T is an invertible (similarity) transform matrix

˙z = T−1˙x = T−1(Ax + Bu)

= T−1(AT z + Bu)

= (T−1AT )z + T−1Bu = ¯Az + ¯Bu

and

y = Cx + Du = CT z + 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

(155)

Fall 2001 16.31 8–8 • Consider the two transfer functions:

G1(s) = C(sI − A)−1B + D G2(s) = ¯C(sI − ¯A)−1B + ¯¯ D Does G1(s) ≡ G2(s) ? G1(s) = C(sI − A)−1B + D = C(T T−1)(sI − A)−1(T T−1)B + D = (CT )T−1(sI − A)−1T(T−1B) + ¯D = ( ¯C)T−1(sI − A)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) = b1s

2 + b

2s + b3

s3 + a

1s2 + 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 9 degrees of freedom in the state-space model.

(156)

Fall 2001 16.31 9–1

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

(157)

Fall 2001 16.31 9–1

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(sI − A)−1B + D need to form the inverse of the matrix (sI − A) – a symbolic inverse – not easy at all.

• For simple cases, we can use the following:  a1 a2 a3 a4 −1 = 1 a1a4 − a2a3  a4 −a2 −a3 a1  For larger problems, we can also use Cramer’s Rule

• Turns out that an equivalent method is to form:

G(s) = C(sI − A)−1B + D = det  sI − A −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 roots of the numerator)

• Example from before: A =

−a11 −a02 −a03

0 1 0   , B =   10 0   , C =  b1 b2 b3 T then G(s) = 1 det(sI − A)     s + a1 a2 a3 −1 −1 s 0 0 0 −1 s 0 b1 b2 b3 0     = b3 + b2s + b1s 2 det(sI − A) and det(sI − A) = s3 + a1s2 + a2s + s3

(158)

Fall 2001 16.31 9–2

Time Response

• Can develop a lot of insight into the system response and how it is modeled by computing the time response x(t)

– Homogeneous part – Forced solution • Homogeneous Part

˙x = Ax, x(0) known – Take Laplace transform

X(s) = (sI − A)−1x(0)

so that

x(t) = L−1(sI − A)−1x(0)

– But can show

(sI − A)−1 = I s + A s2 + A2 s3 + . . . so L−1(sI − A)−1 = I + At + 1 2!(At) 2 + . . . = eAt – So x(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.m 1

– Note that e(A+B)t = eAteBt iff AB = BA

• We will say more about eAt when we have said more about A (eigenvalues

and eigenvectors)

• Computation of eAt = L−1{(sI − A)−1} straightforward for a 2-state system

(159)

Fall 2001 16.31 9–3 • 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 =   2e −t − e−2t e−t− e−2t −2e−t + 2e−2t −e−t + 2e−2t  

(160)

Fall 2001 16.31 10–1

Topic #10

16.31 Feedback Control

State-Space Systems

• What are the basic properties of a state-space model, and how do we analyze these?

• Time Domain Interpretations • System Modes

References

Related documents

An analysis of the economic contribution of the software industry examined the effect of software activity on the Lebanese economy by measuring it in terms of output and value

The new formalization using the stratified sample design with non-overlapping strata, allows to consider rigorously all the mathematical details of the model as for instance

A Bachelor's degree is awarded after the student has completed the courses required to gain 180 credits in a defined specialisation determined by each higher education

* This paper is presented to the 2nd KRIS-Brookings Joint Conference on &#34;Security and Diplomatic Cooperation between ROK and US for the Unification of the

     •  Location of event      •  Date(s) of event  Webcasting

Bahrain Arabian Gulf University College of Medicine and Medical Sciences – Department of Family and Community Medicine Egypt Assiut University Faculty of Medicine – Department

Various MC extracts were found to regulate inflammation mainly through NF- κB signaling pathway inhibition: in RAW 264.7 cells, bitter melon reduced TNF- α production, induced by

Investigating the Relationship between Ethical Leadership and Deviant Behaviors in the Workplace: The Mediating Role of Emotional Commitment and Moral Moral, Organizational