Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik...

17
fakultät für mathematik, informatik und naturwissenschaften Thomas Berger , Anna-Lena Rauert Funnel cruise control

Transcript of Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik...

Page 1: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Thomas Berger, Anna-Lena Rauert

Funnel cruise control

Page 2: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Vehicle following framework

xsafe(t)v(t)

x(t)

xl(t)

LeaderFollower

x(t) = v(t), mv(t) = u(t)− Fg (t)− Fa(t, v(t)

)− Fr

(v(t)

)forces due to gravity: Fg (t) = mg sin θ(t)

aerodynamic drag : Fa(t, v) =12ρ(t)CdAv

2

rolling friction : Fr (v) = mgCr sgn(v)

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 2 / 11

Page 3: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Control objective

xsafe(t)v(t)

x(t)

xl(t)

LeaderFollower

given: favourite speed vref(t), safety distance xsafe(t) = λ1v(t)+ λ2

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 2 / 11

Page 4: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Control objective

xsafe(t)v(t)

x(t)

xl(t)

LeaderFollower

given: favourite speed vref(t), safety distance xsafe(t) = λ1v(t)+ λ2

Aim: u(t) = F(t, v(t), xl(t)− x(t)

)s.t.

(O1) xl(t)− x(t) ≥ xsafe(t),

(O2) |v(t)− vref(t)| is as small as possible such that (O1) is notviolated.

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 2 / 11

Page 5: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Funnel Control

System

u(t) = −k(t)e(t) +

y(t)u(t)

−yref(t)e(t)

t

1/ϕ(t)

|e(t)|

k(t) =1

1− ϕ(t)2e(t)2

[Ilchmann, Ryan, Sangwin ’02]:Works, if

relative degree = 1

stable internal dynamics

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 3 / 11

Page 6: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Funnel cruise control

Velocity Control Distance Control

xsafe(t)ϕd(t)−1

( )

Leader

Leader

Follower

Follower

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 4 / 11

Page 7: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Velocity funnel control

tracking error: ev (t) = v(t)− vref(t) ∈ Fv (t) :=(−ϕv (t)

−1, ϕv (t)−1)

→ treat v(t) as output of the system

v(t) = 1mu(t) + fv

(t, v(t)

)controller:

uv (t) = −kv (t)ev (t),

kv (t) =1

1− ϕv (t)2ev (t)2

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 5 / 11

Page 8: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Distance funnel control

tracking error: ed(t) = x(t)− xl(t) + xsafe(t) + ϕd(t)−1

∈ Fd(t) :=(−ϕd(t)

−1, ϕd(t)−1)

output: y(t) = λ1v(t) + x(t),

reference signal: yref(t) = xl(t)− λ2 − ϕd(t)−1

x(t) = v(t) = − 1λ1x(t) + 1

λ1y(t),

y(t) = λ1m u(t) + fd

(t, x(t), y(t)

)controller: ud(t) = −kd(t)ed(t),

kd(t) =1

1− ϕd(t)2ed(t)2

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 6 / 11

Page 9: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Distance funnel control

tracking error: ed(t) = x(t)− xl(t) + xsafe(t) + ϕd(t)−1

∈ Fd(t) :=(−ϕd(t)

−1, ϕd(t)−1)

output: y(t) = λ1v(t) + x(t),

reference signal: yref(t) = xl(t)− λ2 − ϕd(t)−1

x(t) = v(t) = − 1λ1x(t) + 1

λ1y(t),

y(t) = λ1m u(t) + fd

(t, x(t), y(t)

)controller: ud(t) = −kd(t)ed(t),

kd(t) =1

1− ϕd(t)2ed(t)2

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 6 / 11

Page 10: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Distance funnel control

tracking error: ed(t) = x(t)− xl(t) + xsafe(t) + ϕd(t)−1

∈ Fd(t) :=(−ϕd(t)

−1, ϕd(t)−1)

output: y(t) = λ1v(t) + x(t),

reference signal: yref(t) = xl(t)− λ2 − ϕd(t)−1

x(t) = v(t) = − 1λ1x(t) + 1

λ1y(t),

y(t) = λ1m u(t) + fd

(t, x(t), y(t)

)controller: ud(t) = −kd(t)ed(t),

kd(t) =1

1− ϕd(t)2ed(t)2

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 6 / 11

Page 11: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Final control design

