Lecture 1

advertisement
1/26
Kinematic Modelling in Robotics
dr Dragan Kostić
WTB Dynamics and Control
October 22th, 2010
5HC99 lecture 1
2/26
Outline
• Representing rotations and rotational transformations
• Parameterization of rotations
• Rigid motions and homogenous transformations
• DH convention for modeling of robot kinematics
• Forward kinematics
• Case-study: kinematics of RRR-arm
5HC99 lecture 1
3/26
Representing rotations in coordinate frame 0
•
Rotation matrix
•
xi and yi are the unit vectors in oixiyi
5HC99 lecture 1
4/26
Representing rotations in coordinate frame 1
5HC99 lecture 1
5/26
Representing rotations in 3D
(1/4)
Each axis of the frame o1x1y1z1 is projected onto o0x0y0z0:
R10  SO(3)
5HC99 lecture 1
6/26
Representing rotations in 3D
(2/4)
Example: Frame o1x1y1z1 is obtained from frame o0x0y0z0
by rotation through an angle  about z0 axis.
all other dot products are zero
5HC99 lecture 1
7/26
Representing rotations in 3D
Basic rotation matrix about z-axis
5HC99 lecture 1
(3/4)
8/26
Representing rotations in
3D (4/4)
Similarly, basic rotation matrices about x- and y-axes:
5HC99 lecture 1
9/26
Rotational transformations
pi: coordinates of p in oixiyizi
5HC99 lecture 1
10/26
Parameterization of rotations (1/2)
Euler angles
ZYZEuler angle transformation:
5HC99 lecture 1
11/26
Parameterization of rotations (2/2)
Roll, pitch, yaw angles
XYZyaw-pitch-roll angle transformation:
5HC99 lecture 1
12/26
Rigid motions
5HC99 lecture 1
13/26
Homogenous transformations (1/2)
• We have
• Note that
• Consequently, rigid motion (d, R) can be described by matrix
representing homogenous transformation:
5HC99 lecture 1
14/26
Homogenous transformations (2/2)
• Since R is orthogonal, we have
• We augment vectors p0 and p1 to get their homogenous
representations
and achieve matrix representation of coordinate transformation
5HC99 lecture 1
15/26
Basic homogenous transformations
5HC99 lecture 1
16/26
Conventions (1/2)
1. there are n joints and hence
n + 1 links; joints 1, 2, , n;
links 0, 1, , n,
2. joint i connects link i − 1
to link i,
3. actuation of joint i
causes link i to move,
4. link 0 (the base) is fixed
and does not move,
5. each joint has a single
degree-of-freedom (dof):
5HC99 lecture 1
17/26
Conventions (2/2)
6. frame oixiyizi is attached to
link i; regardless of motion of
the robot, coordinates of each
point on link i are constant
when expressed in frame
oixiyizi,
7. when joint i is actuated, link i
and its attached frame oixiyizi
experience resulting motion.
5HC99 lecture 1
18/26
DH convention for homogenous transformations
Position and orientation of coordinate frame i with respect to
frame i-1 is specified by homogenous transformation matrix:
xn
q0
z0
qi+1
zn
qi
‘0’
‘n’ yn
y0
i
zi
a
i
x0
x
i
di
where
5HC99 lecture 1
zi-1
qi
xi-1
19/26
Physical meaning of DH parameters
• Link length ai is distance from zi-1 to
zi measured along xi.
z
0
• Link twist i is angle between zi-1
and zi measured in plane normal ‘0’
y0
x0
to xi (right-hand rule).
• Link offset di is distance from origin
of frame i-1 to the intersection xi
with zi-1, measured along zi-1.
• Joint angle i is angle from xi-1 to xi
measured in plane normal to zi-1
(right-hand rule).
5HC99 lecture 1
xn
q0
qi+1
qi
i
ai
di
zi-1
qi
xi-1
zi
xi
zn
‘n’ yn
20/26
DH convention to assign coordinate frames
1. Assign zi to be the axis of actuation for joint i+1 (unless otherwise stated zn
coincides with zn-1).
2. Choose x0 and y0 so that the base frame is right-handed.
3. Iterative procedure for choosing oixiyizi depending on oi-1xi-1yi-1zi-1 (i=1, 2, , n-1):
a) zi−1 and zi are not coplanar; there is an unique shortest line segment from zi−1 to
zi, perpendicular to both; this line segment defines xi and the point where the
line intersects zi is the origin oi; choose yi to form a right-handed frame,
b) zi−1 is parallel to zi; there are infinitely many common normals; choose xi as
the normal passes through oi−1; choose oi as the point at which this normal
intersects zi; choose yi to form a right-handed frame,
c) zi−1 intersects zi; axis xi is chosen normal to the plane formed by zi and zi−1;
it’s positive direction is arbitrary; the most natural choice of oi is the
intersection of zi and zi−1, however, any point along the zi suffices;
choose yi to form a right-handed frame.
5HC99 lecture 1
21/26
Forward kinematics (1/2)
Homogenous transformation matrix relating the frame oixiyizi to
oi-1xi-1yi-1zi-1:
Ai specifies position and orientation of oixiyizi w.r.t. oi-1xi-1yi-1zi-1.
Homogenous transformation matrix Tji expresses position and
orientation of ojxjyjzj with respect to oixiyizi:
i
j
T  Ai  1 Ai  2  A j 1 A j
5HC99 lecture 1
22/26
Forward kinematics (2/2)
Forward kinematics of a serial manipulator with n joints can be
represented by homogenous transformation matrix Hn0 which
defines position and orientation of the end-effector’s (tip)
frame onxnynzn relative to the base coordinate frame o0x0y0z0:
H n ( q )  T n ( q )  A1 ( q1 )    An ( q n ),
0
0
0

