1 / 48

Slide Series 5: IKS for Robots

ME 4135 Robotics & Control R. Lindeke, Ph. D. Slide Series 5: IKS for Robots. FKS vs. IKS. In FKS we built a tool for finding end frame geometry from Given Joint data: In IKS we need Joint models from given End Point Geometry:. Cartesian Space. Joint Space. Joint Space. Cartesian Space.

gisela
Download Presentation

Slide Series 5: IKS for Robots

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. ME 4135 Robotics & Control R. Lindeke, Ph. D. Slide Series 5:IKS for Robots

  2. FKS vs. IKS • In FKS we built a tool for finding end frame geometry from Given Joint data: • In IKS we need Joint models from given End Point Geometry: Cartesian Space Joint Space Joint Space Cartesian Space

  3. So this IKS is Nasty (as we know!) • It a more difficult problem because: • The Equation set is “Over-Specified” • 12 equations in 6 unknowns • Space is “Under-Specified” • Planer devices with more joints than 2 • The Solution set can contain Redundancies • Multiple solutions • The Solution Sets may be un-defined • Unreachable in 1 or many joints

  4. Uses of IKS • Builds Workspace • Allows “Off-Line Programming” solutions • Thus, compares Workspace capabilities with Programming realities to assure that execution is feasible • Aids in Workplace design and operation simulations

  5. Performing IKS For (mostly) Industrial Robots: • First lets consider the previously defined Spherical Wrist simplification • All Wrist joint Z’s intersect at a point • The nthFrame is offset from this intersection by a distance dn along the a vector of the desired solution (3rd column of desired orientation sub-matrix) • This result is as expected by following the DH Algorithm!

  6. Performing IKS • We can now separate the effects of the ARM joints • Joints 1 to 3 in a full function manipulator (without redundant joints) • They function to position the spherical wrist at a target POSITION related to the desired target POSE • … From the WRIST Joints • Joints 4 to 6 in a full functioning spherical wrist • Wrist Joints function as the primary tool to ORIENT the end frame as required by the desired target POSE

  7. Performing IKS: Focus on Positioning • We will define a point (the WRIST CENTER) as: • Pc = [Px, Py, Pz] • Here we define Pc = dtarget - dn*a • Px = dtarget,x - dn*ax • Py = dtarget,y - dn*ay • Pz = dtarget,z - dn*az

  8. R Manipulator – a simple and special case which can be found by doing a ‘Pure IKS’ solution R Frame Skeleton

  9. LP Table and Ai’s

  10. FKS is A1*A2:

  11. Forming The IKS:

  12. Forming The IKS: • Examining these two equation (n, o, a and d are ‘givens’ in an inverse sense!!!): • Term (1, 4) & (2,4) both side allow us to find an equation for  as a positioning joint in the arm: • (1,4): C1*(d2+cl2) = dx • (2,4): S1*(d2+cl2) = dy • Form a ratio to build Tan(): • S1/C1 = dy/ dx • Tan  = dy/dx •  = Atan2(dx, dy)

  13. Forming The IKS: • After  is found, back substitute and solve for d2: • (1,4): C1*(d2+cl2) = dx • Isolating d2: d2 = [dx/C1] - cl2

  14. Alternative Method – doing a pure inverse approach • Form A1-1then pre-multiply both side by this ‘inverse’ • Leads to: A2 = A1-1*T0ngiven

  15. Simplify RHS means:

  16. Solving: • Selecting and Equating (1,4) • 0 = -S1*dx + C1*dy • Solving: S1*dx = C1*dy • Tan() = (S1/C1) = (dy/dx) •  = Atan2(dx, dy) • Selecting and Equating (3,4) -- after back substituting  solution • d2 + cl2 = C1*dx + S1*dy • d2 = C1*dx + S1*dy- cl2

  17. Performing IKS For Industrial Robots: • What we saw with the -R IKS solutions will always work for a robot – with or without a spherical wrist • These methods are often tedious – and require some form of “intelligent application” to find a good IKS solution • Hence that is why we like the spherical wrist simplification (for industrial robots) introduced earlier – separating ARM and Wrist Effects and joints

  18. Focusing on the ARM Manipulators in terms of Pc: • Prismatic: • q1 = Pz (its along Z0!) – cl1 • q2 = Px or Py - cl2 • q3 = Py or Px - cl3 • Cylindrical: • 1 = Atan2(Px, Py) • d2 = Pz – cl2 • d3 = Px*C1 – cl3 or +(Px2 + Py2).5 – cl3

  19. Focusing on the ARM Manipulators in terms of Pc: • Spherical: • 1 = Atan2(Px, Py) • 2 = Atan2( (Px2 + Py2).5 , Pz) • D3 = (Px2 + Py2 + Pz2).5 – cl3

  20. Focusing on the ARM Manipulators in terms of Pc: • Articulating: • 1 = Atan2(Px, Py) • 3 = Atan2(D, (1 – D2).5) • Where D = • 2 =  -  •  is: Atan2((Px2 + Py2).5, Pz) •  is:

  21. One Further Complication: • This can be considered the d2 offset problem • A d2 offset is a design issue that states that the nthframe has a non-zero offset along the Y0 axis as observed in the solution of the T0nwith all joints at home • This leads to two solutions for 1 • the So-Called Shoulder Left and Shoulder Right solutions

  22. Defining the d2 Offset issue Here: ‘The ARM’ might be a revolute/prismatic device as in the Stanford Arm or it might be a2 & a3 links in an Articulating Arm and rotates out of plane A d2 offset means that there are two places where 1 can be placed to touch a given point (and note, when 1is at Home, the wrist center is not on the X0 axis!)

  23. Lets look at this Device “From the Top” F1 a Q11

  24. Solving For 1 • We will have a Choice (of two) poses for :

  25. In this so-called “Hard Arm” • We have two 1’s • These lead to two 2’s (Spherical) • Or to four 2’s and 3’s in the Articulating Arm • Shoulder Right Elbow Up & Down • Shoulder Left Elbow Up & Down

  26. The Orientation Model • Evolves from: • Separates Arm Joint and Wrist Joint Contribution to the desiredTarget(given) orientation

  27. Focusing on Orientation Issues • Lets begin by considering Euler Angles (they are a model that is almost identical to a full functioning Spherical Wrist): • Form Product: • Rz1*Ry2*Rz3 • This becomesR36

  28. Euler Wrist Simplified: And this matrix is equal to a U matrix prepared by multiplying the inverse of the ARM joint orientation matrices inverse and the Desired (given) target orientation NOTE: R03 is Manipulator Arm dependent!

  29. Simplifying the RHS: (our so-called U Matrix)

  30. Continuing:

  31. Finally:

  32. Solving for Individual Orientation Angles (1st): • Selecting (3,3)→ C= U33 • With Cwe “know” S= (1-C2).5 • Hence: = Atan2(U33, (1-U332).5 • NOTE: 2solutions for !

  33. Re-examining the Matrices: • To solve for : Select terms: (1,3) & (2,3) • CS = U13 • SS = U23 • Dividing the 2nd by the 1st: S /C = U23/U13 • Tan() = U23/U13 •  = Atan2(U13, U23)

  34. Continuing our Solution: • To solve for : Select terms: (3,1) & (3,2) • -SC = U31 • SS = U32 • Tan() = U32/-U31 •  = Atan2(-U31, U32)

  35. Summarizing: • = Atan2(U33, (1-U332).5 •  = Atan2(U13, U23) •  = Atan2(-U31, U32)

  36. Let do a (true) Spherical Wrist:

  37. IKSing the Spherical Wrist

  38. Writing The Solution:

  39. Lets See By Pure Inverse Technique:

  40. Simplifying

  41. Solving: • Examination here lets select (3,3) both sides: • 0 = C4U23 – S4U13 • S4U13 = C4U23 • Tan(4) = S4/C4 = U23/U13 • 4 = Atan2(U13, U23) • With the given desired orientation and values (from the arm joints) we have a value for 4 the RHS is completely known

  42. Solving for 5 & 6 • For 5: Select (1,3) & (2,3) terms • S5 = C4U13 + S4U23 • C5 = U33 • Tan(5) = S5/C5 = (C4U13 + S4U23)/U33 • 5 = Atan2(U33, C4U13 + S4U23) • For 6: Select (3,1) & (3, 2) • S6 = C4U21 – S4U11 • C6 = C4U22 – S4U12 • Tan(6) = S6/C6 = ([C4U21 – S4U11],[C4U22 – S4U12]) • 6 = Atan2 ([C4U21 – S4U11], [C4U22 – S4U12])

  43. Summarizing: • 4 = Atan2(U13, U23) • 5 = Atan2(U33, C4U13 + S4U23) • 6 = Atan2 ([C4U21 – S4U11], [C4U22 – S4U12])

  44. Lets Try One: • Cylindrical Robot w/ Spherical Wrist • Given a Target matrix (it’s an IKS after all!) • The d3 “constant” is 400mm; the d6 offset (call it the ‘Hand Span’) is 150 mm. • 1 = Atan2((dx – ax*150),(dy-ay*150)) • d2 = (dz – az*150) • d3 = [(dx – ax*150)2,(dy-ay*150)2].5 - 400

  45. The Frame Skeleton: Note “Dummy” Frame to account for Orientation problem with Spherical Wrist modeled earlier

  46. Solving for U: NOTE: We needed a “Dummy Frame” to account for the Orientation issue at the end of the Arm

  47. Simplifying:

  48. Subbing Uij’s Into Spherical Wrist Joint Models: • 4 = Atan2(U13, U23)= Atan2((C1ax + S1az), (S1ax-C1az)) • 5 = Atan2(U33, C4U13 + S4U23)= Atan2{ay, [C4(C1ax+S1az) + S4 (S1ax-C1az)]} • 6 = Atan2 ([C4U21 - S4U11], [C4U22 - S4U12]) = Atan2{[C4(S1nx-C1nz) - S4(C1nx+S1nz)], [C4(S1ox-C1oz) - S4(C1ox+S1oz)]}

More Related