1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus.

Post on 16-Dec-2015

220 views 0 download

Tags:

Transcript of 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus.

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

0)()()(1

)()()(1

)()()(

)(

)(

sHsGsD

sHsGsD

sGsDsT

sR

sYClosed loop transfer function

Characteristic equation,roots are poles in T(s)

4

Introduction

)(,8.1

))((2)(

1

1)(

2

22

2

2

1

pnr

dd

n

nn

n

Mt

jsjssssH

ssH

Dynamic features depend on the pole locations.

For example, time constant t, rise time tr, and overshoot Mp

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

Ksa

sb

sa

sbK

sHsGsD

1

)(

)(

0)(

)(1

0)()()(1

The characteristic equation can be written in various ways

6

IntroductionRoot locus of a motor position control (example)

2

41

2

1,

0)()(

of roots of grapha is locusRoot

)(,1)(

,)1(

1)(,

have, We

)1()(

)(

)(

)(

)( positionmotor -DC

21

2

2

Krr

KsssKbsa

sssasb

sssLAK

ss

AsG

sU

sY

sV

s

a

m

7

Introduction

0.5) (here, somefor calculated be can

21part real ,conjugatedcomplex :),(

,41For

[-1;0] interval thein real :),(

,410For

1

0

2

1

2

1),(

loop)-(open,0For 2

41

2

1),(

21

21

21

21

K

rr

K

rr

K

rr

K

Krr

break-away point

8

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

The angle to a point on the root locus from pole number i is fi. Therefore, m-nl1 integer,an is l ),1(360180 lii

positive and realK for 180)/1(,/1)(: KKsLnotic

10

)(exp

)()(

)()()(general, In

1121

21

)()(1

)()(1

010

0100 1

1

nmaa

bb

jan

ja

jbm

jb

n

m

jrr

rr

erer

erer

psps

zszssG

n

m

Sketching a Root Locus

s0

pf1

p*f2

y1

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

3) Rule()(

1) Rule)((0)(,(end) if

(poles) 0)(,(start)0 if

1

)(

)(0)()(

,order of is )( and ,order of is )(

Notice,

sa

zerossbK

saK

Ksa

sbsKbsa

mnmsbnsa

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

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 fl radiating out from a point s = a on the real axis.

mn

zp

mnlmn

l

ii

l

,,2,1,)1(360180

fl

a

For example

14

Root Locus characteristics

n-m=1 n-m=2 n-m=3 n-m=4

mn

zp

mnlmn

l

ii

l

,,2,1

,)1(360180

3 Rule

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.

f1,dep = 60 deg.f2,dep = 180 deg.f3,dep = 300 deg.)1(360180

)1(360180

,

,

lq

lq

liiidepl

liiidepl

3 poles:q = 3

16

Root Locus characteristicsRule 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.

0)Row(s

3)Row(s

2)Row(s

1)Row(s

1)Row(s

0

3213-n

3212-n

5311-n

42n

cccn

bbbn

aaan

aan

21

31

11

51

4

12

31

2

11

det1

1det

1

1det

1

bb

aa

bc

aa

a

ab

aa

a

ab

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.

q

l

ds

dba

ds

dab

Ksa

sb

)1(360180)2(

0)1(

1

)(

)(

Characteristic equation

18

ExampleRoot 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

02

0

270

90

2

)1(360180)1(360180

mn

zp

l

mn

l

ii

l

Eq.)(Char.01

1)(,1

)(22

skksD

ssG pp

19

Rule 2: No branches that the real axis.

Rule 4: Same argument and conclusion as rule 3.

Eq.)(Char.01

1)(,1

)(22

skksD

ssG pp

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:

0021)(

10

1)(,)(

22

2

ssds

ds

ds

sd

ds

dba

ds

dab

sbssa

20

Eq.)(Char.0)1(

101

)1(1

1and

Eq.)(Char.01

)(1

)(,1

)(

22

2

2

s

sK

ss

K

k

kkK

sskk

skksDs

sG

D

pD

Dp

Dp

ExampleRoot locus for satellite attitude control with PD-control

21

90 areat 0 pole double thefrom departure of angles The

:4 Rule

axis real negative thealong asymptote one is there,1 Because

:3 Rule

locus on the is 1 ofleft the toaxis real The

:2 Rule

infinity. approachesother The

.1at zero on the s terminateOne

.0at start that branches twoare There

:1 Rule

1)1(0

)1(1

22

s

mn

s

s

s

Ks

s

s

sK

22

2,002)1(

2,1,)(,1)(

from found are roots multiple of points The :6 Rule

1

axis.imaginary thecrossnot does locus theThus,

below.array thefind wecriterion, sRouth' Applying :5 Rule

Eq.) (Char.0)1(

1

2

2

2

issssds

dba

ds

dab

sds

da

ds

dbssassb

K

K

K

s

sK

23

Selecting the Parameter ValueThe (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.

LK

sLK

1

)(

1)1(

24

Selecting the Parameter Value

657.7*1.2*4)()()(

1

))((

1

then,5.0 want say we usLet

, ,at Poles

)44)(44(

1

)16)4((

1

32000

32000

321

2

ssssssL

K

sssss)L(s

sss

jsjss

ssL(s)

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

ba

ba

bs

as

a

bK

bs

asKsD

oncompensati Lag

oncompensati Lead

)1(

)1()(

a

bK

K

a b

PD

Lead

a

bK

K

a b

PI

Lag

27

Lead Compensation

)2()(

control-PD

)(

control-P

2

trequiremen with

)1(

1)(

system Example

sKsD

KsD

sssG

n

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

controllerD(s)

plantG(s)

r(t) u(t) y(t)e(t)+

-

noise

+

+

29

Lead Compensation

2010

105 :try

,2

)(

oncompensati Lead

)2()(

control-PD

)1(

1)(

z

zp

ps

sKsD

sKsD

sssG

30

Lead CompensationSelecting 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

31

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

,)(

oncompensati Lead

7 : timeRise

5.0 :Overshoot

tsRequiremen

)1(

1)(

ps

zsKsD

sssG

n

32

Lead CompensationPossiblepole location

Matlab – design 1sysG = tf([1],[1 1 0])sysD = tf([1 7],[1 5*7])rlocus(sysD*sysG)

33

Lead CompensationNo possiblepole location !

Matlab – design 2sysG = tf([1],[1 1 0])sysD = tf([1 7],[1 20])rlocus(sysD*sysG)

34

Lead CompensationPossiblelocation

Matlab – design 3sysG = tf([1],[1 1 0])sysD = tf([1 4],[1 20])rlocus(sysD*sysG)

New zerolocation

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.

,)(

oncompensati Lead

7 : timeRise

5.0 :Overshoot

tsRequiremen

)1(

1)(

ps

zsKsD

sssG

n

35.35.30 jr

36

Lead Compensation

4.5 :Result

z of location Gives

6.72

180)()( as

calculate toPossible

fixed. is

fixed. are poles All

0

z

sGsD

r

37

Lead CompensationPole location

Matlab – design BsysG = tf([1],[1 1 0])sysD = tf([1 5.4],[1 20])rlocus(sysD*sysG)

20

4.5127)(

Controller Final

s

ssD

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

controllerD(s)

plantG(s)

r(t) u(t) y(t)e(t)+

-

2

1)()(

ssG

ps

zsKsD

You can use, trianglea/sin(A) = b/sin(B)

39

Lead Compensation

Answer we have three poles

and one zero

f1yf2

65.1

)35sin()100sin(

22

10046010

1352180

1802

10

135

180)()(

Condition Root Locus

22

21

2

1

z

sGsD

Notice, trianglea/sin(A) = b/sin(B)

40

Dynamic Compensation

ba

ba

bs

as

a

bK

bs

asKsD

oncompensati Lag

oncompensati Lead

)1(

)1()(

a

bK

K

a b

PD

Lead

a

bK

K

a b

PI

Lag

41

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)

20

4.5127)(

s

ssD

)1(

1)(

sssG

42

Lag Compensation

Calculation of error constants Suppose we want

Kv ≥ 100 We need additional

gain at low frequencies !

03.01

:input Ramp

3.3420

4.5127)()(lim

01

1 :input Step

)()(lim

)1(

1

20

4.5127)()(

0

0

vss

sv

pss

sp

Ke

sGssDK

Ke

sGsDK

sss

ssGsD

43

Lag CompensationSelecting 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

p

zKD

ps

zsKsD

K

sssG

v

)0(

gain freq.Low

)(

oncompensati Lag

100constant

errorVelocity

tRequiremen

)1(

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

45

Lag CompensationNotice, a slightly different polelocation

Lead-lagController

01.0

03.0

20

4.5127

)(

s

s

s

s

sD

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 ?

)2500(

2500

)1(

1)(

2

sssssG

01.0

03.0

20

4.5127)(

s

s

s

ssD

50

Notch compensation

Step response using the lead-lag controller

51

Notch compensationAim: 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

20

200

2

)(

2)(

s

sssD n

n

If zn < 1, complex zerosand double pole at w0

52

Notch compensation

20

200

2

22

2

2

)(

2)(

oncompensati Notch

01.0,50

)2()1(

1

)2500(

2500

)1(

1)(

s

sssD

ssss

sssssG

nn

rr

rrr

r

2

2

0

)()1(

1

)()(

Result

,

choose usLet

r

r

n

nrr

sss

sGsD

53

Notch compensation

Cancellation

Root LocusThe lead-lag controller with notch compensation

w0 = 50z = 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 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

20

200

2

)(

2)(

s

sssDn

3.0,600 n

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 LocusThe lead-lag controller with notch compensation

w0 = 60z = 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-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)

59

Time Delay

3100

20

21000

10010

10

432

0

10

)()(

)(1

!4!321

series McLauren

1

tapproximan Padé(1,1)

ionapproximatFirst

sbabasbaba

sbabbsa

bsb

sssse

sa

bsbe

s

s

)2/(1

)2/(1

with

6

1)(

2

1)(

1

1

10020

1000

100

1

sT

sTe

sTs

baba

baba

bab

b

d

dsT

d

d

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

d

sT

djTTsT

sT

TsGsD

esGsDsGsD

Teee

js

sGesG

d

ddd

d

180)()(

180)()()()(

condition locusroot Modified

)(

Notice,

)()(

Process

n)calculatio(exact approachDirect

0

0

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

)()(1

)()(

zGzD

zGzD

0)()(1 zGzD