Вы находитесь на странице: 1из 57

1

Robot
Coordinates

Fig. 1.4

 Cartesian/rectangular/gantry (3P) : 3 cylinders joint


 Cylindrical (R2P) : 2 Prismatic joint and 1 revolute joint
 Spherical (2RP) : 1 Prismatic joint and 2 revolute joint
 Articulated/anthropomorphic (3R) : All revolute(Human arm)
 Selective Compliance Assembly Robot Arm (SCARA):
2 paralleled revolute joint and 1 additional prismatic joint
Robot Reach:
Robot reach, also known as the work
envelope or work volume, is the space of all
points in the surrounding space that can be
reached by the robot arm.
Reach is one of the most important
characteristics to be considered in selecting a
suitable robot because the application space
should not fall out of the selected robot's
reach.
Robot Reach:
• For a Cartesian configuration the reach is a
rectangular-type space.
• For a cylindrical configuration the reach is a
hollow cylindrical space.
• For a polar configuration the reach is part of a
hollow spherical shape.
• Robot reach for a jointed-arm configuration
does not have a specific shape.

4
Working Area of Industrial Robots
• Mechanics/Kin
ematics
• Kinematics
concepts of a
3-axis
industrial
robot and
the resulting
work area.
Robot Workspace

Fig. 1.7 Typical workspaces for common robot configurations


Kinematics of
Robot
Manipulator
7
Examples of Kinematics
Calculations
• Forward kinematics
z
Given joint variables

q  (q1 , q2 , q3 , q4 , q5 , q6 , qn )
y

x
Y  ( x, y, z , O, A, T )
End-effector position and orientation,
-Formula?
Examples of Inverse Kinematics
• Inverse kinematics
End effector position z
and orientation
( x, y, z , O, A, T )
y

q  (q1 , q2 , q3 , q4 , q5 , q6 , qn ) x

Joint variables -Formula?


9
Example 1: one rotational
link
Forward kinematics
y0
x0  l cos  y1
x1
y0  l sin 
l

Inverse kinematics 
x0
  cos ( x0 / l )
1

10
Robot Reference Frames
– World frame
– Joint frame
– Tool frame
z
y
z x
y T P

W
x
R

11
Coordinate Transformation
– Reference coordinate frame OXYZ
– Body-attached frame O’uvw
z
Point represented in OXYZ: P

Pxyz  [ px , p y , pz ] T
y
 w
Pxyz  px i x  p y jy  pz k z v

Point represented in O’uvw:


x
 O, O’
u
Puvw  pu i u  pv jv  pwk w
Two frames coincide ==> pu  px pv  p y pw  pz
12
Properties: Dot Product

Let x and y be arbitrary vectors in R3 and  be


the angle from x to y , then

x  y  x y cos
Properties of orthonormal coordinate frame
• Mutually perpendicular • Unit vectors
  
i  j 0 | i | 1
  
i k  0 | j | 1
  
k j 0 | k | 1
13
Coordinate Transformation
• Coordinate Transformation
– Rotation only z
P

Pxyz  px i x  p y jy  pz k z
 y
Puvw  pu i u  pv jv  pwk w w v

Pxyz  RPuvw u
x

How to relate the coordinate in these two frames?

14
Basic Rotation
• Basic Rotation
– p x , p y, and p z represent the projections of P onto
OX, OY, OZ axes, respectively

– Since P  pu i u  pv jv  pwk w
px  i x  P  i x  i u pu  i x  jv pv  i x  k w pw
p y  jy  P  jy  i u pu  jy  jv pv  jy  k w pw

pz  k z  P  k z  i u pu  k z  jv pv  k z  k w pw
15
Basic Rotation Matrix
• Basic Rotation Matrix
 px   i x  i u i x  jv i x  k w   pu 
 p    j i jy  jv  
jy  k w   pv  
 y  y u
 pz  k z  i u k z  jv k z  k w   pw 
– Rotation about x-axis with 
z
w
1 0 0  P v

Rot ( x, )  0 C 
 S 

