Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file ·...

17
| Autonomous Mobile Robots Mike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale) ASL Autonomous Systems Lab Roland Siegwart Mike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, (Margarita Chli, Paul Furgale) Wheeled Locomotion | Add ons 1 Mobile Robots | Wheeled Locomotion Autonomous Mobile Robots https://edge.edx.org/courses/course-v1%3AETHZ%2BAMRx_Internal1_2015%2B2015_T1/ Spring 2015

Transcript of Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file ·...

Page 1: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Roland SiegwartMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, (Margarita Chli, Paul Furgale)

Wheeled Locomotion | Add ons 1

Mobile Robots | Wheeled LocomotionAutonomous Mobile Robotshttps://edge.edx.org/courses/course-v1%3AETHZ%2BAMRx_Internal1_2015%2B2015_T1/

Spring 2015

Page 2: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Manipulator- vs. Mobile Robot Kinematics Both are concerned with forward and inverse kinematics However, for mobile robots, encoder values don‘t map to unique robot poses However, mobile robots can move unbound with respect to their environment There is no direct (=instantaneous) way to measure the robot’s position Position must be integrated over time, depends on path taken Leads to inaccuracies of the position (motion) estimate

Understanding mobile robot motion starts with understanding wheel constraints placed on the robot’s mobility

Wheeled Locomotion | Add ons 3

Mobile Robot Kinematics: Overview

Page 3: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Non-holonomic systems differential equations are not integrable to the final position. the measure of the traveled distance of each wheel is not sufficient to calculate the final

position of the robot. One has also to know how this movement was executed as a function of time.

This is in stark contrast to actuator arms

Wheeled Locomotion | Add ons 4

Non-Holonomic Systems

2121

212121

,,,

yyxxssssss LLRR

s1L s1R

s2L

s2R

yI

xI

x1, y1

x2, y2

s1

s2

Page 4: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Wheeled Locomotion | Add ons 8

Kinematic Constraints: Fixed Standard Wheel

y.

x.

. v = r .

Page 5: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Wheeled Locomotion | Add ons 9

3 - Mobile Robot Kinematics

l

Robot chassis

TR yx

v = r .

x.

x sin.

x cos.

A

.

y

.

y (cos

.

y sin

.

l).

(l)sin.

l)cos.

Page 6: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Suppose that the wheel A is in position such that = 0 and = 0 This would place the contact point of the wheel on XI with the plane of the

wheel oriented parallel to YI. If = 0, then the sliding constraint reduces to:

Wheeled Locomotion | Add ons 10

Example

Page 7: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Wheeled Locomotion | Add ons 13

Kinematic Constraints:

Page 8: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Given a robot with M wheels each wheel imposes zero or more constraints on the robot motion only fixed and steerable standard wheels impose constraints

Suppose we have a total of N=Nf + Ns standard wheels We can develop the equations for the constraints in matrix forms: Rolling

Lateral movement

Wheeled Locomotion | Add ons 15

Kinematic Constraints: Complete Robot

0)()( 21 JRJ Is

1 )()(

)(

sf NNs

f

tt

t

3 1

11 )(

)(

sf NNss

fs J

JJ

)( 12 NrrdiagJ

3 1

11 )(

)(

sf NNss

fs C

CC

0)()(1 Is RC

Page 9: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Degree of Maneuverability

Two robots with same are not necessary equal Example: Differential drive and Tricycle (next slide)

For any robot with the ICR is always constrained to lie on a line

For any robot with the ICR is not constrained and can be set to any point on the plane

The Synchro Drive example:

Wheeled Locomotion | Add ons 21

Mobile Robot Maneuverability: Robot Maneuverability

smM

2M

3M

211 smM

MC J. Borenstein

Page 10: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Wheeled Locomotion | Add ons 26

Path / Trajectory Considerations: Omnidirectional Drive

Page 11: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

The objective of a kinematic controller is to follow a trajectory described by its position and/or velocity profiles as function of time.

Motion control is not straight forward because mobile robots are typically non-holonomic and MIMO systems.

Most controllers (including the one presented here) are not considering the dynamics of the system

Wheeled Locomotion | Add ons 29

Wheeled Mobile Robot Motion Control: Overview

Page 12: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Trajectory (path) divided in motion segments of clearly Defined shape: straight lines and segments of a circle Dubins car, and Reeds-Shepp car

Control problem: pre-compute a smooth trajectory

based on line, circle (and clothoid) segments Disadvantages: It is not at all an easy task to pre-compute a feasible trajectory limitations and constraints of the robots velocities and accelerations does not adapt or correct the trajectory if dynamical changes

of the environment occur. The resulting trajectories are usually not smooth (in acceleration, jerk, etc.)

Wheeled Locomotion | Add ons 30

Motion Control: Open Loop ControlyI

xI

goal

Page 13: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

Find a control matrix K, if exists

with kij=k(t,e) such that the control of v(t) and (t)

drives the error e to zero

MIMO state feedback control

Wheeled Locomotion | Add ons 31

Motion Control: Feedback Control

232221

131211

kkkkkk

K

yx

KeKttv

R

)()(

0)(lim

tet

yR

xR

goal

v(t)

(t)

start e

(nonintegrable) Robot Model

(x,y,theta)(v, omega)-

Control law

Page 14: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

The kinematics of a differential drive mobile robot described in the inertial frame {xI, yI, } is given by,

where and are the linear velocities in the direction of the xI and yI of the inertial frame.

Let alpha denote the angle between the xR axis of the robots reference frame and the vector connecting the center of the axle of the wheels with the final position.

Wheeled Locomotion | Add ons 32

Motion Control: Kinematic Position Control

y

vsincos

yxI

1000

x y

Page 15: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

y

Coordinates transformation into polar coordinates with its origin at goal position:

System description, in the new polar coordinates

Wheeled Locomotion | Add ons 33

Kinematic Position Control: Coordinates Transformation

for for

Page 16: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

y

It can be shown, that with

the feedback controlled system

will drive the robot to The control signal v has always constant sign, the direction of movement is kept positive or negative during movement parking maneuver is performed always in the most natural way and without ever inverting its

motion.

Wheeled Locomotion | Add ons 35

Kinematic Position Control: The Control Law

000 ,,,,

Page 17: Autonomous Mobile Robots - ETH Zürich - Homepage | · PDF file · 2015-12-09Mobile Robot Maneuverability: Robot Maneuverability ... Autonomous Mobile Robots Mike Bosse, Marco Hutter,

|Autonomous Mobile RobotsMike Bosse, Marco Hutter, Martin Rufli, Davide Scaramuzza, Roland Siegwart, (Margarita Chli, Paul Furgale)

ASLAutonomous Systems Lab

The goal is in the center and the initial position on the circle.

Wheeled Locomotion | Add ons 36

Kinematic Position Control: Resulting Path

1.5)(3,8,)βk,αk,ρ(kk