گروه مهندس ی مکانيک 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 end- effector, and our task is to find the values for the joint variables q1, . . . , qn so that T0n(q1, . . . , qn) = H. 5 Equation (*) results in twelve nonlinear equations in n unknown variables, which can be written as Tij(q1, . . . , qn) = hij , i = 1, 2, 3, j = 1, . . . , 4, where Tij , hij refer to the twelve nontrivial entries of T0 n and H, respectively. (Since the bottom row of both T0 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 l1= 12, then the reachable workspace consists of a disc of radius l1+l2. If l1 l2, the reachable workspace becomes a ring of outer radius l1 l2 and inner radius l1 l2 . 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 z3, z4, and z5 intersect at oc and hence the origins o4 and o5 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 d6 along z5 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, R30 . 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 R36. 30 Inverse Position: A Geometric Approach For the common kinematic arrangements that we consider, we can use a geometric approach to find the variables, q1, q2, q3 corresponding to o0c. 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 x0 − y0 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 z0; hence any value of 1 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 o3x3y3z3. 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