0 S C  y
u
x
16
Is it True? Can we check?

– Rotation about x axis with 
 p x  1 0 0   pu 
 p   0 cos    
 sin    pv 
 y  z
 p z  0 sin  cos    pw  w
P v

p x  pu

p y  pv cos   pw sin 
y
p z  pv sin   pw cos  u
x
17
Basic Rotation Matrices
– Rotation about x-axis with 
1 0 0 
Rot ( x, )  0 C  S 
0 S C 
– Rotation about y-axis with 
 C 0 S 
Rot ( y, )   0 1 0 
 S 0 C 

– Rotation about z-axis with 


C  S 0
Pxyz  RPuvw Rot ( z, )   S C 0
 0 0 1
18
Matrix notation for rotations
• Basic Rotation Matrix
 i x  i u i x  jv i x  k w 
R   jy  i u jy  jv jy  k w  Pxyz  RPuvw
k z  i u k z  jv k z  k w 
– Obtain the coordinate of Puvw from the coordinate of
Pxyz Dot products are commutative!

 pu   i u  i x i u  jy i u  k z   px 
 p    j i jv  j y

jv  k z   p y  Puvw  QPxyz
 v  v x
 pw  k w  i x k w  jy k w  k z   p z 
Q  R 1  RT
QR  RT R  R 1 R  I 3 <== 3X3 identity matrix

19
Example 2: rotation of a point in a rotating
frame
• A point auvw  (4,3,2)is attached to a rotating frame, the
frame rotates 60 degree about the OZ axis of the
reference frame.

• Find the coordinates of the point relative to the


reference frame after the rotation.

a xyz  Rot ( z ,60)auvw


 0.5  0.866 0 4  0.598
 0.866 0.5 0 3   4.964 
 0 0 1 2  2 
20
Example 3: find a point of rotated system
for point in coordinate system
• A point axyz  (4,3,2)is the coordinate w.r.t. the
reference coordinate system, find the
corresponding point auvw w.r.t. the rotated OU-V-
W coordinate system if it has been rotated 60
degree about OZ axis.

auvw  Rot ( z ,60)T a xyz


 0.5 0.866 0 4  4.598 
  0.866 0.5 0 3   1.964
 0 0 1 2  2 
• Reference coordinate frame OXYZ
• Body-attached frame O’uvw
Composite Rotation Matrix
• A sequence of finite rotations
– matrix multiplications do not commute
– rules:
• if rotating coordinate O-U-V-W is rotating about
principal axis of OXYZ frame, then Pre-multiply the
previous (resultant) rotation matrix with an
appropriate basic rotation matrix

• if rotating coordinate OUVW is rotating about its own


principal axes, then post-multiply the previous
(resultant) rotation matrix with an appropriate basic
rotation matrix

22
Example 4: finding a rotation matrix
• Find the rotation matrix for the following
operations:
R  Rot ( y,  ) I 3 Rot ( w,  ) Rot (u ,  )
Rotation  about OY axis
 C 0 S  C  S 0 1 0 0 
Rotation  about OW axis   0 1 0   S C 0 0 C  S 
Rotation  about OU axis - S 0 C   0 0 1 0 S C 
 CC SS  CSC CSS  SC 
  S CC  CS 

Answer...  SC SSC  CS CC  SSS 

Pre-multiply if rotate about the OXYZ axes


Post-multiply if rotate about the OUVW axes
Reference coordinate frame OXYZ
23
Body-attached frame O’uvw
Coordinate Transformations
• position vector of P
in {B} is transformed
to position vector of P
in {A}

• description of {B} as
seen from an observer
in {A}

Rotation of {B} with respect to {A}

Translation of the origin of {B} with respect to origin of {A}


24
Coordinate Transformations
• Two Special Cases
r  RB r  r
A P A B P A o'

1. Translation only
– Axes of {B} and {A} are
parallel A
RB  1

