0% found this document useful (0 votes)
29 views30 pages

Inverse Kinematics

The document discusses the concepts of direct and inverse kinematics in robotic manipulators, emphasizing the importance of determining joint displacements to achieve desired end-effector positions and orientations. It explains the complexities of the inverse kinematic problem, including the existence of multiple solutions and the conditions required for solvability, particularly in relation to the manipulator's degrees of freedom. Additionally, the document outlines the workspace of manipulators, distinguishing between reachable and dexterous workspaces, and the impact of mechanical joint limits on these workspaces.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
0% found this document useful (0 votes)
29 views30 pages

Inverse Kinematics

The document discusses the concepts of direct and inverse kinematics in robotic manipulators, emphasizing the importance of determining joint displacements to achieve desired end-effector positions and orientations. It explains the complexities of the inverse kinematic problem, including the existence of multiple solutions and the conditions required for solvability, particularly in relation to the manipulator's degrees of freedom. Additionally, the document outlines the workspace of manipulators, distinguishing between reachable and dexterous workspaces, and the impact of mechanical joint limits on these workspaces.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF or read online on Scribd
You are on page 1/ 30
| mar are 5 The Inverse Kinematics fhe direct kinematic model discussed in Chapter 3 determines the position and orientation of the end-effector (tool) for given values of joint-link splacements, In other words, it answers the question “Where is the origin of the end-effector?” The direct kinematic model, thus, specifies the end-effector frame, frame {n) relative to the base frame (0), for the n-DOF manipulator, which is expressed as ad=ll"h= TRON Nae 2 4.1) 3 a °T, (gus dav 0, 0, yO The joint displacements (q), qo, -.-, q,) that lead the end-effector to a certain position and orientation T can be found by solving the kinematic model equations for unknown joint displacements. Moving each joint by the respective joint displacement, the location (position and orientation) of the end-effector is achieved. This is the inverse kinematic problem already defined in the previous chapter, Section 3.3. It is possible that for the desired end-effector location, multiple or no solutions may exist. A rigorous definition for the inverse kinematic problem i: “The determination of all possible and feasible sets of joint variables, which would achieve the specified position and orientation of the manipulator’s end- effector with respect to the base frame.” In practice, a robot manipulator control requires knowledge of the end-eff position and orientation for the instantaneous location of each joint as well as knowledge of the joint displacements required to place the end-effector ina new ‘tor 114) Robotics and Control location. Therefore, direct and inyerse kinematics are the fundamental problems of utmost importance in the robot manipulator’ s position control. Many industrial applications such as welding and certain types of assembly operations require that a specific path should be negotiated by the end-effector. To achieve this, it is necessary to find corresponding motions of each joint, which will produce the desired tool-tip motion. This is a typical case of inverse kinematic application. The manipulator transformation matrix T represents the orientation R and position D of the end-effector with respect to the base frame as: RD) r=; re il (4.2) The position and orientation of the end-effector is collectively referred as configuration of the end-effector. The configuration of the end-effector is represented by three position components as displacements along three orthogonal axes of base frame and three rotations about the base frame axes. These six components can be represented by a six dimensional space called configuration space or Cartesian space. The kinematic description of orientation of the end- effector with respect to the base frame can be according to any of the conventions outlined in Chapter 2. The configuration, or position and orientation, of the end- effector is a function of joint displacement variables i> Fao «+» A, aS Shown in Fig. 4.1. 4 End-effector ~z, Fig. 4.1 Configuration of end-effector as a function of joint displacements For an n-DOF manipulator the set of n joint displacement variables is represented by a n x 1 vector. The set of all nx 1 joint displacement vectors generates the joint vector space or joint space. The Cartesian space and joint space representations of a manipulator’ s end-effector position and orientation are related to each other by mappings shown in Fig. 4.2. The direct kinematic model is the mapping of joint space to Cartesian space, and the mapping from the Cartesian space to the joint space is the inverse problem. In other words, the inverse kinematics is the determination of the set of positions and orientations in Cartesian space that are reachable by the origin of the end-effector frame as the joint displacements vector q ranges over the joint- ‘space. ‘The Inverse Kinematics 115] Soret E>! pay Eas Cartesian Joint space or oe Configuration space Fig. 4.2 Mappings between kinematic descriptions The inverse kinematic problem is more difficult than the direct problem because no systematic procedures exist for its solution. Inverse problem of every manipulator has to be worked out separately. In this chapter, techniques to solve the inverse problem are presented. First, the concepts of manipulator workspace, solvability of kinematic equations, and existence of multiple solutions are discussed. 41 MANIPULATOR WORKSPACE The workspace of a manipulator is defined as the volume of space in which the manipulator is able to locate its end-effector. The workspace gets specified by the existence or nonexistence of solutions to the inverse problem. The region that can be reached by the origin of the end-effector frame with at least one orientation is called the reachable workspace (RWS). If a point in workspace can be reached only in one orientation, the manipulatability of the end-effector is very poor and it is not possible to do any practical work satisfactorily with just one fixed orientation. It is, therefore, necessary to look for the points in workspace, which can be reached in more than one orientation. Some points within the RWS can be reached in more than one orientation. The space where the end-effector can reach every point from all orientations is called dexterous workspace (DWS). It is obvious that the dexterous workspace is either smaller (subset) or same as the reachable workspace. As an example, consider a two-link nontrivial (2-DOF)-planar manipulator having link lengths Z, and L,, as shown in Fig. 4.3(a). The RWS for this manipulator is plane annular space with radii r, = Z, + Ly and r= IL, — Ly}, as shown in Fig. 4.3(b). The DWS for this case is null. Inside the RWS there are two possible orientations of the end-effector for a given position, while on the boundaries of RWS, end-effector has only one possible orientation. For the special case of Ly = L>, the RWS is a circular area and DWS is a point at the center, as shown in Fig. 4.3(c). It can be shown that for a 3-DOF redundant planar manipulator having link lengths L,, L>, and Ls with (L; + L,) > Ly, the RWS isa circle of radius (Ly + Ly + Ls), while the DWS is a circle of radius (L, + Ly —Z4). The reachable workspace of an n-DOF manipulator is the geometric locus, of the points that can be achieved by the origin of the end-effector frame as determined by the position vector of direct kinematic model. To locate the tool point or end-effector at an arbitrary position with an arbitrary orientation in3-D space, a minimum of 6-DOF are required. Thus, for a 6-DOF-manipulator arm, Robotics and Control Ly 4 (a) Two DOF planar manipulator ~ DWS = 9 ye fiat _— RWS [ Petey ee | Wi ogi = + ty \ r= |Li-L2|/ (b) Ly#Lp ()L=L,=6 Fig. 4.3, Workspace a of a two-link planar manipulator the dexterous workspace may almost approach the reachable workspace. The reachable work envelops of standard manipulator configurations have been discussed in Chapter 1. The manipulator workspace is characterized by the mechanical joint limits in addition to the configuration and the number of degrees of freedom of the manipulator. It is important to note that in Fig. 4.3, the workspaces are specified assuming a full 360° rotational joint range for each revolute joint. In practice, the Joint range of revolute motion is much less than 360° for the revolute joints and is Severely limited for prismatic joints, due to mechanical constraints. This limitation greatly reduces the workspace of the manipulator and the shape of workspace may not be similar to the ideal case. To understand the effect of mec! the 2-DOF planar manipulator wi -60° < 6, < 60° -100° < @, < 100° For these joint limits, considering @, = 6, = workspace in Fig. 4.3(b). gets severely limi geometrically, is not annular any more, defined by contour ABCDERA in Fig. 4.4. Thus, the factors that decide the works number of degrees of freedom are the man and the allowed range of joint motions. ‘hanical joint limits on the workspace, consider th Ly > L, and joint limits on @, and 6, as: (4.3) 0 as home Position, the annular ted. The workspace, obtained rather it has a complex shape and is pace of a manipulator apart from the ipulator’s configuration, link lengths, 4.2 SOLVABILITY OF INVERSE KINEMATIC MODEL Inverse kinematics is complex because the soluti On is to be found for nonlinear simultaneous equations, involving transcendent: ‘al (harmonic sine and cosine) The Inverse Kinematics 117] ba L ventas 1 ZX : RWS bal tla 4, ee litk Fig 4.4 Reachable workspace of a two-link planar manipulator with joint limits functions. The number of simultaneous equations is also generally more than the number of unknowns, making some of the equations mutually dependent. These conditions lead to the possibility of multiple solutions or nonexistence of any solution for the given end-effector position and orientation. The existence of solutions, multiple solutions, and methods of solutions are discussed in the following sections. 4.2.1 Existence of Solutions The conditions for existence of solutions to the inverse kinematic problem are examined first. It is obvious that if the desired point P lies outside the reachable workspace then no solution exists. Even when P is within reachable workspace, not all orientations are realizable, unless P lies within dexterous workspace. If the wrist has fewer than 3-DOF to orient the end-effector, then certain classes of orientations are not realizable. To examine the reasons for this consider Eq. (4.1), the direct kinematic model. As the last row of the matrix °7,, in Eq. (4.1) is always constant, it can yield a maximum of 12 simultaneous equations, which are nonlinear algebraic equations involving transcendental functions in n unknowns (the joint variables). Out of these, nine equations arise from the rotation matrix (3 x 3) and three from the displacement vector. The nine equations of the rotation matrix involve only three unknowns corresponding to the orientation of the end-effector expressed by Euler angles or roll-pitch-yaw angles. This means that there are only six (three from orientation and three from displacement) independent constraints inn unknowns. This leads to a very important conclusion, For a manipulator to have all position and orientation solutions, the number of DOF n (equal to the number of unknowns) must at least match the number of independent constraints. That is, for general dexterous manipulation n>6 (4.4) 118) Robotics and Control This is a nec: ssary but not sufficient condition for the existence of solutions rs the inverse problem. In addition to these six independent constraint equations, 1, tool position and orientation must be such that the limits on the joint motions are not violated. For manipulators with less than or more than 6-DOF, the solutions are more complex. When degrees of freedom are less than six, the manipulato, cannot attain the general goal position and orientation in 3-D space mathematically it is an over-determined case with six equations in less than six unknowns. The case of a manipulator, with more than 6-DOF, is ap underdetermined case, as there are only six independent nonlinear simultaneous equations in more than six unknowns. , It is seen from the above discussion that a manipulator with 6-DOF (such as the one considered in Example 3.8), the direct kinematic model yields a set of six independent equations in six unknowns. These six equations form a determinate set of simultaneous equations, which can be quite difficult to solve. It may be recalled that in direct kinematic model it was emphasized to choose the frames, which make as many of the joint-link parameters as possible, to zero. This leads to less complex kinematic equations and, hence, relatively simpler inverse solutions. For the case of a general mechanism with all nonzero-link parameters, the direct kinematic equations are much more complex and so will be the inverse solutions. 4.2.2 Multiple Solutions The existence of multiple solutions is a common situation encountered in solving inverse kinematic problem. Multiple solutions pose further problem because the robot system has to have a capability to choose one, probably the best one. Multiple solutions can arise because of different factors. Some common situations, which lead to multiple solutions, are discussed as follows. Consider the 2-DOF planar arm of Fig. 4.3(a) with a wrist having just one DOF. There are two sets of values of joint displacements (0,, 63) and (@,, 0), as illustrated in Fig. 4.5, which lead to the same end-effector position and orientation Fig. 4.5 Multiple solutions due to parallel axes of revolute joints aS SS ESE eee The Inverse Kinematics [119] for point P. In the configuration space, both solutions are identical as they produce same configuration (position and orientation) of end-effector but are clearly distinct in joint space. The solution (@;, @) is ‘elbow-up’ position, while solution (0, 5) is the ‘elbow-down’ position. Out of these, elbow-up solution may be preferred as in elbow-down solution joint-link may collide with objects lying on the work surface or the work table itself. The two solutions are obtained because the axes of two consecutive revolute joints of the arm are parallel. If more than two joint axes are parallel, the numbers of solutions multiply. Another cause for multiple solutions is the existence of trigonometric functions in the equations. The harmonic nature of sine and cosine functions gives same magnitude for angles in multiples of radians. For example, yaw, pitch, and roll motions of the RPY wrist for two sets of joint displacements (0), 92, 93) and (6, 9%, 8%) with 6 = 180° + @), 8% = 180° — 6) and 0%, = 180 + @, will lead to the same orientation of the wrist. This can be easily verified. Similarly, if the three motions of the wrist are roll, pitch, and roll; two s joint displacements (@,, 83, 8) and (04, 03, 04) with 0 = 180° + 0), 02=— 0, and 6% = 180° + 4, will lead to the same orientation of the wrist. With multiple solutions for positioning and orienting the end-effector, the number of solutions may multiply factorially. The number of solutions also depends on the number of nonzero joint-link eneral, the number of ts of parameters and the range of joint motions allowed. In gi ways to reach a certain goal is directly related to the number of nonzero link parameters. For example, for a completely general rotary-jointed, 6-DOF manipulator with all six a; 4 0, up to sixteen solutions are possible. A manipulator is said to be solvable, if it is possible to find all the solutions to its inverse kinematics problem for a given position and orientation. Multiple solutions also arise from number of degree of freedom. For example, a manipulator with more than 6-DOF may have infinitely many solutions to the inyerse kinematic problem. A manipulator with more degrees of freedom than are necessary is called kinematically redundant. manipulator. The SCARA configuration is an example of redundant manipulator. It has one redundant degree of freedom in horizontal plane because only two joints (2-DOF) are needed to establish any horizontal position. Redundant manipulators have added flexibility, which can be useful in avoiding obstacles or reaching inaccessible locations, as illustrated in Fig. 4.6. Can reach parts in more Cannot than one way reach P Cannot reach 7) all parts 4 P 1, Bin y \ Li \ Obstacle Fig. 4.6 Use of redundant manipulator to avoid obstacles or reach around them 120) Robotics and Control 4.3. SOLUTION TECHNIQUES There are two approaches to the solutions to the inverse problem: closed form solutions and numerical solutions. In the closed form solution, joint displace- ments are determined as explicit functions of the position and orientation of the end-effector. In numerical methods, iterative algorithms such as the Newton- Raphson method are used. The numerical methods are computationally intensive and by nature slower compared to closed-form methods. Iterative solutions do not guarantee convergence to the correct solution in singular and degenerate cases. Iterative numerical techniques are not discussed in this text. The “closed form” in the present context means a solution method based on analytical algebraic or kinematic approach, giving expressions for solving unknown joint displacements. The closed form solutions may not be possible for all kinds of structures. A sufficient (but not necessary) condition for a 6-DOF manipulator to possess closed form solutions is that either its three consecutive joint axes intersect or its three consecutive Joint axes are parallel. The kinematic equations under either of these conditions can be reduced to algebraic equations of degree less than or equal to four for which closed form solutions exist. Almost every industrial manipulator manufactured today satisfies one of these conditions so that closed form solutions may be obtained. Manipulator arms with other kinematic structures may be solvable by analytical methods. 4.4 CLOSED FORM SOLUTIONS Twelve equations, out of which only six are independent, are obtained by equating the elements of the manipulator transformation matrix with end-effector configuration matrix T. At the same time, only six of the twelve elements of T Specified by the end-effector position and orientation are independent. For a manipulator with less than 6-DOF, the number of independent equations may also be fewer than six. Several approaches such as, inverse transform, screw algebra, and kinematic approach and so on, can be used for solving these equations but none of them is general so as to solve th le equations for every manipulator. A composite approach based on direct inspection, algebra, and inverse transform is presented here, which can be used to solve the inverse equations for a class of simple manipulators, Another useful technique to reduce the complexity is dividing the problem into two smaller parts — the inverse kinematics of arm and the inverse kinematics of wrist. The solutions for the arm and wrist, each with, say, 3-DOF, are obtained separately. These solutions are combined by coinciding the arm end-point frame with the wrist-base frame to get the total manipulator solution. 4.4.1 Guidelines to Obtain Closed Form Solutions The elements of the left-hand side matrix of Ei q. (4.1) are functions of the n joint displacement variables. The elements of the right-hand side matrix T are the The Inverse Kinematics [121] desired position and orientation of the end-effector and are either zero or constant. ‘As the matrix equality implies element-by-element equality, 12 equations are obtained. To find the solution for n joint displacement variables from these 12 equations, the following guidelines are helpful. (a) Look for equations involving only one joint variable. Solve these equations first to get the corresponding joint variable solutions. (b) Next, look for pairs or set of equations, which could be reduced to one equation in one joint variable by application of algebraic and trigonometric identities. Use arc tangent (Atan2) function instead of arc cosine or arc sine functions. The two argument Atan2(y, x) function returns the accurate angle in the range of —77< @< by examining the sign of both y and x and detecting whenever either x or y is zero. (d) Solutions in terms of the elements of the position vector components of °7, are more efficient than those in terms of elements of the rotation matrix, as latter may involve solving more complex equations. (ec) Inthe inverse kinematic model, the right-hand side of Eq. (4.1) is known, while the left-hand side has n unknowns (4), qo, «--. 4,)- The left-hand side consists of product of n link transformation matrices, that is DIE TTT eel ee (4.5) Recall that each ‘'T; is a function of only one unknown q,. Premultiplying both sides by the inverse of °7, yields Hina Tice Eup [OR Ty Dp (4.6) The left-hand side of Eq. (4.6) has now (n—1) unknowns (>, 43, ---+ dn) and the right-hand side matrix has only one unknown, the q,. The matrix elements on the right-hand side are zero, constant, or function of the joint variable q,. A new set of 12 equations is obtained and it may now be possible to determine q, from the elements of resulting equations using guideline (a) or (b) above. Similarly, by postmultiplying both sides of Eq. (4.5) by inverse of ""'7,,, unknown q, can be determined. This process can be repeated by solving for one unknown at a time, sequentially from q, to q,, or q,, to qj, until all unknowns are found. This is known as inverse transform approach. The closed form solutions for the inverse kinematic model has been using the above guidelines are now illustrated with examples. For some of these examples the direct kinematic models have been obtained in Chapter 3. The multiple solutions and conditions for existence of solutions are also discussed. The first example considered is of the 3-DOF articulated arms solved in Example 3.3. (c SOLVED EXAMPLES Example 4.1 Articulated arm inverse kinematics For the 3-DOF articulated arm, whose kinematic model has been obtained in Xample 3.3, determine the joint displacements for known position and ientation of the end of the arm point. 1123}_Robotics and Control Solution Let the known position and orientation of the endpoint of arm be given by Ay ha” ids a4: ie 2h, Tad Fay f4 (4.7) Ry Tar. fag td (O85.0) 4.0 0enl Where each r, has a numeric value. ; ; To obtain the solutions for joint variables (0;, 4, 9), in Eq. Sec Tis equated to overall transformation matrix for the 3-DOF articulated arm “7; derived in Example 3.3, that is G3 -CSy -S CbCa+hG)) [rir ta 3 Ns SiG3 -SiS Cy) S\(LsG3+hO))_| 21 ™ 3 M4 tans Sy Cy 0 145p3 + LSy Br M2 3 M4 4 0 0 0 1 O60), OAs Equation (4.8) gives 11 nontrivial equations for the three unknown joint variables, 6,, ;, and 6; appearing on the left-hand side. The determination of solution for these three joint variables for known rj; is the inverse kinematic problem and is worked out as follows. Step 1 Applying guideline (a), an inspection of elements of the matrices on both the sides of Eq. (4.8) gives that 6, can be obtained from element 3 of row 1 The element (1,3) of left-hand side matrix has a term (-S)) in only one variable 0, and a constant r,, on right-hand side and, hence, it can give angle 6, from =sin 8, = rj3. However, according to guideline (c) this is not preferred as correct quadrant of the angle can not be found, Alternatively, applying guideline (b), 0, can be isolated by dividing element (2, 1) by (1, 1) or (2, 2) by (1, 2) or (1, 3) by (2, 3) or (2, 4) by (1, 4). Out of these, the last one is preferred as per guideline (d). ‘Thus, equating element (1, 4) and (2, 4), on both sides of the matrix two equations are obtained as OL, C23 + LyC3) = ry (4.9) S\(L3Cx3 + LO) = ro (4.10) Dividing Eq. (4.10) by Eq. (4.9) gives Suauiras Sa oe 4.11 q Nias ‘ ! Therefore, according to guidline (c), 8 = Atan2(ry4, r4) (4.12) Step 2 ‘The other two unknowns, 6, and 6; cannot be obtained directly. To get a solution for @, and 6, inverse transform approach, guideline (e), is used. To isolate @,, both sides of Eq. (4.8) are postmultiplied by 27,)! . This will give i= Tere (4.13) eer ee rea = Laman ‘The Inverse Kinematics [123] From Eq, (3.21), °7 is Gest Sant Gye AO eto) 2. 3 3 3 T. (4.14 Se eOe Ural) , OlenO: Okana The inverse of 27'; is obtained using Eq. (2.53) as Ore sya One 2pT “YpT2 a Pry = Rs R, Ds bi Ss, G0, (4.15) 000 1 OjeanOng liane) OHGO BOI Substituting °7, and '7;, from Eqs. (3.19) and (3.20), Example 3.3, T from Bq, (4.7) and [?7,]"' from Eq, (4.15), in Eq. (4.13) gives GO, =O, Si OG Coin = Satin Saint Goria Tis ~Latin + S\Cp -SiSp ~Cy LaS,Cy || Cav ~ Sahoo Sstav— Satna 05 —La0 #4 % G0 1S, Gr — Syra Syra = Sato Tr LaF 34 OM Ole: PON Gs V1 0 0 0 1 (4.16) Note that the left-hand side of Eq. (4.16) has only @, and @, terms and the: right-hand side has only 8, terms. A close examination of both sides reveals that equations obtained from elements (1, 4), (2,4), and (3, 4) are only function of 8, and 05, Thus, with use of some algebra and trigonometric identities, 0, can be eliminated and solution for @, is obtained. Equating the elements (1, 4), (2, 4), and (3, 4) of the two matrices, three equations obtained are 2 (4.17) LS, Lary + 24 (4.18) LS) = Lars + "34 (4.19) By squaring Eqs. (4.17) and (4.18), and adding gives, BRC} + 82) = (CL + ra + (Clam + , thus From this 6, is eliminated because C; + S; LG, = AV(-Lyry + 74)? + GLa + 6) (4.20) Dividing Eq. (4.19) by Eq. (4.20), gives S3 a + Papas Okt sasha Mi ake ome ab (421) GAN + 74)? + Clot + a)? Hence, 8 = Atan2((—Lyri try) EVEL trig) +E Lan +x) 4.22) | | | | | | {124} Robotics and Control Step 3 The solution for @, is obtained by first solving for (0, + 0,). Dividing element (3,1) of Eq. (4.8) by element (3,2) gives ea ano (4.23) Cy to or 9, + 0; = Atan2(r4), 13) (4.24) Thus, 9; = Atan2 (13), 749) — (4.25) Equations (4.12), (4.22), and (4.25) give the complete solution for the 3-DOF articulated arm as expressions for the joint displacements 6, @,, and @; in terms of known arm end-point position and orientation. Note that the above solution is One of the possible sets of expressions. Alternate expressions for 6,, ,, and 6, would be obtained if instead of equating the chosen elements of the matrices, other elements are used, or instead of isolating 6;, 6; is isolated by premultiplying both sides with (°7,)"'. It is also possible to find solution without use of the inverse matrix approach and instead of using algebra and trigonometry. For instance, after solving for 6,, (0; + 93) can be obtained from elements (3, 1) and (3, 2) and through trigonometric manipulation, 6, and @; are obtained. Example 4.2 Inverse kinematics of RPY wrist For the 3-DOF RPY wrist kinematic model was obtained in Example 3.4, Eq. (3.27), as SCiS2C; +585 (C,S,53 + 5G, 1G,G, 0 =S{52 C3 C,Sy S\S,5;-— CG, S\C, 0 ee 6,5) Sueno 0 0 Om ot Determine the solution for the three joint variables for a given end-effector orientation matrix T,. °T3 = (4.26) Tessa 0) Pye loy! ay 0 T= 2 4 Ez A Om G50 (4.27) : © © O)1 Solution The overall transformation matrix °7, and end-effector matrix Tp represent the same transformations. Thus, equating Eqs. (4.26) and (4.27) gives n 4 0] [-G5,G455,, GS,5,+5,c, ccy 0 4, 0) _|=S,5,C,-CS, $,5,5;-C,C, 5c, 0 a a. 0 arcs -O,S; SHE Koi) 6A @ il 0 @ il | The Inverse Kinematics [12] A ; ‘The elements of the matrix on left-hand side of matrix equation are known (given), while, the elements of matrix on right-hand side have three unknown joint variables 0, 8; and 9. To get the solution for these joint variables, the more consistent analytical approach (guideline (e)) is used here. Guideline (e) suggests premultiplying the matrix equation, Eq. (4.28) by inverse of transformation matrix °7, involving the unknown 0, and from the elements of the resultant matrix equation determine the unknown. Recall that the right-hand side of Eq. (4.28) is the product of three transformation matrices "7, 'T, and °7 each involving one unknown 6,, 6, and 6,, respectively. This process is continued successively, that is, moving one unknown (by its inverse transform) from right-hand side of the matrix equation to the left-hand side of the matrix equation and solving it, then moving the next unknown to the left-hand side, until all unknown are solved. To solve for @,, both sides of Eq. (4.28) are premultiplied by °T;'. From Eqs. (3.24) — (3.26) Ge aS) "0 OY nh of af OF (+S, 40 €, Oey 45, 20-0 Ce 0 OL 0Nny of a,’ OF [C0 (ORE 0 8 eG; 10 Olin? of "a? OF] 10 3 0. OO 40a 0 Oh 10. fo) Aho} 0) O26 PL LO de 10 WO 0 ORT or Cin, + Sin, Cio, + So, Ca, +Sjay 07] [-SC, SS, CG, 0 n. 0; a, 0}. GC, CS) 8, 0 Sin, -Giny S\0,-Co, S\a,—C 01] [easy 6; 05,0) 0 0 0 1 0 0° oem (4.29) The left-hand side of Eq. (4.29) has one unknown (0,) and the right-hand side has two unknown (@; and @;). Scanning the elements of both the matrices in Eq. (4.29), the equation in one unknown (6,) is obtained by equating elements (3, 3). That is, Sia, —C,a, =0 (4.30) or A =tan 6; 1 Gx which gives 6, = Atan2(a,, a,) (4.31) The process of further premultiplication is not necessary because the solutions for the remaining two unknowns (8, and 63) can be obtained from Eq. (4.29). Equating (1, 3) and (2, 3) elements on both sides in Eq. (4.29) gives Cy = Cia, + Say Sy =a, (4.32) 126| Robotics and Control From these two equations the solution for @, is obtained as 0, = Atan2(a,, C\a, + S\a,) (4.33) Equating elements (3,1 ) and (3, 2) of Eq. (4.29) gives Sy. =Syny— Ciny C3 = S}0,— Co, (434) Which lead to the solution for 6, as 0, = Atan2(Syn, — Cyrty, $12, = C105) (4.35) The inverse transform technique is to move one unknown to the left-hand side at a time and solve it. Therefore, it is also possible to achieve this by postmultiplying instead of premultiplying by the inverse transform matrix involving an unknown. This is illustrated here. To solve for 6,, that is, to move it to the left-hand side, postmultiplying both sides of matrix equation Eq. (4.28) by 713! gives HH op tiay OIGH WS) LOM OT (GHNOM Sie MON ess 80h Co. ] nyo, ay olll=sy 1G) X0) “OWE Se On —Gy 0] en 70 'S,,"*0 ics. OlO €0 Hl Ol ON i Om nONNO gl pO 0 OMAN! MAHON MMONMONSII NON CONOR MIO GO 10 1 or Cyn, — S30, Syny + C30, Ki =O, HCA Gis 3on Syn Gyo! lak Ga Sea tO RUSS, 0. 0 oO oO 0 0 Comparing elements of the matrices on both sides, the elements (3, 2) gives Syn, + C30, =0 Gin =S;0,. Syn, +G,0; aj OJ [-CS, Sy GiG, 0 ay 10 0 a | 439 1 1 and, thus, the solution for 0, is 6, = Atan2 (o., n,) (4.37) Similarly, from the elements (3,1) and (3, 3), 6, is obtained as 9, = Atan2 (a., Cyn, — $40.) (4.38) and from the elements (1, 2) and (2, 2), 6, is obtained as 6, = Atan2(S3 n, + C30,, -S3 ny ~ C30,) (4.39) In this example, premulitplying or postmultiplying gives solution of similar complexity but this may not be always the case. The decision to premultiply or postmultiply is left to the discretion of the reader. vit Example 4.3 SCARA manipulator inverse kinematics Analytically solve the inverse kinematic problem for the 4.DOF SCARA configuration manipulator given in Fig. 3.22, Example 3.6. Discuss the conditions for existence and multiplicity of solutions. R The Inverse Kinematics 127] Solution For the SCARA manipulator of Example 3.6, equating "7, from Eq. (3.40) with 7 in Eq. (4.7) gives Coe Sing 9 LC +L) fir mm fa fa Sig Cig 9 L,Sip + LS, |_| m1 m2 Ms Ns 0 OT betds-Ly |" | mm hs a OMY 0), 0 1 Ourtoe? Per The solution for joint displacement d; is directly obtained by equating the elements (3, 4) on both sides of Eq. (4.40), Ly + dy - Lg = 134 (4.40) sg Apri 4DR (4.41) Next, to solve for 8, elements (1,4) and (2, 4) are compared. This gives LyCn + LC = Ns (4.42) L)Syo + Ly15) = M4 (4.43) Squaring Eqs. (4.42) and (4.43), adding and simplifying using the trigonometric identity cos (a + B) =cos acos B—sin wsin B, gives Ty +B +2L nC, = 14 + (4.44) pai a eo, geo = Ba au (4.45) ne Since Sy =4V1- CG (4.46) the solution for @, is obtained from Eqs. (4.45) and (4.46) as @, = Atan2(S>, C>) (4.47) Now that @, being known, Eqs. (4.42) and (4.43) can be used to compute 0). These equations are written as L(GQCy = S1Sn) + LG = Nis (4.48) Ly (S,Cp + GS) + La1S) = Ns (4.49) or imeem) GCS) Sear (4.50) (Ly + QS, + (L252) G1 = (4.51) Let (Ly +1,6,)=rcos ¢@ and (L,S,)=rsin d (4.52) with r= Vly +O)? +(L)Sy)* (4.53) and = Atano( 2252, Sut TEe r r (4.54) Eqs. (4.50) and (4.51) reduce to rcos (0, +6) = Ny (4.55) rsin (0, +0) = m4 (4.56) {128| Robotics and Control From Eqs. (4.55) and (4.56), 8, is obtained as (4.57) 8, = Atana{ 7) atonal bss tke) (4.58) a 5 8, = Atana[ Pa r With ,, @, and d; determined, only one variable, @, is unknown. From elements (1,1) and (2,1), the equations are Ci = M1 (4.59) Sing = M21 (4.60) Equations (4.59) and (4.60) give @, as 0, + 85 — 04 = Atan2(ry), 71) or 0, = 0, + 8, — Atan?2 (rp), 71) (4.61) The complete closed form solution for the joint displacements 6,, 8;,d3 and 6,, of SCARA manipulator, is given by Eqs. (4.58), (4.47), (4.41) and (4.61), respectively, as explicit functions of the manipulator’s tool position and orientation Existence of Solutions Solutions to the inverse kinematic problem of a given arm exist, that is, the given Cartesian position and orientation of the tool is within the manipulator’s workspace if the following condition is satisfied: “Since sin and cos functions take values in the range [1,1], right-hand side of the Eq. (4.45) must lie in the range [-1,1].” Again, these solutions are for full 360 degrees of rotation for the revolute joints and limitless translation for the prismatic joint. The mechanical constraints, however, will permit only such solutions for which the joint variables take a value that lies in the range of motions allowed, Multiplicity of Solutions Due to the presence of the square root in Eq. (4.46), there are two solutions for 6, for a given position and orientation of the tool with Tespect to the base. From Eqs. (4.57) and (4.61), observe that there is one set of solution for 6, and 0, corresponding to each value of 6,. Thus, the number of solutions to the inverse kinematics problem of the given SCARA arm is two. Note that multiple solutions exist due to the fact that revolute joint axes 1 and 2 are parallel. Example 4.4 Numerical solutions for a 3-DOF manipulator For the 3-DOF (RRP) configuration manipulator, shown in Fig. 4.7, the position and orientation of point P in Cartesian space is given by The Inverse Kinematics 129] 0.354 0.866 0.354 0.106 -0.612 0.500 -0.612 -0.184 0.707 0 0.707 0.212 0) 0 0 1 Determine all values of all joint variables, that is, all solutions to the inverse kinematic problem. The joint displacements allowed (joint limits) for three joints are: -100° < 0, < 100°, ~30° < 0, < 70° and 0.05m < d; < 0.5 m. Identify the feasible solutions. (4.62) Solution A manipulator with this configuration is another common structure widely used in industrial robots, as it is very effective in material handling and other applications, and gives a spherical workspace. The first two joints are revolute joints and provide motion in two perpendicular planes. Their sweep generates a constant radius sphere. The third prismatic joint provides the reach to the arm point where the wrist is attached. The three joint axes intersect at a point Fig. 4.7 A 3-DOF spherical configuration arm The forward kinematic model is obtained first. For the forward kinematic model, the frame assignment for the home position is carried out first. While assigning frames it is observed that the link dimension L, can be eliminated from the kinematic model by choosing the origin of frame {0} to coincide with origin "of frame {1} at joint 2 (see Example 3.3). The link dimension L, can be made r yby, modifying the design slightly as shown in Fig. 4.8 such that the axis of matic link passes through the origin of frame {1}. al frame assignment with the origin of three frames, frame {0}, and frame {2} at the same point is shown in Fig. 4.9. This minimizes of non-zero parameters as well as satisfies the necessary condition for losed form solutions. parameters are tabulated in Table 4.1 (180) Robotics and Control Fig. 4.8. 3-DOF spherical arm in home position: @, = 6, = 0 and d; = 0.05 —— Same origin yh Fig 49 Frame assignment for spherical arm with horizontal home position Table 4.1 Joint-link parameters for spherical arm The three link Seen matrices oT vi or and the overall arm transformation matrix oT are obtained as eos 0 °7 (8) = i ; af ‘ (4.63) OO gays GM sy nyo) =|¢ i ie A (4.64) 00 0 0 The Inverse Kinematics 181) 1000 °T(d;) = * i i : (4.65) 0 O° 1 and, thus, OC, -S, -CS, -d3CS) Op, = 97, 17,27 = [VE A SiS, ods SiSo (4.66) Sy 0 GQ d,C, 0 0 0 1 First, a generalized solution is worked out, as in previous examples and then the values from Eq. (4.62) will be substituted to get specific solutions. Let the arm point position and orientation be specified as in Eq. (4.7). The kinematic model equations are thus, obtained by equating Eq. (4.66) and Eq. (4.7) giving QG -S; —GS, —&CS) [rr 2 fa Nis SiG, CSS, —d35,S2]_] 1 2 33. 24 (4.67) Sy) NORINRG BI asc; hy a 0 0 0 1 Ori, 140 1 The preferred solutions for joint displacements are obtained by comparing elements (1, 4), (2, 4) and (3, 4) in Eq. (4.67). The resulting equations are —d;C\Sp = r14 (4.68) dS So = Toq (4.69) DCs hy (4.70) Dividing Eq. (4.69) by Eq. (4.68) the solution for 8, is 6, = Atan2(—ry4, —r14) (4.71) Squaring and adding Eq. (4.68) and Eq. (4.69) gives 5 S3 (Ch + Sp) = na + re or 4S, = Eyrig + 1 (4.722) Dividing Eq. (4.72) by Eq. (4.70) gives solution of 8; as 6, = Atan2(+ Via + or) (4.73) The joint displacement d; for joint 3 is obtained by squaring and adding Eqs. (4.68), (4.69) and (4.70). Since the displacement d, cannot be negative, only Positive sign is used. Thus, dy=+ ra tra try (4.74) 1182] Robotics and Control The numerical values for joint displacements are obtained by substituting the yalues from given arm point position and orientation matrix, Eq. (4.62), in to Eqs. (4.71), (4.73) and (4.74). The specific solutions are: 6, = Atan2 (0.184, -0.106) = — 60° @, = Atan2 (+¥(0.106)* + (-0.184)", 0.212) =+ 45° (4.75) 6, = Atan2 (0.106)? + (-0.184)? + (0.212) = 0.30 The two possible solutions are tabulated in Table 4.2. Table 4.2 Two possible solutions for the specified arm point The joint range specified for joint 2 30° <6, <70°. The solution 1 specifies angle 0, as @,=—45°. This violates the joint range constraint and, hence, solution 1 is not feasible. Example 4.5 Inverse Kinematics of 5-DOF Manipulator For the 5-DOF industrial manipulator discussed in Example 3.7, obtain the analytical solutions of joint variables. Solution Let the end-effector tool point transformation matrix be given by ay d, ey i Esl nevosiavga: eee WO Oi From the kinematic model obtained in Example 3.7, the overall transformation matrix for the end-effector tool point is (Eq. (3.48)) enon CySaaaCs + S)Ss —CySy34S5 + S1C5 CCosy Cy(LaCz + LC 23 + L534) SiCoagCs — CiSs —S1Sp3455— CyCs SyCo3q Sy (LyCy + L4Cas + Ls C3) —Cy34Cs CyuiSs —Sr3q Ly — Sy — LSp3 ~ Ls Sn 0 0 0. 1 o7, = (4.77) A close examination of Eqs.(4.76) and (4.77) clearly shows that no direct solution can be found for any of the joint-variables. Hence, the inverse matrix approach of guideline (e) is used here, In order to solve for first joint variable ,, both matrices, Eq. (4.76) and Eq, (4.77) are premultiplied by inverse of °7, (that is °17'. This given left-hand side matrix of equation as The Inverse Kinematics 133] Cin, +Siny Cio, +Sjoy Cia, +Sya, Cid, + Sid, opty, = ny Oy tit, ag TG TOF | =Sing+Ciny -Sioy+ Qo, ~Siay + Cia, -S,d, + Cid, 0 0 0 1 (4.78) and the right-hand side of matrix equation is S345 Sr34Ss Cag LsCoy + Cn thG Ip = 'p2737,!7, = —Gysls Cr348s Srsq LsSrag + LoS + LS) Btsmepeetawiat ts ea ain 0 0 0 0 1 (4.79) or Cin, + Sin, Cio, +Sjo, Cia, +Sja, Gd, + S,d, eae moe -a, =d, +L, =S\n,+C\n, -S\o, + Co, —S\a,+Ca, -S\d, + Cd, 0 0 0 1 SosaSs Cas L3Caay + Ly Cys + Ly Cy el Cy3455 Sr3q Ls Soaq + LgSo3 + Ly Sy (4.80) -Cs 0 0 0 0 1 Comparing elements of Eq. (4.80), the single variable equations in @, are obtained from elements (3, 3) and (3, 4) as: “sya, +C\a, =0 SSdot Gd 0 ap Using the later, the solution for 8 is 6, = Atan2(d,, d,) (4.82) From ratio of elements (3, 1) and (3, 2), solution for 6 is obtained as =S5=-S\n, +Cny BCH souHGio, oe or 65 = Atan2(—Sin, +Cn,, ~S0, + G,0,) (4.84) The solution for remaining three variables 8, 8; and @, is obtained by first solving for @; + 8, + 8,. Equating elements (1, 3) and (2, 3) gives C53) = Cya,\+ Stay 4.85, Syq =—a, oe 134} Robotics and Control which leads to O344= 8, +0; +8, = Atan2(-a,, Cia, + S,ay) (4.86) Premultiplying both sides of Eq. (4.80) by ('7;)" . gives GACH ere = el, hale (4.87) Cy (Cin, +S,ny)-Syn, Cz (Cio, + Sy0y)- Spo, -S,(C\n, +S\ny)- Cyn, -S (Co, + S,oy)- Cho, -S\n, +C\n, -So, + Cio, 0 0 C(C\a, +Syay)-S,a, Cy(C\d, + S,dy)-Sy(d, = Ly) - Ly -S,(C\a, +S\a,)-Cya, -S,(C\d, + S,d,)- Cn (d, + Ly) —Sja, + Cya, -S\d, + Cd, 0 1 SyyCs_ S355 Cay LsCy + LC =CyCs CySs Sry LsSy + Cy = 4.88 5,18 2c oNto 0 88) 0 0 0 1 From elements (1, 1) and (1, 2), two equations are obtained: ,(Cin, + Syny)— Son, = SyaCs (4.89) @,(G, + 50,)- 5,0, = S355 (4.90) Dividing Eq. (4.90) by Eq. (4.89) and rearranging gives = (Cx + $}0y )Cy + Spo, = tan O5[(Cyn, + 8,7, )C, - Syn.] (4.91) S, _ tan85(Cin, + $\n,) + (Co, +S,0,) oe n, tan@, +0, or or 8) = Atandtan,(Cin, +5\n,)+Co, +S\0,, n, tan, +0.) (4.92) Similarly from elements (1, 4) and (2, 4) of Eq. (4.88), two equations are obtained after rearrangements as [sCy + LaCy = Crd, +8,C,d, -5,(4, - L,)- Ly L;Sy4 + 138; =-C,S,d, +S,S,d, -— C,(d, +L) 3) Substituting for C,, and S,, from elements (1, 3) and (2, 3), respectively form the left-hand matrix of Eq. (4.88) and simplifying gives LyCy = C.Cad, + S\Cody ~ 8, (d, = Ly) = Ly = Ls (C,Cya, + 5,Cya, ~ 5,0.) Ly; =-C,Spd, - 8,84, - Cy (d, +L,) + Ls (Cy, +5,5,4, + Cpa) 4.94) The Inverse Kinematics 135] Form Eq. (4.94) 4, is obtained as aum{ °C =—C€,S,d, ~S\Spd, — C,(d, + L,) + Ls(C,Spa, +8\Spa, +C,a,), Os = 1,3 = C\Crd, + S\Cyd, ~ Sy (d, — Ly) ~ Ly - Ls (C\Cya, + S,Cya, - S24,) (4.95) The last unknown joint variable @, is computed from Eq. (4.86). Of 0541 0510) (4.96) Example 4.6 Inverse kinematics for 6-DOF Stanford manipulator Obtain all the joint displacements as explicit functions of the position and orientation of the end-effector for the 6-DOF manipulator of Example 3.8 by analytical method. Also, discuss the existence and multiplicity of solutions. Solution The given 6-DOF-manipulator arm has a wrist whose joint axes 4, 5 and 6 intersect at a point. This satisfies the necessary condition for existence of closed form solutions. Hence, itis possible to solve the inverse problem in closed form. Let the given position and orientation of the end-effector with respect to the base in Cartesian space be On ay dy a, dy 0. % 4.97 enouanid, Ce 0 OO From Example 3.8, the manipulator transformation matrix (the forward kinematic model) for the given manipulator is given by Eq. (3.58) that is HONG IG, HUGG, CCS. Gees HSSsCsCs H81S1C86 AGCSs OG ae 1SaS5Lo ~GS255Ce ioe ate +OS:C5L6 “GOSiS5 —QOSiCs + C,S2C5 +C\Spd; — SL, SCN -S,CsCe i S CLCOX@, ) =G(eXer(okXy 1©2CaCs Ce 1&2 C4 C56 SiC) CyS5 Le FOS4CSCs — —CyS4C3Sg SCC Ss SGI yl, (4.98) Bais Cal oP SISDSSSEH Gs TOSI ssc. r BSS SOSA. Ss et Gly forsee CCC, cil C565 i SpC1C,S, Co +O, 5556 aie 555,05 0 0 oa =SiCiSs -SCyScLg 40,6; '+C,CsLg + Gd, 136| Robotics and Control Observe that in Eq. (4.98) neither single variable terms are present nor simple algebra (like division of two elements) will give single variable isolation. Hence. to find a solution two alternativ e: (i) matrix premultiplication i postmultiplication to isolate one variable at a time, as was done in Example 4,1 and (ii) use more involved algebra and trigonometry. In this example latter ig used. Equating elements (1, 3), (1, 4), (2, 3), (2, 4), (3, 3) and (3, 4) in Eqs. (4.97) and (4.98), six equations are obtained. GiGoiS, Assy sPxelsyorSrak (4.99) Lg (C,CyC4S5 — 515455 + C)SpCs) + CSad5-'SjLy =, | (4.100) SC, C455 + C\S455 + SS2Cs = ay (4.101) Le (S,C,C4S5. + C,S4S5 + 5,S2C5) + SS2dy + C)Ly = dy, (4.102) ENGejsutHGyou—tas (4.103) RSC Sen) enoray ide (4.104) Substituting Eq. (4.99) into Eq. (4.100) gives eae HG Sych ST or GSyd3) = Said Lea (4.105) Similarly, substituting Eq. (4.101) into Eq. (4.102) gives. Lay + S\S)d, + CL, = dy or S\S)d, + CL, = dy — Lea, (4.106) Squaring Eqs. (4.105) and (4.106), adding and simplifying gives Sid; +L =(d, — Lea,” + (dy = Lea)” or Sido te (da Boa, )o 1 (d, = Lea) — Lh (4.107) Also, combining Eqs. (4.103) and (4.104), rearranging and squaring gives Cd, =d, — Lea, (4.108) or Cid = (d, — Lea,)? (4.109) Equations (4.107) and (4.109) are solved for d, d, = + (d, — Lea,)? + (d, — Leay)? +d, = Lea, - B The displacement of prismatic joint d, is always positive; therefore, the negative solution is not valid. Thus dy = \(d, — Lea,)? + (d, = Lea,)? +d, = Lea,)? 13 (4.110) ‘The Inverse Kinematics [192] Thus, solution for the joint variable d;, which gives the joint displacement for the prismatic joint, is found. Next, solve for joint displacement 6. From Eq. (4.107), Ry | (Ata Nas liga ea (4.111) Dividing Eq. (4.111) by Eq. (4.108), solution of joint variable 0, is obtained as Gy = Atan(+y[(d, = Lya,)? + (dy ~ Led)? — Bs (d, = Lea) (4.112) Next, to solve for @;, Eqs. (4.105) and (4.106) can be used as they have only 6, as unknown. First, let the constants K and K, be defined as. K, = Spd; and K,=L, Substituting these constants in Eqs. (4.105) and (4.106): K,C, — Ky, = dy - Lea (4.113) K,S, + KC, = dy - Lea, (4.114) The equations of this form can be solved by making trigonometric substitutions K, =r sing and K, =r cos (4.115) where roslKp 4? o= Atan2( “, A) (4.116) aie Substituting K, and K, from Eq, (4.115) in Eqs. (4.113) and (4.114) : dy = 14, sin( - @,) = ~*~ (4.117) dy — Lea cos(9 = 8) = (4.118) From Eqs. (4.117) and (4.118), Ge d, ~ Lea, 6-8, = ane Sats, St) (4.119) r r ibstituting for @, r, Ky, and K, and solving for 6, gives 1 Syd. iL, @, = Atan2) —— — here S305 +B d, ~ Led, d, — Lgay = Atan2| 2S, 2 (4.120) | VSid}+ S343 + 4.110), (4.112) and (4.120) give solutions for the first three joint 6,, and dy, respectively. 138} Robotics and Control To obtain the solutions for the remaining three joint displacement 49s, a 6, another approach will be used. It is possible to view the description of sa frame, frame (6), with respect to frame {3}, the arm endpoint frame, along tug different paths, Vineet Te ATE fT, P| aetna eee arenes aL Aes P| 0 1 2 3 4 5 6 Pathi2ea les iy Cane SS path Fig. 4.10 The transform graph for the manipulator The manipulator transformation matrix °T, is equal to the product of six link transformation matrices CT Iu CTE ITE OTE (4.121) This can be represented graphically as shown in Fig. 4.10 with nodes Tepresenting frames and edges representing the transform. From the graph in Fig. 4.10 observe that there are two paths to traverse from frame {3} to frame {6}, one is via frame {4} and (5) in the forward direction and other isvia frame {0}, the base, in the reverse direction. The use of. these two paths to get the solutions is discussed below. Path 1 frame {3} — frame {4} > frame (5} > frame (6) Along this path the transformation °7,, can be obtained as aT TTS Ds (4.122) In Example 3.8, the transformation matrices *7,, “Ts, and °T, were obtained in terms of 8,, 85, and 0, respectively. On multiplying these matrices, CiCsCe S485 —CxCsS,- S.C, -C,S; -14C,5, SaC5Ce + C485 —SyCsS5-CyCs -S,S, LS, 5, Ip, [4506 | Cas) “S5C35¢ = C,C, S485 15,5, 23) | SEG -S5S, CPE iL 0 0 0 1 Path 2. frame (3) — frame (2) — frame (1} + frame (0} — frame {6} This is a path via the base. The tool frame is defined with respect to the base and hence, itean be reached from frame (3} traversing the links of the arm, Thus, BU, = Then Wann It is known that "7; = ('T,_,)! and °7, Siphence K=() (1) (ny 7 (4.124) Since 6}, 8,, and d; are known, the matrices 77, 'T, and°T, and their inverse can be computed. Substituting these values and multiplying the matrices, °T,,can computed. Let it be denoted as ‘The Inverse Kinematics 189] Ate aise Te men aTE aos IES aa (4.125) LEV UE AS le”) Oe 0) sO since matrices in Eq. (4.123) and (4.125) represent the same point, the arm nt, 8s, 85, 8, can be found by equating the corresponding elements of matrices. i re for s, the elements in row 3 are equated to give three equations as: SsCo= a1 (4.126) = S556 = P32 (4.127) Cs = 033 (4.128) Squaring Eqs. (4.126) and (4.127), adding and dividing the result by Eq. (4.128) gives solution for 45 as 6, = Atan2(ty (12, +73), m9) (4.129) Next, joint angle 0, is obtained by equating the elements (2, 4) and (1, 4) as BIE Ss=i794 (4.130) Ere Se 14 (4.131) Solving for 6, from Eqs. (4.130) and (4.131) gives, 0, = anal 2, “| (4,132) Note that since S; is a variable and may have more than one value, it is going to influence solution of @,. Finally, to solve for 6,, Eqs. (4.127) is divided by Eq, (4.126) to give Bo Mr 2 % Atan2| = 2, (4.133) Thus, expressions for all the six joint displacements of 6-DOF manipulator are obtained as explicit functions of the desired position and orientation of end- effector. The values of joint displacements can be determined from these functions for the desired end-effector location data. Note that the inverse kinematics solutions could have been obtained by following alternate approaches. The issues of existence and multiplicity of solutions are discussed next. nce of Solutions xamination of the expressions of the joint variables reveals that the the inverse kinematics problem of the given 6-DOF arm exist only if conditions are satisfied: under the square root in Eq. (4.110) is non-negative, that is, ax)? + (d, ~ Lea,)” + (4, - egy) See 434) 1140] Robotics and Control (ii) Similarly, the term under the Square root in Eq. (4.111), is nonnegative that is, 2 U(d, ~ Lga,)? + (dy = Lay)? - 31> 0 (4.135) The above conditions are clearly geometric constraints on the dimensions of the links of the manipulator. There are two ways to look at these. One, for given link dimensions (Ly and Ly) the end-effector will not be able to attain the desired position (d,, d,, d,) and orientation (a,, a,, a.) if the above conditions are not satisfied, and second, the conditions can be used to design link dimensions L, and Lg for the desireg workspace. Note that, if condition (ii) is satisfied, condition (i) is automatically Satisfied, Also, note that here it is assumed that full 360° of rotation for all revolute joints and limitless translations of the prismatic joint are possible. But, due to mechanical constraints, joint motions are restricted and solutions exist only if, in addition to satisfying the conditions given above, each of the joint variables takes a value that lies within the range of motion allowed for that joint, Multiplicity of Solutions Equation (4.112) gives two solutions of 6, due to the presence of the square root, Since 8; depends on 8, (Eq. (4.120)). there is one value of 6, for each value of 0. Similarly, from Eq. (4.129), there are two solutions for 6, and hence, it gives one set of solutions for @, and 6, for each value of 6. Thus, the number of solutions to the inverse kinematics problem of the given 6-DOF-manipulator arm is four. Example 4.7 Determination of Joint variables for a 4-DOF RPPR manipulator For a 4-DOF, RPPR manipulator, the joint-link transformation matrices, with Joint variables @,, d;, d, and @, are Gis OMLO, TG) WG °T,(6,) = 6 6 ie (4.136) COs One i OO @ My =O © 150 Aaa a (4.137) OW Ooi TO MO}neS ; Ot O @ T,(d3) = Oot 2, (4.138) ®@@O il The Inverse Kinematics 141| Gh 5; 080 Syn 1G}10'00 3 4 4 57,(0,) = AED Fo Le (4.139) Dik 0010) ma If the tool configuration matrix at a given instant is as given below, obtain the magnitude of each joint variable. -0.250 0.433 -0,866 -89.10 0.433 -0.750 -0.500 -45.67 T; = " (4.140) -0.866 -0.500 0.000 50.00 0 0 0 1 Solution The kinematic model of the manipulator will be Tina Tie iar (4.141) Substituting from Eqs. (4.136) — (4.140) gives Gees, 0 OVl 0 0 OF1 00 Spc, -% 0 0 SG 0,010 0, 1 0 )0.1,0..01) Gd Olen, OF ROM 10,1, Ollie, Opty] 0), Ordre lle 0-090, og O) Migs Opes Ole Ole 11) OO POY SL 0) 408 -0.c: di OMRON Ons (4.142) or CC, -C)S, -S, 7435,+5C)] [-0.250 0.433 -0.866 -89.10 SiC, -SS, C, 4,0, +55, |_| 0.433 -0.750 0.500 -45.67 eC, 1. 0 d, | |-0866 -0.500 0.000 50.00 per Ore 20. I 0 0 0 1 (4.143) The solutions for joint-variables are found by using the direct approach, guideline (a)-(d). The solution for first joint variable 6, is obtained by comparing elements (1, 3) and (2, 3) -S, =~ sin 6, = -0.866 (4.144) C, =c0s 6, =-0.5 Atan2(0.866, - 0.5) = — 60° (that is: , = Atan2 (-a,, a,)) (4.145) lution for second variable d; is obtained from element (3, 4) as: dy = 50 (that is : d, = d.) (4.146) the third joint variable d is obtained from elements (1, 4) and by squaring, adding and simplifying d,=+,d? +d; -25 (4.147) 1142) Robotics and Control or d; = 100 (4.148) Note that d, can not be negative. The fourth joint variable 0, is computed from elements (3, 1) and (3, 2) as 6, = Atan2(0.866, 0.5) = 60° (that is: 8, = Atan2(—n.,—o0,) (4.149) The given end-effector position and orientation, T, will be achieved by Setting the joint variable vector to q=[-60° 50 100 60°] (4.150) EXERCISES For the two link planar manipulator in Fig. 4.3(a) the first link as is twice as long as the second link (L, = 2L,). Sketch the reachable workspace of the manipulator if the joint range limits are 0 < 6, < 170°, -90° <6, <110°. 4.2 Sketch the approximate reachable workspace of the tip of a two-link planar arm with revolute joints. For this arm the first link is thrice as long as the second link, that is, L; =3Z, and the joint limits are 30° < 6; < 180° and —10U” < @, < 160°. 4.3. Sketch the approximate reachable workspace and the dexterous workspace of the 3-DOF planar manipulator shown in Fig. 4.5. 4.4 Show that fora 3R planar manipulator having link lengths as ZL, Ly andZ, with (L, + L,) > L3, the RWS is a circle with radius rpws = (Lj + L; + L3) and DWS is a circle with radius rpws = (L, + Ly— 24). 4.5 Explain why closed form analytical solutions are preferred over numerical iterative solutions 4.6 Discuss the existence of multiple solutions for Example 4.1. 4.7 Fora three-link planar manipulator (2-DOF for position and 1-DOF for orientation) two solutions are possible for a given position and orientation, as discussed in Section 4.3.2. If one more degree of freedom is added such that the manipulator is still planar, how many solutions will be possible for a given position and orientation when the added joint is (a) revolute. (b) prismatic. 4.8 How many solutions are possible, assuming no joint range limits for the following 3-DOF arm configuration? (a) PPP manipulator shown in Fig. E4.8. (b) RPP manipulator shown in Fig. 3.13. (c) RRP manipulator shown in Fig. 4.7. (d@) RRR manipulator shown in Fig. 3.15. 4. (4.151)

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy