Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Robot Dynamics and Control (EE430):

Unit-2 Forward Kinematics:


2.1 DH-Convention
Krishnan C.M.C
Assistant Professor, E&E,
NITK Surathkal
2
What is Forward Kinematics?
𝐴4 𝑞4

𝑑4

𝜃3 (𝑥, 𝑦, 𝑧)
𝐽4
𝐽3 𝐿4
𝐿2 𝐿3
𝜃2 𝐴3 𝑞3
𝐽2
𝜃1
𝑥
𝜃2
𝐴2 𝑞2 Transformation 𝑦
𝜃3
𝑧
𝐿1 𝑑4 1
𝐴1 𝑞1 𝜃1 𝑞ത 𝑃ത
𝐽1
𝐿0
𝑃ത = 𝐴1 𝑞1 𝐴2 𝑞2 𝐴3 𝑞3 𝐴4 𝑞4
Kinematic chains

EE430, Dept. of E & E, NITK Surathkal


3
Calculation of A(q) matrix
Joint Variable
𝑜𝑖−1 𝑥𝑖−1 𝑦𝑖−1 𝑧𝑖−1 𝑞𝑖 (𝜃𝑖 or 𝑑𝑖 )
𝑜𝑖 𝑥𝑖 𝑦𝑖 𝑧𝑖
Joint
Link 𝑖 − 1
𝑖

𝑖
𝑇𝑖−1 = 𝐴𝑖 𝑞𝑖 𝑅 𝑖
= 𝑖−1 𝑑ҧ𝑖−1
𝑖

𝟎 1
Assumption is that a joint is 1-DOF joint

3 DOF ➔ 1 DOF + 1 DOF + 1


DOF which are coinciding !

EE430, Dept. of E & E, NITK Surathkal


4
Calculation of A(q) matrix
𝑃ത = 𝐴1 𝑞1 𝐴2 𝑞2 𝐴3 𝑞3 𝐴4 𝑞4
Kinematic chains

𝑗 𝑗
𝑇𝑖
𝑗
= 𝐴𝑖+1 𝑞𝑖+1 … 𝐴𝑗 𝑞𝑗 = 𝑅𝑖 𝑑ҧ𝑖
𝟎 1

Where
𝑗 𝑗
𝑅𝑖 = 𝑅𝑖𝑖+1 … 𝑅𝑗−1
And
𝑗 𝑗−1 𝑗−1 ҧ 𝑗
𝑑ҧ𝑖 = 𝑑ҧ𝑖 + 𝑅𝑖 𝑑𝑗−1 A recursive formula

EE430, Dept. of E & E, NITK Surathkal


5
Denavit- Hartenberg (DH) Representation
A convention which optimizes the variables from one frame to the other
6 Parameters

yaw Translation 𝑧1 4 Parameters


𝑧0
roll
pitch
𝑜1 𝑦1
𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖
𝑑ҧ01
𝑜0 𝑦0 𝑥1
Orientation 𝑥0

Done using a specific way of selecting the coordinate frames 𝑖 − 1 and 𝑖

Two conditions required:


(DH1): The axis 𝑥𝑖 is perpendicular to the axis 𝑧𝑖−1
(DH2): The axis 𝑥𝑖 intersects the axis 𝑧𝑖−1

Then there exists unique numbers 𝜃𝑖 , 𝑑𝑖 , 𝑎𝑖 and 𝛼𝑖 such that:


𝐴𝑖 = 𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖

EE430, Dept. of E & E, NITK Surathkal


