AUTONOMOUS PERPENDICULAR AND PARALLEL PARKING USING MULTI-SENSOR - - PowerPoint PPT Presentation
AUTONOMOUS PERPENDICULAR AND PARALLEL PARKING USING MULTI-SENSOR - - PowerPoint PPT Presentation
AUTONOMOUS PERPENDICULAR AND PARALLEL PARKING USING MULTI-SENSOR BASED CONTROL David Prez-Morales, Olivier Kermorgant, Salvador Domnguez-Quijada and Philippe Martinet Updated: 2017/09/18 Ov erview 1. Modeling and Notation 1.1 Car-like
Overview
- 1. Modeling and Notation
1.1 Car-like robot model and notation 1.2 Multi-sensor modeling
- 2. Perception
- 3. Interaction Model
3.1 Task 3.2 Constraints
- 4. Control
- 5. Results
5.1 Unconstrained cases - MATLAB 5.2 Constrained cases
1
MODELING AND NOTATION
Car-Like Robot Rear-Wheel Driving
x0 y0 ϕ y
m
x
m
lwb ltr lfo lro lls lrs θ M y x
Figure: Kinematic model diagram for a car-like rear-wheel driving robot
˙ x ˙ y ˙ θ ˙ φ
-
cos θ sin θ tan φ/lwb
v +
1
˙ φ (1) Where v and ˙ φ are the driving and steering velocities.
3
Experimental Setup
Velocity, direction of travel, steering and turning signals can be controlled by computer.
Figure: Robotized Renault ZOE 4
Multi-sensor modeling
F0 Fm F1
F2
FO
S1 S2
control frame Object of interest
- bject
frame
1Wm 2Wm
5 10 15 20 25 30 35 40 45- 6
- 4
- 2
- 6
- 4
- 2
sensor signal sensor signal
Figure: Multi-sensor model
In a static environment, the sensor feature deriva- tive can be expressed as 1: ˙ si Livi Li
(di×6) iWm (6×6)
vm
(6×1)
(2) Ls
(d×6)
LWm L1 . . . . . . ... . . . . . . Lk
(d×6k)
1Wm
. . .
kWm
(6k×6)
(3) ˙ s Lsvm (4) Under a planar world assumption: ˙ si Livi Li
(di×3) iWm (3×3)
vm
(3×1)
(5) where vm [vxm , vym , ˙ θ]T
1Kermorgant and Chaumette, “Dealing with constraints in sensor-based robot control”
5
Multi-sensor modeling
x0 y0 ϕ ym xm lwb ltr lfo lro lls lrs θ M y x
Figure: Kinematic model diagram for a car-like rear-wheel driving robot
Assuming vym 0 (no slipping nor skidding) vm [vxm , ˙ θ]T (6) dim(Ls) (d × 2) where vxm v.
6
Weighted error
The weighted multi-sensor error signal is defined as: eH He (7) where e s − s∗ is the difference between the current sensor signal s and its desired value s∗ and H is a diagonal positive semi-definite weighting matrix that depends on the current value of s. Its associated interaction matrix is LH HLs.
7
PERCEPTION
Perception
9
Extraction of empty parking place
h t p e D t
- p
S
3
d Spot Length d1 d2 d
1
/ 2 d
2
/ 2 c11 c12 c13 c14 c21 c22 c23 c24
ls
10
Parking spots
Figure: ⊥ parking spot model Figure: Parking spot model for reverse parking maneuvers Figure: Parking spot model for forward parking maneuvers Table: Pair of points through which each line passes Line Perpendicular Parallel (reverse) Parallel (forward)
iL1
(ip5, ip6) (ip5, ip6) (ip5, ip6)
iL2
(ip1, ip4) (ip3, ip4) (ip1, ip2)
iL3
(ip3, ip4) (ip1, ip4) (ip1, ip4)
iL4
(ip1, ip2) (ip1, ip2) (ip3, ip4) 11
INTERACTION MODEL
Interaction Model
Figure: Sensors’ configuration and sensor features
The sensor signals siLj and reduced inter- action matrix LiLj are defined respectively as: siLj
iuj(1), iuj(2), ihj(3) T
(8) LiLj
iuj(2)
−iuj(1) −iuj(2)
iuj(1)
(9)
13
Task sensor features
Figure: Sensors’ configuration and sensor features
Task sensor features
st [siL1 , siL2]T (10) st is obtained from S1 for forward maneu- vers and from S2 for reverse ones. The corresponding interaction matrix is defined as: Lt LL + L∗
L
2 (11) where LL [LiL1 , LiL2]T and L∗
L is equal
to the value of LL at the desired pose.
14
Weighting of the task sensor features
Figure: Sensors’ configuration and sensor features
The associated weighting matrix Ht is defined as: Ht diag(ht
1, ht 2, htconst 3
, ht
4, ht 5, htconst 6
)
(12) where the values htconst
3
and htconst
3
6 are con- stant while the values of ht
i
∀ i 1, 2, 4, 5 are computed using the following smooth weighting function:
s-
i
s*
i
s
i
ss-
i
h-
i
ht
i
h+
i
ss
+
i
s
i
s*
i
s+
i
h-
i
ht
i
h+
i
et(i) et(i)
Figure: Weighting function ht
i
15
Constraints (reverse perpendicular case)
Figure: Lateral constraint d
Constrained sensor features
sc [s3, s4, s5]T (13)
The corresponding interaction matrix:
Lc [L3, L4, L5]T (14)
16
CONTROL
Control
Control law
vm argmin||LHtvm + λeHt||2 s.t. Avm ≤ b (15)
with:
A [Lc, −Lc]T (16) b [α(s+
c − sc), −α(s− c − sc)]T
(17)
where α is a gain constant, λ is the control gain and [s−
c , s+ c ] is the desired interval in
which we want to keep sc.
18
Bounding the control signals
Figure: Distance to stop line
The control signals v and φ and their increments are bounded as shown below: |v| < vmax (18) |φ| < φmax (19) (vn−1 − ∆dec) ≤ vn ≤ (vn−1 + ∆acc) (20) (φn−1 − ∆φ) ≤ φn ≤ (φn−1 + ∆φ) (21)
Distance to stop line
d th
stop
dstop(T=0)
vmax
v0
max
2
Figure: Deceleration profile 19
RESULTS
Unconstrained cases - MATLAB
- 2
2 4 6 8 10
- 2
2 4 6 8 10 Parking maneuver evolution
(a) Performed maneuver
time 5 10 15 20 25 30 35
- 2
- 1
Linear velocity evolution (km/h) time 5 10 15 20 25 30 35
- 40
- 20
Steering angle evolution (degs)
(b) Control signals
time 5 10 15 20 25 30 35
- 5
5 10 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(c) Task error signal
time 5 10 15 20 25 30 35 1 2 3 4 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(d) Task features’ weights Figure: Perpendicular reverse parking maneuver 21
Unconstrained cases - MATLAB
- 8
- 6
- 4
- 2
2 4
- 2
2 4 6 8 10 Parking maneuver evolution
(a) Performed maneuver
time 5 10 15 20 25 30 35 1 2 Linear velocity evolution (km/h) time 5 10 15 20 25 30 35
- 40
- 20
Steering angle evolution (degs)
(b) Control signals
time 5 10 15 20 25 30 35
- 8
- 6
- 4
- 2
2 4 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(c) Task error signal
time 5 10 15 20 25 30 35 0.5 1 1.5 2 2.5 3 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(d) Task features’ weights Figure: Perpendicular forward parking maneuver 22
Unconstrained cases - MATLAB
- 2
2 4 6 8 10 12
- 4
- 2
2 4 6 8 Parking maneuver evolution
(a) Performed maneuver
time 5 10 15 20 25 30 35
- 2
- 1
Linear velocity evolution (km/h) time 5 10 15 20 25 30 35
- 40
40 Steering angle evolution (degs)
(b) Control signals
time 5 10 15 20 25 30 35
- 8
- 6
- 4
- 2
2 4 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(c) Task error signal
time 5 10 15 20 25 30 35 1 2 3 4 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(d) Task features’ weights Figure: Parallel reverse parking maneuver 23
Unconstrained cases - MATLAB
- 8
- 6
- 4
- 2
2 4
- 4
- 2
2 4 6 8 Parking maneuver evolution
(a) Performed maneuver
time 5 10 15 20 25 30 35 1 2 Linear velocity evolution (km/h) time 5 10 15 20 25 30 35
- 40
40 Steering angle evolution (degs)
(b) Control signals
time 5 10 15 20 25 30 35
- 2
2 4 6 8 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(c) Task error signal
time 5 10 15 20 25 30 35 1 2 3 4 5 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(d) Task features’ weights Figure: Parallel forward parking maneuver 24
Unconstrained cases - MATLAB
- 2
2 4 6 8 10 12
- 2
2 4 6 8 10 Parking maneuver evolution
(a) Performed maneuver
time 5 10 15 20 25 30 35
- 2
- 1
Linear velocity evolution (km/h) time 5 10 15 20 25 30 35
- 50
50 Steering angle evolution (degs)
(b) Control signals
time 5 10 15 20 25 30 35
- 10
- 5
5 10 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(c) Task error signal
time 5 10 15 20 25 30 35 1 2 3 4 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(d) Task features’ weights Figure: Perpendicular reverse parking maneuver from far 25
Constrained cases - Fast prototyping environment
Figure: Constrained perpendicular reverse parking maneuver 26
Constrained cases - Fast prototyping environment
time 5 10 15 20 25
- 2
- 1
Linear velocity evolution (km/h)
control response
time 5 10 15 20 25
- 30
- 20
- 10
Steering angle evolution (degs)
control response
(a) Control signals
time 5 10 15 20 25
- 5
5 10 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(b) Task error signal
time 5 10 15 20 25 1 2 3 4 5 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(c) Task features’ weights
time 5 10 15 20 25
- 10
- 5
5 10 Constraints sensor signals sc(1) sc(2) sc(3) sc(4) sc(5)
(d) Constraints sensor signals Figure: Constrained perpendicular reverse parking maneuver 27
Constrained cases - Real experimentation
time 5 10 15
- 4
- 2
Linear velocity evolution (km/h)
control response
time 5 10 15
- 20
20 Steering angle evolution (degs) control response
(a) Control signals
time 5 10 15
- 4
- 2
2 4 6 Task errors et(1) et(2) et(3) et(4) et(5) et(6)
(b) Task error signal
time 5 10 15 1 2 3 4 5 Task weights
ht
1
ht
2
htconst
3
ht
4
ht
5
htconst
6
(c) Task features’ weights
time 5 10 15
- 10
- 5
5 10 Constraints sensor signals sc(1) sc(2) sc(3) sc(4) sc(5)