Академический Документы
Профессиональный Документы
Культура Документы
http://dspace.nitrkl.ac.in/dspace
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation
76
I. INTRODUCTION
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 77
rotation and translation of points and members in spatial
R = Ry , RZ , Rx ,
(2)
plane. However its use for studying the kinematic behavior of
where
rigid manipulator has not been made. The use of this approach
Ry , = rotation about y-axis with an angle
can be made advantageously for kinematic representations of
mechanisms largely because of two reasons: computationally
Rz , = rotation about z-axis with an angle
the quaternion algebra is quite faster as it involves less number
Rx , = rotation about x-axis with an angle
of parameters compared to the homogeneous representation
and secondly, less mathematical complicacies involved in
This can be written in short as;
understanding the representations. The present work aims at
c c s s c s c c s c + s s
s c
with the homogeneous transformation method for its
s s c
c c s s s
R x = 0 cos sin
(1)
0 sin cos
Where,
= angle of rotation
Rx =rotation matrix about ox axis.
p = ( px , p y , p z )
(4)
sin
cos
sin
cos
sin
t
t
t
t
t
t 1
At =
dt
0
sin t
cost
0
0
0
1
(5)
In a kinematic chain the transformation matrix
t 1
At
th
t 1
At
t 1
t 1 by pt 1 =
t 1
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 78
matrix method thus provides a systematic way to understand
R , , = Rz , R y , Rx ,
and implement the algorithm step by step.
c c c s s s c c s c + s s
= s c s s s + c c s s c c s
s
c s
c c
(6)
n x sx a x px
n y sy a y py
T =
n s az pz
z z
0 0 0 1
(7)
where,
s t
0
l t 1
c t
s c
c t c t 1 s t 1 s t 1 d t
t 1
t 1
Tt = t
s t s t 1 c t s t 1 c t 1
c t 1 d t
0
0
0
1
(8)
Tn = 0 T1 1 T2 2 T3 n 1 Tn .
(10)
(11)
q = w ix jy kz .
The magnitude of a quaternion q = w + ix + jy + kz is
Tn of
(w 2 + x 2 + y 2 + z 2 )
(12)
iii) Norm:
Norm of a quaternion is defined by
|| q || = square root of ( q *conj( q ))
(9)
q = w + ix + jy + kz
ii) Magnitude:
= (w 2 + x 2 + y 2 + z 2 )
(13)
iv) Inverse:
The inverse of a quaternion refers to the multiplicative
1
(14)
inverse and can be computed by q 1 = q (q q )
q
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 79
i j = k
that they are anti commutative. Quaternion algebra can be
understood as an extension of complex number. As we know
jk = i
complex number consist of one real part and one imaginary
k i = j
part similarly quaternion has four dimensions i.e. one real part
Multiplication of quaternion numbers together behaves
and three imaginary part.
similarly to cross product of the unit basis vectors. Unit line
vector is a vector which is constrained to lie on a definite line
A dual number can be defined as
in Fig.1, u is a unit vector and u 0 = r u is the moment vector,
q + q 0
(15)
where r is the position vector of an arbitrary point P on the
where,
line. The vectors u , u0 are often called plucker vectors.
q and q 0 are real numbers with as a dual unit having
property 2 = 1 .
Representation using quaternion
Quaternion can be used to represent rotation and
quaternion multiplication can be used to get the result of
subsequent rotation.
(a)Representation of rotation.
Let q1 and q 2 are unit quaternion representing two
rotations. Then subsequent rotation can be done by, rotating
first q1 and then q2. The composite rotation is represented by
the quaternion q 2 q1 .
1
P2 = q 2 (q 1 P q 1 ) q 21
= (q 2 q 1 ) P (q 11 q 21 )
= ( q 2 q 1 ) P (q 2 q 1 )
(16)
where,
p1 = vector representing the initial position of a point
being transformed.
p 2 =vector representing the final position of the point after
translation. The quaternion can represent 3D reflections,
rotations and scaling, however a single quaternion operation
cannot include translations with rotation. So for rotation,
reflection or scaling around a point other than the origin, we
would have to handle the translation part separately.
(b) Representation of pure translation
The translation in quaternion algebra is done by using a
quaternion operator and it is defined by
q = 1 + ( x 1 2 )i + ( y 1 2 ) j + ( z 1 2 ) k
(17)
where,
p 2 = q p1 q
u = u + u 0 .
(19)
q = cos
where, cos
+ u sin
(20)
q = q0 + qxi + q y j + qz k
(21)
where,
p1 and p 2 are initial and final position of a point
q =dual quaternion operator representing transform.
q =conjugate of q .
Quaternion follows certain rules while performing
multiplication.
Here, i 2 = j 2 = k 2 = 1 .
IEEE CICCRA 2008
(22)
The combined rotation and translation can be represented
by quaternion operator. The relationship between two non
parallel and non intersecting unit line vector can be obtained
as follows.
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 80
Let,
iv) The position vector of the end effector is given by
u = A unit line vector.
n
Pn = (d t st + Lt at ,t +1 ) .
(32)
v = Unit line vector obtain by translation of u by a
t =1
distance d , followed by rotation of a dual angle = + d .
v) The orientation matrix R of the end effector coordinate
The transformation of u into v is given by
system by the three vectors
v = Q u
nn = an ,n+1
(23)
on = sn+1 an ,n+1
Q = cos + e sin
(24)
which is also a dual quaternion. So by multiplying a unit
line vector by the transformation operator Q the image of that
line is obtained in a new location defined by the parameters of
this transformation operator.
(c) Application of quaternion in formulation of kinematic
equation of 3R robot arm
A dual quaternion is the set of four dual numbers in a
definite manner. Just like we extend 3 X 3 matrices to 4 X 4
matrices to allow them to translation in addition to rotation we
extend quaternion to dual quaternion to allow them to
represent translations in addition to rotation. The dual of a
quaternion can model the movement of a solid object in 3
dimensions which can rotate and translate without changing
the shape.
Algorithm to formulate forward kinematic equation:
i) Assignment of coordinate system to every link and to the
base.
ii) Determination of the kinematic parameters for the links
1 to n.
iii) Calculation of unit line vector which is coincident with
the common normal between t th and (t + 1) th axis and s t as
the unit line vector along z axis of the t
th
joint.
at ,t +1=Q t at 1,t
s
and s = Q
t +1
t ,t +1 t
Q t ,t +1 = cos t ,t +1 + a t ,t +1 sin t ,t +1
where
t ,t +1
and rotates the joint axis along and about the common
perpendicular to this joint axis and the next one.
The vectors s and a are the unit vectors defining the
orientation of the z and x axis respectively. The unit vector of
the Y axis of the last coordinate system is calculated by the
vector product of the s and a vectors.
III. APPLICATION OF THE ALGORITHM IN A 3R
ROBOT
The algorithms explained for quaternion algebra is
implemented to a 3R robot. The position and orientations are
calculated by applying both homogeneous and quaternion
algebra method. Let us consider a 3R robot having joint
parameters as given in Table 1.
(26)
t ,t +1
90
-90
431.8 mm
149.09 mm
90
90
-20.32
Lt ,t 1
dt
(27)
(28)
(29)
and st +1 is
(30)
t = t + d t
defined as
t ,t +1 = t + L t
vector a t 1,t to
(25)
TABLE 1
a0,1 = i and s1 = k .
an = sn+1 .
(33)
Following the steps of the given algorithm the kinematic
equation of any spatial manipulator can be evaluated. The unit
line vector s t defines the axis of the joint t and at ,t +1 defines
(31)
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 81
In dual quaternion method only the primary parts of the
Q1 = C1 + S1k
quaternion
are required for the computation of the position
a1, 2 = C1i + S1 j
and orientation of the end-effector. From 3 rd step mentioned
Q1, 2 = a1, 2
in section II, of the algorithm, it can be seen that all the
necessary unit vectors are determined successively in a loop
s 2 = S 1 i + C1 j
with t = 1 to n. In every step of this loop two main operations
P1 = d1s1 + L1a1, 2 = 0
are performed. The first one is the determination of the
n1 = a1, 2 = j
transformation quaternion Q and Q using equation (28)
t
o1 = s2 a1, 2 = k
a1 = s 2 = i
For joint t =2,
Position of the end-effector is calculated by using equation
(33).
P2 = 149 .09i + 431 .8 j
n2 = a2,3 = j
o2 = s3a2, 3 = k
a2 = s3 = i
For joint t=3,
The position of the end effecter is calculated as
P3 = 149.09i + 431.8 j + 20.32k
The orientation of the end effecter is given by
Applying homogeneous matrix transformation matrix
T= 0 T1 1 T2 2 T3
0 1 0 149.09
0 0 1 431.8
=
1 0 0 20.32
0 0 0
IV. DISCUSSION
The observation made from the models and the subsequent
solution prompt a comparision of the two methods. In the
homogeneous transformation method, four trigonometric
function calls and six multiplications are required for
calculation of the transformation matrix t-1 T t. The operation
used in this algorithm is the product of 4 X 4 transformation
matrices. The multiplication of two 4 X 4 transformation
matrices needs 48 multiplications and 36 additions and
subtraction, since the elements of the last row of the matrix are
constants. In n-link robot arm the number of transformation
matrices is n, so n-1 number of matrix products is required in
order to detrmine the toal transfrmation matrix. Hence, the
determination of the end effector position and orientation
needs (48(n-1) + 6n) multiplications and 36(n-1) additions and
subtractions, while only the orientation needs 31(n-1)
multiplications and 18(n-1) additions and subtractions. For the
case of 3-R robot (n=3), 114 multiplications and 72 additions
and subtractions are necessary. This speaks about the number
of mathematical operations required for computing the
homogeneous matrix and hence the time needed for the same.
IEEE CICCRA 2008
t +1
at, t+1
and
s t +1
IEEE Sponsored Conference on Computational Intelligence, Control And Computer Vision In Robotics & Automation 82
As the number of DOF goes on increasing and the [4] J. Funda, R. H. Taylor, and R. P. Paul, On homogeneous transforms,
quaternions, and computational efficiency, IEEE Trans. Robot. Automat.
complicacies of computations increase the quaternion method
vol. 6, pp. 382388, June 1990.
scores significantly better than the homogeneous matrix [5] Aissaoui R., Mecheri H., Hagemeister N., de Guise J.A. Robust
estimation of screw axis
from 3D pose using dual quaternion
method. It is obvious that for manipulators with more than
three degrees of freedom, the quaternion theory based [6] algebra.1996.
C. Perrier, P. Dauchez, F. Pierrot, Nonholonomic motion planning for
algorithm requires less computational time than the
mobile manipulators, IEEE, 1997.
traditional homogeneous algorithms. Therefore, it can be [7] J. J. Craig, IntroductiontoRobotics, Mechanics and Control. Reading, MA:
AddisonWesley, 1986.
concluded that for manipulators with high number of DOF
[8] O. P. Agrawal, Hamilton operators and dual-number-quaternions
the dual quaternion theory method is more cost effective than
inspatial kinematics, Mech. Mach. Theory, vol. 22, no. 6, pp. 569
575,1987.
the homogeneous transformation. Further, in dual quaternion
method the storage cost is minimum because it is not
necessary to store all the transformation quaternions from the
beginning. Quaternions require eight memory location for the
representation of position while three memory location for
orientation.but the homogeneous method requires 16 memory
location for both position and orientation. The storage
requirement affects the computational time as the cost of
fetching an operand from memory exceeds the cost of
performing a basic arithmatic operation.
V. CONCLUSION
It is evident from the results that a matrix product requires
many more operations than a quaternion product. So a lot of
time can be saved and at the same time more numerical
accuracy can be preserved with quaternion than with matrices.
In the example mentioned in the present work, it is clear that
quaternion algebra provides a very effective and efficient
method for representation of forward kinematics equation.
Further, the method is cost effective as it requires less
computer memory and saves lot of time by reducing the
number of mathematical calculation. Comparing the two
methods, it is observed that the quaternion method gives
exactly same result as that of homogeneous method. This is a
general method applied specifically to robot manipulator in
the present work. However this can also be extended to any
other open kinematic chain for the purpose of kinematic
analysis. Therefore this can be used as a powerful tool in the
solution of kinematic problems.
This paper introduces a new formulation for the kinematic
synthesis of open link robots having three joints. The standard
kinematic equations of the chain are transformed into
successive quaternion transformation and then expressed using
dual quaternion. Presently there are many quaternion
applications in the area of aerospace sequence, spherical
trigonometry, calculus for kinematics and dynamics, rotation
in phase space etc. A lot more research has to be done in this
aspect and the days are not far behind when quaternion will
replace the traditional homogeneous method of representation.
VI. REFERENCES
[1] M. W. Walker, Manipulator kinematics and
the epsilon algebra,
IEEE,J. Robot. Automat., vol. 4, Apr. 1988.
[2] J. Funda and R. P. Paul, A computational analysis of screw
transformations in robotics, IEEE Trans. Robot. Automat. vol. 6, pp.
348356, June 1990.
[3] Nicholas A. Aspragathos and John K Dimitros, A Comparative Study of
Three Methods for Robot Kinematics, transactions on systems, man,
and cyberneticspart b: cybernetics, vol. 28, no. 2, april 1998.