Tight Slalom Control for Sailboat Robots
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin
IRSC 2018, Southampton September 1, 2018
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Tight slalom
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
wind
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We consider a mobile robot [1]
_ x = f ( x , u ) p = g ( x )
with an input vector u = (u 1 , . . . , u m ) and a pose vector p = (p 1 , . . . ,p m+ 1 ) .
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Control m + 1 state variables and not only m of them.
Perform a path following instead of a trajectory tracking.
The controller makes p collinear (instead of equal) to the required ˙ eld.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Method
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Dubins car:
˙
x 1 = cos x 3
˙
x 2 = sin x 3
˙
x 3 = u
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Output
e = x 3 + atanx 2 . Thus
˙
e = ˙ x 3 + x ˙ 2
1 + x 2 2 = u + sin x 3 1 + x 2 2 . We want
˙
e + e = 0.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We get:
u = −x 3 − atan x 2 − sin x
31 +x
22M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Generalization
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We want to follow the eld ψ( p ) .
This can be translated into ϕ (ψ (p), p) = ˙ 0, where ϕ ( r , s ) = 0 ⇔ ∃λ > 0 , λ r = s .
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We dene
e = ϕ (ψ ( p ), _ p ) = ϕ
ψ( g ( x )), ∂ g
∂ x ( x ) · f ( x , u )
. Since dime = dimu = m , we can make e → 0.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Van der Pol cycle
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
The car has to follow the limit cycle of the Van der Pol equation:
ψ ( p ) =
p 2
− 0 . 01 p 1 2 − 1 p 2 − p 1
.
We take g ( x ) = (x 1 ,x 2 ) T to build paths in the (x 1 ,x 2 ) -space.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We get that nal controller is u = − sawtooth
x 3 − atan2
− x
2100
1− 1
x 2 − x 1 ,x 2
+
x21001
− 1
x
2+x
1· sin x
3+x
2·
x1x2 cosx3
50
+
x21001
− 1
sin x
3+ cos x
3x
22+
x21001
− 1
x
2+x
1 2M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Controller
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
We consider sailboat [2]:
˙
x 1 = v cos θ
˙
x 2 = v sin θ θ ˙ = −ρ 2 v sin2 u 1
˙
v = ρ 3 k w ap k sin (δ s − ψ ap ) sin δ s − ρ 1 v 2 σ = cosψ ap + cos u 2
δ s =
π + ψ ap if σ ≤ 0
− sign ( sin ψ ap ) ·u 2 otherwise w ap =
−a sin (θ) − v
−a cos (θ)
ψ ap = angle w ap
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
The path to follow is
e ( p ) = 10sin p 1 10
− p 2 = 0 where e (p) is the error.
We want e ˙ = − 0 . 1 e .
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
Thus
cos p 1 10
˙ p 1 − p ˙ 2
| {z }
˙ e( p )
= − 1 10
10sin p 1 10
− p 2
| {z }
e( p )
We take p ˙ 1 = 1, to go to the right. Thus:
ψ ( p ) = p ˙ 1
˙ p 2
=
1
cos p 10
1+ 10 1 10sin p 10
1− p 2
(1) which is attracted by the curve p 2 = 10sin p 10
1.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
The controller is
u 1 = − 1 2 arcsin tanh
ω ˆ ρ
2v
ω ˆ = −( sawtooth( θ − atan2 (b, 1 )) + 1 +b b ˙
2b ˙ = 10 1 cos x 3 · cos x 10
1− sin 10 x
1− 10 1 sin x 3 b = cos x 10
1+ sin x 10
1− 10 1 x 2
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
wind
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots
L. Jaulin.
Automation for Robotics.
ISTE editions, 2015.
L. Jaulin and F. Le Bars.
An Interval Approach for Stability Analysis; Application to Sailboat Robotics.
IEEE Transaction on Robotics, 27(5), 2012.
M. Le Gallic, J. Tillet, F. Le Bars, L. Jaulin Tight Slalom Control for Sailboat Robots