Presentation is loading. Please wait.

Presentation is loading. Please wait.

Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4.

Similar presentations


Presentation on theme: "Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4."— Presentation transcript:

1 Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4

2 Looking Closely at the T 0 n Matrix At the end of our discussion of “Robot Mapping” we found that the T 0 n matrix related the end of the arm frame (n) to its base (0) –  Thus it must contain information related to the several joints of the robot  It is a 4x4 matrix populated by complex equations for both position and orientation (POSE)

3 Looking Closely at the T 0 n Matrix To get at the equation set, we will choose to add a series of coordinate frames to each of the joint positions The frame attached to the 1 st joint is labeled 0 – the base frame! – while joint two has Frame 1, etc. The last Frame is the end or n Frame

4 Looking Closely at the T 0 n Matrix As we have seen earlier, we can define a HTM (T (i-1) i ) to the transformation between any two SO 3 based frames Thus we will find that the T 0 n is given by a product formed by:

5 Looking Closely at the T 0 n Matrix For simplicity, we will redefine each of the of these transforms (T (i-1) i ) as A i Then, for a typical 3 DOF robot Arm, T 0 n = A 1 *A 2 *A 3 While for a full functioned 6 DOF robot (arm and wrist) would be: T 0 n = A 1 *A 2 *A 3 *A 4 *A 5 *A 6 A 1 to A 3 ‘explain’ the arm joint effect while A 4 to A 6 explain the wrist joint effects

6 Looking At The Frame To Frame Arrangements – Building A Modeling Basis When we move from one frame to another, we will encounter:  Two translations (in a controlled sense)  Two rotations (also in a controlled sense) A rotation and translation WRT the Z i-1  These are called the Joint Parameters A rotation and translation WRT the X i  These are called the Link Parameters

7 A model of the Joint Parameters NOTE!!!

8 A model of the Link Parameters a i or

9 Talking Specifics – Joint Parameters  i is an angle measured about the Z i-1 axis from X i-1 to X i and is a variable for a revolute joint – its fixed for a Prismatic Joint d i is a distance measured from the origin of Frame (i-1) to the intersection of Z i-1 and X i and is a variable for a prismatic joint – its fixed for a Revolute Joint

10 Talking Specifics – Link Parameters a i (or l i ) is the Link length and measures the distance from the intersection of Z i-1 to the origin of Frame i measured along X i  i is the Twist angle which measures the angle from Z i-1 to Z i as measured about X i Both of these parameters are fixed in value regardless of the joint type.  A Further note: Fixed does not mean zero degrees or zero length just that they don’t change

11 Very Important to note: Two Design Axioms prevail in this modeling approach  Axiom DH1: The Axis X i must be designed to be perpendicular to Z i-1  Axiom DH2: The Axis X i must be designed to intersect Z i-1 Thus, within reason we can design the structure of the coordinate frames to simplify the math (they are under our control!)

12 Returning to the 4 ‘Frame-Pair’ Operators: 1 st is  which is an operation of pure rotation about Z or: 2 nd is d which is a translation along Z or:

13 Returning to the 4 Frame Operators: 3 rd is a Translation Along X or: 4 th is  which is a pure Rotation about X or:

14 The Overall Effect is:

15 Simplifying this Matrix Product: This matrix is the general transformation relating each and every of the frame pairs along a robot structure

16 So, Since We Can Control the Building of this Set Of Frames, What Are The Rules? We will employ a method called the Denavit- Hartenberg Method It is a Step-by-Step approach for modeling each of the frames from the initial (or 0) frame all the way to the n (or end) frame This modeling technique makes each joint axis (either rotation or extension) the Z-axis of the appropriate frame (Z 0 to Z n-1 ). The Joint motion, thus, is taken W.R.T. the Z i-1 axis of the frame pair making up the specific transformation matrix under design

17 The D-H Modeling Rules: 1) Locate & Label the Joint Axes: Z 0 to Z n-1 2) Establish the Base Frame. Set Base Origin anywhere on the Z 0 axis. Choose X 0 and Y 0 conveniently and to form a right hand frame. Then Repeat Steps 3 to 5 for i = 1 through i = n-1: 3) Locate the origin O i where the common normal to Z i-1 and Z i intersects Zi. If Z i intersects Z i-1 locate O i at this intersection. If Z i-1 and Z i are parallel, locate O i at Joint i+1

