Professional Documents
Culture Documents
Introduction To ROBOTICS: Kinematics of Robot Manipulator
Introduction To ROBOTICS: Kinematics of Robot Manipulator
Introduction To ROBOTICS: Kinematics of Robot Manipulator
• Robot Manipulators
– Robot Configuration
– Robot Specification
• Number of Axes, DOF
• Precision, Repeatability
• Kinematics
– Preliminary
• World frame, joint frame, end-effector frame
• Rotation Matrix, composite rotation matrix
• Homogeneous Matrix
– Direct kinematics
• Denavit-Hartenberg Representation
• Examples
– Inverse kinematics
link 3
link 2
• revolute
– qi = qi : angle of rotation of link i relative to link
link i
i–1
qi
link i – 1
• prismatic
– qi = di : displacement of link i relative to link i
–1
link i – 1 link i
di
waist
q1
waist
Assemblyz 0
q 2
– http://www.robots.epson.com/products/g-series.htm
d3
q1
Hand coordinate:
SCARA: RRP n: normal vector; s: sliding vector;
Articulated: RRR (Selective Compliance a: approach vector, normal to the
Assembly Robot Arm)
tool mounting plate
The City College of New York 15
Manipulators
• Motion Control Methods
– Point to point control
• a sequence of discrete points
• spot welding, pick-and-place, loading & unloading
– Continuous path control
• follow a prescribed path, controlled-path motion
• Spray painting, Arc welding, Gluing
x
Y = ( x, y, z, O, A, T )
q = (q1 , q2 , q3 , q4 , q5 , q6 , qn ) x
Forward kinematics y0
x1 = l cosq y1
x1
y1 = l sin q
l
Inverse kinematics q
x0
q = cos ( x1 / l )
−1
a2
q2
a1
q1
a2
q2
y0
a1
q1
x0
a2
q2
y0
a1
q1 ( a1 cos q1 , a1 sin q1 )
x0
y1
a2
q2
y0
q1
a1 x1
q1 ( a1 cos q1 , a1 sin q1 )
x0
(x, y) ?
y1
a2
( a2 cos (q1 + q2),
q2 a2 sin (q1 + q2) )
y0
q1
a1 x1
q1
( a1 cos q1 , a1 sin q1 )
x0
y1
a2
( a2 cos (q1 + q2),
q2 a2 sin (q1 + q2) )
y0
q1
a1 x1
q1
( a1 cos q1 , a1 sin q1 )
x0
q2
y0
q1
a1
q1
x0
q2
y0
q1
a1
q1
x0
a1
q1 ?
x0
a2
y0
a1
x0
(x, y)
a2
b
q2 ?
y0
a1
x0
− cos( − q 2 ) = cos(q 2 )
therefore,
x 2 + y 2 − a12 − a22
cosq 2 = = C2
2a1a2
We could take the inverse cosine, but this gives only one of the two solutions.
to obtain
1 − C 2
q 2 = tan −1 2
C2
which yields both solutions for q2 . In many programming languages you would use th
four quadrant inverse tangent function atan2
W
x
R
4
p =
0
ŷ 0 q0 2.5
2
q =
0
x̂0 1.5
0 o0 2
v = p −q =
0 0 0
1
37 The City College of New York
Coordinate Frames
2
− 1
v = p −q =
1 1 1
2
38 The City College of New York
Preliminary
• Coordinate Transformation
– Reference coordinate frame
OXYZ z
– Body-attached frame O’uvw P
Point represented in OXYZ:
y
Pxyz = [ p x , p y , p z ]
T
w
v
Pxyz = p x i x + p y jy + p z k z
Point represented in O’uvw:
x
O, O’
u
Puvw = pu i u + pv jv + pw k w
Two frames coincide ==> pu = p x pv = p y pw = p z
The City College of New York 39
Preliminary
Properties: Dot Product
Let x and y be arbitrary vectors in R and q be
3
Pxyz = RPuvw u
x
– Since P = pu i u + pv jv + pw k 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
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
−1
Q=R =R T
ŷ 0 ŷ1
x̂0 x̂1
o0 o1
0
1
3
o =
0
1
0
• suppose we are given o1 expressed in {0}
52 The City College of New York
Translation 1
ŷ 0 ŷ1
x̂0 x̂1
o0 o1
0
1
3 0 3
d = o −o = − =
0
1
0
1
0
0
0 0 0
• the location of {1} expressed in {0}
53 The City College of New York
Translation 1
i
d
1. the translation vector j can be
interpreted as the location of frame {j}
expressed in frame {i}
ŷ 0 ŷ1 1
p =
1
1
x̂0 x̂1
o0 o1
0
1
− 1 ŷ 0 2
p =
0
q =
0
1 1
x̂0
o0
0
3 − 1 2
q =d + p = + =
0 0
0 1 1
• q0 expressed in {0}
57 The City College of New York
Translation 3
3. the translation vector d can be
interpreted as an operator that takes a
point and moves it to a new point in the
same frame
• description of {B} as
seen from an observer
in {A}
2. Rotation only
– Origins of {B} and {A}
are coincident
roA' = 0
The City College of New York 60
Homogeneous Representation
• Coordinate transformation from {B} to {A}
rP = RB rP + ro'
A A B A
2. Rotation
A
RB 031
A
TB =
013 1
y
u
x
The City College of New York 64
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
y1 x2
z0 0
A1 1
A2
y0
x1
x0
?
i −1 Transformation matrix for
Ai adjacent coordinate frames
0
A2 =0A11 A2 Chain product of successive
coordinate transformation matrices
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
The City College of New York 70
Orientation Representation
R33 P31
F =
0 1
• Rotation matrix representation needs 9
elements to completely describe the
orientation of a rotating rigid body.
• Any easy way?
w'= z
w'"= w"
v'"
v"
v'
y
u'"
q
u' =u"
x
w'= z
w"'= w"
v"'
q v' =v"
y
u"'
u"
Note the opposite u'
(clockwise) sense of the x
third rotation, .
The City College of New York 76
Orientation Representation
• Matrix with Euler Angle II
− sin sin − sin cos
cos sin q
+ cos cos cosq − sin cos cosq
cos sin cos cos sin sin q
+ sin cos cosq − sin cos cosq
cosq
− cos sin q sin sin q
Quiz: How to get this matrix ?
The City College of New York 77
Orientation Representation
• Description of Roll Pitch Yaw
Z
Y
q
X
– then
−1 R T
− R T
d
T =
0 0 0 1
79 The City College of New York
Thank you!
Homework 1 is posted on the web.
x
The City College of New York 80