1 multivariable control by kirsten mølgaard nielsen root locus

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

Upload: terrell-peele

Post on 16-Dec-2015

223 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

1

Multivariable Control

By Kirsten Mølgaard Nielsen

Root Locus

Page 2: 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

Page 3: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

3

Introduction

0)()()(1

)()()(1

)()()(

)(

)(

sHsGsD

sHsGsD

sGsDsT

sR

sYClosed loop transfer function

Characteristic equation,roots are poles in T(s)

Page 4: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 5: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 6: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 7: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 8: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

8

IntroductionSome root loci examples (K from zero to infinity)

Page 9: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 10: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 11: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 12: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 13: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 14: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 15: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 16: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 17: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 18: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 19: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 20: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 21: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 22: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 23: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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(

Page 24: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 25: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 26: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 27: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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 !

Page 28: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

+

+

Page 29: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

29

Lead Compensation

2010

105 :try

,2

)(

oncompensati Lead

)2()(

control-PD

)1(

1)(

z

zp

ps

sKsD

sKsD

sssG

Page 30: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 31: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 32: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

32

Lead CompensationPossiblepole location

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

Page 33: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

33

Lead CompensationNo possiblepole location !

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

Page 34: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

34

Lead CompensationPossiblelocation

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

New zerolocation

Page 35: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 36: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 37: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 38: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 39: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 40: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 41: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 42: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 43: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 44: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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.

Page 45: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

45

Lag CompensationNotice, a slightly different polelocation

Lead-lagController

01.0

03.0

20

4.5127

)(

s

s

s

s

sD

Page 46: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

46

Lag Compensation

z p

Page 47: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

47

Lag Compensation

Step

Page 48: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

48

Lag Compensation

Ramp

Page 49: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 50: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

50

Notch compensation

Step response using the lead-lag controller

Page 51: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 52: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 53: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

53

Notch compensation

Cancellation

Root LocusThe lead-lag controller with notch compensation

w0 = 50z = 0.01

Page 54: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

54

Notch compensation

Too much overshoot !!

Also, exact cancellation might cause problems due to modelling errors

Thus, we need different parameters

Page 55: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 56: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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 !

Page 57: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

57

Notch compensation

Root LocusThe lead-lag controller with notch compensation

w0 = 60z = 0.3

Page 58: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 59: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 60: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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)

Page 61: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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

Page 62: 1 Multivariable Control By Kirsten Mølgaard Nielsen Root Locus

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