Kinematic Synthesis of Multi-fingered Robotic
Hands for Finite and Infinitesimal Tasks
E. Simo-Serra, A. Perez-Gracia, H. Moon and N. Robson

Abstract In this paper we present a novel method of designing multi-fingered
robotic hands using tasks composed of both finite and infinitesimal motion. The
method is based on representing the robotic hands as a kinematic chain with a tree
topology. We represent finite motion using Clifford algebra and infinitesimal motion
using Lie algebra to perform finite dimensional kinematic synthesis of the multifingered mechanism. This allows tasks to be defined not only by displacements, butalso by the velocity and acceleration at different positions for the design of robotic
hands. The additional information enables an increased local approximation of thetask at critical positions, as well as contact and curvature specifications. An example
task is provided using an experimental motion capture system and we present thedesign of a robotic hand for the task using a hybrid Genetic Algorithm/LevenbergMarquadt solver.
Key words: kinematic synthesis, multi-fingered grippers, Clifford and Lie algebra.

1 Introduction
The design of end-effector robotic tools has traditionally taken place in an applicationoriented fashion within the framework of the mechanical design theory [7]. Among
the rich variety of robotic end-effectors, those generally defined as robotic hands are
considered suited not only for grasping, but also for dexterous manipulation. We can
E. Simo-Serra
Institut de Robòtica i Informàtica Industrial (CSIC-UPC) e-mail: esimo@iri.upc.edu
A. Perez-Gracia
Idaho State University, Pocatello, Idaho 83209 e-mail: perealba@isu.edu
H. MoonTexas A&M University, College Station, TX 77843 e-mail: hsmoon@neo.tamu.edu
N. Robson
Texas A&M University, College Station, TX 77843 e-mail: ninarobson@tamu.edu

1

2

E. Simo-Serra, A. Perez-Gracia, H. Moon and N. Robson

define a multi-fingered robotic hand as an end-effector in which the base, or palm,spans several serial chains in a tree-like structure.
There are a great variety of designs for robotic hands. Some designs mimic thehuman hand and exhibit a high number of degrees of freedom, [1] and [15]; others
are designed for specific applications [4] and may or not be anthropomorphic [5].
Most of the designs have been oriented either towards maximum anthropomorphism or towards optimizing grasping, manipulability or workspace size. A good
review on the efforts toward kinematic hand design can be found in [6]. As robotic
hands become more common in industrial applications and human environments, it
makes sense to think that their design will become more task-oriented. Soto Martelland Gini [14] expose the need for a task-based design process for robotic hands.
The use of kinematic synthesis for the design of the multi-fingered robotic hand
has been applied to individual fingers, see [2]. We believe that the reason why dimensional synthesis has been scarcely applied to robotic hand design is becauseof the lack of a method that takes a multi-fingered task as the input and outputs a
multi-fingered design.
In this paper, we extend the work presented in [13] by combining it with theresults on kinematic synthesis for infinitesimal positions [8, 9] and expressing thekinematics using the Clifford algebra of dual quaternions [10]. Note that mechanicallinkages are traditionally synthesized by specifying a task, consisting of a numberof positions that the end-effector has to move through, with the goal of determining
the design parameters, i.e. fixed and moving pivot locations, as well as the size ofthe linkage. The difference between the traditional design of mechanical linkages
and the current design with contact direction, used in this research, is basically inthe task, which consists not only of positions, but velocities and accelerations compatible with contact and curvature specifications between the end-effector/fingers
and the object to be grasped. In comparison to the traditional synthesis techniques,
these velocities and accelerations yield to a more complicated system of position,
velocity and acceleration design equations, as well as more complicated trajectory
planning techniques.
As an example, we apply this methodology to the design of a multi-fingered
hand for operating a door knob. The motivation for this design arose from an individual, who is confined to a wheel chair after an accident. He has limited movement
and weakness in his hands, making it difficult for him to grasp doorknobs at his
workspace. The synthesis presented here is the first step towards developing assistive manipulation devices.

2 Infinitesimal Kinematics
The generic screw S for a twist can be represented as an element of the Lie algebrase(3) [12],S = λ (s; r × s + hs) = λ (s; s0 + hs) = (ω ; v) ∈ se(3)(1)

Kinematic Synthesis of Multi-fingered Robotic Hands for Finite and Infinitesimal Tasks

3

where s, r, ω , v ∈ R3 with s · s = 1, s0 = r × s and λ , h ∈ R.
The relative velocities between a pair of rigid bodies form one-dimensional subalgebras of the Lie algebra se(3) [11]. The most generic subalgebra is generated by
the screw or helical joint S which becomes a revolute joint SR = (s; s0 ) with h = 0
or a prismatic joint SP = (0; s) with the screw axis at infinity. The binary operationof the Lie algebra is the Lie bracket, which can be expanded for screws as,[S1 , S2 ] = [(ω 1 ; v1 ), (ω 2 ; v2 )] = (ω 1 × ω 2 ; ω 1 × v2 + v1 × ω 2 )(2)

