Robotics Manipulators Inverse kinematics By Behrooz Rahmani 1
گﺮﻭﻩ ﻣﻬﻨﺪﺳی ﻣکﺎﻧﻴک Robotics Manipulator’s Inverse kinematics By: Behrooz Rahmani 1
Outline: Inverse Kinematics – Problem formulation – Existence – Multiple Solutions – Algebraic Solutions – Geometric Solutions – Decoupled Manipulators 2
Inverse Kinematics • Forward (Direct) Kinematics: Find the position and orientation of the tool given the joint variables of the manipulators. • Inverse Kinematics: Given the position and orientation of the tool find the set of joint variables that achieve such configuration. 3
Inverse Kinematics 4
The General Inverse Kinematics Problem � The general problem of inverse kinematics can be stated as follows. Given a 4 × 4 homogeneous transformation (*) � Here, H represents the desired position and orientation of the endeffector, and our task is to find the values for the joint variables q 1, . . . , qn so that T 0 n(q 1, . . . , qn) = H. 5
�Equation (*) results in twelve nonlinear equations in n unknown variables, which can be written as Tij(q 1, . . . , qn) = hij , i = 1, 2, 3, j = 1, . . . , 4, where Tij , hij refer to the twelve nontrivial entries of T 0 n and H, respectively. (Since the bottom row of both T 0 n and H are (0, 0, 0, 1), four of the sixteen equations represented by (*) are trivial. ) 6
�Whereas the forward kinematics problem always has a unique solution that can be obtained simply by evaluating the forward equations, the inverse kinematics problem may or may not have a solution. �Even if a solution exists, it may or may not be unique. 7
8
Example: Two-link manipulator �If l 1= 12, then the reachable workspace consists of a disc of radius l 1+l 2. �If , the reachable workspace becomes a ring of outer radius and inner radius. 9
10
Example �For the Stanford manipulator, which is an example of a spherical (RRP) manipulator with a spherical wrist, suppose that the desired position and orientation of the final frame are given by 11
12
13
14
Method of solution: �We will split all proposed manipulator solution strategies into two broad classes: closed-form solutions and numerical solutions. �Numerical solutions generally are much slower than the corresponding closed-form solution; in fact, that, for most uses, we are not interested in the numerical approach to solution of kinematics. �We will restrict our attention to closed-form solution methods. 15
Closed-form solution method �“Closed form" means a solution method based on analytic expressions or on the solution of a polynomial of degree 4 or less, such that non-iterative calculations suffice to arrive at a solution. � Within the class of closed-form solutions, we distinguish two methods of obtaining the solution: algebraic and geometric. �Any geometric methods brought to bear are applied by means of algebraic expressions, so the two methods are similar. The methods differ perhaps in approach only. 16
Why closed-form solution methods? �Closed form solutions are preferable for two reasons. �First, in certain applications, such as tracking a welding seam whose location is provided by a vision system, the inverse kinematic equations must be solved at a rapid rate, say every 20 milliseconds, and having closed form expressions rather than an iterative search is a practical necessity. � Second, the kinematic equations in general have multiple solutions. Having closed form solutions allows one to develop rules for choosing a particular solution among several. 17
A helpful approach for 6 -DOF robots: Kinematic Decoupling �A sufficient condition that a manipulator with six revolute joints have a closed-form solution is that three neighboring joint axes intersect at a point. �For manipulators having six joints, with the last three joints intersecting at a point (such as the Stanford Manipulator), it is possible to decouple the inverse kinematics problem into two simpler problems, known respectively, as inverse position kinematics, and inverse orientation kinematics. �Using kinematic decoupling, we can consider the position and orientation problems independently. 18
Spherical wrist �The assumption of a spherical wrist means that the axes z 3, z 4, and z 5 intersect at oc and hence the origins o 4 and o 5 assigned by the DH-convention will always be at the wrist center oc. �Therefore, the motion of the final three links about these axes will not change the position of oc, and thus, the position of the wrist center is a function of only the first three joint variables. 19
Kinematic Decoupling �In this way, the inverse kinematics problem may be separated into two simpler problems, � First, finding the position of the intersection of the wrist axes, called the wrist center. � Then finding the orientation of the wrist. 20
Kinematic Decoupling �Example for manipulators having six joints, with the last three joints intersecting at a point (i. e. spherical wrist). 21
Kinematic Decoupling �Inverse kinematic equation can be represented as two equations: �By the spherical wrist, the origin of the tool frame (whose desired coordinates are given by o) is simply obtained by a translation of distance d 6 along z 5 from oc. 22
Kinematic Decoupling �In order to have the end-effector of the robot at the point with coordinates given by o and with the orientation given by R = (rij ), it is necessary and sufficient that the wrist center oc have coordinates given by �Using this equation, we can calculate the first three joint variables, and therefore, . 23
Kinematic Decoupling 24
25
26
27
28
Geometric Analysis �For most simple manipulators, it is easier to use geometry to solve for closed-form solutions to the inverse kinematics �solve for each joint variable qi by projecting the manipulator onto the xi− 1, yi− 1 plane. 29
Kinematic Decoupling: orientation �For calculating the other wrist joint variables, we know: �As the right hand side of this equation is completely known, the final three joint angles can then be found as a set of Euler angles corresponding to R 36. 30
Inverse Position: A Geometric Approach �For the common kinematic arrangements that we consider, we can use a geometric approach to find the variables, q 1, q 2, q 3 corresponding to o 0 c. �The general idea of the geometric approach is to solve for joint variable qi by projecting the manipulator onto the xi− 1 − yi− 1 plane and solving a simple trigonometry problem. 31
Example: Articulated Configuration 32
Projection of the wrist center onto x 0 − y 0 plane (*) 33
�In this case, (*) is undefined and the manipulator is in a singular configuration, shown in the below. �In this case, the manipulator is in a singular configuration, shown in the below Figure. �In this position the wrist center oc intersects z 0; hence any value of leaves oc. 34
35
36
37
Example 38
39
Inverse Orientation �In the previous section we used a geometric approach to solve the inverse position problem. �This gives the values of the first three joint variables corresponding to a given position of the wrist origin. �The inverse orientation problem is now one of finding the values of the final three joint variables corresponding to a given orientation with respect to the frame o 3 x 3 y 3 z 3. 40
Spherical Wrist 41
42
43
44
�Recall that the rotation matrix obtained for the spherical wrist has the same form as the rotation matrix for the Euler transformation. �Therefore, we can use the method developed in Section 2. 5. 1 to solve for the three joint angles of the spherical wrist. 45
46
47
Example: SCARA manipulator forward kinematics • It consists of an RRP arm and a one degreeof-freedom wrist. 48
Solution • The first step is to locate and label the joint axes as shown. �Since all joint axes are parallel we have some freedom in the placement of the origins. 49
Solution 50
Solution 51
Example: SCARA manipulator Inverse kinematics 52
53
54
55
56
57
- Slides: 57