Java Python Department of Mechanical and Aerospace Engineering
MEC5156 Robotics
DH Notation
Assigning DH parameters follows a strict set of rules to reduce the chance of ambiguity in your frame assignments. A summary of this process is as follows, referenced to Introduction to Robotics: Mechanics and Control by J. Craig.
Note: i is the frame number, where i = 0 is the base frame. In assigning DH parameters, we always work from frame 1 (i = 1), not from the base frame. N is the number of links.
1. Draw a rough sketch of the manipulator under analysis.
2. Define the locations of all Z^ axes from frames 1 to N. If the base frame {0} is not defined,
do not define ithere.
3. Link allZ(^) axes as follows:
(a) Identify and mark where any Z^i and Z^i+1 axes intersect, or if they don't intersect,
(b) Draw a common perpendicular line between the two Z^ axes. Identify and mark
where these perpendicular lines intersect on both Z^ axes.
4. For eachZ(^)i axis from frame 1 toN, assign the origin of frame i to an identified point on the axis. That is either,
(a) Where your current Z^i axis intersects with the next Z^i+1 axis, or
(b) Where your Z^i axis meets the common perpendicular line to the next Z^i+1 axis.
5. Assign the X^ axis for each frame. The following rules apply:
(a) At frame i, if the current Z^i axis and next Z MEC5156 RoboticsPython ^i+1 intersect, the X^i axis must point normal to the plane containing the two Z^ axes, or
(b) If there is a common perpendicular line to Z^i+1 , the X^i axis is coincident with this line.
6. Assign the remaining Y^ axis to each frame for completion.
7. Assign the base frame {0} to be coincident with frame {1} if the base frame has not been arbitrarily defined. This is done so that moving from frame {0} to {1} is pure rotation or translation with no other offsets.
8. Fill out the rows of the DH table as follows. Starting from frame {1} (i = 1):
• ai一1=the distance from Z^i一1 to Z^i measured along X^i一1 ;
• αi一1=the angle from Z^i一1 to Z^i measured about X^i一1 ;
• di=the distance from X^i一1 to X^i measured along Z^i ;
• θi =the angle from X^i一1 to X^i measured about Z^i.
9. Use equation below to convert DH parameters into a transformation matrix, starting with i = 1.
The short-handed notation used is as follows:
Sinθi = Si
CoS θi = Ci
The following trigonometry identities were used to simplify answers:
cos(θ1 + θ2) = C12 = C1 C2 — S1S2, sin(θ1 + θ2) = S12 = C1S2 + S1C2
cos(θ1 — θ2) = C1 C2 + S1S2, sin(θ1 — θ2) = S1 C2 — C1S2
Note: There is no short-handed notation for subtracted parameters inside sine or cosine