The velocity of the end-effector for a serial articulated chain with n joints in agiven configuration can be written as [12],ndP= Ṗ = ∑ θ̇i Si
dt
i=1

(3)

where Ṗ = (ω ; v) with ω being the angular velocities and v being the Cartesianvelocities. The screws Si represent the infinitesimal screws of each joint.
The infinitesimal screws can be transformed to an instantaneous position from areference position using the Clifford algebra conjugation action,
!
!∗
!
!∗
k
k
i−1 ∆ θ̂ kj
i−1 ∆ θ̂ kj∆ θ̂i−1∆ θ̂i−1
k
k
S
S
S
S
k
e 2 j
=
e 2 j S
(4)
S = e 2 i−1 S e 2 i−1
i

i

∏

j=1

i

∏

j=1

where ∆ θ̂ik = θ̂ik − θ̂ir with θ̂ir is the joint parameter in the reference configurationand Ski is the i-th screw in a serial chain at position k.
The velocity of a joint j in a chain is written as the derivative of a finite screw
[3],
j−1
dS j
= Ṡ j = ∑ θ̇i [Si , S j ]
(5)
dt
i=1
Cross terms and the non-commutation of the derivation operator must be taken
into account as seen by differentiating each velocity component of (3) using thechain rule. This can be expanded to obtain the acceleration of the end-effector,
n
n
n−1
n

d2P
d
= P̈ = Ṗ = ∑ θ̈i Si + θ̇i Ṡi = ∑ θ̈i Si + ∑ θ̇i ∑ θ̇ j [Si , S j ]
2
dt
dt
i=1
i=1
i=1
j=i+1

(6)

where P̈ = (α ; a) with α being the angular accelerations and a being the Cartesian
accelerations.
The approach is general in the sense that the chain rule can be successively applied to obtain higher derivatives if necessary.

4

E. Simo-Serra, A. Perez-Gracia, H. Moon and N. Robson

3 Design Equations for Tree Topologies
Tree topologies can be seen as many different serial chains that share a number ofcommon joints. The equations can be written as for serial chains, but the task definition will vary with the topology. The finite motion of a joint can be expressed using
the exponential map of a screw S. This can be expressed using the unit element of
the Clifford even subalgebra of the projective space Cl + (0, 3, 1) or dual quaternion,θ̂e 2 S = (cos

θ d
θ
θ d
θ
θ̂
θ̂
− sin ε ) + (sin + cos ε )S = cos + sin S.
2 2
2
2 2
2
2
2

(7)

where ε is the dual unit such that ε 2 = 0.
For a serial chain with n joints, the forward kinematics of a serial chain can be
written relative to a reference configuration of the serial chain,
n

n

∆ θ̂i

Q̂(∆ θ̂θ ) = ∏ e 2 Si = ∏(cos
i=1

i=1

∆ θ̂i
∆ θ̂i
+ sin
Si )
2
2

(8)

where ∆ θ̂i = θ̂i − θ̂0 with θ̂0 being the joint parameters of the reference configuration.
For a task composed of finite positions, the relative forward kinematics can becompared to the relative motion from the reference configuration to each positionP̂1k = P̂k P̂1−1 [10],n∆ θ̂ikP̂1k = ∏ e 2 Si ,k = 2, . . . , m p

(9)

i=1

where m p is the number of positions considered and ∆ θ̂ik = θ̂ik − θi1 , with k = 1
being the reference configuration.
For a task with velocities, we can use (3) to write,nṖk = ∑ θ̇ik Ski ,k = 1, . . . , mv

(10)

i=1

where Ṗk is the absolute velocity information for a given position k in the form(ω ; v). The instantaneous joint screw axis Sik can be calculated from (4).
The same procedure can be applied to acceleration to obtain from (6),
n

n−1

n

i=1

i=1

j=i+1

P̈k = ∑ θ̈ik Ski + ∑ θ̇ik ∑ θ̇ jk [Ski , Skj ],k = 1, . . . , ma(11)where P̈k is the absolute acceleration for a given position k in the form (α ; a).
The velocity and acceleration equations can be seen as additional pose information that reduce the number of poses needed. Counting the number of independent
unknowns nx and independent equations n f we obtain,

Kinematic Synthesis of Multi-fingered Robotic Hands for Finite and Infinitesimal Tasks

5nx = ns + n j (m p + mv + ma − 1)

(12)n f = nc + nd (m p + mv + ma − 1)(13)

