Cinematica dei Robot Mobili su Ruote Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo
Riferimenti bibliografici Roland SIEGWART, Illah R. NOURBAKHSH Introduction to Autonomous Mobile Robots Capitolo 2.3 «Wheeled Mobile Robots» 2
Wheeled Mobile Robots (WMR) 3
Wheeled Mobile Robots (WMR) ocomotion the process of causing an robot to move. In order to produce motion, forces must be applied to the robot Motor output, payload 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
Mobile Robot Kinematics Description of mechanical behavior of the robot for design and control Mobile robots can move unbound with respect to its environment there is no direct way to measure the robot s position Position must be integrated over time eads to inaccuracies of the position (motion) estimate the number 1 challenge in mobile robotics Understanding mobile robot motion starts with understanding wheel constraints placed on the robots mobility 5
Wheels Rolling motion ateral slip 6
Idealized Rolling Wheel Non-slipping and pure rolling Assumptions 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 lin per wheel. 5. All steering axes are perpendicular to the floor. 7
Robot wheel parameters For low velocities, rolling is a reasonable wheel model. This is the model that will be considered in the inematics models of wheeled mobile robots (WMR) Wheel parameters: r = wheel radius v = wheel linear velocity w = wheel angular velocity t = steering velocity 8
Wheel Types Fixed wheel Centered orientable wheel Off-centered orientable wheel (Castor wheel) Swedish wheel:omnidirectional property 9
Examples of WMR Smooth motion Ris of slipping Some times use roller-ball to mae balance Bi-wheel type robot Exact straight motion Robust to slipping Inexact modeling of turning Caterpillar type robot Free motion Complex structure Weaness of the frame Omnidirectional robot 10
Mobile Robot ocomotion Instantaneous center of rotation (ICR) or Instantaneous center of curvature (ICC) A cross point of all axes of the wheels 11
Non-holonomic constraint A non-holonomic constraint is a constraint on the feasible velocities of a body So what does that mean? Your robot can move in some directions (forward and bacward), but not others (sideward). The robot can instantly move forward and bacward, but can not move sideward Parallel paring, Series of maneuvers 12
Notation 13
Differential Drive Relazione tra le velocità delle ruote (V e V R ) e la velocità del robot (TWIST) V Control input Twist { v : inear velocity of the robot : Angular velocity of the robot R = curvature radius V = R * 14
Differential Drive V ( R ) 2 V R ( R ) 2 V 15
Differential Drive V Straight motion R = Infinity VR = V Rotational motion R = 0 VR = -V 16
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 w s (t) The ICC must lie on the line that passes through, and is perpendicular to, the fixed rear wheels 17
Tricycle If the steering wheel is set to an angle α(t) from the straight-line direction, the tricycle will rotate with angular velocity ω(t) about ICC lying a distance R along the line perpendicular to and passing through the rear wheels. 18
Tricycle d: distance from the front wheel to the rear axle 19
Tricycle Kinematics model in the robot frame ---configuration inematics model 20
Tricycle Kinematics model in the world frame ---Posture inematics model 21
Synchronous Drive In a synchronous drive robot (synchronous drive) each wheel is capable of being driven and steered. 22
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 lin 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. 23
Omidirectional 24 Swedish Wheel
Car Drive (Acerman Steering) 25 R Used in motor vehicles, the inside front wheel is rotated slightly sharper than the outside wheel (reduces tire slippage). Acerman steering provides a fairly accurate dead-reconing solution while supporting traction and ground clearance. Generally the method of choice for outdoor autonomous vehicles. 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
Acerman Steering R 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 26
Acerman Steering The Acerman Steering equation: : cot cot i o d l cot cos sin cot cot R d l i d l / 2 o R d l / 2 R 27
Carrello 28
Odometry for Differential Drive Rovers
Differential Drive V Straight motion R = Infinity VR = V Rotational motion R = 0 VR = -V 30
Basic Motion Control Velocity Profile : Radius of rotation : ength of path : Angle of rotation 3 0 2 1 3 0 2 1 31
Differential Drive: odometria y dd 2 1 r R t t dt y θ x x r t t t 1 2 t r t t cos t R R dt dt dd x 32 y 1 2 t r t t sin t R dt
Differential Drive: odometria Esempio : velocità costanti R R t t t r t R t r t x R R R sin 2 t r t y R R R cos 2 33
Differential Drive: odometria D DR R r r t t t t 1 1 Distanze percorse dalle due ruote nell intervallo di tempo t t -1 r 2 DR DR D D Raggio di curvatura del robot nell intervallo di tempo t t -1 x y x y 1 DR r D 1 sin 1 1 r cos 1 sin cos Posizione del robot all istante t 34
Effector Noise: Odometry, Dead Reconing Odometry and dead reconing: Position update is based on proprioceptive sensors Odometry: wheel sensors only Dead reconing: 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. 35
Imprecisione dell odometria Nr. posizionamenti = 35 ; Dati di scostamento : Media = 11 gradi ; Deviazione standard = 5.47 gradi 36
Odometry: Error sources deterministic (systematic) non-deterministic (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: imited 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 ) 37
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. 38
Differential Drive: odometria D DR R r r t t t t 1 1 r 2 DR DR D D x y x y 1 DR r D 1 sin 1 1 r cos 1 sin cos Posizione del robot all istante t 39
Odometry: Growth of Pose uncertainty for Straight ine Movement Note: Errors perpendicular to the direction of movement are growing much faster! 40
Odometry: Growth of Pose uncertainty for Movement on a Circle Note: Errors ellipse in does not remain perpendicular to the direction of movement! 41
Riduzione degli errori non sistematici Utilizzo di ruote ausiliarie non motrici 42