R
(q )
0
n
H n (q )  
 0 1 3
5HC99 lecture 1
0 1 3  0
0
q  q 1

0 ;
xn (q )

1 
0
qn 
T
23/26
Case-study: RRR robot manipulator
d3
y3
x2
y1
d1
z0
elb o w
q2
sh o u ld er
y0
q1
w aist
5HC99 lecture 1
-q 3
x1
1
x0
z3
y2
d2
z1
x3
a3
z2
a2
 1 - tw ist an gle
a i - link len g h ts
d i - link offsets
q i - disp lacem en ts
24/26
DH parameters of RRR robot manipulator
5HC99 lecture 1
25/26
Forward kinematics of RRR robot manipulator (1/2)
Coordinate frame o3x3y3z3 is related with the base frame o0x0y0z0 via
homogenous transformation matrix:
T 3 (q)  A 1 (q)A
0
2
(q)A 3 (q) 
 R 03 (q)
 
 0 1 3
0
x 3 (q) 

1 
where
0
x 3 (q )  [ x
T
q  [ q1 q 2 q 3 ]
01 3  [ 0
5HC99 lecture 1
0
0]
y
T
z]
26/26
Forward kinematics of RRR robot manipulator (2/2)
Position of end-effector:
x  cos q1 a 3 cos( q 2  q 3 )  a 2 cos q 2   ( d 2  d 3 )sin q1
,
y  sin q1 a 3 cos( q 2  q 3 )  a 2 cos q 2   ( d 2  d 3 )cos q1
,
z  a 3 sin( q 2  q 3 )  a 2 sin q 2  d 1
Orientation of end-effector:
 cos q1cos( q 2  q 3 )
0

R 3  sin q1cos( q 2  q 3 )

 sin( q 2  q 3 )
5HC99 lecture 1
 cos q1sin( q 2  q 3 )
 sin q1sin( q 2  q 3 )
cos( q 2  q 3 )
sin q1 

 cos q1

0

Download