Intuitive approach:

if ed(t) = −ϕd(t)−1,

then switch from uv toud and vice versa

while ud is active itshould be possible thatev (t) < −ϕv (t)

−1, butnot ev (t) ≥ ϕv (t)

−1

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 7 / 11

Page 12: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Final control design

Intuitive approach:

if ed(t) = −ϕd(t)−1,

then switch from uv toud and vice versa

while ud is active itshould be possible thatev (t) < −ϕv (t)

−1, butnot ev (t) ≥ ϕv (t)

−1

Problem:

when ed(t)→ −ϕd(t)−1 we have kd(t)↗∞

when ev (t)→ −ϕv (t)−1 we have kv (t)↗∞

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 7 / 11

Page 13: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Final control design

Intuitive approach:

if ed(t) = −ϕd(t)−1,

then switch from uv toud and vice versa

while ud is active itshould be possible thatev (t) < −ϕv (t)

−1, butnot ev (t) ≥ ϕv (t)

−1

u = uv

ev = 0

v

u=min{u

d , uv }

ϕ−1v

ed = 0

u = ud

ϕ−1d

x

Problem:

when ed(t)→ −ϕd(t)−1 we have kd(t)↗∞

when ev (t)→ −ϕv (t)−1 we have kv (t)↗∞

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 7 / 11

Page 14: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Final control design

u(t) =

uv (t), ed(t) ≤ −ϕd(t)

−1 ∧ ev (t) ∈ Fv (t),

ud(t), ev (t) ≤ −ϕv (t)−1 ∧ ed(t) ∈ Fd(t),

min{uv (t), ud(t)}, ev (t) ∈ Fv (t) ∧ ed(t) ∈ Fd(t),

u = uv

ev = 0

v

u=min{u

d , uv }

ϕ−1v

ed = 0

u = ud

ϕ−1d

x

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 8 / 11

Page 15: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Final control design

u(t) =

uv (t), ed(t) ≤ −ϕd(t)

−1 ∧ ev (t) ∈ Fv (t),

ud(t), ev (t) ≤ −ϕv (t)−1 ∧ ed(t) ∈ Fd(t),

min{uv (t), ud(t)}, ev (t) ∈ Fv (t) ∧ ed(t) ∈ Fd(t),

Theorem [B., Rauert ’18]

vref , xl ∈ W1,∞(R≥0 → R), xsafe = λ1v(t) + λ2=⇒ x , v , u ∈ L∞ and

ϕv (t)−1 − ev (t) ≥ ε, ϕd(t)

−1 − ed(t) ≥ ε,max{0, ϕv (t)

−1 + ev (t)}+max{0, ϕd(t)−1 + ed(t)} ≥ ε

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 9 / 11

Page 16: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

Simulationm θ(t) ρ(t) Cd Cr A

1300 kg 0 rad 1 .3 kg/m3 0.32 0.01 2 .4 m2

x0 v0 λ1 λ2 vref0 m 15 m s−1 0 .5 s 2 m 36 m s−1

ϕv (t) =(22.5e−0.2t + 0.2

)−1, ϕd(t) = 0.25.

0 10 20 30 40 500

20

40

60

80

100

time t / s

x/

m

xl ! xxsafe + 2ϕ!1

dxsafe

0 10 20 30 40 5010

20

30

40

50

60

time t / s

v/m/s

vlvvref ' ϕ!1

v

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 10 / 11

Page 17: Funnel cruise control - math.uni-hamburg.de filefakult t f rÊmathematik,Êinformatik undÊnaturwissenschaften Thomas Berger, Anna-Lena Rauert Funnel cruise control

fakultät

für mathematik, informatik

und naturwissenschaften

0 10 20 30 40 500

5

10

15

20

25

time t / s

x/m

xl ! x

xsafe + 2ϕ!1d

xsafe

0 10 20 30 40 50-20

0

20

40

60

time t / s

v/m/s

vlv

vref ' ϕ!1v

0 10 20 30 40 500

10

20

30

40

50

60

time t / s

x/m

xl ! x

xsafe + 2ϕ!1d

xsafe

0 10 20 30 40 5010

20

30

40

50

60

time t / s

v/m/s

vlvvref ' ϕ!1

v

Vienna, 3 July, 2018 — Thomas Berger, Anna-Lena Rauert - Funnel cruise control 11 / 11