Control Systems I Lecture 10: System Specifications


 Brianne Lindsey
 1 years ago
 Views:
Transcription
1 Control Systems I Lecture 10: System Specifications Readings: Guzzella, Chapter 10 Emilio Frazzoli Institute for Dynamic Systems and Control DMAVT ETH Zürich November 24, 2017 E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
2 Tentative schedule # Date Topic 1 Sept. 22 Introduction, Signals and Systems 2 Sept. 29 Modeling, Linearization 3 Oct. 6 Analysis 1: Time response, Stability 4 Oct. 13 Analysis 2: Diagonalization, Modal coordinates. 5 Oct. 20 Transfer functions 1: Definition and properties 6 Oct. 27 Transfer functions 2: Poles and Zeros 7 Nov. 3 Analysis of feedback systems: internal stability, root locus 8 Nov. 10 Frequency response 9 Nov. 17 Analysis of feedback systems 2: the Nyquist condition 10 Nov. 24 Specifications for feedback systems 11 Dec. 1 Loop Shaping 12 Dec. 8 PID control 13 Dec. 15 Implementation issues 14 Dec. 22 Robustness E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
3 The Nyquist condition and robustness margins If the openloop is stable, then we know that in order for the closedloop to be stable the Nyquist plot of L(s) should NOT encircle the 1 point. The gain margin and phase margin measure how close the system is to closedloop instability. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
4 The Nyquist condition on Bode plots If the openloop is stable, then we know that in order for the closedloop to be stable the Nyquist plot of L(s) should NOT encircle the 1 point. In other words, L(jω) < 1 whenever L(jω) = 180. On the Bode plot, this means that the magnitude plot should be below the 0 db line if/when the phase plot crosses the 180 line. Remember that this condition is valid only if the open loop is stable. In all other cases (including nonminimum phase zeros) it is strongly recommended to double check any conclusion on closedloop stability using other methods (Nyquist, root locus). E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
5 Gain and Phase Margin The distance from the Nyquist plot to the 1 point is a measure of robustness. On the bode plot, it is easy to measure this distance in terms of gain and phase margin Bode Diagram Magnitude (db) Phase (deg) E. Frazzoli 10 (ETH) Lecture 10: Control 10 1 Systems I /11/ / 27
6 Summary of the previous lecture In the previous lecture, we learned: How to sketch a polar plot (and hence a Nyquist plot), based on Bode plots The Nyquist condition to determine closedloop stability using a Nyquist plot. How to check the Nyquist condition on a Bode plot. How to quickly assess the robustness of a feedback control system. Now we have three graphical methods to study closedloop stability given the (open)loop transfer function. 1 Root locus: always correct if applicable (assumes finitedimensional system) 2 Nyquist: always correct, always appplicable; 3 Bode: very useful for control system design, however may be misleading in determining closedloop stability (e.g., for openloop unstable systems). So far we have only looked at analysis issues, i.e., how to determine closedloop stability; from now on we will concentrate on control synthesis, i.e., how to design a feedback control system that makes a system behave as desired. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
7 Plan for this lecture We have seen how to establish whether the closedloop system will be stable or not, based on the (open)loop transfer function. The next step is to evaluate how well the closedloop will behave, e.g., how quickly and how closely the closedloop system can track commands, how well it can reject disturbances, modeling errors, and noise. Specifications on the closedloop behavior are typically given using two main paradigms, plus one that can be seen both ways: Steadystate error Timedomain specifications Frequencydomain specifications In this lecture we will learn about both kinds of specifications, and what they mean in terms of the closedloop system and/or the (open)loop transfer function. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
8 Proportional feedback E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
9 Steadystate error to step inputs r e u C Recall the following transfer function (and that L(s) = P(s)C(s)): P r e, d e : S(s) = d y L(s) If the input is a unit step, i.e., r(t) = 1 = e 0t for t 0, the steadystate output will be e ss (t) = S(0)e 0t = 1, for t L(0) So if lim s 0 L(s) = k Bode = k DC is finite then the steadystate error to a unit step is 1/(1 + k DC ). If the limit is infinite (i.e., there is a pole at s = 0, i.e., L(s) contains an integrator), the steadystate error is zero. n E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
10 Steadystate error to higherorder ramps More in general, one may ask the closedloop system to have a finite steadystate error to a unit ramp of order m = {0, 1, 2,...}, i.e., r(t) = 1 m! tm, t 0. The steadystate error can be computed as ( e ss (t) = lim s L(s) est s m ) E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
11 System type The result depends on the type of the system, i.e., the number of integrators in L(s), i.e., the number of poles of L(s) at s = 0, and is summarized as follows e ss m = 0 m = 1 m = 2 1 Type k Bode 1 Type 1 0 In plain English: k Bode Type k Bode The steadystate error is smaller as the (Bode) gain increases; A requirement to have zero steadystate errors to ramps of order m, is the same as requiring to have at least m + 1 integrators on the path from the error e to the (reference/disturbanc) input. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
12 5.3. Time INPUT/OUTPUT domain: RESPONSE step response of a 2nd order system Overshoot M p Output Rise time T r Settling time T s Steadystate value y ss Time [sec] Figure Time 5.9: domain Sample specifications step response. are The usually rise time, given overshoot, in terms settling of the time step and response steadystate of value give the key performance properties of the signal. a 2nd order system: ω 2 n equilibrium point G(s) in the = absence of any input), then we can rewrite the solution as s 2 + 2ζω n s + ω 2 y(t) = (1 e σt cos(ωt)). y(t)=ca } 1 {{ e At n B } +D } CA {{ 1 B }, t > 0. (5.22) Recall that the poles are at s = σ ± jω, and that ωn 2 = σ 2 + ω 2, ζ = σ/ω n. transient steadystate The first E. Frazzoli term(eth) is the transient response Lecture 10: Control andsystems decays I to zero as t. 24/11/2017 The second 12 / 27
13 Secondorder response: shape vs. time scale E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
14 Analytical approximations Rise time depends primarily on ω n : note that T 100 = π Other formulas available, e.g., T 90 ( ζ) 2π Peak time: depends on the frequency ω, T p π ω ; % Overshoot: depends on the damping ζ: 2ω ω n. (assuming ζ < 1). ln M p σπ ω = ζπ, 1 ζ 2 ζ2 = (ln M p) 2 π 2 + (ln M p ) 2. Settling time (e.g., to 2%): depends on the real part of the poles σ, T s = ln 2% ln 2%, σ =. σ T s Note: the settling time is the only relevant specification (in addition to the steadystate error to a unit step) for a firstorder system. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
15 Dominant poles approximation What if the closedloop system if of higher order? Often one can approximate it with a secondorder (or even firstorder) system, and apply the specifications to the approximation. The approximation is based on the concept of dominant poles. Dominant poles are typically those with the largest real part (i.e., the slowest decay rate); Exceptions are made when the poles with the largest real part also have very small residues (typically because of nearby zeros). G(s) = r1 + r g(t) = r 1e p1t + r 2e p2t +... s p 1 s p 2 E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
16 Dominant poles approximation examples 130 Consider a thirdorder system with G(s) = (s + 5)(s j)(s + 1 5j). The contribution to the response of the pole at s = 5 will decay as e 5t, while that of the poles at s = 1 ± 5j will decay as e t. Dominant pole approximation: G dom (s) = 26 (s j)(s + 1 5j) G = zpk([],[5, 1+5*i, 15*i],130) full dominant poles only Amplitude Time (seconds) E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
17 Dominant poles approximation examples 13 Consider a thirdorder system with G(s) = (s + 0.5)(s j)(s + 1 5j). The contribution to the response of the pole at s = 0.5 will decay as e 0.5t, while that of the poles at s = 1 ± 5j will decay as e t. Dominant pole approximation: G dom (s) = 0.5 s G = zpk([],[0.5, 1+5*i, 15*i],13) full dominant poles only Amplitude Time (seconds) E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
18 Dominant poles approximation examples (s + 0.6) Consider a thirdorder system with G(s) = (s + 0.5)(s j)(s + 1 5j). The zero at s = 1 makes the magnitude of the residue of the pole at s = 0.5 small wrt to the magnitudes of the residues of the other poles effectively we have a nearpole/zero cancellation. Dominant pole approximation: G dom (s) = G = zpk([0.6],[0.5, 1+5*i, 15*i],21.667) 26 (s j)(s + 1 5j). full dominant poles only Amplitude E. Frazzoli (ETH) Lecture 3 10: Control 4 Systems 5 I /11/ / 27
19 Using timedomain specifications Timedomain specifications impose constraints on the locations of the dominant closedloop poles. In particular: Settling time constraints require the real part of the dominant poles to be to the less than some maximum value. Peak overshoot constraints require the damping ratio to be more than some minimum value resulting in a sector of the left half plane. Rise time constraints require that the distance of the dominant poles from the origin, and/or (the absolute value of) the imaginary part of the dominant poles to be more than some minimum value. When checking timedomain specifications, it is particularly convenient to use the root locus. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
20 Timedomain specifications in the complex plane Im Excessive overshoot Good Re Settling time too long E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
21 Command tracking/disturbance rejection vs. noise rejection r e u y C P n 1 Recall: the sensitivity function S(s) = is the transfer function from 1 + L(s) the reference input r or the output disturbance d to the error e. Hence, if we want small errors to reference inputs, and want to reject disturbances, we need S(s) to be small. The transfer function from the noise input n to the output y is the complementary sensitivity T (s) = L(s). If we do not want the effect of 1 + L(s) the noise to be observed at the output, then we need T (s) to be small. So if we want to reject both disturbances and noise, and want to follow commands well, we need both T (s) and S(s) to be small. But T (s) + S(s) = 1, so they cannot be small at the same time! d E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
22 Frequencydomain specifications The main point in using frequency domain specifications is exactly to handle such requirements. Typically commands and disturbances act at low frequency, e.g., no more than 10 Hz. Noise is typically a highfrequency phenomenon, e.g., more than 100 Hz. So we can reconcile both command tracking/disturbance rejection AND noise rejection by separating them frequencywise! Make S(jω) << 1 (hence T (jω) 1 at low frequencies. e.g., ensure that commands are tracked with max 10% error up to a frequency of 10Hz. Make T (jω) << 1 at high frequencies. e.g., ensure that noise is reduced by a factor of 10 at the output at frequencies higher than 100 Hz. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
23 Frequencydomain specifications on the Bode plot Frequencydomain specifications are usually expressed in terms of closedloop frequency response. Can we write them in terms of the open loop frequency response? Indeed we can. Remember that for good command tracking / disturbance rejection, we want S(jω) = 1 + L(jω) 1 to be small at low frequencies, i.e., we want L(jω) to be large at low frequencies. Typically this is written as S(jω) W 1 (jω) < 1 for some function W 1 (jω) that is large at low frequency. This translates to 1 + L(jω) > W 1 (jω), which is approximated as L(jω) > W 1 (jω). This can be seen as a low frequency obstacle on the magnitude Bode plot. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
24 Frequencydomain specifications on the Bode plot For good noise rejection, we want T (jω) = L(jω) / 1 + L(jω) to be small at high frequencies. If T (jω) is small, then L(jω) has to be small, and T (jω) L(jω) (at high frequencies). Typically this is written as T (jω) W 2 (jω) < 1 for some function W 2 (jω) that is large at high frequency. This translates to L(jω) < W 2 (jω) 1. This can be seen as a highfrequency obstacle on the Bode plot. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
25 Closedloop bandwidth and (openloop) crossover The bandwidth of the closedloop system is defined as the maximum frequency ω for which T (jω) > 1/ 2, i.e., the output can track the commands to within a factor of 0.7. Let ω c be the crossover frequency, such that L(jω c ) = 1. If we assume that the phase margin is about 90, then L(jω c ) = j, and T (jω c ) = 1/ 2. In other words, the (openloop) crossover frequency is approximately equal to the bandwidth of the closedloop system. E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
26 Bodeplot obstacle course Load disturbance attenuation log L iω Robustness ω gc High frequency measurement noise logω E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27
27 Summary of the lecture We discussed how we can write specifications for the closedloop behavior in terms of: Steadystate error: this has consequences on the necessary DC gain, and/or the number of integrators in the loop transfer function (type of the system); Timedomain specifications: these describe how the closedloop system, approximated as a secondorder dominant system, should behave in time. These specifications are relatively easy to formulate and understand, but do not lend themselves directly to easy design best interpreted on the complex plane/root locus. Matlab can help a lot in meeting these specifications. Frequencydomain specifications: these give a technically sophisticated, powerful set of specifications in terms of ability of the system to follow commands, and to reject disturbances and noise. These specifications apply directly to powerful methods for control design the Bode plot obstacle course. In the next lecture we will finally start seeing how we can design a control system that satisfy all the requirements (closedloop stability + all the specs we covered in this lecture). E. Frazzoli (ETH) Lecture 10: Control Systems I 24/11/ / 27