Scholarly article on topic 'Kinematics of Hex-Piderix - A Six-Legged Robot - Using Screw Theory'

Kinematics of Hex-Piderix - A Six-Legged Robot - Using Screw Theory Academic research paper on "Mechanical engineering"

Share paper

Academic research paper on topic "Kinematics of Hex-Piderix - A Six-Legged Robot - Using Screw Theory"


open science | open minds


International Journal of Advanced Robotic Systems

Kinematics of Hex-Piderix - A Six-Legged Robot - Using Screw Theory

Regular Paper

Xóchitl Yamile Sandoval-Castro1'*, Mario Garcia-Murillo1, Luis Alberto Perez-Resendiz2 and Eduardo Castillo-Castañeda1

1 Centro de Investigacion en Ciencia Aplicada y Tecnologia Avanzada (CICATA)-IPN, Mexico

2 Instituto Tecnologico de Queretaro (ITQ), Mexico

* Corresponding author E-mail:

Received 12 Jun 2012; Accepted 25 Sep 2012 DOI: 10.5772/53796

© 2013 Sandoval-Castro et al.; licensee InTech. This is an open access article distributed under the terms of the Creative Commons Attribution License (, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract In this paper the kinematic analysis of a six-legged robot, hereafter named Hex-piderix, is carried out. A three revolute (3R) chain has been chosen for each limb in order to mimic the leg structure of an insect. The rotation matrix, with unitary vectors, and the Denavit-Hartenberg (D-H) conventions are used to find the pose of the thorax. The problem of inverse position is solved by geometrical analysis. The direct and inverse infinitesimal kinematics are obtained by the reciprocal screw theory, considering a suction cup attached to each leg and modelling it as a UP linkage. A numerical example of the thorax pose was made by solving the equations obtained from the direct position analysis. The equations of the inverse position analysis were solved to obtain the angles of the joints. Finally, the velocity values of the thorax obtained from the infinitesimal kinematics were validated by simulating the movements of Hex-piderix using specialized software.

Keywords Hexapod Robot, Kinematics, Screw Theory, Suction Cup

1. Introduction

Legged robots have better performance in rough terrain than robots with wheels, thanks to the possibility of

coordinated movements that provide greater flexibility and adaptability.

Legged robots can be classified as: bipeds, quadrupeds, hexapods and octopods. Most climbing robots are hexapods or quadrupeds - the former providing better static stability than the latter. They can perform static gaits by supporting the robot's body on five legs at any time, while quadrupeds can only walk steadily on a minimum of three legs. This feature makes hexapods much more stable than quadrupeds, since they can use a bigger support polygon. Notice that stability is a fundamental issue for mobile robots and speed is an important factor for robot locomotion - a quadruped robot is three times slower than a hexapod. In terms of reliability, the hexapod can continue walking even when one of its legs fails [1].

To obtain a dynamic model and to design a control algorithm of legged robots, it is important to model the kinematic behaviour of the complex multi-legged robotic mechanism.

In [2], the inverse position problem for each end-effector (EE) of the legs of the quadruped robot CLIBO is solved

by homogeneous transformation matrices. The same approach is presented in [3] for a hexapod robot assuming forward motion at a constant velocity (v) in a straight path on a flat surface with alternating tripod gait. In this case, the thorax is held at a constant height and kept parallel to the ground plane during motion, and the thorax gravity centre is assumed to be located at its geometric centre. In [4], the problem of a hexapod robot is solved as in [3] but without any restriction.

A legged robot can be considered a partially parallel mechanism where the thorax is the mobile platform. In [5], the direct and inverse kinematics of the mobile platform of the quadruped robot Kamambare, are solved by modelling it as a parallel robot. The analysis is performed using the D-H parameterization, starting at the surface and advancing towards the platform.

The work presented in [6] solves the kinematics of a four-legged robot composed by GZ-I modules, using kinematics graph theory to obtain robot posture. Two homogeneous transformation matrices describe the position of the robot, matrix R of rods and matrix J of joints. The joints are classified into horizontal and vertical joints depending on their axis of rotation.

The position problem of the tip leg has been studied for quadruped and hexapod robots [2-6], however, the problem of the thorax pose has received little attention [56]. Furthermore, the infinitesimal kinematics of legged robots have been omitted.

One of the most important things in the study of legged robots is showing stability when walking. [7] conducted a study of impulse response and stability of a fractional oscillator, which determine the conditions for the fractional oscillator is strictly stable, unstable and marginally stable. Which determine the conditions to make it strictly stable, unstable and marginally stable.

In this paper, an analysis of the direct and inverse position of the hexapod robot called Hex-piderix is carried out, in addition, the infinitesimal kinematics are solved by using screw theory.

2. Description of the Hex-piderix robot

The basic configuration proposed for the robot Hex-piderix is shown in Fig. 1. The frame {0} represents the origin, while {Q} indicates the local frame attached to the robot thorax. The robot consists of six identical legs, Li, ..., L6, that are distributed symmetrically around the thorax of the robot. Each limb has 3 degrees of freedom (DOF) that consist of three links, coxa, femur and tibia, connected by rotational joints. In the tip of the tibia there is a suction cup to adhere to vertical surfaces.

Figure 1. Robot configuration. 3. Position analysis

The symmetry of the mechanism simplifies the position analysis. The inverse and direct kinematics are solved from geometrical analysis of the mechanism.

3.1 Forward position analysis

The aim of this analysis is to find the robot pose at the thorax level {Q} with respect to {0} for a given set of joint angles, (jij, where i represents the number of the limb (i = 1,..., 6) and j the number of the joint (j = 1, 2,3).

To determine the pose of the robot it is assumed that there are three legs touching the ground, Li, Ls and Ls. The corresponding coxa links, represented by the points Pi, P3, and Ps, form an isosceles triangle composed by base a and sides b. The local frame {Q} is located at the triangle's centroid, its axis Xq is directed toPi [8], as illustrated in Fig. 2.

To ensure the stability of the robot, the projection of the centre of gravity must fall within the polygon formed by the tips of the limbs.

Figure 2. Triangle formed by coxa links.

The unitary vectors corresponding to {Q} were calculated as follows:


P 2 - P3


(2) (3)

where, Q is the vector that includes the coordinates of the centroid.

The rotation matrix of the centroid is obtained with the unitary vectors, Eq. (4).

R _[X Q 'YQ'¿ Q ] =

ux vy wz

ux vy wz

ux vy wz

Then, the pose of the triangle is described by the homogeneous transformation matrix 4x4 Tq defined in Eq. (5):

tW _ 1C —

R Q 0 1

The rest of the analysis is performed with the D-H method for a leg. In Fig. 3 the joint variables of the

mechanism leg, ft,i, ft,% qi,3 are defined, as well as the lengths of the coxa, femur and tibia, di, d% <¿3 respectively.

The limbs described above are similar to 3 DOF serial manipulators. From this, the homogeneous transformation matrices between frames are obtained, taking into account the D-H parameters shown in Table 1, which are: link length (a,.), link twist (a,:), joint distance ( di) and joint angle (0,), required to completely describe the three joints of the legs.

Joint Oi OLi a i di

Coxa Qi,i 90 di 0

Femur ft,2 0 d-2 0

Tibia ft, 3 0 d3 /7,

Table 1. D-H parameters for legs.

The homogeneous transformation matrix that describes the translation and rotation between frames i and i - 1 [9], is shown in Eq. (6).

— 1_

COS til - sin til cos at sin 01 sin ai CM COS

sin di cos 0i cos ai - cos tii sin ai ai sin

0 sin ai cos ai di

0 0 0 1

The homogeneous transformation matrices of the links are presented below in Eqs. (7), (8) and (9).

rnF 1T

cos qi: 1 sin ft, 1 0 0

COS ft,2

sin ft,2 0 0

Sill ft, 1 -COS ft, 1 0 0

-sin ft,2

COS ft ,2 0 0

d 1 cos ft,1 d\ sin ft, 1 0 1

d2 cos ft,2 d2 sin ft,2 0 1

cos qi 3 - sin qi 3 0 d3cos qi 3

sin q{ 3 cos q{ 3 0 d3 sin q{ 3

0 0 l h

0 0 0 l

Hence, the pose of the coxa frame {Ci} with respect to {Si}, is defined in Eq. (10).

ts' tf'tt'ts'

Then, the frame attach to thorax {Q} is defined, with respect to {S}, in Eq. (11).


TS _ TQ _

Figure 3. D-H parameters of i-leg.

nqx 0qx a qx Vqx

nqy oqy a qy Vp

nqz oqz aqz Vqz

0 0 0 l


Pqx = rx - h ( C,.1 V x - S,.1 U x ) + C,.1 d 1 U x + S,.1 d 1 Vx + + S 2 d 2 Wx + C 2 d 2 ( C,.1 U x + s,.1 v x ) + C 3 d 3( S 2 W x + + C 2 ( c,.i U x + s,.i vx )) + S 3 d 3 ( C 2 w x - S 2 ( C,.1 U x + S,.1 Vx ))

P„ = ry - h ( C, .1 V, - S, .1 U, ) + C,.1 d 1U, + S,1d 1 V, + S,.2 d 2 +

+ C, .2 d 2 ( c,.1 U, + ,.1 v, ) + C 3 d 3( S, .2 + C,.2( C,.1Uy + S,.1V, )) +

+ S 3 d 3( c , .2 - s,.2( c,. 1U, + s,.1 )

= - h ( C, .1 - S,.1 Uz ) + C,.1 d 1 Uz + S, .1 d 1 + S,.2 d 2 +

+ C, .2 d 2 ( C, .1 Uz + S,.1 ) + C,.3 d 3( S,.2 W z + C, .2( C,.1 Uz + S,.1 )) + S,.3 d 3( C,.2 Wz - S, . 2 ( C,.1 Uz + S,.1 Vz ))

qi,j = tan-1 ^c, W«2 + b2 - c2 )- tan-1 (a,b) . (13)


a = 2 ^2 U PL + Pcy - dl

b = IPscz^

c = (y/Pfcx + Pfcy- dl)' + PL +dl- d\

where, [rx,ry,rz] corresponds to centroid coordinates, 3.2 Inverse analysis position

This analysis consists of determining the joints angles, qi,i , Qi,2 and Qi,3, starting from a given pose of the thorax.

The problem is solved for each leg separately, in a geometric way considering three restrictions: 1) all joints permit only rotation about an axis; 2) the femur and tibia always rotate around parallel axes, and 3) the physical constraints of each joint, which give a specific angular range for each active joint.

The coxa angle, Fig. 4, can be found by projecting the i-leg on the plane XY, Eq. (12).

Figure 4. Projection of the i-leg on plane XY.

1 = arctan

From Fig. 5 and Eq. (12), qi,2 and qi,3 are expressed as:

qi ,3 = cos~

PL + Pscy - dl) + PL - d2 - d32

2d2 d-3

. (14)

Figure 5. Configuration of i-leg.

4. Infinitesimal kinematics

The velocity and acceleration analysis of the robot are solved using screw theory. As an approach to the study of the dynamics of the robot, the manipulator is assumed as a parallel mechanism. Its limbs are modelled as shown in Fig. 6.

Note that the active revolute joints are associated with the screws 3$f, 4$f and s$f. During normal operation of the robot, the motor corresponding to twist 5$f, is used to move its limb during the locomotion. When the manipulator is in a stable position, this joint becomes a passive joint; however, since the motor has an encoder, its angular position, velocity and acceleration are known. The motors associated with screws and 4$f, orientate the thorax with respect to the global frame.

On the other hand, the suction cup is modelled as a UP linkage, and its corresponding screws are 0$i, and whose axes are mutually perpendicular. In practice, the displacements of these screws rely on the elastic properties of the suction cup.

4.1 Preliminary concepts of screw theory

An infinitesimal screw $, or twist, is a vector in $€l6 that consists of a primal part, -P($) = s, and a dual part, !?($) = so, where s is a unitary vector along the instantaneous axis of the screw; so is the moment produced by vector s with respect to a vector ro/p:

so = hs + s x ro/p where h is the screw pitch.

Moreover, the following operations are defined [8]. Let $1 = («1, S01), $2 = (¿2, ¿02), $3 = (S3, S03) be three screws, and AgR.

• Addition

Vo = J iili,

$1 + $2 = (Si + S2, So 1 + S02) Multiplying by scalar:

A$i = (Asi, Asoi)

Lie product

[Si $2]

si x s2 Sl x S02 — S2 X sol

Killing form

Ki($i,$2) = si-s2.

• Klein form

{Sl! $2} = Sl • S02 + S2 • soi.

Figure 6. i-th kinematic chain robot.

4.2 Velocity analysis

The forward velocity analysis consists of finding the velocity state of the thorax, Vo, with respect to the global reference frame, given the joint rate velocities a^>b- It is given by the following expression:

= 0u\ + 1ui1$2i+... + 6<4 (1)

where w and vo are, respectively, the angular and linear velocity of the thorax with respect to the global frame. The terms uiuj represent the ratios of rotational or translational velocity of body b with respect to a belonging to i-th kinematic chain. Moreover, given the actuation scheme of the robot 5^6 = 9«, 1, 4^5 = qt,2 and 30;! = qi:3, Eq. (20) can be written in matrix form as follows:

where Ji = [°$,V$?,2$?,3$?,4$?,5$?] is the Jacobian of the i — th kinematic chain and

iii = [o^i, i^l, 2^3,31^4,4^5,5^6]T is the vector of joint velocities of such a chain.

A useful concept to simplify this analysis is reciprocity. Two screws, $1 and $2 are reciprocal if the Klein form between them is zero, {$1; $2} = 0. With this definition, one can demonstrate that the screw is reciprocal to all screws belonging to the i — th chain except to the 5$®. Then, applying the Klein form on both sides of Eq. (20), it gives:

fSf; Vo} =gi,1{1$|;

On the other hand, let $i" be a zero-pitch screw that passes by point Si and its primal part is P($0 = D(2$i) x PC$1). Then, applying the Klein form between both sides of Eq. (20) and this screw,

{$¿5 Vo} = +

Qi,3 '

Qi, 1 •

'} + Qi,2 {$í; 4$¿} + 1} (23)

Eqs. (22) and (23) can be written as a lineal system as follows:

where M :

M AVo = Q,

fl<£2 l<fc2 ltfi2 <r>r ftr flsrl a _

[ $2) »P3J, ¿A —

polarity operator defined by an identity matrix I3X3, and the matrix 0 of the same order. Finally,

91,3 {ST ; 3$?} + 4i,a {$1; 4$f } + gi,i {$i ; 5$f }

' ............'1}

