Introduction to Mobile Robotics Wheeled...

20
1 Wheeled Locomotion Introduction to Mobile Robotics Wolfram Burgard

Transcript of Introduction to Mobile Robotics Wheeled...

Page 1: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

1

Wheeled Locomotion

Introduction to Mobile Robotics

Wolfram Burgard

Page 2: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

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) XR4000 Mecanum wheels

y

roll

z m otion

x

y

we also allow wheels to rotate around the z axis

Page 3: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

3

Instantaneous Center of Curvature

ICC

For rolling motion to occur, each wheel has to move along its y-axis

Page 4: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

4

Differential Drive

R

ICC w

(x,y)

y

l/2

q x

v l

v r

w(R+ l / 2) = vr

w(R- l / 2) = vl

R =l

2

(vl + vr)

(vr - vl)

w =vr - vl

l

v =vr + vl

2

]cos,sin[ICC qq RyRx

Page 5: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

5

Differential Drive: Forward Kinematics

ICC

R

P(t)

P(t+dt)

t

y

x

tt

tt

y

x

y

x

y

x

wdq

wdwd

wdwd

q

ICC

ICC

ICC

ICC

100

0)cos()sin(

0)sin()cos(

'

'

'

')'()(

')]'(sin[)'()(

')]'(cos[)'()(

0

0

0

t

t

t

dttt

dtttvty

dtttvtx

wq

q

q

Page 6: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

6

Differential Drive: Forward Kinematics

ICC

R

P(t)

P(t+dt)

t

y

x

tt

tt

y

x

y

x

y

x

wdq

wdwd

wdwd

q

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

q

q

q

Page 7: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

7

qq

tan

]cos,sin[ICC

dR

RyRx

Ackermann Drive

R

ICC

(x,y)

y

l/2

q x

v l

v r l

vv

vv

vvlR

vlR

vlR

lr

lr

rl

l

r

w

w

w

)(

)(

2

)2/(

)2/(w

d

Page 8: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

8

Synchronous Drive

q

y

x

v(t)

w( ) t

')'()(

')]'(sin[)'()(

')]'(cos[)'()(

0

0

0

t

t

t

dttt

dtttvty

dtttvtx

wq

q

q

Page 9: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

9

XR4000 Drive

q

y

x

vi(t)

wi(t)

')'()(

')]'(sin[)'()(

')]'(cos[)'()(

0

0

0

t

t

t

dttt

dtttvty

dtttvtx

wq

q

q

ICC

Page 10: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

11

Mecanum Wheels

4

4

4

4

3210

3210

3210

3210

/)vvvv(v

/)vvvv(v

/)vvvv(v

/)vvvv(v

error

x

y

q

Page 11: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

The Kuka OmniRob Platform

Page 12: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

15

Example: KUKA youBot

Page 13: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

17

Tracked Vehicles

Page 14: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

18

Other Robots: OmniTread

[courtesy by Johann Borenstein]

Page 15: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

20

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.

Mecanum-wheeled robots can move sideways (they have no non-holonomic constraints).

Page 16: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

21

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.

E.g., a train on tracks (not all positions and orientations are possible)

Page 17: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

22

Drives with Non-Holonomic Constraints

Synchro-drive

Differential drive

Ackermann drive

Page 18: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

23

Drives without Non-Holonomic Constraints

Mecanum wheels

Page 19: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

24

Dead Reckoning and Odometry

Estimating the motion based on the issued controls/wheel encoder readings

Integrated over time

Page 20: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss20/... · 20 Non-Holonomic Constraints Non-holonomic constraints limit the possible incremental

25

Summary

Introduced different types of drives for wheeled robots

Math to describe the motion of the basic drives given the speed of the wheels

Non-holonomic constraints

Odometry and dead reckoning