2. Rotation only
– Origins of {B} and {A} are
coincident
A o'
r 0
25
Homogeneous Representation
• Coordinate transformation from {B} to {A}
r  ARB B r P  Ar o '
A P

 A r P   A RB A r o '   B r P 
   
 1   013 1  1 
• Homogeneous transformation matrix
 RB r   R33 P31 
A A o' Rotation

TB   
A matrix

 013 1   0 1  Position
vector
Scaling
26
Homogeneous Transformation
• Special cases
1. Translation
 I 33 r 
A o'
A
TB   
013 1 

2. Rotation

 A
RB 031 
A
TB   
 013 1 

27
Example 5: translation
• Translation along Z-axis with h:
1 0 0 0  x  1 0 0 0  pu   pu 
0 1 0 0  y  0 1 0 0  pv   pv 
Trans ( z, h)     
0 0 1 h  z  0 0 1 
h pw    pw  h 
        
0 0 0 1  1  0 0 0 1  1   1 
z z P
P
w y
y
w v
v
x O, O’
u x
h
O, O’
u
28
Example 6: rotation
• Rotation about the X-axis by
1 0 0 0  x  1 0 0 0  pu 
0 C 0  y  0 C
 S  S 0  pv 
Rot ( x,  )    
0 S C 0  z  0 S C 0  p w 
      
0 0 0 1  1  0 0 0 1  1 
z
w
P v

y
u
x
29
Homogeneous Transformation
• Composite Homogeneous Transformation
Matrix

• Rules:
– Transformation (rotation/translation) w.r.t (X,Y,Z)
(OLD FRAME), using pre-multiplication

– Transformation (rotation/translation) w.r.t (U,V,W)


(NEW FRAME), using post-multiplication

30
Example 7: homogeneous
transformation
• Find the homogeneous transformation matrix (T)
for the following operations:
Rotation  about OX axis
Translatio n of a along OX axis
Translatio n of d along OZ axis
Rotation of  about OZ axis T  Tz , Tz ,d Tx ,aTx , I 44

Answer :
C  S 0 0 1 0 0 0  1 0 0 a  1 0 0 0
 S C 0 0 0 1 0 0  0 1 0 0  0 C  S 0

 0 0 1 0  0 0 1 d  0 0 1 0  0 S C 0
    
 0 0 0 1  0 0 0 1  0 0 0 1  0 0 0 1
Homogeneous Representation
• A frame in space (Geometric
Interpretation) P( px , p y , pz )
z
 R33 P31  a (z’)
F  
s(y’)
 0 1  n (X’)
y
 nx sx ax px 
n sy ay p y 
F  y
 nz sz az pz  x
 
0 0 0 1
Principal axis n w.r.t. the reference coordinate system
Homogeneous Transformation
• Translation a
s
1 0 0 d x   nx s x ax px  z n
0 1 0 d y  n y s y ay p y 
a
Fnew   s
0 0 
1 d z  nz s z az pz 
    n
0 0 0 1 0 0 0 1
 nx sx ax px  d x  y
n s y a y p y  d y 
 y
 nz sz az pz  d z 
 
0 0 0 1 
Fnew  Trans (d x , d y , d z )  Fold
Homogeneous Transformation
Composite Homogeneous Transformation Matrix
z1 z2 y2

y1 x2
z0 0
A1 1
A2
y0
x1
0
A2  A1 A2
0 1

x0
?
i 1 Transformation matrix for
Ai adjacent coordinate frames

Chain product of successive


coordinate transformation matrices
34
• Translation along x-axis
by 4 units, along y-axis
by -3 and z-axis about 7
units.
• Rotate about v axis by
90o
• Rotate about w axis by
90o

35
36
37
• First, we wish to rotate
the coordinate frame x, y,
z for 90◦ in the counter-
clockwise direction
around the z axis.
• displace this new frame
for −1 along the u axis, 3
units along v axis and −3
along w axis
• finally rotate for 90◦
around the new v axis

38
39
Example 8: homogeneous transformation based on
geometry
• For the figure shown below, find the 4x4 homogeneous transformation matrices
i 1 and 0
Ai for i=1, 2, 3, 4, 5
A i

 nx sx ax px   1 0 0 0 