6
DH Representation
Interpretation
Point of 𝛼𝑖 Length 𝑎𝑖 is the distance from the point of
𝑧𝑖 𝑦𝑖 intersection of 𝑧𝑖−1 & 𝑥𝑖 to 𝑜𝑖 measured
intersection
(DH2) along 𝑥𝑖 (+ve direction of 𝑥𝑖 )
Twist 𝛼𝑖 is the angle between 𝑧𝑖−1 & 𝑧𝑖 measured in
𝑜𝑖 𝑥
𝑖 a plane normal to 𝑥𝑖 (about 𝑥𝑖 )
𝑎𝑖
Offset 𝑑𝑖 is the distance from 𝑜𝑖−1 to the point of
intersection of 𝑧𝑖−1 & 𝑥𝑖 measured along
𝑧𝑖−1 𝑑𝑖 𝑧𝑖−1 (+ve direction of 𝑧𝑖−1 )
𝑦𝑖−1
Angle 𝜃𝑖 is the angle between 𝑥𝑖−1 & 𝑥𝑖 measured in
a plane normal to 𝑧𝑖−1 (about 𝑧𝑖−1 )
𝑜𝑖−1 𝜃𝑖
𝑥𝑖−1 𝑧𝑖−1 𝑧𝑖−1
How to 𝜃𝑖
Choose the direction of 𝑧𝑖−1 ? It is assigned in the direction of the DOF
𝑑𝑖
Choose the direction of 𝑥𝑖 ? As per DH1, two options will be available (±𝑖)Ƹ
Choose the location of 𝑜𝑖 ? Depends on 𝑧𝑖 &𝑧𝑖−1
• Coplanar (a) parallel OR (b) intersecting
• Not coplanar
Choose the direction of 𝑦𝑖 ? As per right-handed coordinate system
EE430, Dept. of E & E, NITK Surathkal
7
DH Representation
Choosing the origin 𝑜𝑖

Case II: When 𝑧𝑖−1 & 𝑧𝑖 are coplanar


and parallel

Case I: When 𝑧𝑖−1 & 𝑧𝑖 are not


coplanar

Case III: When 𝑧𝑖−1 & 𝑧𝑖 are coplanar and


intersecting
EE430, Dept. of E & E, NITK Surathkal
8
DH Representation
Choosing the origin 𝑜𝑖
Case I: When 𝑧𝑖−1 & 𝑧𝑖 are not coplanar

𝑧𝑖−1
𝑧𝑖−1
𝑧𝑖 𝛼𝑖 𝑦𝑖 Point of
intersection
𝑎𝑖 (DH2)

𝑦𝑖−1
𝑜𝑖 𝑥𝑖 𝑑𝑖
𝑥𝑖
𝑜𝑖−1 𝜃𝑖
𝑥𝑖−1

Points to note:
• There is a unique normal line intersecting both 𝑧𝑖 & 𝑧𝑖−1 .
• 𝑥𝑖 could be taken in the opposite direction. Then the value of 𝑎𝑖 ∈ ℝ− (-ve).
• In general, all four parameters 𝛼, 𝑎, 𝜃, 𝑑 will be non-zero.

EE430, Dept. of E & E, NITK Surathkal


9
DH Representation
Choosing the origin 𝑜𝑖

Case II: When 𝑧𝑖−1 & 𝑧𝑖 are coplanar and parallel

𝑧𝑖 𝛼𝑖 = 0
𝑦𝑖 Point of
intersection
𝑧𝑖−1 (DH2)
𝑎𝑖
Another possibility
for 𝑜𝑖 (here 𝑑𝑖 = 0) 𝑜𝑖 𝑦𝑖−1
𝑥𝑖 𝑑𝑖
𝑥𝑖
𝑜′𝑖 𝑜𝑖−1 𝜃𝑖
𝑥𝑖−1

Points to note:
• 𝑜𝑖 can be taken anywhere along 𝑧𝑖 !
• 𝑥𝑖 could be taken in the opposite direction. Then the value of 𝑎𝑖 ∈ ℝ− (-ve).
• Here there is no “twist” ➔ 𝛼𝑖 = 0.

EE430, Dept. of E & E, NITK Surathkal


10
DH Representation
Choosing the origin 𝑜𝑖

Case III: When 𝑧𝑖−1 & 𝑧𝑖 are coplanar and intersecting


𝛼𝑖
Point of
𝑧𝑖 𝑦𝑖
intersection
(DH2) 𝑜𝑖 𝑥𝑖 (normal to the plane of the paper towards you)

𝑧𝑖−1 𝑎𝑖 = 0
𝑑𝑖
𝑦𝑖−1

𝑥𝑖
𝑜𝑖−1 𝜃𝑖
𝑥𝑖−1