where ns is the number of independent structural parameters, n j the number of joint
degrees of freedom, nc the number of independent constraints and nd the degrees of
freedom of the end-effector motion. The number of positions, velocities and accelerations are given by m p , mv and ma respectively. If we consider m = m p + mv + ma
we obtain the familiar formula [10],m=ns − nc+1nd − n j(14)

4 Experimental Set up and Task Specification
Since the first step in our synthesis technique is related to choosing a specific task,
the kinematic task selected for the design is the operation of a standard door knob.
In order to define this kinematic task, the door knob grasping and turning movement
was performed, from a start to end spatial locations. During the movement, the subject emulates the opening of the door motion with an apparatus shown in Fig. 1a.
The upper limb kinematics at specific points of interest are captured by a 3D Motion Capture System (Vicon, OMG Plc., UK), available in our Human Interactive
Robotics Lab at Texas A&M University.
Three infrared cameras track the position of each marker relative to a predefined
global coordinate frame, with a sampling rate of 100 Hz. Five moving frames aredefined at the: elbow, wrist, and tip of thumb, tip of index and tip of middle fingers,
respectively. Fig. 1b shows the marker attachment. To only synthesize the motionof the forearm, the positions chosen were transformed from absolute positions P̂i topositions local to the elbow P̂i j = P̂j−1 P̂i with P̂J is the position of the elbow. For
velocities this can be written as Ṗi j = Ṗi − Ṗ j .
The obtained positions and velocities were then used as a task for the kinematicsynthesis of the multi-fingered robotic hand. The kinematic specification consists

Fig. 1 1a The experimental
apparatus for emulating thedoor knob task and 1b the
kinematic model configuredin the 3D Motion Capture
System.
(a)

(b)

6

E. Simo-Serra, A. Perez-Gracia, H. Moon and N. Robsonof set of three spatial displacements defined by P̂k = (ψ k , dk ), k = 1, 2, 3, and theassociated angular and linear velocities Ṗk = (ω k ; vk ), k = 1, 2 in two of the positions
for each fingertip.

5 Solving Numerically
The solver used is an updated version of the kinematic synthesis solver for tree
structures [13] updated to support the design equations (10) and (11). The solver iscomposed of a Genetic Algorithm (GA) paired with a Levenberg-Marquadt (LM)local optimizer. For more details on the solving approach see [13].
The full equation system for a multi-fingered robot with b fingers formed by nrevolute joints can be defined directly by manipulation of the design equations,nc ∆ θ̂ k
i S
k
=
2,
.
.
.
,
m
p
c
i,c
,
P̂1k − ∏ e 2

c = 1, . . . , b


i=1


nc


k
=
1,
.
.
.
,
m
c
v

Ṗk − ∑ θ̇ik Ski,c ,F(S, ∆ θ̂θ , θ̇θ , θ̈θ ) = 


c
=
1,
.
.
.
,
b
i=1
!



nc −1
nc
nc
k = 1, . . . , ma  P̈c −k kkk kk∑ θ̈i Si,c + ∑ θ̇i ∑ θ̇ j [Si,c , S j,c ] , c = 1, . . . , b 
k
i=1
j=i+1
i=1
(15)
where b is the number of branches or fingers, nc is the number of joints for a branch
k are the instantaneous axisc, n is the total number of joints in the structure and Si,cof the joint i in the branch c for the frame k calculated by (4). A valid mechanism issaid to be found when F(S, ∆ θ̂θ , θ̇θ , θ̈θ ) = 0 .

6 Results
The kinematic structure of the hand consists of a three degree of freedom palm+wrist
complex (RRR), and three fingers, each of which is modeled as a two degree of
freedom RR kinematic chain as seen in Fig. 2a. This structure was chosen for the
kinematic synthesis of the task as it has fewer degrees of freedom than the human
hand while having an non-fractional number of required samples. As this paper does
not deal with structural synthesis, a pre-determined topology is used. No additional
constraints were placed on the structure. For this kinematic structure with 9 revolutejoints, a total of m = 5 samples are needed as obtained from (14).
The experimental task consists of many hundreds of frames of which m p = 3
were selected. For two of them velocity information was also used providing mv =2. Due to the nature of the door-knob opening task, the accelerations, related tocurvature constraints (i.e. sliding motion of the fingers along the door-knob) are
fairly small in comparison to the other task specifications and were not taken into

Kinematic Synthesis of Multi-fingered Robotic Hands for Finite and Infinitesimal Tasks(a) Topology(b) Full System(c) Index Finger(d) Middle Finger

7(e) Thumb

Fig. 2: The topology used and overview of a solution mechanism found.

