I76
IEEE
TRANSACTIONS ON ROBOTICS AND AUTOMATION,
VOL.
9,
NO.
2,
APRIL
1993
0
0.
0
1
2)
The origin of
{i}
is at the intersection point of the
3)
zi
is in the direction of the
z
+
lth joint axis.
4)
If the projection of
37-1
on the &-plane does not vanish,
zi
is chosen to be parallel to the projection of
zi-1
on
the Bi-plane, and
yi
is taken to form an orthonormal
right-hand coordinate system; otherwise,
yi
is parallel
to the projection of
Remark:
Since the projections of
xi-1
and
yiP1
on the Bi-
plane do not vanish simultaneously, the link coordinate frames
assigned based on the above convention are unique.
The assignment of link frames for
a
“simple” robot (i.e., in
which each two consecutive joint axes are either perpendicular
or parallel one to another) can,
as
in the
D-H
model, be done
by inspection using the following convenient assignment rules.
4’)
If
zi
is perpendicular to
zi-1,
then let
z;
have the same
direction
as
21-1;
otherwise since
zi
is parallel to
zi-1
(this
time the projection of
z,-1
on the Bi-plane vanishes), let
yi
have the same direction as
yi-l.
Vi,
which transforms the
z-
lth frame to the ith frame while
the ith joint is kept zero, consists of a rotation transformation
followed by
a
translation transformation. Let
e
=
[0,
0.
1IT,
and
zi
G
[z~,~,z~,~,z;,,]~.
e
and
zi
feature the coordinates
of the ith and
I
+
lth joint axes direction vectors in
{i
-
l}.
Link frame
{I
-
1)
can be brought to be parallel to
{i}
by
the following rotation:
B,-plane with the
i
+
lth joint axis.
on the Bi-plane.
R,
=
rot(k,,
a,)
(4)
where
is the familiar twist angle (see Fig.
1)
and
where
1)
.
1)
denotes the Euclidian norm
(k,
is not shown in
Fig.
1).
R,
is undefined from
(6)
whenever
z,
=
e.
However,
it can be defined without an explicit reference to
e
x
zL.
Substitution of
(5)
and
(6)
into the general rotation matrix
formula of
(4)
(refer to
[23])
yields
[24], [lo]
the following
rotation representation:
-z,>Y
0
(7)
R,
is always nonsingular since, by definition,
z,,~
>_
0.
The origin of the rotated
{i
-
1)
can then be brought to be
coincident with that of
{i}
through translations along the
.E
and
y
axes
of
{i}
(refer to Fig.
I),
which is the transformation
Trans(l,,,.
0).
For
a
prismatic joint
2.
l,,,,
and
l,,y
are set
to zero. This is similar to the construction of the
D-H
model,
in which prismatic joint offset distance and link length
are
set
to zero.
The link transformation
B,
for a revolute joint is then given
by
B,
=
Q,R,trans(l,,,,
0)
z
=
0,1,.
.
.
,n
-
1.
(Sa)
For
a
prismatic joint,
B,
=
Q,&
i
=
O,l,...,rt
-
1. (Sb)
Finally,
B,
=
Q,R,rot(z, P,)trans(l,,,,
L).
(8~)
The additional parameter
l,,z
allows an arbitrary placement of
the tool frame origin, and the parameter
0,
allows an arbitrary
orientation of the tool frame. If the nth joint is prismatic,
In some applications, it may be convenient to let the
structure of
B,
be the same
as
that of
B,.
In such cases,
p,
and
1
i
=
0,1,
. . . ,
ri
-
1,
are redundant link parameters.
l,,,
=
ln.v
=
0.
Remarks
1)
The CPC model is complete
as
it has
4n
-
2p
+
6
independent link parameters.
2)
The model is never singular for any orientation of two
consecutive axes since the matrices
R,
are well defined
by restricting the
z
axis to point upwards.
3)
The orientation parameter vector
zi
is unique
as
the
direction vector of the
i
+
lth joint axis in link frame
{i
-
l}
is unique at the zero-joint-reading position.
In this case, the translation parameter vector
I;
{li,x,
li,z}
is also unique if
li.z
is kept zero for the
internal link transformations.
Example:
Consider two consecutive link transformations
with revolute joints (see Fig.
2).
Let the ith joint axis be
nominally perpendicular to the
i
-
lth axis, and the
i
+
lth
joint axis be nominally parallel to the ith axis.
In
this case,
zi-1
=
[-1,
0,
OIT
and
zi
=
[O,O,
1IT.
Assume that link frame
{z
-
l}
has been assigned
as
shown in Fig.
2.
According
to the CPC modeling convention, the
yip]
axis is taken to
be parallel to the
yiPz
axis since
zi-1
is parallel to
zi-2.
Also, the
zi
axis is taken to be parallel to the
zi-1
axis
since
z,
is perpendicular to
zi-1.
Translational parameters
are then assigned accordingly. Since
zi-2
intersects with
zi-l,li-~,~
=
1i-1,~
=
0;
and since
yi-]
aligns with
yi,
=
0.
111.
PROBLEM
FORMULATION
AND
SOLUTION
STRATEGY
The following notation will be used thereafter:
q,
the zth joint variable,
q,
E
iot,
d,}
q
the joint variable vector,
q
=
[q~.
q2,
.
.
.
.
q,lT
p
the link (kinematic) parameter vector,
p
e
[zr
,
IT,
.
. .
,
‘T3
homogeneous transformation relating link frame
{
i}
‘R,
the upper-left
3
x
3
submatrix (the Orientation part)
2:.
IT,
,&IT
for the CPC model
to link frame
{j}
of
‘TJ
-1