cinematica dei robot mobili su ruote
TRANSCRIPT
Corso di Robotica
Prof. Davide Brugali
Università degli Studi di Bergamo
Cinematica dei
Robot Mobili su Ruote
Riferimenti bibliografici
2
Roland SIEGWART, Illah R. NOURBAKHSH
Introduction to Autonomous Mobile Robots
Capitolo 2.3 «Wheeled Mobile Robots»
Robotica - UNIBG - Prof. Brugali
Wheeled Mobile Robots (WMR)
3 Robotica - UNIBG - Prof. Brugali
Wheeled Mobile Robots (WMR)
Kinematics – study of the mathematics of motion without considering the forces that affect the motion. Deals with the geometric relationships that govern the system Deals with the relationship between control parameters and the
behavior of a system.
Dynamics – study of motion in which these forces are modeled Deals with the relationship between force and motions.
4 Robotica - UNIBG - Prof. Brugali
Wheels
Lateral slip
Rolling motion
5 Robotica - UNIBG - Prof. Brugali
1. The robot is built from rigid mechanisms.
2. No slip occurs in the orthogonal direction of rolling (non-slipping).
3. No translational slip occurs between the wheel and the floor (pure rolling).
4. The robot contains at most one steering link per wheel.
5. All steering axes are perpendicular to the floor.
Non-slipping and pure rolling
Assumptions
Idealized Rolling Wheel
6 Robotica - UNIBG - Prof. Brugali
Robot wheel parameters
For low velocities, rolling is a reasonable wheel model.
This is the model that will be considered in the kinematics models of wheeled mobile robots (WMR)
Wheel parameters:
r = wheel radius
v = wheel linear velocity
w = wheel angular velocity
t = steering velocity
7 Robotica - UNIBG - Prof. Brugali
8
Wheel Types
Fixed wheel Centered orientable wheel
Off-centered orientable wheel
(Castor wheel) Swedish wheel:omnidirectional
property
Robotica - UNIBG - Prof. Brugali
Smooth motion
Risk of slipping
Some times use roller-ball to make balance
Bi-wheel type robot
Omnidirectional robot
Caterpillar type robot
Exact straight motion
Robust to slipping
Inexact modeling of turning
Free motion
Complex structure
Weakness of the frame
Examples of WMR
9 Robotica - UNIBG - Prof. Brugali
Mobile Robot Locomotion
Instantaneous center of rotation (ICR) or Instantaneous center of curvature (ICC) A cross point of all axes of the wheels
10 Robotica - UNIBG - Prof. Brugali
Non-holonomic constraint
So what does that mean?
Your robot can move in some directions (forward
and backward), but not others (sideward).
The robot can instantly
move forward and backward,
but can not move sideward
Parallel parking,
Series of maneuvers
A non-holonomic constraint is a constraint on the
feasible velocities of a body
11 Robotica - UNIBG - Prof. Brugali
v : Linear velocity of the robot
: Angular velocity of the robot
Control input
12
R = curvature radius
V = R *
Twist {
V
Differential Drive
Relazione tra le velocità delle ruote (VL e VR)
e la velocità del robot (TWIST)
Robotica - UNIBG - Prof. Brugali
13
V
RVL
R )2
( LVL
R )2
(
Differential Drive
Robotica - UNIBG - Prof. Brugali
14
V
Differential Drive
Straight motion
R = Infinity VR = VL
Rotational motion
R = 0 VR = -VL
Robotica - UNIBG - Prof. Brugali
15
V
Differential Drive
Robotica - UNIBG - Prof. Brugali
V
Twist { Velocità ruote {
Tricycle
Three wheels and odometers on the two rear wheels
Steering and power are provided through the front wheel
control variables:
steering direction α(t)
angular velocity of steering wheel ws(t)
The ICC must lie on
the line that passes
through, and is
perpendicular to, the
fixed rear wheels
16 Robotica - UNIBG - Prof. Brugali
Tricycle
17 Robotica - UNIBG - Prof. Brugali
Linear velocity of
steering wheel
Tricycle
Kinematics model in the world frame
---Posture kinematics model
18 Robotica - UNIBG - Prof. Brugali
Car Drive (Ackerman Steering)
Used in motor vehicles, the inside front wheel is rotated slightly sharper than the outside wheel (reduces tire slippage).
Ackerman steering provides a fairly accurate dead-reckoning solution while supporting traction and ground clearance.
Generally the method of choice for outdoor autonomous vehicles.
R
19
where
d = lateral wheel separation
l = longitudinal wheel separation
i = relative steering angle of inside wheel
o = relative steering angle of outside wheel
R=distance between ICC to centerline of the vehicle
Robotica - UNIBG - Prof. Brugali
Carrello
20 Robotica - UNIBG - Prof. Brugali
Synchronous Drive
In a synchronous drive robot (synchronous drive) each wheel is
capable of being driven and steered.
21 Robotica - UNIBG - Prof. Brugali
Synchronous Drive
All the wheels turn in unison
All of the three wheels point in the same direction and turn at the same rate This is typically achieved through the use of a complex collection of belts that
physically link the wheels together
Two independent motors, one rolls all wheels forward, one rotate them for turning
The vehicle controls the direction in which the wheels point and the rate at which they roll
Because all the wheels remain parallel the synchro drive always rotate about the center of the robot
The synchro drive robot has the ability to control the orientation θ of their pose directly.
22 Robotica - UNIBG - Prof. Brugali
Omidirectional
Swedish Wheel
23 Robotica - UNIBG - Prof. Brugali
Odometry for Differential Drive Rovers
Robotica - UNIBG - Prof. Brugali
25
V
Differential Drive
Straight motion
R = Infinity VR = VL
Rotational motion
R = 0 VR = -VL
Robotica - UNIBG - Prof. Brugali
3 1 0 2
3 1 0 2
Velocity
Profile
Basic Motion Control
26
: Radius of rotation
: Length of path
: Angle of rotation
Robotica - UNIBG - Prof. Brugali
Differential Drive: odometria
x
x
y
y θ
dD
dttttrtx LR cos2
1
dttttrty LR sin2
1
dtttrdD LR 2
1
dtttL
rt LR
27 Robotica - UNIBG - Prof. Brugali
Differential Drive: odometria
Esempio : velocità costanti
RR t LL t
tL
rt LR
t
L
rLtx LR
LR
LR
sin
2
t
L
rLty LR
LR
LR
cos
2
28 Robotica - UNIBG - Prof. Brugali
Differential Drive: odometria
1 kkLk ttrDL
1 kkRk ttrDR
kk
kk
kDLDR
DLDRLr
2
Distanze percorse dalle due ruote nell’intervallo di tempo tk – tk-1
Raggio di curvatura del robot nell’intervallo di tempo tk – tk-1
L
DLDR kk
kk
1
kkkkk rxx sinsin 11
kkkkk ryy coscos 11
Posizione del robot all’istante tk
29 Robotica - UNIBG - Prof. Brugali
Effector Noise: Odometry, Dead Reckoning
Odometry and dead reckoning:
Position update is based on proprioceptive sensors
Odometry: wheel sensors only
Dead reckoning: also heading sensors
The movement of the robot, sensed with wheel encoders and/or heading
sensors is integrated to the position.
Pros: Straight forward, easy
Cons: Errors are integrated -> unbound
Using additional heading sensors (e.g. gyroscope) might help to reduce the
cumulated errors, but the main problems remain the same.
30 Robotica - UNIBG - Prof. Brugali
Imprecisione dell’odometria
Nr. posizionamenti = 35 ;
Dati di scostamento : Media = 11 gradi ; Deviazione standard = 5.47 gradi
31 Robotica - UNIBG - Prof. Brugali
Odometry: Error sources
deterministic non-deterministic
(systematic) (non-systematic)
deterministic errors can be eliminated by proper calibration of the system. non-deterministic errors have to be described by error models and will always
leading to uncertain position estimate.
Major Error Sources: Limited resolution during integration (time increments, measurement resolution
…) Misalignment of the wheels (deterministic) Unequal wheel diameter (deterministic) Variation in the contact point of the wheel Unequal floor contact (slipping, not planar …) …
32 Robotica - UNIBG - Prof. Brugali
Odometry: Classification of Integration Errors
Range error: integrated path length (distance) of the robots movement
sum of the wheel movements
Turn error: similar to range error, but for turns
difference of the wheel motions
Drift error: difference in the error of the wheels leads to an error in the
robots angular orientation
Over long periods of time, turn and drift errors
far outweigh range errors!
Consider moving forward on a straight line along the x axis. The error in the y-
position introduced by a move of d meters will have a component of dsinD, which
can be quite large as the angular error D grows.
33 Robotica - UNIBG - Prof. Brugali
Differential Drive: odometria
1 kkLk ttrDL
1 kkRk ttrDR
kk
kk
kDLDR
DLDRLr
2
L
DLDR kk
kk
1
kkkkk rxx sinsin 11
kkkkk ryy coscos 11
Posizione del robot all’istante tk
34 Robotica - UNIBG - Prof. Brugali
Odometry: Growth of Pose uncertainty for Straight Line Movement
Note: Errors perpendicular to the direction of movement are growing
much faster!
35 Robotica - UNIBG - Prof. Brugali
Odometry: Growth of Pose uncertainty for Movement on a Circle
Note: Errors ellipse does not remain perpendicular to the direction of
movement!
36 Robotica - UNIBG - Prof. Brugali
Riduzione degli errori non sistematici
Utilizzo di ruote ausiliarie non
motrici
37 Robotica - UNIBG - Prof. Brugali