Robotica (2007) volume 25, pp. 43–61. © 2006 Cambridge University Press
doi:10.1017/S0263574706002980 Printed in the United Kingdom
Differential and inverse kinematics of robot devices using
conformal geometric algebra
Eduardo Bayro-Corrochano
∗
and Julio Zamora-Esquivel
Electrical Engineering and Computer Science Department, GEOVIS Laborator, Centro de Investigaci´ on y de Estudios
Avanzados, Guadalajara, Jalisco 44550, Mexico
E-mail: jzamora@gdl.cinvestav.mx
(Received in Final Form: June 12, 2006, First published online: August 29, 2006)
SUMMARY
In this paper, the authors use the conformal geometric algebra
in robotics. This paper computes the inverse kinematics of a
robot arm and the differential kinematics of a pan–tilt unit
using a language of spheres showing how we can simplify
the complexity of the computations.
This work introduces a new geometric Jacobian in terms of
bivectors, which is by far more effective in its representation
as the standard Jacobian because its derivation is done in
terms of the projections of the involved points onto the
line axes. Furthermore, unlike the standard formulation, our
Jacobian can be used for any kind of robot joints.
In this framework, we deal with various tasks of three-
dimensional (3D) object manipulation, which is assisted by
stereo-vision. All these computations are carried out using
real images captured by a robot binocular head, and the
manipulation is done by a five degree of freedom (DOF) robot
arm mounted on a mobile robot. In addition to this, we show
a very interesting application of the geometric Jacobian for
differential control of the binocular head. We strongly believe
that the framework of conformal geometric algebra can
generally be of great advantage for visually guided robotics.
KEYWORDS: Computer vision; Clifford (geometric)
algebra; Projective and affine geometry; Spheres projective
geometry; Incidence algebra; 3D rigid motion; Directed
distance; Inverse kinematics; Differential geometry; Robot
3D object manipulation; Stereo systems; Smooth control of
binocular heads; Visually guided robotics.
1. Introduction
In the literature after the sixties, we find a variety
of mathematical systems used for solving problems in
general robotics, which we will review briefly. Denavit
and Hartenberg
10
introduced the widely used kinematic
notation for lower pair mechanisms based on matrix algebra,
Walker
24
used the epsilon algebra for the treatment of
the manipulator kinematics, Gu and Luh
12
utilized dual-
matrices for computing the Jacobians useful for kinematics
and robot dynamics, and Pennock and Yang
20
derived
closed-form solutions for the inverse kinematics problem
for various types of robot manipulators employing dual-
* Corresponding author. edb@gdl.cinvestav.mx
matrices. Similarly, McCarthy
19
used the dual form of the
Jacobian for the analysis of multilinks. Funda and Paul
11
gave a detailed computational analysis of the use of screw
transformations in robotics. They explained that since the
dual quaternion can represent the rotation and translation
transformations simultaneously, it is more effective than the
unit quaternion formalism for dealing with the kinematics
of robot chains. Many practitioners use a quaternion for
3D rigid transformations for representing the 3D rotation
and simply a 3D translation vector. It can easily be shown
that this kind of representation is a nonlinear function that
leads to nonlinear algorithms for a sequential estimation
of rotation and translation. Kim and Kumar
17
computed a
closed-form solution of the inverse kinematics of a six DOF
robot manipulator in terms of line transformations using
dual quaternions. Aspragathos and Dimitros
2
confirmed once
again that the use of dual quaternion and Lie algebra in
robotics were overseen so far, and that their use helps to
reduce the number of representation parameters.
In the field of computer vision, although in a different
context as robotics, we can find similar representation
formalisms in various types of applications like motion
estimation, pose and 3D structure recognition, tracking
and visual servoying. In most of the methods, the rotation
and translation transformations were represented separately
using either matrices or quaternions (see the survey of
Sabata and Aggarwal
21
). The disadvantage of separately
representing these components is that for solving the
problems, nonlinear methods are often required. In the case
of the so-called hand–eye calibration problem, for the
computation of the rotation axis and angle, several authors
considered
22,23
the use of quaternions
9
and a canonical matrix
representation.
18
Chen,
8
using the matrix screw theory,
found as key invariant of the screw between the two 3D
axes that the rotation angle and the translation along the
screw axis remained constant. For solving the hand–eye
calibration in a linear manner, Bayro-Corrochano et al.
4
used a Clifford algebra of lines called the motor algebra.
In other applications, the authors successfully applied dual
quaternions; e.g., Walker et al.
24
for estimating the 3D
location, and twists and exponential maps like Bregler and
Malik
7
for tracking the kinematic chains of moving objects
or persons. For solving the hand–eye problem for visual
line tracking, Andreff
1
used a matrix approach for a sort
of algebra of screws.