account. Therefore, our task consists of positions, prescribed at the point where thefingers need to grasp the door knob, and velocities, describing the contact of thefingers with the door knob. The resulting equation system has 90 unknowns and
102 equations of which only 72 are independent. A set of 50 solutions was obtained
taking an average of 18.06 minutes per solution and needing an average of 13.76
generations per solution with a population of 100 entities.
A selected solution mechanism of the doorknob task can be seen in Fig. 2. The
thick joint axes are connected by thinner lines at the intersections of the common
normals of the joints and the joint axes. The origin is represented by using a squareand the end-effectors are represented by using spheres. This solution shown is morecompact than the human hand as all the joints except one are grouped together andis able to perform the same task as the human hand. It was observed that generally
the solutions have a similarity between the index and middle finger, while the thumbhas a different shape, which is similar to how the human hand is designed.

7 Conclusions
This paper presents a novel dimensional synthesis methodology for articulated systems with a tree structure using additional constraints such as velocity and acceleration. It also presents a new design for numerically solving kinematic systems using
these new constraints, adding upon the previous work of numerically solving tree
structures with kinematic synthesis. The addition of velocity, acceleration and otherderivatives at the positions allows a better local approximation of the task motion,
as well tasks with contact and curvature specifications.
For the selected knob-operating task, a tree-like robot with three two-jointed fingers has been designed. Kinematic synthesis is just one step in the design process,one that allows you to create innovative candidates fitted for the kinematic tasks
under consideration. Enough solutions have been found to suggest that a method toanalyze and rank those needs to be a part of the design process. These results showthat the dimensional synthesis of robotic multi-fingered hands is possible. In addition, multi-fingered hands appear not to be redundant when a task involving several
fingers is to be performed.

8

E. Simo-Serra, A. Perez-Gracia, H. Moon and N. Robson

Acknowledgements This work is partially supported by the Spanish Ministry of Science andInnovation under project DPI2010-18449.

References[1] Borst, C., Fischer, M., Haidacher, S., Liu, H., Hirzinger, G.: DLR Hand II:
Experiments and experiences with an anthropomorphic hand. In: ICRA (2003)[2] Ceccarelli, M., Nava Rodriguez, N., Carbone, G.: Design and Tests of a Three
Finger Hand with 1-DOF Articulated Fingers. Robotica 24, 183–196 (2006)[3] Cervantes-Sánchez, J.J., Rico-Martı́nez, J.M., González-Montiel, G.,
González-Galván, E.J.: The differential calculus of screws: Theory, geometrical interpretation, and applications. Proc. of the Institution of MechanicalEngineers, Part C: Journal of Mechanical Engineering Science 223(6),1449–1468 (2009)[4] Chalon, M.e.a.: Dexhand : a space qualified multi-fingered robotic hand. In:
ICRA (2011)[5] Dai, J.S., Wang, D., Cui, L.: Orientation and workspace analysis of themultifingered metamorphic hand-metahand. Trans. Rob. 25, 942–947 (2009)[6] Grebenstein, M., Chalon, M., Hirzinger, G., Siegwart, R.: A method for handkinematics design. 7 billion perfect hands. In: ICABB (2010)[7] Mason, M., Srinivasa, S., Vazquez, A., Rodriguez, A.: Generality and simple
hands. International Journal of Robotics Research (2010)[8] Patarinsky Robson, N., McCarthy, J.M.: Kinematic Synthesis With Contact
Direction and Curvature Constraints on the Workpiece. In: IDETC (2007)[9] Patarinsky Robson, N., McCarthy, J.M.: Synthesis of a Spatial SS Serial Chain
for a Prescribed Acceleration Task. In: World Congress in Mechanism andMachine Science (IFToMM). Besancon, France (2007)[10] Perez-Gracia, A., McCarthy, J.M.: Kinematic synthesis of spatial serial chainsusing clifford algebra exponentials. Proc. of the Institution of MechanicalEngineers, Part C: Journal of Mechanical Engineering Science 220(7), 953–
968 (2006)[11] Rico, J.M., Gallardo, J., Ravani, B.: Lie algebra and the mobility of kinematic
chains. Journal of Robotic Systems 20(8), 477–499 (2003)[12] Selig, J.M.: Geometric Fundamentals of Robotics (Monographs in Computer
Science). SpringerVerlag (2004)[13] Simo-Serra, E., Moreno-Noguer, F., Perez-Gracia, A.: Design of nonanthropomorphic robotic hands for anthropomorphic tasks. In: IDETC (2011)[14] Soto Martell, J., Gini, G.: Robotic hands: Design review and proposal of new
design process. World Academy of Science, Engineering and Technology 26(2007)[15] Ueda, J., Kondo, M., Ogasawara, T.: The multifingered naist hand system for
robot in-hand manipulation. Mechanism and Machine Theory 45(2), 224–238(2010)