Points to note:
• 𝑜𝑖 is chosen as the intersection point of 𝑧𝑖 & 𝑧𝑖−1 .
• 𝑥𝑖 could be taken in the opposite direction (into the paper).
• Here there is no “length” parameter ➔ 𝑎𝑖 = 0.

EE430, Dept. of E & E, NITK Surathkal


11
DH Representation:Example-1
𝑦2
Two link RR manipulator (planar) 𝑥2
𝜃2
𝑜2
𝑎2
𝑦1 𝑧2

𝑦0 𝑎1 𝑥1 Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
𝜃1
𝑜1
1 𝒂𝟏 𝟎 𝟎 𝜽𝟏∗
𝑜0 𝑧1
𝑥0 2 𝒂𝟐 𝟎 𝟎 𝜽∗ 𝟐
𝑧0
∗ variable
𝐴1 = 𝑇01 = 𝑅𝑜𝑡𝑧,𝜃1 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎1
𝑐1 −𝑠1 0 0 1 0 0 𝑎1 𝑐1 −𝑠1 0 𝑎1 𝑐1
= 𝑠1 𝑐1 0 0 0 1 0 0
= 𝑠1 𝑐1 0 𝑎1 𝑠1
0 0 1 0 0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1 0 0 0 1

EE430, Dept. of E & E, NITK Surathkal


𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖
12
DH Representation:Example-1
Two link RR manipulator (planar) Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
1 𝒂𝟏 𝟎 𝟎 𝜽𝟏∗
2 𝒂𝟐 𝟎 𝟎 𝜽∗ 𝟐
∗ variable
𝑐1 −𝑠1 0 𝑎1 𝑐1 𝑐2 −𝑠2 0 𝑎2 𝑐2
𝑠1 𝑐1 0 𝑎1 𝑠1 𝑎2 𝑠2
𝐴1 = 𝑇01 𝐴2 = 𝑇12 = 𝑠2 𝑐2 0
0 0 1 0 0 0 1 0
0 0 0 1 0 0 0 1

𝑐12 −𝑠12 0 𝑎1 𝑐1 + 𝑎2 𝑐12


𝑎1 𝑠1 + 𝑎2 𝑠12
𝐴 = 𝑇02 = 𝑠12 𝑐12 0
0 0 1 0
0 0 0 1

Note: 𝑐12 represents cos 𝜃1 + 𝜃2


EE430, Dept. of E & E, NITK Surathkal
𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖
13
DH Representation:Example-2
Three link Cylindrical Robot
𝑧1 &𝑧2 coincides, hence 3rd frame is
𝑜2 is placed here arbitrarily placed
−90
𝑧2 𝑜3 𝑧3
𝑜2
Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊

𝒅𝟏 𝜽𝟏∗
𝑑3 𝑥3 𝑦3 1
𝑥2 𝟎 𝟎
𝑧1 𝑦2 𝑑
𝒅𝟐∗ 𝟎
𝑧0 &𝑧1 coincides, hence 2
2 𝑜1 is placed here 𝟎 −𝟗𝟎
𝑜1 𝑦1
3 𝟎 𝟎 𝒅𝟑∗ 𝟎
∗ variable
𝜃1 Calculation of 𝛼1
𝑥1 𝑧0 𝑧1
𝑑1
−90

𝑦0 𝑧2
arbitrary 𝑥2 270
𝑜0

𝑥0
EE430, Dept. of E & E, NITK Surathkal
𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖
14
DH Representation:Example-2
Three link Cylindrical Robot
Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
1 𝜽𝟏 ∗
𝑐1 −𝑠1 0 0 𝟎 𝟎 𝒅𝟏
0
𝐴1 = 𝑠1 𝑐1 0 2 ∗
𝑑1 𝟎 −𝟗𝟎 𝒅𝟐 𝟎
0 0 1
0 0 0 1 3 ∗
𝟎 𝟎 𝒅𝟑 𝟎

1 0 0 0 1 0 0 0
0 0
𝐴2 = 0 0 1 𝐴3 = 0 1 0
0 −1 0 𝑑2 0 0 1 𝑑3
0 0 0 1 0 0 0 1

