Presentation on theme: "1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus."— Presentation transcript:
1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus
2 Outline Root Locus Design Method Root locus definition The phase condition Test points, and sketching a root locus Dynamic Compensation Lead compensation Lag compensation
3 Introduction Closed loop transfer function Characteristic equation, roots are poles in T(s)
4 Introduction Dynamic features depend on the pole locations. For example, time constant , rise time t r, and overshoot M p (1st order) (2nd order)
5 Introduction Root locus Determination of the closed loop pole locations under varying K. For example, K could be the control gain. The characteristic equation can be written in various ways
6 Introduction Root locus of a motor position control (example)
7 Introduction break-away point
8 Introduction Some root loci examples (K from zero to infinity)
9 Sketching a Root Locus Definition 1 The root locus is the values of s for which 1+KL(s)=0 is satisfied as K varies from 0 to infinity (pos.). Definition 2 The root locus is the points in the s-plane where the phase of L(s) is 180°. The angle to a point on the root locus from zero number i is i. The angle to a point on the root locus from pole number i is i. Therefore,
10 Sketching a Root Locus s0s0 p p* A root locus can be plotted using Matlab: rlocus(sysL)
11 Root Locus characteristics Rule 1 (of 6) The n branches of the locus start at the poles L(s) and m of these branches end on the zeros of L(s).
12 Root Locus characteristics Rule 2 (of 6) The loci on the real axis (real-axis part) are to the left of an odd number of poles plus zeros. Notice, if we take a test point s 0 on the real axis : The angle of complex poles cancel each other. Angles from real poles or zeros are 0° if s 0 are to the right. Angles from real poles or zeros are 180° if s 0 are to the left. Total angle = 180° + 360° l
13 Root Locus characteristics Rule 3 (of 6) For large s and K, n-m branches of the loci are asymptotic to lines at angles l radiating out from a point s = on the real axis. ll For example
14 Root Locus characteristics n-m=1n-m=2n-m=3n-m=4 For ex., n-m=3
15 Root Locus Rule 4: The angles of departure (arrival) of a branch of the locus from a pole (zero) of multiplicity q. 1,dep = 60 deg. 2,dep = 180 deg. 3,dep = 300 deg. 3 poles: q = 3
16 Root Locus characteristics Rule 5 (of 6) The locus crosses the j axis at points where the Routh criterion shows a transition from roots in the left half-plane to roots in the right half-plane. Routh: A system is stable if and only if all the elements in the first column of the Routh array are positive.
17 Root Locus characteristics Rule 6 (of 6) The locus will have multiplicative roots of q at points on the locus where (1) applies. The branches will approach a point of q roots at angles separated by (2) and will depart at angles with the same separation. Characteristic equation
18 Example Root locus for double integrator with P-control Rule 1: The locus has two branches that starts in s=0. There are no zeros. Thus, the branches do not end at zeros. Rule 3: Two branches have asymptotes for s going to infinity. We get
19 Rule 2: No branches that the real axis. Rule 4: Same argument and conclusion as rule 3. Rule 5: The loci remain on the imaginary axis. Thus, no crossings of the j -axis. Rule 6: Easy to see, no further multiple poles. Verification:
20 Example Root locus for satellite attitude control with PD-control
23 Selecting the Parameter Value The (positive) root locus A plot of all possible locations of roots to the equation 1+KL(s)=0 for some real positive value of K. The purpose of design is to select a particular value of K that will meet the specifications for static and dynamic characteristics. For a given root locus we have (1). Thus, for some desired pole locations it is possible to find K.
24 Selecting the Parameter Value Example Selection of K using Matlab: [K,p]=rlocfind(sysL)
25 Dynamic Compensation Some facts We are able to determine the roots of the characteristic equation (closed loop poles) for a varying parameter K. The location of the roots determine the dynamic characteristics (performance) of the closed loop system. It might not be possible to achieve the desired performance with D(s) = K. Controller design using root locus Lead compensation (similar to PD control) overshoot, rise time requirements Lag compensation (similar to PI control) steady state requirements
26 Dynamic Compensation PD Lead PI Lag
27 Lead Compensation PD P Lower damping ratio with PD !
28 Lead Compensation PD control Pure differentiation Output noise has a great effect on u(t) Solution: Insert a pole at a higher frequency controller D(s) plant G(s) r(t)u(t)y(t)e(t) + - noise + +
29 Lead Compensation
30 Lead Compensation Selecting p and z Usually, trial and error The placement of the zero is determined by dynamic requirements (rise time, overshoot). The exact placement of the pole is determined by conflicting interests. suppression of output noise effectiveness of the zero In general, the zero z is placed around desired closed loop n the pole p is placed between 5 and 20 times of z
31 Lead Compensation Design approach (A) Initial design z= n, p=5z Noise: additional requirement, max(p)=20 Iterations First design: z= n, p=5z (neglecting the add. req.) Second design: z= n, p=20 Third design: new z, p=20
32 Lead Compensation Possible pole location Matlab – design 1 sysG = tf(,[1 1 0]) sysD = tf([1 7],[1 5*7]) rlocus(sysD*sysG)
33 Lead Compensation No possible pole location ! Matlab – design 2 sysG = tf(,[1 1 0]) sysD = tf([1 7],[1 20]) rlocus(sysD*sysG)
34 Lead Compensation Possible location Matlab – design 3 sysG = tf(,[1 1 0]) sysD = tf([1 4],[1 20]) rlocus(sysD*sysG) New zero location
35 Lead Compensation Design approach (B) Pole placement from the requirements Noise: Additional requirement, max(p)=20. So, p=20 to minimize the effect of the pole.
36 Lead Compensation
37 Lead Compensation Pole location Matlab – design B sysG = tf(,[1 1 0]) sysD = tf([1 5.4],[1 20]) rlocus(sysD*sysG)
38 Lead Compensation Exercise Design a lead compensation D(s) to the plant G(s) so that the dominant poles are located at s = -2 ± 2j controller D(s) plant G(s) r(t)u(t)y(t)e(t) + - You can use, triangle a/sin(A) = b/sin(B)
39 Lead Compensation Answer we have three poles and one zero 11 22 Notice, triangle a/sin(A) = b/sin(B)
40 Dynamic Compensation PD Lead PI Lag
41 Lag Compensation Lag compensation Steady state characteristics (requirements) Position error constant K p Velocity error constant K v Let us continue using the example system and the designed controller (lead compensation)
42 Lag Compensation Calculation of error constants Suppose we want K v ≥ 100 We need additional gain at low frequencies !
43 Lag Compensation Selecting p and z To minimize the effect on the dominant dynamics z and p must chosen as low as possible (i.e. at low frequencies) To minimize the settling time z and p must chosen as high as possible (i.e. at high frequencies) Thus, the lag pole-zero location must be chosen at as high a frequency as possible without causing any major shifts in the dominant pole locations
44 Lag Compensation Design approach Increase the error constant by increasing the low frequency gain Choose z and p somewhat below n Example system: K = 1 (the proportional part has already been chosen) z/p = 3, with z = 0.03, and p = 0.01.
45 Lag Compensation Notice, a slightly different pole location Lead-lag Controller
46 Lag Compensation z p
47 Lag Compensation Step
48 Lag Compensation Ramp
49 Notch compensation Example system We have successfully designed a lead-lag controller Suppose the real system has a rather undampen oscillation about 50 rad/sec. Include this oscillation in the model Can we use the original controller ?
50 Notch compensation Step response using the lead- lag controller
51 Notch compensation Aim: Remove or dampen the oscillations Possibilities Gain stabilization Reduce the gain at high frequencies Thus, insert poles above the bandwidth but below the oscillation frequency – might not be feasible Phase stabilization (notch compensation) A zero near the oscillation frequency A zero increases the phase, and ≈ PM/100 Possible transfer function If n < 1, complex zeros and double pole at 0
52 Notch compensation
53 Notch compensation Cancellation Root Locus The lead-lag controller with notch compensation 0 = 50 = 0.01
54 Notch compensation Too much overshoot !! Also, exact cancellation might cause problems due to modelling errors Thus, we need different parameters
55 Notch compensation Modified parameters Notch compensation Dynamic characteristics Increase n to obtain less overshoot Make sure that the roots move into the LHP In general, obtain a satisfactory dynamic behavior After some trial and error
56 Notch compensation The overshoot has been lowered to an acceptable level ! The oscillations have almost been removed ! So, we have reached a final design !
57 Notch compensation Root Locus The lead-lag controller with notch compensation 0 = 60 = 0.3
58 Time Delay Notice Time delay always reduces the stability of a system ! Important to be able to analyze its effect In the s-domain a time delay is given by e - s Most applications contain delays (sampled systems) Root locus analysis The original method does only handle polynomials Solutions Approximation (Padé) of e - s Modifying the root locus method (direct application)
59 Time Delay
60 Time Delay Root locus for some example system (heat exchanger) No delay Padé (1,1) Padé (2,2) Exact (p,p) Approx. in Matlab : [num,den]=pade(T,p)
61 Time Delay However, Matlab does not support this approach... In discrete systems the sampling time introduce a time delay
62 The Discrete Root Locus Discrete (z-domain) Closed loop transfer function Characteristic equation Thus, same sketching techniques as in the s-domain However, different interpretation !!!