Você está na página 1de 10

Denavit-Hartenberg

Introduction to Robotics
Tutorials 1-3
Technion, cs department, Introduction to Robotics 236927 Winter 2010-2011

Specialized description of articulated


figures

Reminder

Each joint has only one degree of


freedom

rotate around its z-axis translate along its z-axis


http://www.cs.duke.edu/brd/Teaching/Bio/asmb/current/Papers/chap3-forward-kinematics.pdf http://www.youtube.com/watch?v=rA9tm0gTln8

Link offset di The distance between the origins of the coordinate frames attached to jointi and jointi+1 Measured along the axis of jointi

Denavit-Hartenberg

Link rotation (joint angle) i (In the movie - ) The angle between the link lenghts i-1 and i Angle around zi-axis

Denavit-Hartenberg

Denavit-Hartenberg

Link length ai (In the movie - r) The perpendicular distance between the axes of jointi and jointi+1

Link twist i The angle between the axes of jointi and jointi+1 Angle around xi-axis

Denavit-Hartenberg

Denavit-Hartenberg
1.Compute the link vector ai and the link length 2.Attach coordinate frames to the joint axes 3.Compute the link twist i 4.Compute the link offset di 5.Compute the joint angle i 6.Compute the transformation (i-1)Ti which transforms entities from linki to linki-1

Denavit-Hartenberg
This transformation is done in several steps :

Rotate the link twist angle i around the axis xi Translate the link length ai along the axis xi Translate the link offset di along the axis zi Rotate the joint angle i around the axis zi
( i 1 )
i

- 2 Special Cases -

T = R zi ( i )T zi (d i )T xi (a i )R xi ( i )
8

Denavit-Hartenberg
( i 1 )
i

Denavit-Hartenberg
( i 1 )
i

T = R zi ( i )T zi (d i )T xi (a i )R xi ( i )
0 cos i sin i 0 0 sin i cos i 0 0 0 0 1

T = R zi ( i )T zi (d i )T xi (a i )R xi ( i )

1 0 R xi ( i ) = 0 0

1 0 T xi (a i ) = 0 0

0 1 0 0

0 0 1 0

ai 0 0 1

Multiplying the matrices :


cos i sin i (i 1 ) iT = 0 0 sin i cos i cos i cos i sin i 0 sin i sin i cos i sin i cos i 0 a i cos i a i sin i di 1

cos i sin i R zi ( i ) = 0 0

sin i cos i 0 0

0 0 1 0

0 0 0 1

1 0 T zi (d i ) = 0 0

0 1 0 0

0 0 1 0

0 0 di 1

In DH only and d are allowed to change. 9 10

End effector

End effector - the last coordinate system of figure Located in joint N. But usually, we want to specify it in base coordinates.

End effector
A transformation from the link N to the base :

11

12

End effector

We can also express it as

End effector

The origin of a coordinate frame relative to some base coordinate frame is specified by the translation :

three rotations (around each of the coordinate axes) followed by a translation

How can we establish a relation with the other expression ?

13

14

End effector

Any 3D orientation relative to some base coordinate frame can be specified by : three rotations, one around each of the coordinate axes.

End effector

We do them in this order : around x, y, z.

15

16

End effector

Orientation

End effector

Finally, the transformation from a coordinate frame to the base frame is expressed :

The roll, pitch and yaw transformation is then expressed :

17

18

End effector

End effector
We can obtain the yaw angle :

We obtain directly the translation vector :

Because :

arctan is -periodic. Lets use our function arctan2 to get the right angle.

19

20

End effector
Knowing the yaw angle, we can obtain the pitch angle :
Because :

End effector
We can obtain the roll angle :
Because :

Again, lets use our function arctan2 :

Again, lets use our function arctan2 :

21

22

End effector
Lets define the state vector

End effector
As previously shown,

The state vector is composed of elements of this matrix. Its also a function of joint parameters :

23

24

DH Example - 3 revolute joints


Shown in home position
joint 1

DH Example - 3 revolute joints


Shown with joints in non-zero positions
Z0 x3 2 x2 Z2 3 z3

R
Link 1 joint 2

Link 2 Link 3 joint 3

x0 Z1

x1

L1

L2 25

Observe that frame i moves with link i

26
1.Compute the link vector ai and the link length 2. Attach coordinate frames to the joint axes 3.Compute the link twist i 4.Compute the link offset di 5.Compute the joint angle i 6.Compute the transformation (i-1)Ti

1.Compute the link vector ai and the link length 2. Attach coordinate frames to the joint axes 3.Compute the link twist i 4.Compute the link offset di 5.Compute the joint angle i 6.Compute the transformation (i-1)Ti

joint 1

R
Link 1 joint 2

Link 2 Link 3 joint 3

cos i sin i (i 1 ) iT = 0 0

sin i cos i cos i cos i sin i 0

sin i sin i cos i sin i cos i 0

a i cos i a i sin i di 1

L1

L2

27

28

DH Example

Example the Stanford Arm

where

29

30

Example the Stanford Arm


Z7 X7 X6 Z6 Z5 X4 Z4

Pinhole Camera
Z2

X3

i 1 2 3 4 5 6

ai

di

i
X5 X2 Z1 Z3 d2 d1

d3

d dy

dy = d tan y
Y1

X1

dx = d tan x
31 32

Imaging
x y z 0
y3 z3

Imaging
x y x3 z 3
Z0 2 1 Z1 x1 Z2 x2 3 z3 x3

x y z 0

Given a point. What is its image? (dx,dy) Solution: Convert the points coordinates to the
camera coordinate system.
N 0 0 T = (N T) 1

Derive and Calculate dx and dy.


x y

x x 3 y = T y 0 z 3 z 0 z tan ( x ) = 3 x3 dx = d tan ( x ) = d

x0

tan ( y ) = z3 x3

y3 x3 y3 x3

dy = d tan ( y ) = d

33

34

Imaging Example
Let,
1 = 90o
R=0 d =1

Imaging Example

2 = 45o
L1 = 10

3 = 90o
L2 = 0

What is the location of the end effector? Draw the image of the box with
coordinates [ p1 ]0 = (0,18,0) [ p3 ]0 = (5,18,5)

where

[ p2 ]0 = (5,18,0) [ p4 ]0 = (0,18,5)

1 = 90o
35
R=0

2 = 45o
L1 = 10

3 = 90o
L2 = 0

36

Imaging Example
0 1 3 0 0T = ( 3T ) = 0 1 0 2 2 2 2 0 0 2 2 2 2 0 0 0 10 0 1

37

Você também pode gostar