𝑐1 0 −𝑠1 −𝑠1 𝑑3
𝑐1 𝑑3
𝑇03 = 𝑠1 0 𝑐1
0 −1 0 𝑑1 + 𝑑2
0 0 0 1

EE430, Dept. of E & E, NITK Surathkal


𝑅𝑜𝑡𝑧,𝜃𝑖 𝑇𝑟𝑎𝑛𝑠𝑧,𝑑𝑖 𝑇𝑟𝑎𝑛𝑠𝑥,𝑎𝑖 𝑅𝑜𝑡𝑥,𝛼𝑖
15
DH Representation:Example-3
Spherical Wrist

Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
𝑧0 𝑥2
𝜽𝟏∗
𝑑3 1 𝟎 −𝟗𝟎 𝟎
𝑥1
𝑥0 𝑜 𝑧2 𝑜3 𝑧3
2
𝟎 𝟗𝟎 𝟎 𝜽∗
𝟐
𝜽∗𝟑
𝑧1 𝑦2 𝑦3
𝑦0 𝑦1
3 𝟎 𝟎 𝒅𝟑
𝑥3
∗ variable
• 𝑜0 , 𝑜1 &𝑜2 is located at 𝑜 since 𝑧0 , 𝑧1 & 𝑧2 intersect.

𝑐1 𝑐2 𝑐3 − 𝑠1 𝑠3 −𝑐1 𝑐2 𝑠3 − 𝑠1 𝑐3 𝑐1 𝑠2 𝑐1 𝑠2 𝑑3
𝑠 𝑐 𝑐3 + 𝑐1 𝑠3 −𝑠1 𝑐2 𝑠3 + 𝑐1 𝑐3 𝑠1 𝑠2 𝑠1 𝑠2 𝑑3
𝑇03 = 1 2−𝑠
2 𝑐3 𝑠2 𝑠3 𝑐2 𝑐2 𝑑3
0 0 0 1

Home Work: find 𝑇03 and check the part 𝑅03 and compare it with the Euler Angle
representation and verify that 𝜃1 , 𝜃2 &𝜃3 can be compared with 𝜙, 𝜃& 𝜓.
EE430, Dept. of E & E, NITK Surathkal
16
DH Representation:Example-4
Stanford Manipulator (RRP with a spherical wrist)
𝑧6
𝑜6
𝑥6 Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
Spherical 𝑑6
3 DOF
joint
1 𝟎 −𝟗𝟎 𝟎 𝜽𝟏∗
𝑧3 , 𝑧5
𝑜3 , 𝑜4 , 𝑜5
2
𝟎 𝟗𝟎 𝒅𝟐 𝜽∗
𝟐

𝑧4
3 𝟎 𝟎 𝒅𝟑∗ 𝟎
𝑥3 4 𝟎 −𝟗𝟎 𝟎 𝜽𝟒 ∗
𝑦1 𝑧0 𝑧2
𝑑3 5 𝟎 𝟗𝟎 𝟎 𝜽∗
𝟓
𝑑2
6 𝟎 𝟎 𝒅𝟔 𝜽∗𝟔
𝑜0 𝑧1 𝑦2
𝑥0 ∗ variable
𝑜1 𝑜2
𝑦0
𝑥1 𝑥2

EE430, Dept. of E & E, NITK Surathkal


17
DH Representation:Example-5
SCARA Manipulator (RRP with a 1 DOF wrist)

Link 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊

𝑧0 𝑧1
1 𝒂𝟏 𝟎 𝟎 𝜽𝟏∗
𝑎1 𝑎2 2
𝒂𝟐 𝟏𝟖𝟎 𝟎 𝜽∗
𝟐
𝑜0 𝑥0 𝑥1 𝑥2
𝑜2 3 𝟎 𝟎 𝒅𝟑∗ 𝟎
𝑜1
𝑧2 𝑑 ∗
4 𝟎 𝟎 𝒅𝟒 𝜽𝟒 ∗
3

𝑜3
∗ variable
𝑑4 𝑥3
𝑜4
𝑧3 , 𝑧4 𝑥4

EE430, Dept. of E & E, NITK Surathkal

You might also like