multivariable control

Post on 22-Feb-2016

167 Views

Category:

Documents

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

Multivariable Control. Root Locus . By Kirsten Mølgaard Nielsen. Outline. Root Locus Design Method Root locus definition The phase condition Test points, and sketching a root locus Dynamic Compensation Lead compensation Lag compensation. Introduction. - PowerPoint PPT 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

0)()()(1

)()()(1)()()(

)()(

sHsGsD

sHsGsDsGsDsT

sRsYClosed loop transfer function

Characteristic equation,roots are poles in T(s)

4

Introduction

)(,8.1))((2

)(

11)(

2

22

2

2

1

pnr

dd

n

nn

n

Mtjsjsss

sH

ssH

Dynamic features depend on the pole locations.

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

(1st order)

(2nd order)

5

IntroductionRoot locus

Determination of the closed loop pole locations under varying K.

For example, K could be the control gain.

Ksasb

sasbK

sHsGsD

1)()(

0)()(1

0)()()(1

The characteristic equation can be written in various ways

6

IntroductionRoot locus of a motor position control (example)

241

21,

0)()(

of roots of grapha is locusRoot )(,1)(

,)1(

1)(,

have, We)1(

)()()(

)()( positionmotor -DC

21

2

2

Krr

KsssKbsa

sssasb

sssLAK

ssAsG

sUsY

sVs

a

m

7

Introduction

0.5) (here, somefor calculated be can 21part real ,conjugatedcomplex :),(

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

,410For 1

021

21),(

loop)-(open,0For 241

21),(

21

21

21

21

Krr

Krr

K

rr

K

Krr

break-away point

8

IntroductionSome root loci examples (K from zero to infinity)

9

Sketching a Root LocusDefinition 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 fy

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

jrrrr

erererer

pspszszssG

n

m

ffyy

ff

yy

Sketching a Root Locus

s0

pf1

p*f2

y1

A root locus can be plotted using Matlab: rlocus(sysL)

11

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

sazerossb

K

saKKsa

sbsKbsa

mnmsbnsa

12

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

mnzp

mnlmn

l

ii

l

a

f ,,2,1,)1(360180

fl

a

For example

14

Root Locus characteristicsn-m=1 n-m=2 n-m=3 n-m=4

mnzp

mnlmn

l

ii

l

a

f

,,2,1

,)1(3601803 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

yfy

fyf

3 poles:q = 3

16

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

0)Row(s

3)Row(s2)Row(s1)Row(s

1)Row(s

0

3213-n

3212-n

5311-n

42n

cccnbbbnaaanaan

21

31

11

51

4

12

31

2

11

det1

1det1

1det1

bbaa

bc

aaa

ab

aaa

ab

17

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

ql

dsdba

dsdab

Ksasb

)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

020

27090

2)1(360180)1(360180

mn

zp

lmn

l

ii

l

a

f

Eq.)(Char.011)(,1)( 22 s

kksDs

sG pp

19

Rule 2: No branches that the real axis.

Rule 4: Same argument and conclusion as rule 3.

Eq.)(Char.011)(,1)( 22 s

kksDs

sG pp

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:

0021)(10

1)(,)(

22

2

ssdsds

dssd

dsdba

dsdab

sbssa

20

Eq.)(Char.0)1(101)1(1

1and

Eq.)(Char.01)(1

)(,1)(

22

2

2

ssK

ss

K

kk

kK

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

ss

Kss

ssK

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

issssdsdba

dsdab

sdsda

dsdbssassb

KK

K

ssK

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

sssjsjss

ssL(s)

Example

Selection of K using Matlab: [K,p]=rlocfind(sysL)

25

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

bsas

abK

bsasKsD

oncompensati Lag

oncompensati Lead

)1()1()(

abK

K

a b

PD

Lead

abK

K

a b

PI

Lag

27

Lead Compensation

)2()(control-PD

)(control-P

2trequiremen with)1(

1)(

system Example

sKsD

KsD

sssG

n

PD

P

Lower damping ratio with PD !

28

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

2010105

:try

,2)(

oncompensati Lead

)2()(control-PD

)1(1)(

zz

p

pssKsD

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

31

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

,)(

oncompensati Lead

7 : timeRise5.0 :Overshoot

tsRequiremen

)1(1)(

pszsKsD

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 CompensationDesign 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 : timeRise5.0 :Overshoot

tsRequiremen

)1(1)(

pszsKsD

sssG

n

35.35.30 jr

36

Lead Compensation

4.5 :Resultz of location Gives

6.72

180)()( as calculate toPossible

fixed. is fixed. are poles All

0

z

sGsD

r

y

y

37

Lead CompensationPole location

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

204.5127)(

Controller Final

sssD

38

Lead CompensationExercise

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)()(s

sGpszsKsD

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

39

Lead CompensationAnswer

we have three poles and one zero

f1yf2

65.1

)35sin()100sin(

22

100460101352180

180210135

180)()(Condition Root Locus

22

21

2

1

z

sGsD

y

ffyff

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

40

Dynamic Compensation

ba

ba

bsas

abK

bsasKsD

oncompensati Lag

oncompensati Lead

)1()1()(

abK

K

a b

PD

Lead

abK

K

a b

PI

Lag

41

Lag CompensationLag 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)

204.5127)(

sssD

)1(1)(

ss

sG

42

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

204.5127)()(

0

0

vss

sv

pss

sp

Ke

sGssDK

Ke

sGsDK

sssssGsD

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

pzKD

pszsKsD

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 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 CompensationNotice, a slightly different polelocation

Lead-lagController

01.003.0

204.5127

)(

ss

ss

sD

46

Lag Compensation

z p

47

Lag CompensationStep

48

Lag Compensation

Ramp

49

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

ssss

sG

01.003.0

204.5127)(

ss

sssD

50

Notch compensation

Step response using the lead-lag controller

51

Notch compensationAim: Remove or dampen the oscillationsPossibilities

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

20

200

2

)(2)(

ssssD n

nIf n < 1, complex zerosand double pole at 0

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

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

20

200

2

)(2)(

ssssDn

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

0 = 60 = 0.3

58

Time DelayNotice

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 polynomialsSolutions

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

sabsbe

s

s

)2/(1)2/(1

with

61)(

21)(

11

10020

1000

100

1

sTsTe

sTs

baba

baba

babb

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

jssGesG

d

ddd

d

180)()(

180)()()()(

condition locusroot Modified

)(

Notice,)()(

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

top related