c
n  0 0 1 e  c 
sy ay p y  A1   
F  y
0
z3  0 1 0 a  d 
b y3 x3  nz sz az pz   
z5 d    0 0 0 1 
0 0 0 1
x5 0  1 0 b 
y5 z4 0 0  1 a  d 
A2   
e 1

x4 y4 z2 1 0 0 0 
 
a
x2  0 0 0 1 
z1 x1 y2
z0 0 1 0 b 
y1  1 0 0 e  c 
x0
y0
Can you find the answer by observation
0
A2  
0 0 1 0 
based on the geometric interpretation of  
homogeneous transformation matrix? 0 0 0 1 
rotation about the current y-axis followed by a rotation of degrees about
the current z-axis

rotation about y0 followed by a rotation of about the fixed z0.

41
rotation about the current y-axis followed by a rotation of degrees about
the current z-axis

42
rotation about y0 followed by a rotation of about the fixed z0.

43
44
45
46
47
Consider the diagram of Figure.
A robot is set up 1 meter from a table. The table top is
1 meter high and 1 meter square. A frame o1x1y1z1 is
fixed to the edge of the table as shown. A cube
measuring 20 cm on a side is placed in the center of
the table with frame o2x2y2z2 established at the center
of the cube as shown. A camera is situated directly
above the center of the block 2m above the table top
with frame o3x3y3z3 attached as shown. Find the
homogeneous transformations relating each of these
frames to the base frame o0x0y0z0.
a) Find the homogeneous transformation relating the
frame o2x2y2z2 to the camera frame o3x3y3z3
b) Suppose that, after the camera is calibrated, it is
rotated 90◦ about z3. Recompute the above coordinate
transformations.
c) If the block on the table is rotated 90◦ degrees about
z2 and moved so that its center has coordinates (0, .8,
.1)T relative to the frame o1x1y1z1, compute the
homogeneous transformation relating the block frame
to the camera frame; the block frame to the base
frame.

48
49
Orientation Representation
 R33 P31 
F  
 0 1 
• Rotation matrix representation needs 9 elements
to completely describe the orientation of a rotating
rigid body.
• Any easy way?

Euler Angles Representation


Orientation Representation
• Euler Angles Representation ( , , )
– Many different types
– Description of Euler angle representations

Euler Angle I Euler Angle II Roll-Pitch-Yaw


Sequence  about OZ axis  about OZ axis  about OX axis
of  about OU axis  about OV axis  about OY axis
Rotations  about OW axis  about OW axis  about OZ axis
Euler Angle I, Animated

w'= z

w'"= w"
 v'"
v"

v'
y

u'"

u' =u"
x
Orientation Representation
• Euler Angle I
 cos   sin  0 1 0 0 
   
Rz   sin  cos  0 , Ru '   0 cos   sin  ,
 1   0 sin  cos  
 0 0 
 cos   sin  0
 
Rw''   sin  cos  0
 0 1 
 0
Euler Angle I
Resultant eulerian rotation matrix:

R  Rz Ru ' Rw''


 cos  cos   cos  sin  
 sin  sin  
  sin  sin  cos  sin  cos  cos 
 
 
 sin  cos   sin  sin   cos  sin  
  cos  sin  cos  cos  cos  cos 
 
 
 sin  sin  cos  sin  cos 
 
Euler Angle II, Animated

w'= z

w"'= w" 

 v"'
 v' =v"
y
u"'
u"
Note the opposite u'
(clockwise) sense of the x
third rotation, .
55
Orientation Representation
• Matrix with Euler Angle II
  sin  sin   sin  cos  
 cos  sin  
  cos  cos  cos  sin  cos  cos 
 
 
 cos  sin  cos  cos  sin  sin  
  sin  cos  cos  sin  cos  cos 
 
 cos 
  cos  sin  sin  sin 
 
Quiz: How to get this matrix ?
56
Orientation Representation
• Description of Roll Pitch Yaw
Z

 Y

X