# Multivariable Control

## Presentation on theme: "Multivariable Control"— Presentation transcript:

Multivariable Control
Root Locus By Kirsten Mølgaard Nielsen

Outline Root Locus Design Method Root locus Dynamic Compensation
definition The phase condition Test points, and sketching a root locus Dynamic Compensation Lead compensation Lag compensation

Introduction Closed loop transfer function Characteristic equation,
roots are poles in T(s)

Introduction Dynamic features depend on the pole locations.
For example, time constant t, rise time tr, and overshoot Mp (1st order) (2nd order)

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

Introduction Root locus of a motor position control (example)

Introduction break-away point

Introduction Some root loci examples (K from zero to infinity)

Sketching a Root Locus Definition 1 Definition 2
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 yi. The angle to a point on the root locus from pole number i is fi. Therefore,

Sketching a Root Locus s0 f1 p y1 f2 p*
A root locus can be plotted using Matlab: rlocus(sysL)

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

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 s0 on the real axis : The angle of complex poles cancel each other. Angles from real poles or zeros are 0° if s0 are to the right. Angles from real poles or zeros are 180° if s0 are to the left. Total angle = 180° + 360° l

Root Locus characteristics
Rule 3 (of 6) For large s and K, n-m branches of the loci are asymptotic to lines at angles fl radiating out from a point s = a on the real axis. fl a For example

Root Locus characteristics
n-m=1 n-m=2 n-m=3 n-m=4 For ex., n-m=3

Root Locus 3 poles: q = 3 Rule 4: The angles of departure (arrival) of a branch of the locus from a pole (zero) of multiplicity q. f1,dep = 60 deg. f2,dep = 180 deg. f3,dep = 300 deg.

Root Locus characteristics
Rule 5 (of 6) The locus crosses the jw 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.

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

Root locus for double integrator with P-control
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

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 jw-axis. Rule 6: Easy to see, no further multiple poles. Verification:

Example Root locus for satellite attitude control with PD-control

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.

Selecting the Parameter Value
Example Selection of K using Matlab: [K,p]=rlocfind(sysL)

Dynamic Compensation Some facts Controller design using root locus
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

Dynamic Compensation PD Lead PI Lag

Lead Compensation PD P Lower damping ratio with PD !

Lead Compensation PD control Pure differentiation
Output noise has a great effect on u(t) Solution: Insert a pole at a higher frequency r(t) e(t) controller D(s) u(t) plant G(s) y(t) + - + + noise

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 wn the pole p is placed between 5 and 20 times of z

Lead Compensation Design approach (A) Initial design z=wn, p=5z
Noise: additional requirement, max(p)=20 Iterations First design: z=wn, p=5z (neglecting the add. req.) Second design: z=wn, p=20 Third design: new z, p=20

Lead Compensation Possible pole location Matlab – design 1
sysG = tf([1],[1 1 0]) sysD = tf([1 7],[1 5*7]) rlocus(sysD*sysG)

Lead Compensation No possible pole location ! Matlab – design 2
sysG = tf([1],[1 1 0]) sysD = tf([1 7],[1 20]) rlocus(sysD*sysG)

Lead Compensation Possible location New zero location
Matlab – design 3 sysG = tf([1],[1 1 0]) sysD = tf([1 4],[1 20]) rlocus(sysD*sysG)

Pole placement from the requirements Noise: Additional requirement, max(p)=20. So, p=20 to minimize the effect of the pole.

Lead Compensation Pole location Matlab – design B
sysG = tf([1],[1 1 0]) sysD = tf([1 5.4],[1 20]) rlocus(sysD*sysG)

Design a lead compensation D(s) to the plant G(s) so that the dominant poles are located at s = -2 ± 2j You can use, triangle a/sin(A) = b/sin(B) r(t) e(t) controller D(s) u(t) plant G(s) y(t) + -

Lead Compensation Answer we have three poles and one zero f1 y f2
Notice, triangle a/sin(A) = b/sin(B)

Dynamic Compensation PD Lead PI Lag

Lag Compensation Lag compensation
Steady state characteristics (requirements) Position error constant Kp Velocity error constant Kv Let us continue using the example system and the designed controller (lead compensation)

Lag Compensation Calculation of error constants
Suppose we want Kv ≥ 100 We need additional gain at low frequencies !

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

Lag Compensation Design approach
Increase the error constant by increasing the low frequency gain Choose z and p somewhat below wn Example system: K = 1 (the proportional part has already been chosen) z/p = 3, with z = 0.03, and p = 0.01.

Lag Compensation Lead-lag Controller Notice, a slightly different pole

Lag Compensation z p

Lag Compensation Step

Lag Compensation Ramp

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 ?

Notch compensation Step response using the lead-lag controller

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 z ≈ PM/100 Possible transfer function If zn < 1, complex zeros and double pole at w0

Notch compensation

Notch compensation Cancellation Root Locus
The lead-lag controller with notch compensation w0 = 50 z = 0.01

Notch compensation Too much overshoot !!
Also, exact cancellation might cause problems due to modelling errors Thus, we need different parameters

Notch compensation Modified parameters Notch compensation
Dynamic characteristics Increase zn 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

Notch compensation The overshoot has been lowered to an acceptable level ! The oscillations have almost been removed ! So, we have reached a final design !

Notch compensation Root Locus
The lead-lag controller with notch compensation w0 = 60 z = 0.3

Time Delay Notice Root locus analysis Solutions
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-ls Most applications contain delays (sampled systems) Root locus analysis The original method does only handle polynomials Solutions Approximation (Padé) of e-ls Modifying the root locus method (direct application)

Time Delay

Time Delay No delay Padé (1,1) Exact
Root locus for some example system (heat exchanger) Padé (2,2) (p,p) Approx. in Matlab : [num,den]=pade(T,p)

Time Delay However, Matlab does not support this approach...
In discrete systems the sampling time introduce a time delay

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