MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg - Introduction to Robotics Introduction to Robotics Jianwei Zhang zhang@informatik.uni-hamburg.de Universit¨ at Hamburg Fakult¨ at f¨ ur Mathematik, Informatik und Naturwissenschaften Department Informatik Technische Aspekte Multimodaler Systeme 26. April 2013 J. Zhang 80 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Outline General Information Introduction Coordinates of a manipulator Kinematic equations Inverse kinematics for manipulators Analytical solvability of manipulator Example 1: a planar 3 DOF manipulator The algebraical solution using the example of PUMA 560 The solution for RPY angles Geometrical solution for PUMA 560 A Framework for robots under UNIX: RCCL J. Zhang 81
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Inverse kinematics for manipulators Set of problems: ◮ The control of robot manipulators take place in the majority of cases in joint space , ◮ The information about objects are mostly given in the cartesian space . To achieve a one specific tool frame T related to the world, the joint values θ ( t ) = ( θ 1 ( t ) , θ 2 ( t ) , ..., θ n ( t )) T should be calculated in two steps: 1. Calculation of T 6 = Z − 1 BGE − 1 ; 2. Calculation of θ 1 , θ 2 , ..., θ n over T 6 . ⇒ : In this case the inverse kinematics is more important then the forward kinematics. J. Zhang 82 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics The solution using the example of PUMA 560 - I n x o x a x p x n y o y a y p y T 6 = T ′ T ′′ = n z o z a z p z 0 0 0 1 where J. Zhang 83
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics The solution using the example of PUMA 560 - II n x = C 1 [ C 23 ( C 4 C 5 C 6 − S 4 S 6 ) − S 23 S 5 C 6 ] − S 1 ( S 4 C 5 C 6 + C 4 S 6 ) (2) n y = S 1 [ C 23 ( C 4 C 5 C 6 − S 4 S 6 − S 23 S 5 S 6 ] + C 1 ( S 4 C 5 C 6 + C 4 S 6 ) (3) n z = − S 23 [ C 4 C 5 C 6 − S 4 S 6 ] − C 23 S 5 C 6 (4) o x = ... (5) o y = ... (6) o z = ... (7) a x = ... (8) a y = ... (9) a z = ... (10) J. Zhang 84 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics The solution using the example of PUMA 560 - III p x = C 1 [ d 6 ( C 23 C 4 S 5 + S 23 C 5 ) + S 23 d 4 + a 3 C 23 + a 2 C 2 ] − S 1 ( d 6 S 4 S 5 + d 2 ) (11) p y = S 1 [ d 6 ( C 23 C 4 S 5 + S 23 C 5 ) + S 23 d 4 + s 3 C 23 + a 2 C 2 ] + C 1 ( d 6 S 4 S 5 + d 2 ) (12) p z = d 6 ( C 23 C 5 − S 23 C 4 S 5 ) + C 23 d 4 − a 3 S 23 − a 2 S 2 (13) J. Zhang 85
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Remark ◮ Non-linear equations ◮ Existence of solutions: Workspace: the volume of space that is recheable for the tool of manipulator. ◮ ”dextrous workspace” ◮ ”reachable workspace” ◮ Many joint positions that produce the similar TCP position using the example of PUMA 560: ◮ Ambiguity of solutions for θ 1 , θ 2 , θ 3 related to given p . ◮ For each solution of θ 4 , θ 5 , θ 6 exist the alternative solution: J. Zhang 86 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Remark θ ′ 4 = θ 4 + 180 ◦ θ ′ 5 = − θ 5 θ ′ 6 = θ 6 + 180 ◦ ◮ Different solution strategy: closed solutions vs. numerical solutions J. Zhang 87
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Different methods for solution finding Closed form: ◮ algebraic solution + : accurate solution over the equations, − : solution is not geometrical representative. ◮ geometrical solution + : case-by-case analysis of the possible robot configurations, − : robot specific. Numerical form: ◮ iterative methods + : the methods are transferable, − : computationally intensive, for several exceptions the convergence can not be guaranteed. J. Zhang 88 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators Introduction to Robotics Methods for solution finding ”The inverse kinematics for all systems with 6 DOF (translational or rotational joints) in a simple serial chain is always numerical solvable.” J. Zhang 89
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Analytical solvability of manipulator Introduction to Robotics Analytical solvability of manipulator The closed solution exists if a specific conditions (sufficient conditions) for the arm geometry are given: ◮ If 3 sequent axis intersect in a given point, ◮ Or: 3 sequent axis are parallel to each other. It’s important to design a manipulator in the way that the closed solution exists. Almost all manipulators are conceptualized in this way. An example for PUMA 560: The axis 4, 5 and 6 intersect in one point. J. Zhang 90 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics Example 1: a planar 3 DOF manipulator J. Zhang 91
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics Example 1: a planar 3 DOF manipulator Joint α i − 1 a i − 1 d i θ i 1 0 0 0 θ 1 2 0 l 1 0 θ 2 3 0 0 θ 3 l 2 C 123 − S 123 0 l 1 C 1 + l 2 C 12 0 l 1 S 1 + l 2 S 12 S 123 C 123 0 T 3 = 0 0 1 0 0 0 0 1 J. Zhang 92 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics The algebraical solution for the example 1 - I Specification for the TCP: ( x , y , φ ). For this such kind of vektors applies: C φ − S φ 0 x 0 S φ C φ y 0 T 3 = 0 0 1 0 0 0 0 1 Resultant four equations can be derived: C φ = C 123 (14) S φ = S 123 (15) x = l 1 C 1 + l 2 C 12 (16) y = l 1 S 1 + l 2 S 12 (17) J. Zhang 93
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics The algebraical solution for the example 1 - II (Derivative) The function atan 2 is define as: 0 for x = 0 , y = 0 π/ 2 for x = 0 , y > 0 3 ∗ π/ 2 for x = 0 , y < 0 θ = atan 2( y , x ) = atan ( y , x ) for +x and +y 2 π − atan ( y , x ) for +x und -y π − atan ( y , x ) for -x und +y π + atan ( y , x ) for -x und -y The solution: θ 2 = atan 2( S 2 , C 2 ) J. Zhang 94 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics The algebraical solution for the example 1 - II � 2 , and C 2 = x 2 + y 2 − l 2 1 − l 2 1 − C 2 where S 2 = ± . 2 2 l 1 l 2 θ 1 = atan 2( y , x ) − atan 2( k 2 , k 1 ) where k 1 = l 1 + l 2 C 2 and k 2 = l 2 S 2 . θ 3 can be calculated as follow: θ 1 + θ 2 + θ 3 = atan 2( S φ , C φ ) = φ J. Zhang 95
MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics The geometrical solution for the example 1 - I Calculate θ 2 over “law of cosines”: x 2 + y 2 = l 2 1 + l 2 2 − 2 l 1 l 2 cos(180 + θ 2 ) The solution: θ 2 = ± cos − 1 x 2 + y 2 − l 2 1 − l 2 2 2 l 1 l 2 θ 1 = β ± ψ where: cos ψ = x 2 + y 2 − l 2 1 − l 2 2 β = atan 2( y , x ) , x 2 + y 2 � 2 l 1 For θ 1 , θ 2 , θ 3 applies: θ 1 + θ 2 + θ 3 = φ J. Zhang 96 MIN-Fakult¨ at Department Informatik Universit¨ at Hamburg Inverse kinematics for manipulators - Example 1: a planar 3 DOF manipulator Introduction to Robotics Algebraical solution with the help of polynomial conversion The following substitutions are used for the polynomial conversion of transcendental equations: u = tan θ 2 cos θ = 1 − u 2 1 + u 2 2 u sin θ = 1 + u 2 J. Zhang 97
Recommend
More recommend