18 The D-H Modeling Rules: 4) Establish X i along the common normal between Z i-1 and Z i through O i, or in the direction Normal to the plane Z i-1 – Z i if these axes intersect 5) Establish Y i to form a right hand system Set i = i+1, if i { "@context": "http://schema.org", "@type": "ImageObject", "contentUrl": "http://images.slideplayer.com/3284928/11/slides/slide_17.jpg", "name": "The D-H Modeling Rules: 4) Establish X i along the common normal between Z i-1 and Z i through O i, or in the direction Normal to the plane Z i-1 – Z i if these axes intersect 5) Establish Y i to form a right hand system Set i = i+1, if i

19 The D-H Modeling Rules: 7) Create a table of “Link” parameters: 1)  i as angle about Z i-1 between X’s 2) d i as distance along Z i-1 3)  i as angle about X i between Z’s 4) a i as distance along X i 8) Form HTM matrices A 1, A 2, … A n by substituting , d,  and a into the general model 9) Form T 0 n = A 1 *A 2 *…*A n

20 Some Issues to remember: If you have parallel Z axes, the X axis of the second frame runs perpendicularly between them When working on a revolute joint, the model will be simpler if the two X directions are in alignment at “Kinematic Home” – ie. Our model’s starting point To achieve this kinematic home, rotate the model about moveable axes (Z i-1 ’s) to align X’s Kinematic Home is not particularly critical for prismatic joints An ideal model will have n+1 frames However, additional frames may be necessary – these are considered ‘Dummy’ frames since they won’t contain joint axes

21 Applying D-H to a General Case: Case 1: Like a part of a biological arm Case 2: Like a part of a R-P manipulator And Note:

22 General Case: Considering Link i Connects Frames: i-1 and I and includes Joint i This information allowed us to ‘Build’ The L.P. (link parameter) Table seen here FramesLinkVar  da  S  C  S  C  i -1 to iiR  + 37  17.5 u47.8 u17.8  0.306.952S(  + 37  )C(  + 37  )

23 Leads to an A i Matrix:

24 Lindeke’s Folly – The “Plastic Handed” Robot

25 Frame Skeleton for Prismatic Hand Robot

26 LP Table: FramesLinkVar  da  S  C  S  C  0 → 11R 11 00-90  0S1C1 1 → 22R 22 600 01S2C2 2 → 33R 33 0.5090  10S3C3 3 → 44P00 d 4 + 4.25000 01S4C4 4 → n5R 55 1000 01S5C5 Depends on Location of n-frame!

27 Leading to 5 A i Matrices

28 #5 is: Now, Lets Form the FKS: T 0 n = A 1 *A 2 *A 3 *A 4 *A 5 Best to use a software: MathCad, Mathematica, etc. This value is called the Hand Span and depends on the Frame Skeleton we developed

29 Solving for FKS Here we have a special case – two of the Joints are a “planer arm” revolute model – i.e. parallel, consecutive revolute joints These are contained in the A 2 and A 3 Matrices These should be pre-multiplied using a trigonometric tool that recognizes the sum of angle cases ((Full)Simplify in Mathematica or MathCad Simplify for A2*A3 then Evaluate for A1*{A2*A3}*A4*A5) Basically then: T 0 n = A1*{A2  A3}*A4*A5

30 Extracts from Math Cad Analyses:

31 Continuing

32

33 In Tabular Form: Nx: C 23 C 1 C 5 - S 1 S 5 Ny: C 1 S 5 + C 23 C 5 S 1 Nz: -S 23 C 5 Ox: -C 23 C 1 S 5 - S 1 C 5 Oy: C 1 C 5 - C 23 S 1 S 5 Oz: S 23 S 5 Ax: S 23 C 1 Ay: S 1 S 23 Az: C 23 Dx: S 23 C 1 + 6C 1 C 2 + 0.5S 1 + S 23 C 1 (d 4 +4.25) Dy: S 23 S 1 + 6S 1 C 2 - 0.5C 1 + S 23 S 1 (d 4 +4.25) Dz: C 23 - 6S 2 + C 23 (d 4 +4.25)

