l ecture 8
play

L ECTURE 8: K INEMATICS E QUATIONS O DOMETRY , D EAD R ECKONING I - PowerPoint PPT Presentation

16-311-Q I NTRODUCTION TO R OBOTICS L ECTURE 8: K INEMATICS E QUATIONS O DOMETRY , D EAD R ECKONING I NSTRUCTOR : G IANNI A. D I C ARO F O R WA R D K I N E M AT I C S E Q U AT I O N S 2 3 2 3 2 3 x ( t + t )


  1. 16-311-Q I NTRODUCTION TO R OBOTICS L ECTURE 8: K INEMATICS E QUATIONS O DOMETRY , D EAD R ECKONING I NSTRUCTOR : G IANNI A. D I C ARO

  2. F O R WA R D K I N E M AT I C S E Q U AT I O N S 2 3 2 3 2 3 ⇣ ⌘ ⇣ ⌘ x ( t + δ t ) � � � � x ( t ) + R ( t ) sin θ ( t ) + ωδ t − sin( θ ( t )) x ( t ) + R ( t ) sin θ ( t ) + ∆ θ ( t + δ t ) − sin( θ ( t )) W 6 7 6 7 6 7 y ( t + δ t ) = 5 = ⇣ ⌘ ⇣ ⌘ 6 7 6 7 6 7 � � � � y ( t ) − R ( t ) cos θ ( t ) + ωδ t − cos( θ ( t )) y ( t ) − R ( t ) cos θ ( t ) + ∆ θ ( t + δ t ) − cos( θ ( t )) 6 7 6 7 6 7 4 5 4 4 5 θ ( t + δ t ) θ ( t ) + ωδ t θ ( t ) + ∆ θ ( t + δ t ) 2 3 x ( t ) + v ( t ) ⇣ ⌘ sin( θ ( t ) + ∆ θ ( t + δ t )) − sin( θ ( t )) Function of the ICR 6 7 ω ( t ) 6 7 6 7 = y ( t ) − v ( t ) 6 7 ⇣ ⌘ Function of the 6 cos( θ ( t ) + ∆ θ ( t + δ t )) − cos( θ ( t )) 7 6 7 ω ( t ) 6 7 issued velocities 4 5 θ ( t ) + ω ( t ) δ t To obtain future poses over time-extended intervals, it is necessary to provide initial conditions, specify geometry parameters, assign the linear and angular velocity profiles v(t) and ω (t), and integrate over time (which might not be obvious/easy) In the specific case of a two-wheeled ! P ( t ) = r ˙ ' R − r ˙ = v R ( t ) − v L ( t ) ' L di ff erential robot , v(t) and ω (t) at 2 ` 2 ` the reference point P on the chassis are functions of the Left and Right v P ( t ) = r ˙ ϕ R + r ˙ = v R ( t ) + v L ( t ) ϕ L speeds issued to the Left and Right 2 2 wheel, respectively: 2

  3. F O R WA R D K I N E M AT I C S F O R D I F F E R E N T I A L D R I V E Y R In the robot frame , given the spinning velocity controls for wheels Y W       ICR(t) r ˙ ' R (t) + r ˙ ' L (t) v R (t) + v L (t) x ˙ ω (t) 2 2 X R             y ˙ 0 0 = =       V L (t)             R ˙    r ˙ ' R (t) – r ˙ ' L (t)   v R (t) – v L (t)  θ V(t) 2 ` 2 ` R l 𝜾     y P l x ˙ v(t) V R (t) Two control inputs,         y ˙ 0 linear and angular =         velocity X W     x ˙     ω (t) θ R In the world reference frame , given the local inputs v(t), ω (t)       x ˙ cos( θ (t)) – sin( θ (t)) 0 v(t) x = v(t) cos( θ (t)) ˙             y ˙ sin( θ (t)) cos( θ (t)) 0 0 = y = v(t) sin( θ (t)) ˙                   ˙ ˙       0 0 1 ω (t) θ θ = ω (t) W R 3

  4. A G E N E R A L M O D E L : T H E U N I C Y C L E M O D E L x = v R (t) + v L (t) Y R Y W ˙ cos( ✓ (t)) 2 ICR(t) ω (t) y = v R (t) + v L (t) X R ˙ sin( ✓ (t)) 2 V L (t) x = v(t) cos( θ (t)) ˙ R V(t) ✓ = v R (t) – v L (t) ˙ y = v(t) sin( θ (t)) ˙ l 2 ` 𝜾 y P V R (t) l ˙ θ = ω (t) x = r ˙ ' R (t) + r ˙ ' L (t) ˙ cos( ✓ (t)) 2 X W x y = r ˙ ' R (t) + r ˙ ' L (t) ˙ sin( ✓ (t)) 2 Unicyle model (non holonomic) ✓ = r ˙ ' R (t) – r ˙ ' L (t) ˙ 2 ` Abstract model! ω (t) V(t) 𝜾 X y x 4

  5. F U L L F O R WA R D K I N E M AT I C S : T I M E T R A J E C T O RY x = v(t) cos( θ (t)) ˙ For a generic robot, given v(t), ω (t) as local inputs, the velocity of pose change in the world reference frame: y = v(t) sin( θ (t)) ˙ ˙ θ = ω (t) ω (t) V(t) If the time-profiles of the velocities are known, the equations can be integrated over time to predict the time trajectory: 𝜾 y x For a 2-wheeled di ff erential robot 5

  6. C O M P U TAT I O N O F R AT E O F C H A N G E I N T H E P O S E V E C T O R A robot is positioned at an angle of 60 degrees with respect to the global reference frame and has wheels with a radius of 1 cm. The wheels are 2 cm from the center of the chassis. If the speeds of wheels 1 and 2, are 4 cm/s and 2 cm/s, respectively, what is the robot velocity with respect to the global reference frame? 6

  7. F O R WA R D K I N E M AT I C S : E A S Y ( B U T U S E F U L ) C A S E S Equal (constant) forward speed for both wheels Also for interval-wise changes v L = v R = v in the common velocity x ( t ) = x 0 + vt cos( θ ) The robot moves along a y ( t ) = y 0 + vt sin( θ ) straight trajectory θ ( t ) = θ 0 Equal but opposite wheel speeds v L = − v R Constant (di ff erent) speeds for both wheels v L ( t ) = v L , v R ( t ) = v R , v L 6 = v R x ( t ) = x 0 The robot moves along a circular y ( t ) = y 0 v R + v L x ( t ) = x 0 + ` � t � trajectory sin ` ( v R � v L ) ✓ ( t ) = ✓ 0 + 2 vt 2 v R � v L of constant radius R 2 ` v R + v L y ( t ) = y 0 � ` � t � cos ` ( v R � v L ) R = ` v R + v L The robot 2 v R � v L v R − v L rotates in place ✓ ( t ) = ✓ 0 + t � � v R � v L ` 7

  8. K I N E M AT I C S E Q U AT I O N S F O R T H E B I C Y C L E M O D E L x = v(t) cos( θ (t)) ˙ y = v(t) sin( θ (t)) ˙ ω ( t ) = v ( t ) L ˙ θ = ω (t) R ( t ) = R 1 ( t ) = tan( γ ( t )) , R ( t ) x = v(t) cos( θ (t)) ˙ y = v(t) sin( θ (t)) ˙ θ = v(t) ˙ tan( γ (t)) L The max value of 𝛅 limits maneuverability: parking problem, complex inverse kinematics 8

  9. A C K E R M A N N S T E E R I N G The front wheel must follow a longer path, R 2 ( t ) > R 1 ( t ) and therefore must rotate faster than the rear wheel. With two front wheels a di ff erential gear is necessary to implement this di ff erence R L 𝓂 𝓂 L R ( t ) − ` = Once set the steering for the left wheel, the right wheel tan( ↵ l ( t )) is constrained by rolling motion to steer a specific angle L R ( t ) + ` = which is coherent with the vehicle’s ICR tan( ↵ r ( t )) 9

  10. F O R WA R D V S . I N V E R S E K I N E M AT I C S Posture prediction: Forward Kinematics Posture regulation: Inverse Kinematics Controls R Controls ? Pose o b ? (v, 𝞉 ) o Robot Robot t Robot Goal pose Feasible? Control Robot Controls ? Path Planning Path following R Robot Robot o (geometry) b Path( s ) o t Feasible? Robot Controls ? Trajectory Planning Trajectory following R Robot Robot o (kinematics, time) b Path(s, t ) o t Feasible? 10

  11. I N V E R S E K I N E M AT I C S ( F O R D I F F E R E N T I A L R O B O T S ) Given an initial and a goal pose, what are the velocity profiles to provide to the wheels to achieve the desired pose transition? {W} In the general case, a very hard problem, the presence of the non-holonomic sliding constraints makes computations di ffi cult ? Given a time t and a goal pose, the equations solve for v L and v R but do not provide an v L ( t ) = v L , v R ( t ) = v R , v L 6 = v R independent control for 𝜄 ( 𝜺 m =2) v R + v L x ( t ) = x 0 + ` � t � sin ` ( v R � v L ) The same final pose(t) 2 v R � v L can be achieved in many/infinite ways v R + v L y ( t ) = y 0 � ` � t � cos ` ( v R � v L ) Goal 2 v R � v L Di ff erent radii, and/or ✓ ( t ) = ✓ 0 + t � � v R � v L multiple iterations over ` the same circular path to Start meet time requirements 11

  12. S I M P L I F I E D I N V E R S E K I N E M AT I C S A P P R O A C H In general, a forward solution is already quite complex, a direct approach to inversion would be problematic for general relations between the two control velocities v L = − v R v L = v R = v Easy forward kinematics cases Rotate Move x ( t ) = x 0 x ( t ) = x 0 + vt cos( θ ) in place straight y ( t ) = y 0 y ( t ) = y 0 + vt sin( θ ) ✓ ( t ) = ✓ 0 + 2 vt θ ( t ) = θ 0 2 ` Solve the problem by decomposing the trajectory in primitive motion segments (very easy in open space): • Straight lines • Segments of a circle or rotation in place Easier but not easy: a lot of issues to guarantee smoothness (and other quality constraints) and to deal with robot and environments’ constraints Other (better) ways to do it, later on …. 12

  13. C O M P U T I N G T H E S TAT E / P O S E What is robot’s pose in {W} {W} after moving at a velocity (v, 𝞉 ), for 1 minute? Actual trajectory ξ (t) = [x(t) y(t) 𝜄 (t)] Δξ (t) ? Target trajectory ξ d (t) = [x d (t) y d (t) 𝜄 d (t)] Where am I? / What is my pose? With respect to an initial reference point, a coordinate system, a map …. Δξ wind 13

  14. W H AT I S T H E T Y P E O F A P O S E ? Pose / Position should be thought in a quite general sense. The required form of a position depends on the type of the reference system that is of interest / available Geographical map, landmarks Cartesian, 2D 3D earth coordinates 14 T oplogical map Metric map Sensor map

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend