SA-1SA-1
Probabilistic Robotics
Wheeled Locomotion
2
Locomotion of Wheeled Robots
Locomotion (Oxford Dict.): Power of motion from place to place
• Differential drive (AmigoBot, Pioneer 2-DX)• Car drive (Ackerman steering)• Synchronous drive (B21)• Mecanum wheels, XR4000
y
roll
z motion
x
y
3
Instantaneous Center of Curvature
ICC
• For rolling motion to occur, each wheel has to move along its y-axis
4
Differential Drive
R
ICC
(x,y)
y
l/2
x
vl
vr
l
vv
vv
vvlR
vlR
vlR
lr
lr
rl
l
r
)(
)(
2
)2/(
)2/(
]cos,sin[ICC RyRx
5
Differential Drive: Forward Kinematics
ICC
R
P(t)
P(t+t)
t
y
x
tt
tt
y
x
y
x
y
x
ICC
ICC
ICC
ICC
100
0)cos()sin(
0)sin()cos(
'
'
'
')'()(
')]'(sin[)'()(
')]'(cos[)'()(
0
0
0
t
t
t
dttt
dtttvty
dtttvtx
6
Differential Drive: Forward Kinematics
ICC
R
P(t)
P(t+t)
t
y
x
tt
tt
y
x
y
x
y
x
ICC
ICC
ICC
ICC
100
0)cos()sin(
0)sin()cos(
'
'
'
')]'()'([1
)(
')]'(sin[)]'()'([2
1)(
')]'(cos[)]'()'([2
1)(
0
0
0
t
lr
t
lr
t
lr
dttvtvl
t
dtttvtvty
dtttvtvtx
7
tan
]cos,sin[ICC
dR
RyRx
Ackermann Drive
R
ICC
(x,y)
y
l/2
x
vl
vr
l
vv
vv
vvlR
vlR
vlR
lr
lr
rl
l
r
)(
)(
2
)2/(
)2/(
d
8
Synchonous Drive
y
x
v(t)
t')'()(
')]'(sin[)'()(
')]'(cos[)'()(
0
0
0
t
t
t
dttt
dtttvty
dtttvtx
9
Synchro-Drive Robot
10
XR4000 Drive
y
x
vi(t)
i(t)
')'()(
')]'(sin[)'()(
')]'(cos[)'()(
0
0
0
t
t
t
dttt
dtttvty
dtttvtx
ICC
11
XR4000
[courtesy by Oliver Brock & Oussama Khatib]
12
Mecanum Wheels
4
4
4
4
3210
3210
3210
3210
/)vvvv(v
/)vvvv(v
/)vvvv(v
/)vvvv(v
error
x
y
13
Example: Priamos (Karlsruhe)
14
Example
15
Odometry
16
Non-Holonomic Constraints
•Non-holonomic constraints limit the possible incremental movements within the configuration space of the robot.
•Robots with differential drive or synchro-drive move on a circular trajectory and cannot move sideways.
•XR-4000 or Mecanum-wheeled robots can move sideways.
17
Holonomic vs. Non-Holonomic
•Non-holonomic constraints reduce the control space with respect to the current configuration (e.g., moving sideways is impossible).
•Holonomic constraints reduce the configuration space.