introduction to mobile robotics wheeled...

20
1 Wheeled Locomotion Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian Steder

Upload: others

Post on 29-Mar-2020

32 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

1

Wheeled Locomotion

Introduction to Mobile Robotics

Wolfram Burgard, Michael Ruhnke, Bastian

Steder

Page 2: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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

ro ll

z m o tio n

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

The Kuka OmniRob Platform

Page 12: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

15

Example: KUKA youBot

Page 13: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

17

Tracked Vehicles

Page 14: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

18

Other Robots: OmniTread

[courtesy by Johann Borenstein]

Page 15: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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.

XR-4000 or 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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

23

Drives without Non-Holonomic Constraints

XR4000 drive

Mecanum wheels

Page 19: Introduction to Mobile Robotics Wheeled Locomotionais.informatik.uni-freiburg.de/teaching/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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/ss16/robotics/...Introduction to Mobile Robotics Wolfram Burgard, Michael Ruhnke, Bastian

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