Presentation is loading. Please wait.

Presentation is loading. Please wait.

Forward Kinematics: Denavit-Hartenberg (DH) Notation

Similar presentations


Presentation on theme: "Forward Kinematics: Denavit-Hartenberg (DH) Notation"— Presentation transcript:

1 Forward Kinematics: Denavit-Hartenberg (DH) Notation
Fig 5.1 A robot is a set of joints and links. We need to determine the position and orientation of every link of the robot. For this we attach a coordinate frame to every link and determine its configuration in the neighbor frames using rigid motion method. A series robot with n joints will have n + 1 links. Links are numbered starting at “0” for the “base link” (typically grounded or fixed). The end effector is link “n”. Joints are numbered starting at “1”. Joint axis Link (i) is connected to its lower link (i – 1) at its proximal end by joint i and it is connected to its upper link (i + 1) at its distal end by joint (i + 1). Joint i axis named z-axis is labeled zi -1 and joint i + 1 axis is labeled zi.

2 Forward Kinematics: Denavit-Hartenberg (DH) Notation (cont’d)
Fig 5.2: The figure shows joints (i-1), (i) and (i+1) of a serial robot together with links (i-1) and (i). In a given design for a robot, each joint is revolute or prismatic. Every joint (rotational or translational) is indicated by its axis. 1. The zi axis is aligned with the i+1 joint axis. 2. The xi-axis is the common normal between the zi-1 and zi axes pointing from the zi-1 to the zi axis. - parallel z-axes: infinite # of normals - take the one collinear with previous normal - intersecting z-axes: take xi perpendicular to the plane of the two z-axes - collinear z-axes: take xi such that qi = 0 always. 3. The y-axis is found by the RH rule. A DH coordinate frame consists of 4 parameters: Link length ai, Link twist ai, Joint distance di and Joint angle qi.

3 Denavit-Hartenberg (DH) Notation
Forward Kinematics: Denavit-Hartenberg (DH) Notation (cont’d) Denavit-Hartenberg (DH) Notation Fig 5.3: The 4 parameters of a DH coordinate frame: Link length ai : distance between zi-1 and zi along the x-axis is the kinematic length of link i. Link twist ai : required rotation of the zi-1 axis about the xi to become parallel to the zi axis. Joint distance di : distance between xi-1 and xi along the zi-1 axis, also called link offset. Joint angle qi : required rotation of xi-1 about the zi-1 axis to become parallel to the xi axis The parameters qi and di are called joint parameters, since they define the relative position of two adjacent links connected at joint i. The variable parameter either qi or di is called the joint variable (the other parameter is fixed). The parameters ai and ai are called link parameters, because they define relative positions of joints i and i + 1 at two ends of link (i).

4 Denavit-Hartenberg (DH) Notation
Forward Kinematics: Denavit-Hartenberg (DH) Notation (cont’d) Denavit-Hartenberg (DH) Notation DH notation simplifications: 0. DH frames are not unique (direction of z-axes are arbitrary) 1. No need to show the y-axis, only the x & z axes. 2. The 1st & nth joints are R (revolute) so a0=an = 0 & a0=an = 0 . 3. If the 1st & nth joints are P (prismatic) then q0=qn = 0 4. Each link (not base & last) is a binary link (connected to 2 links) 5. Parameters ai and ai are constant per robot geometry 6. Parameters qi and ai are directional (RH rule) follow zi-1 and xi 7. For industrial robots ai is a multiple of p/2 radians. 8. Can relax the direction of xi to a more convenient one 9. See examples that follow. 10. A DH parameter table to define the link frames Frame # ai di qi 1 2 .... n

5 DH Table for the 3R (R||R||R) planar manipulator robot
Fig 5.4 & Table 5.2 Frame No. ai di qi 1 l1 q1 2 l2 q2 3 l3 q3

6 Coordinates frames for a 3R (R Ⱶ R||R) PUMA robot
Fig 5.5 & Table 5.3: 3R PUMA robot Frame No. ai di qi 1 90 deg q1 2 l2 l1 q2 3 - 90 deg q3 The join axes of an R  R ||R manipulator are called waist z0, shoulder z1 and elbow z2. Typically z1 and z2 are parallel, and perpendicular to z0.

7 Denavit-Hartenberg (DH) Notation
Fig 5.6 & Table 5.4: Stanford Arm R Ⱶ R Ⱶ P; R Ⱶ R Ⱶ R Frame No. ai di qi 1 -90 deg l1 q1 2 90 deg l2 q2 3 d3 4 q4 5 q5 6 l6 q6

8 Transformation Between Two Adjacent Coordinate Frames
The coordinate frame Bi is fixed to the link (i) and the coordinate Bi-1 is fixed to the link (i - 1). To transform coordinate frame Bi (xi, yi, zi) to Bi-1 (xi-1, yi-1, zi-1) we use matrix i-1Ti (where “D” stands for translation or displacement and “R” for rotation) in 4 steps: (1) Rotate Bi through ai about the xi-1 axis; (2) Translate Bi along the xi-1 axis by distance ai; (3) Rotate Bi through qi about the zi-1 axis; (4) Translate Bi along the zi-1 axis by distance di. These rotations and translations yield: i-1Ti = (iTi-1 )-1 = Dzi-1,di Rzi-1,qi Dxi-1,ai Rxi-1,ai di ai cos qi -sin qi sin qi cos qi 0 cos ai -sin ai 0 sin ai cos ai i-1Ti = that is (eq 5.11): this is (eq 5.10): xi-1 yi-1 zi-1 1 xi yi zi = i-1Ti cos qi -sin qi cos ai sin qi sin ai ai cos qi sin qi cos qi cos ai -cos qi sin ai ai sin qi sin ai cos ai di i-1Ti = & The inverse of the homogeneous transformation matrix is (i-1Ti )-1 = iTi-1 (eq 5.15).

9 Inverse Transformation Between Two Adjacent Coordinate Frames
The inverse of the homogeneous transformation matrix on the previous slide is iTi-1 = (i-1Ti )-1 = Rxi,-ai Dxi,-ai Rzi,-qi Dzi,-di ai di 0 cos ai -sin ai 0 sin ai cos ai cos qi -sin qi sin qi cos qi iTi-1 = that is (eq 5.15): this is (eq 5.22): xi yi zi 1 xi-1 yi-1 zi-1 = iTi-1 iTi-1 = cos qi sin qi ai -sin qi cos ai cos qi cos ai sin ai -di sin ai sin qi sin ai cos qi sin ai cos ai -di cos ai &

10 Forward Kinematics for a 2R (R||R) Planar Manipulator
Fig 5.9 & Table 5.5 Frame No. ai di qi 1 l1 q1 2 l2 q2 1T2 = cos q2 -sin q l2cos q2 sin q2 cos q l2sin q2 eq 5.29 0T1 = cos q1 -sin q l1cos q1 sin q1 cos q l1sin q1 eq 5.30 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) eq 5.31

11 Forward Kinematics for a 3R (R||R||R) Planar Manipulator
Fig 5.21 & Table 5.2 Frame No. ai di qi 1 l1 q1 2 l2 q2 3 l3 q3 i-1Ti = cos qi -sin qi licos qi sin qi cos qi lisin qi for i = 3, 2, 1: 0T3 = 0T1 1T2 2T3 = eq 5.63: X = l1cos(q1) + l2cos(q1 + q2) + l3cos(q1 + q2 + q3) [eq5.65] Y = l1sin(q1) + l2sin(q1 + q2) + l3sin(q1 + q2 + q3) [eq5.66] cos(q1 + q2 + q3) sin(q1 + q2 + q3) r14 sin(q1 + q2 + q3) cos(q1 + q2 + q3) r24 The tip point of the robot is the origin of frame B3. The coordinates of the origin of B3 are (X, Y, 0) in the base Cartesian coordinate system. The X & Y (see fig) can be obtained from: 0T3 = 0T3 1 r14 = l1cos(q1) + l2cos(q1 + q2) + l3cos(q1 + q2 + q3) r24 = l1sin(q1) + l2sin(q1 + q2) + l3sin(q1 + q2 + q3)

12 Forward Kinematics for a 3R (R||R||R) Planar Manipulator (Cont’d)
Fig5.21 Having the transformation matrices i-1Ti are enough to determine the configuration of each link in other links’ frame. [eq 5.68] The configuration of the link (2) in (0) is : 0T2 = 0T1 1T2 = cos(q1 + q2) sin(q1 + q2) f14 sin(q1 + q2 ) cos(q1 + q2) f24 f14 = l1cos(q1) + l2cos(q1 + q2) f24 = l1sin(q1) + l2sin(q1 + q2) [eq 5.69] and the configuration of the link (3) in (1) is: The angle between the horizontal and axis x3 is q1 + q2 + q3. Therefore, since angle j is between the horizontal and the perpendicular to x3: j = p/2 – (q1 + q2 + q3) 1T3 = 1T2 2T3 = cos(q2 + q3) sin(q2 + q3) g14 sin(q2 + q3) cos(q2 + q3) g24 g14 = l2cos(q2) + l3cos(q2 + q3) g24 = l2sin(q2) + l3sin(q2 + q3)

13 Forward Kinematics for a 3R (R Ⱶ R||R) Planar Manipulator
Fig 5.22 & Tables 5.7 & 5.8 & eqs The table on the left below is the robot DH parameters. The table on the right shows the type of link-joints combination for this robot. The rest position of the robot could be set at any configuration where the joint axes z1, z2, z3 are coplanar. On this, two positions are mostly being used. The first position is where x1 is coplanar with z1, z2, z3 , and the second position is where x0 is coplanar with z1, z2, z3. Frame No. ai di qi 1 -90 deg d1 q1 2 l2 d2 q2 3 90 deg l3 q3 Link No. Type 1 R Ⱶ R (-90) 2 R||R(0) 3 R Ⱶ R (90) The complete transformation 0T3 = 0T1 1T2 2T3 [eq 5.73] is obtained from the expression below [ & 5.74] To solve this system of equations an equation solver is needed! (see next slide) cos q sin q1 0 sin q cos q1 0 d1 cos q sin q sin q cos q3 0 r11 r r13 r14 r21 r r23 r24 r31 r r33 r34 cos q2 -sin q2 0 l2cos q2 sin q2 cos q l2sin q2 d2 0T3 = =

14 Forward Kinematics for a 3R (R Ⱶ R||R) Planar Manipulator
Fig 5.22 & eqs & Table After the product is done, we use an equation solver and the equation below yields the following solution [eqs ]: r11 = cos q1 cos(q2 + q3) r13 = cos q1 sin(q2 + q3) r21 = sin q1 cos(q2 + q3) r23 = sin q1 sin (q2 + q3) r31 = -sin(q2 + q3) r33 = cos(q2 + q3) r12 = -sin q1 r14 = l2 cos q1cos q2 – d2 sin q1 r22 = cos q1 r24 = l2 cos q2 sin q1 + d2 cosq1 r32 = 0 r34 = d1 – l2 sin q2 The tip point P of the third arm is at P (0 0 l3) in B3. So its position in the base frame would be at 0rP = 0T3 3rP => is = r11 r r13 r14 r21 r r23 r24 r31 r r33 r34 l3 1 l3r r14 l3r r24 l3r r34 eq 5.88 0rP = 0T3 3rP = 0T3 [0 0 l3 1]t = The transformation matrix at rest position is 0T3 evaluated at q1 = q2 = q3 = 0 with a displacement d = [l2, d2, d1, 1]t which is: (0T3 )rest = I3X3 d4X1 01X3 11X1


Download ppt "Forward Kinematics: Denavit-Hartenberg (DH) Notation"

Similar presentations


Ads by Google