Download presentation
Presentation is loading. Please wait.
1
Inverse Kinematics (Reza N. Jazar, Ch. 6)
What are the joint variables for a given configuration of a robot? This is the inverse kinematic problem. The determination of the joint variables reduces to solving a set of nonlinear coupled algebraic equations. Although there is no standard and generally applicable method to solve the inverse kinematic problem, there are a few analytic and numerical methods to solve the problem... The main difficulty of inverse kinematic is the multiple solutions such as the one that is shown in the Figure above for a planar 2R manipulator: go to the tip by the high or low elbow ... that’s the question ... Determination of the joint variables in terms of the end-effector position and orientation is called inverse kinematics.
2
Inverse Kinematics (Cont’d)
Solution Approach: Unlike linear equations, there are no general algorithms to solve set of nonlinear equations. A manipulator will be considered solvable if the joint variables can be determined by an algorithm that allows one to determine all the sets of joint variables associated with a given position and orientation. The underlying assumption is that it is possible to find all solutions. Some numerical procedures cannot do this and thus must be discarded in this approach. We can consider two major solution strategies: Closed-form solutions & Numerical solutions. The latter tend to be slow due to their iterative nature. Closed solutions are be of two types: algebraic and geometric. There is not a major difference between them Major result: all systems with revolute and prismatic joints having a total of six degrees of freedom in a single series chain are solvable. However, this general solution is numerical. Rarely the solution is analytical. A sufficient condition for a robot with 6 DOF have a closed form solution is that 3 neighboring axes intersect at a point. (A building condition for most 6DOF robots today). ENOUGH!
3
Inverse Kinematics (Cont’d)
Carrying kinematic information, back and forth between joint space (where the robot is actuated) and the Cartesian space (the global coordinate space) is a need in robotics. To control the configuration of the end-effector to reach an object, the inverse kinematics problem must be solved. The result of forward kinematics of a 6DOF robot is a 4 x 4 transformation matrix 0T6 = 0T1 1T2 2T3 3T4 4T5 5T6 and this is represented by a 4 x 4 matrix with 6 independent variables which we need to determine. The overall transformation matrix of a robot can be decomposed to a translation (displacement) and a rotation as follows. r11 r r13 r14 r21 r r23 r24 r31 r r33 r34 I 0d6 0 1 0R6 0d6 0R6 0 0 1 0T6 = = = 0D6 0R6 = The translation matrix 0D6 indicates the position of the end-effector in B0. The rotation matrix 0R6 indicates the orientation of the end-effector in B0. Each of these involves 3 variables to a total of 6.
4
Inverse Kinematics Example: An R Ⱶ R||R robot
From forward kinematics we know that 0T3 = 0T1 1T2 2T3. The tip point P is given by 0dP , that is, we know its coordinates: dx dy dz 1 l3 1 0dP = = 0T3 = l3 1 dx dy dz 1 cq1 c(q2 + q3) sq1 cq1s(q2 + q3) l2cq1cq2 sq1 c(q2 + q3) -cq sq1s(q2 + q3) l2sq1cq2 s(q2 + q3) c(q2 + q3) l1 + l2 sq2 = Let’s write a few equations to get the “flavor” of this new activity: l3 cq1s(q2 + q3) + l2cq1cq2 = dx l3 sq1s(q2 + q3) + l2sq1cq2 = dy - l3 c(q2 + q3) + l1 + l2 sq2 = dz these equations yield: dx sq1 - dy cq1 = 0 which alllows us to calculate q1 as follows: tan q1 = dy/dx and thus q1 = atan(dy/dx). Clearly we need an equation solver to find the three unknown angles q1, q2 and q3!
5
Inverse Kinematics Example: An R Ⱶ R||R robot (Cont’d)
To find q2 we need to solve the equation a cos q2 + b sin q2 = c where a = -2l2(dx cos q1 + dy sin q1) b = 2l2 (l1 – dz) c = (l3)2 – ( (dx cos q1 + dy sin q1)2 + (l1)2 - 2l1dz + (l2)2 + (dz)2 ) q2 = asin( (2bc sqrt(4b2c2 – 4(a2 + b2)(c2 – a2)))/2(a2 + b2) ) and once q2 is found we can find q3 by solving q3 = atan( (dx cos q1 + dy sin q1 - l2cosq2 )/(l1 + l2sinq2 - dz) ) – q2 As you can see what we are dealing with ... lots of non-linear equations!
6
Inverse Kinematics Example: An R||R planar robot
In the case of a planar robot the equations are much easier to find since: X = l1 cosq1 + l2cos(q1 + q2) Y = l1 sinq1 + l2sin(q1 + q2) is immediate from the picture. The solution(s) in this case are: q2 = acos((X2 + Y2 –(l1)2 – (l2)2)/2l1l2) or better q2 = 2 atan(sqrt(( (l1 + l2)2 – (X2 + Y2) )/ ((X2 + Y2) - (l1 - l2)2 ))) the two solutions correspond to elbow up and elbow down. The equations for q1 are: q1 = atan(Y/X) atan(l2sin q2/(l1 + l2cos q2)) the + sign is for elbow “up”. Look at the next slide for the forward kinematics equations.
7
Inverse Kinematics Example: An R||R planar robot
The forward Kinematics equations for a planar robot are given below (taken from Notes 4a, slide # 10) With these equations at hand we can proceed as we did in the previous example ... a choice ... sigh! 0T2 = 0T1 1T2 = cos(q1 + q2) sin(q1 + q2) l1cos q1 + l2cos(q1 + q2) sin(q1 + q2) cos(q1 + q2) l1sin q1 + l2sin(q1 + q2)
8
Inverse Kinematics Example ???
Base Here we must consider 6 DOF ... that is, a lot of nonlinear equations ... The tool transformation matrix in the base coordinate frame is; 0T7 = 0T1 1T2 2T3 3T4 4T5 5T6 6T7 = 0T3 3T6 6T7 r11 r r13 r14 r21 r r23 r24 r31 r r33 r34 0T7 = lots of equations manipulation ... we will not work this case ....
9
Inverse Kinematics Examples ???
The examples below are similar to previous cases but we will stop here ...
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.