34 Finalizing the FKS – perform a physical verification Physical verification means to plug known angles into the variables and compute the A i ’s and FKS against the Frame Skeleton

35 Physical Verification in MathCad:

36 Physical Verification of FKS:

37 Another? 6dof Articulating Arm – ( The Figure Contains Frame Skelton)

38 LP Table FramesLinkVar  da  S  C  S  C  0 → 11R 11 0090  0S1C1 1 → 22R 22 0a200 01S2C2 2 → 33R 33 0a300 01S3C3 3 → 44R 44 0a4-90  0S4C4 4 → 55R 55 0090  10S5C5 5 → 66R 6*6*d6000 01S6C6 * With End Frame in Better Kinematic Home, here, as shown it could be (  6 - 90  ), which is a problem!

39 A Matrices

40 A Matrices, cont.

41 Leads To: FKS of: After Preprocessing A2-A3-A4, to collect angular effect, the FKS must be reordered as A1-A234-A5-A6 and Simplified

42 Solving for FKS Pre-process {A 2 *A 3 *A 4 } with Evaluate Simplify They are the planer arm issue as in the previous robot model Then Form: A 1 * {A 2 *A 3 *A 4 }*A 5 *A 6 Evaluate for FKS!

43 Simplifies to (in the expected Tabular Form): nx = C1·(C5·C6·C234 - S6·S234) - S1·S5·C6 ny = C1·S5·C6 + S1·(C5·C6·C234 - S6·S234) nz = S6·C234 + C5·C6·S234 ox = S1·S5·S6 - C1·(C5·S6·C234 + C6·S234) oy = - C1·S5·S6 - S1·(C5·S6·C234 + C6·S234) oz = C6·C234 - C5·S6·S234 ax = C1·S5·C234 + S1·C5 ay = S1·S5·C234 - C1·C5 az = S5·S234 dx = C1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) + d6·S1·C5 dy = S1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) - d6·C1·C5 dz = S234·(d6·S5 + a4) + a3·S23 + a2·S2

44 Verify the Model Again, substitute known’s (typically 0  or 0 units) for the variable kinematic variables Check each individual A matrix against your robot frame skeleton sketch for physical agreement Check the simplified FKS against the Frame skeleton for appropriateness

45 After Substitution: nx = C1·(C5·C6·C234 - S6·S234) - S1·S5·C6 = 1(1-0) – 0 = 1 ny = C1·S5·C6 + S1·(C5·C6·C234 - S6·S234) = 0+ 0(1 – 0) = 0 nz = S6·C234 + C5·C6·S234 = 0 + 0 = 0 ox = S1·S5·S6 - C1·(C5·S6·C234 + C6·S234) = 0 – 1(0 + 0) = 0 oy = - C1·S5·S6 - S1·(C5·S6·C234 + C6·S234) = -0 – 0(0 + 0) = 0 oz = C6·C234 - C5·S6·S234 = 1 – 0 = 1 ax = C1·S5·C234 + S1·C5 = 0 + 0 = 0 ay = S1·S5·C234 - C1·C5 = 0 – 1 = -1 az = S5·S234 = 0 dx = C1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) + d6·S1·C5 = 1*(1(0 + a4) + a3 + a2) + 0 = a4 + a3 + a2 so here is (.2+1.5+1.5 = 3.2 m) dy = S1·(C234·(d6·S5 + a4) + a3·C23 + a2·C2) - d6·C1·C5 = 0(1(0 + a4) + a3 + a2) – d6 = -d6 so here is -.25 m dz = S234·(d6·S5 + a4) + a3·S23 + a2·S2 = 0(0 + a4) + 0 + 0 = 0

46 And Physical Verification w/ Math Cad:


Download ppt "Robot Modeling and the Forward Kinematic Solution ME 4135 Lecture Series 4."

Similar presentations


Ads by Google