Vous êtes sur la page 1sur 4

ECE

5397/6397: Intro to Robotics


Class Worksheet – Lecture 5: Forward kinematics: Denavit-Hartenberg convention and the
derivation of D-H transformation matrix, assigning link frames using the DH convention.

Constraints on 𝑅 ∈ 𝑆𝑂(3), 𝑟+, = 𝑟./0,1/2345 How many DOF?

𝐴+ = 𝑅𝑜𝑡9,:; 𝑇𝑟𝑎𝑛𝑠9,@; 𝑇𝑟𝑎𝑛𝑠A,B; 𝑅𝑜𝑡A,C;
𝑐:; −𝑠:; 0 0 1 0 0 0
𝑠 𝑐 0 0 0 1 0 0
𝑅𝑜𝑡A,C; = D ;: :; I 𝑇𝑟𝑎𝑛𝑠9,@; = D I
0 0 1 0 0 0 1 𝑑+
0 0 0 1 0 0 0 1
1 0 0 𝑎+ 1 0 0 0
0 1 0 0 0 𝑐C; −𝑠 C; 0
𝑇𝑟𝑎𝑛𝑠A,B; = D I 𝑅𝑜𝑡A,C; = D I
0 0 1 0 0 𝑠C; 𝑐C; 0
0 0 0 1 0 0 0 1
𝑐:; −𝑠:; 0 0 1 0 0 0 1 0 0 𝑎+ 1 0 0 0
𝑠 𝑐:; 0 0I D0 1 0 0 I D0 1 0 0 I D 0 𝑐 C; −𝑠 C; 0
𝐴+ = D :; I
0 0 1 0 0 0 1 𝑑+ 0 0 1 0 0 𝑠C; 𝑐C; 0
0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1
𝑐:; −𝑠:; 𝑐C; 𝑠:; 𝑠C; 𝑎+ 𝑐:;
𝑠: 𝑐:; 𝑐C; −𝑐:; 𝑠C; 𝑎+ 𝑠:;
𝐴+ = D ; I
0 𝑠C; 𝑐C; 𝑑+
0 0 0 1

DH1: The axis 𝑥L is perpendicular to the axis 𝑧N
DH2: The axis 𝑥L intersects the axis 𝑧N

Step 1: locate and label the joint axis 𝑧N , … , 𝑧5PL
Step 2: Establish the base frame. Set the origin anywhere on the 𝑧N -axis. The 𝑥N and 𝑦N axes are
chosen conveniently to form a right-handed frame.

For 𝑖 = 1, … , 𝑛 − 1 perform steps 3 to 5:
Step 3: Locate the origin 𝑜+ where the common normal to 𝑧+ and 𝑧+PL intersects 𝑧+ . If 𝑧+
intersects 𝑧+PL , locate 𝑜+ at this intersection. If 𝑧+ and 𝑧+PL are parallel, locate 𝑜+ in any
convenient position along 𝑧+ .
Step 4: Establish 𝑥+ along the common normal between 𝑧+PL and 𝑧+ through 𝑜+ ,
or in the direction normal to the 𝑧+PL − 𝑧+ plane if 𝑧+PL and 𝑧+ intersect.
Step 5: Establish 𝑦+ to complete a right-handed frame
Step 6: Establish the end-effector frame 𝑜5 𝑥5 𝑦5 𝑧5 . Assume the 𝑛TU joint is revolute, set 𝑧5 = 𝑎
parallel to 𝑧5PL . Establish the origin 𝑜5 conveniently along 𝑧5 , preferably at the center of the
gripper or at the tip of any tool that the manipulator may be carrying. Set 𝑦5 = 𝑠 in the direction of
the gripper closure and set 𝑥5 = 𝑛 as 𝑠 × 𝑎. If the tool is not a simple gripper, set 𝑥5 and 𝑦5
conveniently to form a right-handed frame
Step 7: Create a table of DH parameters 𝑟+ , 𝑑+ , 𝛼+ , 𝜃+ .
𝑟+ = distance along 𝑥+ from the intersection of the 𝑥+ and 𝑧+PL axes to 𝑜+
𝑑+ = distance along 𝑧+PL from 𝑜+PL to the intersection of the 𝑥+ and 𝑧+PL axes.
If joint 𝑖 is prismatic, 𝑑+ is variable.
𝛼+ = angle from 𝑧+PL to 𝑧+ measured about 𝑥+
𝜃+ = angle from 𝑥+PL to 𝑥+ measured about 𝑧+PL . If joint 𝑖 is revolute, 𝜃+ is variable.
Step 8: Form the homogenous transformation matrices 𝐴+ , by substituting the above parameters
into 𝐴+ = 𝑅𝑜𝑡9,:; 𝑇𝑟𝑎𝑛𝑠9,@; 𝑇𝑟𝑎𝑛𝑠A,.; 𝑅𝑜𝑡A,C;
Step 9: Form 𝑇5N = 𝐴L … 𝐴5 . This then fixes the position and orientation of the tool frame expressed
in base coordinates.
Page 1 of 4








