ROBOTICS Inverse Kinematics IK Heuristic Algorithm TEMPUS IV
ROBOTICS Inverse Kinematics IK Heuristic Algorithm TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS
Forward Kinematics • position equation: End-effector w. r. t. {e} • Where the transformation for each link is built from our DH parameters: TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 2
Forward Kinematics • Forward Kinematic Transformation: • Has an rotation and translation: Roll, pitch, yaw Angle-axis Euler Y-Z-Y TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 3
Forward Kinematics • Pick one rotation description: • Decompose R, i. e. solve: TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 4
Forward Kinematics • Pick one rotation description: Find terms that you can easily solve equations 5
Decomposition of Rotation Matrices • Roll, Pitch, and Yaw • The inverse solution for in (- /2, /2): TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 6
Decomposition of Rotation Matrices • Roll, Pitch, and Yaw • The inverse solution for in ( /2, 3 /2): TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 7
Decomposition of Rotation Matrices • Euler Angles • Inverse solution for r 13 0 and r 23 0 (singularity when sin =0): 8
Decomposition of Rotation Matrices • OR TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 9
Decomposition of Rotation Matrices • Angle Axis • Inverse solution (singularity at =0, , . . . and there are two solutions for § ): 10
Forward Kinematics • Pick one rotation description: • Decompose T : 11
Cartesian Space & Joint Space Forward kinematics Joint Space (q 1, q 2, …, q. N) Cartesian Space (x, y, z, , , ) Inverse kinematics (arm solution) TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 12
Inverse Relationship? • Find joint positions for a given endeffector pose • Also find joint positions, speeds and accelerations for a sequence of poses TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 13
Inverse Relationship? • Analytic Inverse – Robot specific – Multiple solutions – Once found, computationally simple • Geometric – Robot specific – Insight? • Iterative Computation (ME 739) – Computationally expensive – General solution TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 14
A Heuristic for Inverse Kinematics • The solution to the inverse kinematic equations (called the arm solution) can often be found using a heuristic approach. – Does not guarantee a solution – Solution may not be unique – Some solutions may be redundant TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 15
IK Heuristic Algorithm 1. Perform forward kinematics to find the general transformation matrix 2. Equate the transformation matrix to the manipulator transformation matrix. a) For a particular solution the manipulator transformation matrix contains “numbers” b) For a general solution the manipulator transformation matrix contains “variables” 16
IK Heuristic Algorithm 3. Look at both matrices for: a) Elements which contain only one joint variable b) Pairs of elements which will produce an expression in only one joint variable when divided (look for divisions that result in the atan 2 function) c) Elements, or combinations of elements, that can be simplified using trigonometric identities 4. Having selected an element, equate it to the corresponding element in the other matrix to produce an equation. Solve this equation to find a description of one joint variable in terms of the elements of the manipulator transformation matrix. TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 17
IK Heuristic Algorithm 5. Repeat step 4 until all the elements identified in step 3 have been used. 6. If any of these solutions suffer from inaccuracies, undefined results, or redundant results, set them aside and look for better solutions. TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 18
IK Heuristic Algorithm 7. If there are more joint angles to be found, pre-multiply both sides of the matrix equation by the inverse of the A 1 matrix to produce a new set of equivalent matrix elements. 19
IK Heuristic Algorithm 8. Repeat steps 3 to 7 until either solutions to all the joint variables have been found, or you have run out of A matrices to premultiply. 9. If a suitable solution cannot be found for a joint variable, choose one of those discarded in step 6, taking note of regions where problems may occur. 10. If a solution cannot be found for a joint variable in terms of the elements of the manipulator transform, it may be that the manipulator cannot achieve the specified position and orientation: the position is outside the manipulator’s workspace. TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 20
IK Heuristic Algorithm • Note: theoretical solutions may not be physically attainable because of the mechanical limits on the range of joint variables. TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 21
DH Example: “academic manipulator” Z 0 1 x 1 Z 2 L 1 Z 1 L 2 x 2 1 x 0 2 Link 1 2 Var 1 2 TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS d L 1 0 90 o 0 a 0 L 2 ROBOTICS 22
Steps 1 and 2 • The general transformation matrix • Set equal to: TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 23
Steps 3 and 4 • Look for elements and select terms TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 24
More steps…. • Pre-multiply for a new equation: 25
DH Example: two link planar arm DH table for two link arm L 2 L 1 x 0 Z 0 1 Link 1 2 Z 1 Var 1 2 x 1 2 TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS x 2 Z 2 d 0 0 a L 1 L 2 ROBOTICS 26
Forward Kinematics: planar 2 -link manipulator TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 27
Forward Kinematics: planar 2 -link manipulator Heuristic solution? Can’t select an “obvious” set of equations… 28
Trignometric Solutions • Sometimes simple (but usually not)! 29
Trig. Solutions • For first angle – revisit equations 30
Trig. Solutions • A trig hint: • Let • Then • So 31
Solution to 2 link planar arm • Arm solution is – where TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 32
Multiple Solutions? ! TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 33
Geometric Solutions • Intuition, insight…. ? 34
Geometric Solutions • Intuition, insight…. ? 35
Geometric Solutions • Intuition, insight…. ? Get same solution as trig method 36
Solution to 2 link planar arm • Arm solution is – where Here we know the sign by observation 37
References: Lecture notes of prof. N. Ferrier, Wisconsin, USA Literature: Richard M. Murray, Zexiang Li, S. Shankar Sastry: A mathematical Introduction to Robotic Manipulation, University of California, Berkeley, 1994, CRC Press. An electronic edition of the book is available from: http: //www. cds. caltech. edu/~murray/mlswiki J. M. Selig: Introductory Robotics, Prentice Hall, 1992: - Chapter 5, Inverse Kinematics, pp. 44 -58 TEMPUS IV Project: 158644 – JPCR Development of Regional Interdisciplinary Mechatronic Studies - DRIMS ROBOTICS 38
- Slides: 38