lecture 7: anti-windup and friction compensation 7: anti-windup and friction compensation!...

36
Lecture 7: Anti-windup and friction compensation Compensation for saturations (anti-windup) Friction models Friction compensation Material Lecture slides

Upload: lyhanh

Post on 03-Apr-2018

234 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Lecture 7: Anti-windup and friction compensation

! Compensation for saturations (anti-windup)

! Friction models

! Friction compensation

Material

! Lecture slides

Page 2: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Course Outline

Lecture 1-3 Modelling and basic phenomena(linearization, phase plane, limit cycles)

Lecture 2-6 Analysis methods(Lyapunov, circle criterion, describing functions)

Lecture 7-8 Common nonlinearities(Saturation, friction, backlash, quantization)

Lecture 9-13 Design methods(Lyapunov methods, Backstepping, Optimal control)

Lecture 14 Summary

Page 3: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Last lecture: Stable periodic solution

r e u y

−G (s)

−5 −4 −3 −2 −1 0−0.2

−0.15

−0.1

−0.05

0

0.05

0.1

0.15

0.2

G (iω)

−1/N(A)

G (s) =(s + 10)2

(s + 1)3with feedback u = −sgn y

gives one stable and one unstable limit cycle. The left mostintersection corresponds to the stable one.

Page 4: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Periodic Solutions in Relay SystemThe relay gain N(A) is higher for small A:

orbit

Growing amplitudesShrinking relay gain

Stableperiodicorbit

Unstableperiodic

Growing relay gain

One encirclementShrinking amplitudes

Growing relay gain

Small amplitudesHigh relay gainNo encirclementShrinking amplitudes

Big amplitudesSmall relay gainNo encirclement

Page 5: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Today’s Goal

! To be able to design and analyze antiwindup schemes for! PID! state-space systems! and Kalman filters (observers)

! To understand common models of friction

! To design and analyze friction compensation schemes

Page 6: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Windup – The Problem

v uG (s)

C (s)

The feedback path is broken when u saturatesThe controller C (s) is a dynamic systemProblems when controller is unstable (or stable but not AS)Example: I-part in PID-controller

Page 7: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Example-Windup in PID Controller

0 20 40 60 800

1

2

Ou

tpu

t

0 20 40 60 80−0.1

0

0.1

Time

Inp

ut

Dashed line: ordinary PID-controllerSolid line: PID-controller with anti-windup

Page 8: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Anti-windup for PID-Controller (“Tracking”)Anti-windup (a) with actuator output available and (b) without

∑1

s

1

Tt

es

− y

v ue

− +

∑ ∑

− y

e uv

− +

es

1

Tt

1

s

Actuator model Actuator

Actuator

K

KTds

K

K

Ti

KTds

K

Ti

(a)

(b)

Page 9: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Choice of Tracking Time Tt

0 10 20 300

1

0 10 20 30

−0.1

0

0.1

yset-point Tt = 3Tt = 2

Tt = 0.1,Tt = 1

Tt = 3Tt = 2

Tt = 1Tt = 0.1

With very small Tt (large gain 1/Tt), spurious errors can saturatethe output, which leads to accidental reset of the integrator. Toolarge Tt gives too slow reaction (little effect).The tracking time Tt is the design parameter of the anti-windup.Common choices: Tt = Ti or Tt =

√TiTd .

Page 10: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

State feedback with Observer

y

Σ

xm

− ˆ x L

Observer State feedback Actuatorsat(v)

˙x = Ax + B sat(v) + K (y − Cx)

v = L(xm − x)

x is estimate of process state, xm desired (model) state.Need model of saturation if sat(v) is not measurable

Page 11: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Antiwindup – General State-Space Controller

State-space controller:

xc(t) = Fxc(t) + Gy(t)

u(t) = Cxc(t) + Dy(t)

Windup possible if F is unstable and u saturates.

ySA

yu u

SB

(a) (b)

Idea:Rewrite representation of control law from (a) to (b) such that:(a) and (b) have same input-output relation(b) behaves better when feedback loop is broken, if SB stable

Page 12: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Antiwindup – General State-Space Controller

Mimic the observer-based controller:

xc = Fxc + Gy + K (u − Cxc − Dy)︸ ︷︷ ︸=0

= (F − KC )xc + (G − KD)y + Ku

= F0xc + G0y + Ku

Design so that F0 = F − KC has desired stable eigenvaluesThen use controller

xc = F0xc + G0y + Ku

u = sat (Cxc + Dy)

Page 13: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

State-space controller without and with anti-windup:

y u∑∑

∑∑ satu

G − KDy v

s −1

K

F − KC

C

D

G

F

s −1 C

D

xc

xc

Page 14: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

5 Minute Exercise

How would you do antiwindup for the following state-feedbackcontroller with observer and integral action ?

yref1s

−Li

−L

u

x

yProcess

Estimator

Page 15: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Saturation

Optimal control theory (later)

Multi-loop Anti-windup (Cascaded systems):

Difficult problem, several suggested solutionsTurn off integrator in outer loop when inner loop saturates

Page 16: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Friction

Present almost everywhere! Often bad

! Friction in valves and mechanical constructions

! Sometimes good! Friction in brakes

! Sometimes too small! Earthquakes

Problems

! How to model friction

! How to compensate for friction

Page 17: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Stick-slip Motion

0 10 200

1

2

0 10 200

0.2

0.4

0 10 200

1

Time

Time

Time

F

k(y − x)

yx

Page 18: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Position Control of Servo with Friction – Hunting

Friction

ux r

v

x

F

1s

ΣPID 1ms

0 20 40 60 80 1000

0.5

1

0 20 40 60 80 100−0.2

0.2

0 20 40 60 80 100

−1

0

1

Time

Time

Time

Page 19: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

3 Minute Exercise

What are the signals in the previous plots? What model of frictionhas been used in the simulation?

Page 20: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Friction

N N

F

F F

Page 21: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Lubrication Regimes

Velocity

Friction

Stic

king

Boun

dary

lubr

icat

ion

Full

fluid

lubr

icat

ion

Mix

ed lu

bric

atio

n

Hard to get good model at v = 0

Page 22: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Stribeck Effect

For low velocity: friction increases with decreasing velocityStribeck (1902)

-0.04 -0.03 -0.02 -0.01 0 0.01 0.02 0.03 0.04

-200

-150

-100

-50

0

50

100

150

200

Steady state friction: Joint 1

Velocity [rad/sec]

Fric

tion

[Nm

]

Page 23: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Frictional Lag

Dynamics are important also outside sticking regimeHess and Soom (1990)Experiment with unidirectional motion v(t) = v0 + a sin(ωt)Hysteresis effect!

Velocity

Friction

Page 24: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Classical Friction Models

F

F

F

F

v

v

v

v

a) b)

c) d)

c) F (t) =

{Fc sign v(t) + Fvv(t) v(t) = 0max(min(Fe(t),Fs),−Fs) v(t) = 0

Fe(t) = external applied force ,Fc ,Fv ,Fs constants

Page 25: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Advanced Friction Models

See PhD-thesis by Henrik Olsson

! Karnopp model

! Armstrong’s seven parameter model

! Dahl model

! Bristle model

! Reset integrator model

! Bliman and Sorine

! Wit-Olsson-strm

Page 26: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Demands on a model

To be useful for control the model should be

! sufficiently accurate,

! suitable for simulation,

! simple, few parameters to determine.

! physical interpretations, insight

Pick the simplest model that does the job! If no stiction occurs thev = 0-models are not needed.

Page 27: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Friction Compensation

! Lubrication

! Integral action (beware!)

! Dither

! Non-model based control

! Model based friction compensation

! Adaptive friction compensation

Page 28: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Integral Action

• The integral action compensates for any external disturbance• Good if friction force changes slowly (v ≈ constant).• To get fast action when friction changes one must use muchintegral action (small Ti)• Gives phase lag, may cause stability problems etc

Page 29: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Deadzone - Modified Integral Action

Modify integral part to I = K

Ti

∫t

0e(t)dτ

where input to integrator e =

⎧⎨

e(t)− η e(t) > η0 |e(t)| < η

e(t) + η e(t) < −η

e(t)

e(t)η

Advantage: Avoid that small static error introduces limit cycle

Disadvantage: Must accept small error (will not go to zero)

Page 30: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Mechanical Vibrator–Dither

Avoids sticking at v = 0 where there usually is high friction byadding high-frequency mechanical vibration (dither )

+ ++−

−PID 1

ms

Friction

1su

F

vxrx

Cf., mechanical maze puzzle(labyrintspel)

Page 31: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Adaptive Friction CompensationCoulomb Friction F = a sgn(v)

uPID 1ms

Frictionestimator

Friction

v++

Ffriction

Ffriction

x1s

Assumption: v measurable.Friction estimator:

z = kuPID sgn(v)

a = z − km|v |Ffriction = a sgn(v)

Page 32: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Result: e = a − a → 0 as t → ∞,since

de

dt= −

da

dt= −

dz

dt+ km

d

dt|v |

= −kuPID sgn(v) + kmv sgn(v)

= −k sgn(v)(uPID −mv)

= −k sgn(v)(F − F )

= −k(a − a)

= −ke

Remark: Careful with d

dt|v | at v = 0.

Page 33: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

The KnockerCombines Coulomb compensation and square wave dither

0 1 2 3 4 5 6 7 8 9 10−0.5

0

0.5

1

1.5

2

2.5

Tore Hgglund, Innovation Cup winner + patent 1997

Page 34: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Example–Friction Compensation

Velocity control with

a) P-controller

b) PI-controller

c) P + Coulomb estimation

Page 35: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Results

0 1 2 3 4 5 6 7 8−1

−0.5

0

0.5

1

0 1 2 3 4 5 6 7 8−10

−5

0

5

10

vrefv

u

P-controller

0 1 2 3 4 5 6 7 8−1

−0.5

0

0.5

1

0 1 2 3 4 5 6 7 8−10

−5

0

5

10

PI-controller

0 1 2 3 4 5 6 7 8−1

−0.5

0

0.5

1

0 1 2 3 4 5 6 7 8−10

−5

0

5

10

P-controller with Coulomb estimation

Page 36: Lecture 7: Anti-windup and friction compensation 7: Anti-windup and friction compensation! Compensation for saturations (anti-windup)! Friction models! Friction compensation Material!

Next Lecture

! Backlash

! Quantization