* indicates variable
Link 𝑟+ 𝛼+ 𝑑+ 𝜃+

1 𝑟L 0 0 𝜃L∗
2 𝑟Z 0 0 𝜃Z∗






* indicates variable

Link 𝑟+ 𝛼+ 𝑑+ 𝜃+
1 𝑟L 0 0 𝜃L∗
2 𝑟Z 0 0 𝜃Z∗
3 𝑟[ 0 0 𝜃[∗








* indicates variable
Link 𝑟+ 𝛼+ 𝑑+ 𝜃+
1 0 0 𝑑L 𝜃L∗
2
3
0 −90° 𝑑Z∗
0 0 𝑑[∗
0
0

Page 2 of 4


ECE 5397/6397: Intro to Robotics
Class Worksheet – Preparation for Lecture 6
For each: draw the coordinate frames, determine the DH parameters, and give the
transformation matrix Ai and T * indicates variable
Link 𝑟+ 𝛼+ 𝑑+ 𝜃+

1 𝑟L 𝜋/2 0 𝜃L∗
2 0 0 𝑑Z∗ 0
𝑐L 0 𝑠L 𝑟L 𝑐L 1 0 0 0
𝑠L 0 −𝑐L 𝑟L 𝑠L 0 1 0 0
𝐴L = D I 𝐴Z = D I
0 𝑠L 𝑐L 0 0 0 1 𝑑Z
0 0 0 1 0 0 0 1
𝑐L 0 𝑠L 𝑟L 𝑐L + 𝑑Z 𝑠L
𝑠 0 −𝑐L 𝑟L 𝑠L − 𝑑Z 𝑐L I
𝑇ZN = 𝐴L 𝐴Z = D L
0 𝑠L 𝑐L 0

0 0 0 1

* indicates variable
Link 𝑟+ 𝛼+ 𝑑+ 𝜃+

1 0 90° 𝑑L 𝜃 L
2 𝑟Z 0 0 𝜃Z∗
3 𝑟[ 0 0 𝜃[∗
𝑐L 0 𝑠L 0 𝑐Z −𝑠Z 0 𝑟Z 𝑐Z
𝑠 0 −𝑐L 0 𝑠 𝑐Z 0 𝑟Z 𝑠Z
𝐴L = D L I,𝐴 = D Z I
0 1 0 𝑑L Z 0 0 1 0
0 0 0 1 0 0 0 1
𝑐[ −𝑠[ 0 𝑟[ 𝑐[
𝑠 𝑐[ 0 𝑟[ 𝑠[
𝐴[ = D [ I
0 0 1 0
0 0 0 1
𝑐L 𝑐Z[ −𝑐L 𝑠Z[ 𝑠L 𝑐L (𝑟Z 𝑐Z +𝑟[ 𝑐Z[ )
𝑠 𝑐 −𝑠L 𝑠Z[ −𝑐L 𝑠L (𝑟Z 𝑐Z +𝑟[ 𝑐Z[ )
𝑇[N = D L Z[ I
𝑠Z[ 𝑐Z[ 0 𝑑L + 𝑟Z 𝑠Z + 𝑟[ 𝑠Z[
0 0 0 1
Link 𝑟+ 𝛼+ 𝑑+ 𝜃+
1 0 90° 0 𝜃L∗
2 0 -90° 𝑑Z∗ 0
3 𝑟[ 0 0 𝜃[∗

𝑐L 0 𝑠L 0 1 0 0 0 𝑐3 −𝑠3 0 𝑟3 𝑐3
I 𝐴 = D𝑠3 𝑐3 0 𝑟3 𝑠3 I
𝑠 0 −𝑐L 0I,𝐴 0 0 1 0
𝐴L = D L = D
0 1 0 0 Z 0 −1 0 𝑑Z 3 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1
𝑐L[ −𝑠L[ 0 𝑑Z 𝑠L + 𝑟[ 𝑐L[
𝑠 𝑐L[ 0 −𝑑Z 𝑐L + 𝑟[ 𝑠L[ I
𝑇ZN = 𝐴L 𝐴Z = D L[
𝑠Z[ 𝑐Z[ 1 0

0 0 0 1




Page 3 of 4


2.) Try the demo at
http://demonstrations.wolfram.com/DenavitHartenbergParametersForAThreeLinkRobot/ Set the DH
parameters to match the three robots shown above and attach a screenshot of each



Page 4 of 4

Vous aimerez peut-être aussi