11,3 1 1'г J I \»i i I ii,! ]

92,3 {$2 i } + «2,2 { $2 j $2/ 92,1 { $2 i .93,3 {$3; 3$¿} + 93,2 {$3; 4í|} + 93,1 {$3;

Thus the state of velocity Vo can be calculated without knowing the ratio of passive velocities, which represents an advantage over other models.

Moreover, the inverse velocity analysis consists of finding the ratios of manipulator velocities for a given velocity state. To achieve this, it is necessary to isolate iii in Eq. (21).

4.3 Acceleration analysis

Brand in 1947 introduced the concept of reduced acceleration state, Ao , of a rigid body [6]

ao — tj x vo

where a — u and ao are the angular and linear acceleration of the thorax, respectively. Furthermore, those accelerations can be written in the form of screws as follows:

Ao = Jt îîi + Ci,

where ilj is the matrix whose elements are the joint acceleration ratios of the i — th kinematic chain. Moreover Ci is the Lie screw products, which are given by:

In the same manner as the velocity analysis, the Klein form is applied to Eq. (26) and screws 0$| and 2$f. This leads to


M Aj4O = Q

Q = [ai, a2, a3, 6i, b2, 63]T di = qt, 1 {X$i ; 5$f} + {1Si ; Ci\

bi = 9i,3 ; 3$i} + qi,2 ; 4$f} + qi, {SI; Ci}

Finally, to solve the inverse analysis, it is necessary to isolate iii in Eq. (26).

5. Numerical example

In this section a numerical example is provided with the purpose of showing how to deal with the kinematics of this model. Hereafter the units used are millimetres, unless otherwise stated. In this case, the dimensions of the geometrical parameters of the moving triangular prism are a = 153 and b= 131.203, meanwhile Q = (116.803, 216.711,160.772) is the centre of the prism; whereas the nominal positions of the revolute joints connecting the limbs to the first link are:

Pi = (163.838,218.372,192.622),

P2 = (116.497,218.769,70.298),

P3 = (30.387,218.769,196.766),

The coordinates of the suction cups are:

S2 = (-68.822,30.166,243.952), S3 = (253.766,30.166,253.893).

Links length, coxa, femur and tibia are given by: di = 57.61, d2 = 64.54 and d3 = 11.41, respectively.

Fig. 7 shows the joints angle of the legs L\, and Ls, for the time range 0 — 0.25 seconds.

Figure 7. Position of the joints angle.

Firstly, the direct position equations were programmed to calculate the thorax pose, taking into account the initial and final positions, as well as geometric parameters. Fig. 8 shows the robot moving from the initial to the final position.

Figure 8. Hex-piderix position.

Fig. 9 shows the thorax position, where the components x and y are kept constant during the motion of the robot, without considering the effect of the suction cup deformation.

Figure 9. Thorax position.

With the above data, both angular and linear velocities of the numerical example are calculated. The resulting time history of the linear velocity components of the centre of thorax using the screw theory is shown in Fig. 10. Angular velocity is shown in Fig. 11.

Figure 10. Linear velocity of the Hex-piderix robot.

Angular velocity


i] r; i i i i

0 0.05 0.1 015 0.2 025

time, s

Figure 11. Angular velocity of the Hex-piderix robot.

As is shown in Figs. 8 and 9, the components of the position vector of thorax are not constants due to suction cup deformations; hence the angular velocity is different to zero.

6. Conclusion

It was developed a method to determine the rotation matrix of the thorax of a legged robot with respect to the global frame, without having to use trigonometric functions, since these could lead to ambiguous values for the orientation. Although, this method is usually applied in the study of parallel robots, it can be successfully employed in the analysis of legged robots.

The velocity and acceleration states of the thorax with respect to the fixed platform are written in screw form through each one of the three limbs of the robot. The equations obtained are linear, simple and compact

through the use of the Klein form of Lie algebra. In addition, it is not necessary to know the velocities and accelerations of passive joints to solve forward velocity and acceleration analysis, respectively.

This kinematics study provides the basis for generating control strategies that allow the robot to recover from perturbations during locomotion, as well as keeping the thorax in a constant orientation.

It would be helpful to consider the suction cup attached to each tip of the tibia when modelling the kinematics of a legged robot, as this can introduce an error.

7. Acknowledgments

The authors acknowledge to the SIP-IPN for funding the research project 20121376

8. References

[1] P. Gonzalez de Santos, E. Garcia and J. Estremera.

Quadrupedal locomotion: an Introduction to the control of four-legged robots. Verlag, London: Springer, 2006, pp. 3-32.

[2] A. Sintov, T. Avramovich and A. Shapiro. "Design and

motion planning of an autonomous climbing robot with claws." Robotics and Autonomous System, vol.59, pp.1008-1019, June 2011.

[3] S. Shekhar Roy, A. Kumar Singh and D. Kumar Pratihar. "Estimation of optimal feet forces and joint torques for on-line control of six-legged robot." Robotics and Computer-Integrated Manufacturing, vol.27, pp.910-917, March 2011.

[4] M.C. Garcia-Lopez, E. Gorrostieta-Hurtado, E. Vargas-Soto, J.M. Ramos-Arreguin, A. Sotomayor-Olmedo and J.C. Moya-Morales. "Kinematic analysis for trajectory generation in one leg of a hexapod robot." Procedia Technology, vol.3, pp.342-350, 2012.

[5] A. Segundo-Potts and J.J. da Cruz (2011). A Kinematical and Dynamical Analysis of a Quadruped Robot, Mobile Robots, Available:

[6] Y. Fang, H. Zhang, et al., "The Mathematical Model

and Control Scheme of a Four-Legged Robot Based on GZ-I and Note Module", Lecture Notes on Artificial Intelligence, vol. 6424, pp. 300-309, 2010.

[7] M. Li, S. Cheng and S.Y. Chen, "Exact solution of impulse response to a class of fractional oscillators and its stability", Mathematical Problems in Engineering, Vol. 2011, AID 657839, 2011

[8] J. Gallardo-Alvarado, C.R. Aguilar-Najera, L. Casique-Rosas, L. Perez-Gonzalez, J.M. Rico-Martinez, "Solving the kinematics and dynamics of a

modular spatial hyper-redundant manipulator by [9] L-W.Tsai. Robot analysis : the mechanics of serial and means of screw theory." Multibody Syst. Dyn. vol20, parallel manipulators. New York: John Wiley & Sons,

pp. 307-325. 2008. Inc., 1999, pp. 54-109.