Chapter 8 Advanced Loopshaping In Chapter 7 we saw how to convert performance specifications on S and T into specifications on the loop transfer function L.For a stable,minimum-phase plant and L having at least the same relat ive degree as P,the controller was obtained from C=L/P.In this chapter we discuss extensions to this basic idea by doing loopshaping directly with C or other quantities and by considering plants with right half-plane(RHP)poles or zeros.Finally,we introduce several optimal control problems and explore in what sense loopshaping designs can be said to be optimal.Our aim is to extend and deepen our understanding of loopshaping,to provide an introduction to optimal design,and to establish some connections between the two approaches.Much of this chapter is closely related to what has traditionally been called classical control,particularly the work of Bode. 8.1 Optimal Controllers Recall from Section 4.5 that in general the norm (WIS2+W2T2)1/2 is a reasonable performance measure,a compromise norm for the robust performance problem. Throughout this chapter we consider problems where P,Wi,and W2 are fixed but C is variable, so it is convenient to indicate the funct ional dependence of this norm on C by defining (C):=(WiS+W2T2)2Ilo (8.1) Throughout this chapter we refer to the optimal C,the controller that minimizes for the purpose of comparing it to controllers obtained via ot her methods in order to help evaluate their effective- ness A procedure for determining the optimal C given P and weights Wi and W2 is developed in Chapter 12. We shall treat the unity-feedback loop of Figure 8.1.Suppose that we focus on the response of e and u to the two inputs d andn(r has the same effect as n),and recall that the transfer funct ions from d and n to e and u are given as follows: []-[][] If we introduce weights We on e,Wu on u,Wd on d,and Wn on n,then we could make our performance specification to keep the matrix [R][][w]-[ WeS WaP Wn] 107
Chapter Advanced Loopshaping In Chapter we saw how to convert performance specications on S and T into specications on the loop transfer function L For a stable minimumphase plant and L having at least the same relative degree as P the controller was obtained from C LP In this chapter we discuss extensions to this basic idea by doing loopshaping directly with C or other quantities and by considering plants with right halfplane RHP poles or zeros Finally we introduce several optimal control problems and explore in what sense loopshaping designs can be said to be optimal Our aim is to extend and deepen our understanding of loopshaping to provide an introduction to optimal design and to establish some connections between the two approaches Much of this chapter is closely related to what has traditionally been called classical control particularly the work of Bode Optimal Controllers Recall from Section that in general the norm kjWSj jWT j k is a reasonable performance measure a compromise norm for the robust performance problem Throughout this chapter we consider problems where P W and W are xed but C is variable so it is convenient to indicate the functional dependence of this norm on C by dening C kjWSj jWT j k Throughout this chapter we refer to the optimal C the controller that minimizes for the purpose of comparing it to controllers obtained via other methods in order to help evaluate their eective ness A procedure for determining the optimal C given P and weights W and W is developed in Chapter We shall treat the unityfeedback loop of Figure Suppose that we focus on the response of e and u to the two inputs d and n r has the same eect as n and recall that the transfer functions from d and n to e and u are given as follows e u P S S T CS d n If we introduce weights We on e Wu on u Wd on d and Wn on n then we could make our performance specication to keep the matrix We Wu P S S T CS Wd Wn WeS WuCS WdP Wn
108 CHAPTER 8.ADVANCED LOOPSHAPING Figure 8.1:Unity-feedback loop. small in some sense.A convenient specificat ion is (W.SP+WCS2)(WaPP+W)<1, which is equivalent to wsP+WT2)/。<1 where IWil=IWel(IWaP2+Wn12)12, IW2l IWul(IWn12P+Wal2)1/2. (8.2) Thus this problem fits the type of performance specification in (8.1). We will use this setup throughout this chapter,as it makes a useful "standard"problem for a number of reasons.First,it leads to some very interesting control problems,even when simple constant weights are used.Second,there is a rich theory available for this problem,although it will only be hinted at in this chapter.Third,it is easy to motivate problems in this framework that greatly stretch the loopshaping methods.Finally,despite its simplicity,the problem setup is easy to relate to what might arise in many practical situations. 8.2 Loopshaping with C The loopshaping procedure developed in Chapter 7 involved converting performance specifications on S and T into specifications on the loop transfer function L,and then constructing an L to satisfy the resulting specifications and have reasonable crossover characteristics.Assuming that the plant had neither RHP poles nor zeros,and that L had at least the same relative degree as P, the controller was obtained from C=L/P.In this section we consider a slightly different approach that focuses more directly on C.Rather than construct L without regard to P,we could begin with a very simple controller,say C=1,and compare the resulting L with the specificat ion.It is often easy then to add simple dynamics to C to meet the specification. In some instances it is more convenient to do loopshaping directly in terms of C rat her than L. This will typically occur when the weights on S and T share substantial dynamics with P,as in (8.2).If we put a constant weight of 1 on d and n and a constant weight of 0.5 on u and e,then the weights from (8.2)become We=Wu=0.5, Wa Wn =1, (8.3)
CHAPTER ADVANCED LOOPSHAPING C P r u y d n e Figure Unityfeedback loop small in some sense A convenient specication is jWeSj jWuCSj jWdP j jWnj which is equivalent to jWSj jWT j where jWj jWejjWdP j jWnj jWj jWujjWnj jP j jWdj Thus this problem ts the type of performance specication in We will use this setup throughout this chapter as it makes a useful standard problem for a number of reasons First it leads to some very interesting control problems even when simple constant weights are used Second there is a rich theory available for this problem although it will only be hinted at in this chapter Third it is easy to motivate problems in this framework that greatly stretch the loopshaping methods Finally despite its simplicity the problem setup is easy to relate to what might arise in many practical situations Loopshaping with C The loopshaping procedure developed in Chapter involved converting performance specications on S and T into specications on the loop transfer function L and then constructing an L to satisfy the resulting specications and have reasonable crossover characteristics Assuming that the plant had neither RHP poles nor zeros and that L had at least the same relative degree as P the controller was obtained from C LP In this section we consider a slightly dierent approach that focuses more directly on C Rather than construct L without regard to P we could begin with a very simple controller say C and compare the resulting L with the specication It is often easy then to add simple dynamics to C to meet the specication In some instances it is more convenient to do loopshaping directly in terms of C rather than L This will typically occur when the weights on S and T share substantial dynamics with P as in If we put a constant weight of on d and n and a constant weight of on u and e then the weights from become We Wu Wd Wn
8.2.LOOPSHAPING WITH C 109 Iwl=0.50P2+1)/2, 1W2=0.5(P2+1)1/2. (8.4) With Wi and W2 so defined,for the performance specification to be met the loopshape will usually be very similar to P,so that the controller C will have C1.We can get some insight into why this is so by interpreting the weights in terms of the requirements they place on C as follows For L=PC 1WS=0.25PP+1 Z+12 IWTP=0.251P2+1 |L-1+12 and W2Tl W S =C1. Assuming that (C)1 we have that lW|≈0.5P, lW2l≈0.5, w,S≈0.5O |W2Tl≈0.51Tl, and when|P≤l, 1 lW|≈0.5, 1W2l≈0.5, PI IW1S|≈0.5lS1, 1W2T|≈0.5lCS1. The crossover region can occur wherever P1.When P=1,we have wl=w= v② Viewing this as a standard loopshaping problem,we would expect thatLP and C=1. Example 1 Consider P given by P(s)=0.5 + 0.2s s2+2Cw8+w7 i=1 where wI=0.2,w2 =0.5,w3 =2,w4 =10,Si =0.02.The Bode magnit ude plot of P is shown in Figure 8.2,and the result ing weights Wi and W2 on S and T are shown in Figure 8.3. The complicated weights would appear to make this a tricky loopshaping problem,but in fact the controller C=1 meets the specification.The quant ity (WS2+IW2T2)1/2 (8.5) for C=1 is plotted in Figure 8.4.The optimal for this problem is approximately 0.69,so C=1 is very close to optimal. This example illustratesthe point that loopshaping directly using C can often be much simpler than loopshaping with L and solving for C.While the example is somewhat contrived,similar things can happen quite naturally.In particular,this example exhibits some characteristics of plants that arise in the control of flexible structures. Example 2 We will now use the same setup but with a slightly simpler plant P which we will motivate with a simple mechanical analog of a two-mode flexible structure (Figure 8.5).Shown is a one-dimensional rigid beam of mass M,length 21,and moment of inertia I connected to a
LOOPSHAPING WITH C jWj jP j jWj jP j With W and W so dened for the performance specication to be met the loopshape will usually be very similar to P so that the controller C will have jCj We can get some insight into why this is so by interpreting the weights in terms of the requirements they place on jCj as follows For L P C jWSj jP j jL j jWT j jP j jL j and jWT j jWSj jCj Assuming that C at frequencies for which jP j we have that jWj jP j jWj jWSj jT j jCj jWT j jT j and when jP j jWj jWj jP j jWSj jSj jWT j jCSj The crossover region can occur wherever jP j When jP j we have jWj jWj p Viewing this as a standard loopshaping problem we would expect that jLjjP j and jCj Example Consider P given by P s s X i s s iis i where i The Bode magnitude plot of P is shown in Figure and the resulting weights W and W on S and T are shown in Figure The complicated weights would appear to make this a tricky loopshaping problem but in fact the controller C meets the specication The quantity jWSj jWT j for C is plotted in Figure The optimal for this problem is approximately so C is very close to optimal This example illustrates the point that loopshaping directly using C can often be much simpler than loopshaping with L and solving for C While the example is somewhat contrived similar things can happen quite naturally In particular this example exhibits some characteristics of plants that arise in the control of exible structures Example We will now use the same setup but with a slightly simpler plant P which we will motivate with a simple mechanical analog of a twomode exible structure Figure Shown is a onedimensional rigid beam of mass M length l and moment of inertia I connected to a
110 CHAPTER 8 ADVANCED LOOPSHAPING 么 101 100 101 10 10 100 101 102 Figure 82:Bode plot of P2 102 101 100 10 10- 101 100 101 102 Figure 823:Bode plots of W(solid)and W2(dash)2
CHAPTER ADVANCED LOOPSHAPING 10-2 10-1 100 101 102 10-2 10-1 100 101 102 Figure Bode plot of jP j 10-1 100 101 102 10-2 10-1 100 101 102 Figure Bode plots of jWj solid and jWj dash
8.2.LOOPSHAPING WITH C 111 0.75 0.7 0.65 0.6 0.55 L1LL 101 100 101 102 frequency Figure 8.4:(WiS+W2T2)/2 for C=1 (solid)and optimal C (dash). M.I 。。 Figure 8.5:Mechanical structure,Example 2
LOOPSHAPING WITH C 0.5 0.55 0.6 0.65 0.7 0.75 10-2 10-1 100 101 102 frequency magnitude Figure jWSj jWT j for C solid and optimal C dash M I lu l k k x m U Figure Mechanical structure Example
112 CHAPTER 8.ADVANCED LOOPSHAPING fixed base by two springs,each with spring constant k.We assume that the beam undergoes small vertical deflections x of the center of mass and small rotations 0 about the center of mass.If we apply a vertical force u at position from the center of mass,the linearized equations of motion are M元+2kx=u, I0+2kl20=1uu. Taking M=2,I=0.5,l=2,k =0.25,and u 1,we get that the transfer functions from u to x and 0 are respectively 0.5 2 s2+0.52 s2+22 We will now measure y:=i+0,the vertical velocity of the beam at the position +1 from the center of mass.For +1,the measurement is at the same location as the force input u;this is called collocated In the -1 case the measurement is at the ot her side of the beam,noncollocated.The resulting transfer function from u to y is then 0.5s 2s(2±0.5)s(1±s2) P(8)=32+0.5±g2+2=(62+0.5)0s2+2西° (8.6) A plot of P is shown in Figure 8.6.The collocated sy stem has zeros at +j and the noncollocated 102 105 100 10 101 109 10 Figure 8.6:Bode plots of P for +(solid)and-(dash). system has zeros at +1.As expected,we shall see that the noncollocated sy stem is more difficult to control.For the collocated case it turns out that the optimal controller for the weights (8.3) is exactly C =1,which is again much simpler than the resulting loopshape.It also turns out that this result holds for all positive values of M,I,l,,and k,excluding those for which the
CHAPTER ADVANCED LOOPSHAPING xed base by two springs each with spring constant k We assume that the beam undergoes small vertical deections x of the center of mass and small rotations about the center of mass If we apply a vertical force u at position lu from the center of mass the linearized equations of motion are Mx kx u I kl luu Taking M I l k and lu we get that the transfer functions from u to x and are respectively s s We will now measure y x the vertical velocity of the beam at the position from the center of mass For the measurement is at the same location as the force input u this is called col located In the case the measurement is at the other side of the beam noncol located The resulting transfer function from u to y is then P s s s s s s s s s A plot of jP j is shown in Figure The collocated system has zeros at j and the noncollocated 10-1 100 101 102 10-1 100 101 Figure Bode plots of jP j for solid and dash system has zeros at As expected we shall see that the noncollocated system is more dicult to control For the collocated case it turns out that the optimal controller for the weights is exactly C which is again much simpler than the resulting loopshape It also turns out that this result holds for all positive values of M I l lu and k excluding those for which the
8.3.PLANTS WITH RHP POLES AND ZEROS 113 system is not mechanically possible.In each case,the optimal controller is C=1 and the optimal =v2/20.707.A proof of this,along with a discussion of the noncollocated case,is given in the last section of this chapter. It is interesting to note that both examples above have multiple crossover frequencies,that is,several distinct frequencies at which L=1.By contrast,most previous examples had only one crossover frequency.Indeed,most problems considered in classical control texts have a single crossover,and this might be considered typical.There are,however,certain application domains, such as the control of flexible struct ures,where mult iple crossovers are common.It turns out that such systems have some interesting characteristics which may appear counterintuitive to readers unfamiliar with them.These issues will be explored more fully in the last section of this chapter. It is not unusual for a reasonable controller to be much simpler than the resulting loopshape even when the problem setup is different from the one considered in the examples above.It often makes sense to begin the loopshaping design process with L equal to some constant times P and then add dynamic elements to try to get the right loopshape. Example 3 As a slightly different example,consider the same setup as in Example 1 but with 1 0.1s P(8)=3十+g2+2(18+ where =0.02 and w =0.5.Suppose also that the weight on the error e is We(s)=0.58+0.5 s+0.01 with Wu =0.5 and Wa Wn 1 as before.This gives us the performance objective as in (8.1), (8.2),and (8.4)except that now Wil=Wel(P2+1)1/2, |W2=0.5(0P|-2+1)112. The Bode magnitude plot of P is shown in Figure 8.7 and the resulting weights Wi and W2 on S and T are shown in Figure 8.8. If we compare the loopshaping constraints in Figure 8.9 with the Bode plot of P in Figure 8.7 we see immediately that C=1 will not work because there is not enough gain at low frequency. Adding the simple lag compensator co=年品 gives the loopshape shown in Figure 8.9 and (WiS2+W2T2)1/2 as shown in Figure 8.10.Fig- ure 8.10 also shows the optimal level for this problem.The simple controller found here is very close to optimal. 8.3 Plants with RHP Poles and Zeros Plants with RHP Zeros Suppose that we begin a loopshaping problem with a plant Po,controller Co,and loop transfer function Lo PoCo with neither RHP poles nor zeros and a single crossover.Now consider the effect of adding a single RHP zero at s =z to the plant by multiply ing by the all-pass function P(s)=之-8 2+8
PLANTS WITH RHP POLES AND ZEROS system is not mechanically possible In each case the optimal controller is C and the optimal p A proof of this along with a discussion of the noncollocated case is given in the last section of this chapter It is interesting to note that both examples above have multiple crossover frequencies that is several distinct frequencies at which jLj By contrast most previous examples had only one crossover frequency Indeed most problems considered in classical control texts have a single crossover and this might be considered typical There are however certain application domains such as the control of exible structures where multiple crossovers are common It turns out that such systems have some interesting characteristics which may appear counterintuitive to readers unfamiliar with them These issues will be explored more fully in the last section of this chapter It is not unusual for a reasonable controller to be much simpler than the resulting loopshape even when the problem setup is dierent from the one considered in the examples above It often makes sense to begin the loopshaping design process with L equal to some constant times P and then add dynamic elements to try to get the right loopshape Example As a slightly dierent example consider the same setup as in Example but with P s s s s s where and Suppose also that the weight on the error e is Wes s s with Wu and Wd Wn as before This gives us the performance ob jective as in and except that now jWj jWejjP j jWj jP j The Bode magnitude plot of P is shown in Figure and the resulting weights W and W on S and T are shown in Figure If we compare the loopshaping constraints in Figure with the Bode plot of P in Figure we see immediately that C will not work because there is not enough gain at low frequency Adding the simple lag compensator Cs s s gives the loopshape shown in Figure and jWSj jWT j as shown in Figure Fig ure also shows the optimal level for this problem The simple controller found here is very close to optimal Plants with RHP Poles and Zeros Plants with RHP Zeros Suppose that we begin a loopshaping problem with a plant P controller C and loop transfer function L PC with neither RHP poles nor zeros and a single crossover Now consider the eect of adding a single RHP zero at s z to the plant by multiplying by the allpass function Pz s z s z s
114 CHAPTER ADVANCED LOOPSHAPING 么 100 10- 100 101 102 Figure8.上:Bode plot of P\. 102 TTTTT TTTTT TTTTT 101 100 10 102 101 100 101 102 Figure 8.8:Bode plots of W usolid)and W2 udash)
CHAPTER ADVANCED LOOPSHAPING 10-2 10-1 100 101 10-2 10-1 100 101 102 Figure Bode plot of jP j 10-1 100 101 102 10-2 10-1 100 101 102 Figure Bode plots of jWj solid and jWj dash
8.3.PLANTS WITH RHP POLES AND ZEROS 115 么 10 100 101 三 101 100 101 102 Figure 8.9:Loopshaping constraints and jLj usolid)for C us 1)-s +0.01). 0.85 TTTT TTTTTT TTTTT 0.8 0.75 0.7t 0.65 0.6 0.55 0.5 101 100 101 102 Figure 8.10:uiwi Sj2 jw2 Tj2)112 for C ws +1)-ts +0.01)usolid)and optimal C udash)
PLANTS WITH RHP POLES AND ZEROS 10-2 10-1 100 101 102 10-2 10-1 100 101 102 Figure Loopshaping constraints and jLj solid for C s s 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 10-2 10-1 100 101 102 Figure jWSj jWT j for C s s solid and optimal C dash
116 CHAPTER 2.ADVANCED LOOPSHAPING where the sign of Pz is chosen so that Pa(0)=1.This also adds the same factor to the loop transfer function,which becomes L(s)=Lo(s)2-3 2+8 From the results of Chapter 6 we would expect problems unless z is larger than the crossover frequency:Recall that ‖WSl1≥IW(z)l, so that |Wi must not be large at z. We may also consider the effect of the RHP zero in terms of the gain-phase relations from Section 7.2.The phase at crossover will be the original phase of Lo plus the phase of P: L(w)=Lo(lw)+/P2(w), /P(|w)=21(-lw+z). The phase from Pz is negative and can be substantial as w approaches z,with/P2(z)=-T82. Again,we see that if z approaches the crossover frequency,the additional phase will degrade the closed-loop system performance or even lead to instability.Thus RHP zeros make the problem worse for systems with one crossover.As an example,let the initial loopshape be Lo(s)=18s with L as above.The crossover frequency is w=1 and the closed-loop system is stable if z>1 and unstable if z≤1. If Pz has a complex pair of RHP zeros,then Pa(s)= ωz-2(2w28+8 wz+2(2w28+s and /P(|w)=21(-2ww+wz-w. Observe that for lightly damped zeros where z is small,the phase changes abruptly near w=wz. Otherwise,the same remarks apply here as in the case of one RHP zero.The simplest strategy to adopt in doing loopshaping designs for systems with RHP zeros is to proceed as usual while keeping track of the extra phase. It would seem from this discussion that RHP zeros are always undesirable,that we would always avoid them if possible,and that we would never deliberately introduce them in our controllers.It is clearly true that all other things being equal,there is no advantage in having RHP zeros in the plant,because we could always add them in the controller if they were desirable.The issue of using RHP zeros in the controller is more subtle.Basically,they are clearly undesirable when there is only one crossover,but may be useful when there are multiple crossovers.This issue will be considered more fully in later sections on optimality. Plants with RHP Poles The problems created by RHP poles are similar to those created by RHP zeros,but there are important differences.Suppose that we begin again with a loopshaping problem with a plant Po, controller Co,and loop transfer function Lo PoCo with neither RHP poles nor zeros and a single crossover.Now consider the effect of adding a single RHP pole at s=p to the plant by mult iplying it by the all-pass function B(s)=8+卫 8-D
CHAPTER ADVANCED LOOPSHAPING where the sign of Pz is chosen so that Pz This also adds the same factor to the loop transfer function which becomes Ls Ls z s z s From the results of Chapter we would expect problems unless z is larger than the crossover frequency Recall that kWSk jWz j so that jWj must not be large at z We may also consider the eect of the RHP zero in terms of the gainphase relations from Section The phase at crossover will be the original phase of L plus the phase of Pz Lj Lj Pz j Pz j j z The phase from Pz is negative and can be substantial as approaches z with Pz jz Again we see that if z approaches the crossover frequency the additional phase will degrade the closedloop system performance or even lead to instability Thus RHP zeros make the problem worse for systems with one crossover As an example let the initial loopshape be Ls s with L as above The crossover frequency is and the closedloop system is stable if z and unstable if z If Pz has a complex pair of RHP zeros then Pz s z zzs s z zzs s and Pz j zzj z Observe that for lightly damped zeros where z is small the phase changes abruptly near z Otherwise the same remarks apply here as in the case of one RHP zero The simplest strategy to adopt in doing loopshaping designs for systems with RHP zeros is to proceed as usual while keeping track of the extra phase It would seem from this discussion that RHP zeros are always undesirable that we would always avoid them if possible and that we would never deliberately introduce them in our controllers It is clearly true that all other things being equal there is no advantage in having RHP zeros in the plant because we could always add them in the controller if they were desirable The issue of using RHP zeros in the controller is more subtle Basically they are clearly undesirable when there is only one crossover but may be useful when there are multiple crossovers This issue will be considered more fully in later sections on optimality Plants with RHP Poles The problems created by RHP poles are similar to those created by RHP zeros but there are important dierences Suppose that we begin again with a loopshaping problem with a plant P controller C and loop transfer function L PC with neither RHP poles nor zeros and a single crossover Now consider the eect of adding a single RHP pole at s p to the plant by multiplying it by the allpass function Pps s p s p