a comparative study of two methods for forward kinematics...

5
A Comparative Study of Two Methods for Forward Kinematics and Jacobian Matrix Determination Abdel-Nasser Sharkawy 1, 2 , Nikos Aspragathos 2 1 Mechanical Engineering Department Faculty of Engineering, South Valley University Qena 83523, Egypt 2 Department of Mechanical Engineering and Aeronautics University of Patras Rio 26504, Greece e-mail: [email protected], [email protected]. AbstractIn this paper, a comparative study of two methods are presented to determine the forward kinematics and Jacobian matrix for any serial manipulator, based on product of exponentials formula and unit dual quaternion algebra. This comparison is qualitative and particularly quantitative taken into account computational costs and memory requirements that are very critical in the manipulator control and real-time algorithms. For the first time the computational cost in determining the Jacobian matrix by using these two algorithms is compared. The two algorithms are applied to the 7-DOF Kuka Lightweight Robot using MATLAB and compared. Keywords-forward kinematics; jacobian matrix; product of exponentials; dual quaternion; comparison; kuka robot I. INTRODUCTION The most popular method used in robot kinematics is based on the Denavit-Hartenberg (D-H) notation for definition of spatial mechanisms and on the homogeneous transformation of points [1]. Many researchers sought to find algorithms based on appropriate theories for representing the rigid body motions in space and to make them well understandable and improve their efficiency. Alternative approaches based on screw theory were proposed in robot kinematics and the most important ones are expressed via unit dual quaternions [2] or exponentials of twists [3]. In screw theory, every transformation of a rigid body or a coordinate system with respect to a reference coordinate system can be expressed by a screw displacement, which is a translation along an axis with a rotation about the same axis [4]. As an efficient tool to describe rigid transformation, the unit dual quaternion has been applied in various fields, such as robotics, mechanical design, computer graphics and vision as well as navigation [5, 6, 7]. The dual quaternion deals with line representation and transformation instead of point representation and transformation under exponentials of twists. Aspragathos and Dimitros [8] compared unit dual quaternion method based on the transformation and representation of joint axes with the homogenous transformation method and Lie algebra representation. They found that the unit dual quaternion and Lie algebra based methods offer a more compact and consistent way for the definition of the end-effector than the homogeneous transformation one. Sariyildiz et al [9] compared three inverse kinematic formulation methods for the serial industrial robot manipulators based on screw theory. The first one was based on quaternion algebra, the second one was based on dual quaternions, and the last one was the exponential mapping method. They found that the method which is based on dual quaternion gives the most compact and computationally efficient solution. In both of the previous publications the computational cost of the forward kinematic equations was considered but not the one for the Jacobian matrix calculation. The unit dual quaternions are used in the design of controllers for rigid bodies and manipulators. Erol Özgüra, Youcef Mezouarb [10] used unit dual quaternions to model the kinematics and to design a controller for the pose of a robot arm. They presented the computational cost for the Jacobian calculation based on the exponentials of the unit dual quaternions. They found that this modeling is compact and computationally efficient and then suitable for real time control applications. Pham and his group [11] presented an unified position and orientation control for robot manipulator by describing the end-effector motion as a dual quaternion involving the translation and rotation. Their simulation and experimental results highlighted the efficiency and performance of this controller. In a recent paper [12], a robust controller was presented for robot manipulators using unit dual quaternion that allows an advanced representation of the end-effector transformation without decoupling the rotational and translational dynamics. So the investigation of the computational efficiency of the robot kinematics and dynamics is very important for controllers design and other real-time considerations. In this paper, the forward kinematics using two algorithms; product of exponentials (PoE) formula and unit dual quaternion are presented. Mathematical analysis of the main steps of these algorithms is performed in order to facilitate their comparison in qualitative and quantitative terms. Compactness, easiness of understanding and representation and transformations, computational costs and memory requirements are considered. In addition, the Jacobian matrix is determined using both approaches and for the first time a comparison is made between these algorithms 179 2017 International Conference on Mechanical, System and Control Engineering 978-1-5090-6528-8/17/$31.00 ©2017 IEEE

Upload: dangdang

Post on 06-Jul-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

A Comparative Study of Two Methods for Forward Kinematics and Jacobian

Matrix Determination

Abdel-Nasser Sharkawy1, 2

, Nikos Aspragathos2

1Mechanical Engineering Department

Faculty of Engineering, South Valley University

Qena 83523, Egypt 2 Department of Mechanical Engineering and Aeronautics

University of Patras

Rio 26504, Greece

e-mail: [email protected], [email protected].

Abstract—In this paper, a comparative study of two methods

are presented to determine the forward kinematics and

Jacobian matrix for any serial manipulator, based on product

of exponentials formula and unit dual quaternion algebra. This

comparison is qualitative and particularly quantitative taken

into account computational costs and memory requirements

that are very critical in the manipulator control and real-time

algorithms. For the first time the computational cost in

determining the Jacobian matrix by using these two algorithms

is compared. The two algorithms are applied to the 7-DOF

Kuka Lightweight Robot using MATLAB and compared.

Keywords-forward kinematics; jacobian matrix; product of

exponentials; dual quaternion; comparison; kuka robot

I. INTRODUCTION

The most popular method used in robot kinematics is based on the Denavit-Hartenberg (D-H) notation for definition of spatial mechanisms and on the homogeneous transformation of points [1]. Many researchers sought to find algorithms based on appropriate theories for representing the rigid body motions in space and to make them well understandable and improve their efficiency.

Alternative approaches based on screw theory were proposed in robot kinematics and the most important ones are expressed via unit dual quaternions [2] or exponentials of twists [3]. In screw theory, every transformation of a rigid body or a coordinate system with respect to a reference coordinate system can be expressed by a screw displacement, which is a translation along an axis with a rotation about the same axis [4]. As an efficient tool to describe rigid transformation, the unit dual quaternion has been applied in various fields, such as robotics, mechanical design, computer graphics and vision as well as navigation [5, 6, 7]. The dual quaternion deals with line representation and transformation instead of point representation and transformation under exponentials of twists.

Aspragathos and Dimitros [8] compared unit dual quaternion method based on the transformation and representation of joint axes with the homogenous transformation method and Lie algebra representation. They found that the unit dual quaternion and Lie algebra based methods offer a more compact and consistent way for the definition of the end-effector than the homogeneous

transformation one. Sariyildiz et al [9] compared three inverse kinematic formulation methods for the serial industrial robot manipulators based on screw theory. The first one was based on quaternion algebra, the second one was based on dual quaternions, and the last one was the exponential mapping method. They found that the method which is based on dual quaternion gives the most compact and computationally efficient solution. In both of the previous publications the computational cost of the forward kinematic equations was considered but not the one for the Jacobian matrix calculation.

The unit dual quaternions are used in the design of controllers for rigid bodies and manipulators. Erol Özgüra, Youcef Mezouarb [10] used unit dual quaternions to model the kinematics and to design a controller for the pose of a robot arm. They presented the computational cost for the Jacobian calculation based on the exponentials of the unit dual quaternions. They found that this modeling is compact and computationally efficient and then suitable for real time control applications. Pham and his group [11] presented an unified position and orientation control for robot manipulator by describing the end-effector motion as a dual quaternion involving the translation and rotation. Their simulation and experimental results highlighted the efficiency and performance of this controller.

In a recent paper [12], a robust controller was presented for robot manipulators using unit dual quaternion that allows an advanced representation of the end-effector transformation without decoupling the rotational and translational dynamics. So the investigation of the computational efficiency of the robot kinematics and dynamics is very important for controllers design and other real-time considerations.

In this paper, the forward kinematics using two algorithms; product of exponentials (PoE) formula and unit dual quaternion are presented. Mathematical analysis of the main steps of these algorithms is performed in order to facilitate their comparison in qualitative and quantitative terms. Compactness, easiness of understanding and representation and transformations, computational costs and memory requirements are considered. In addition, the Jacobian matrix is determined using both approaches and for the first time a comparison is made between these algorithms

179

2017 International Conference on Mechanical, System and Control Engineering

978-1-5090-6528-8/17/$31.00 ©2017 IEEE

considering the computational time for the Jacobian calculation. The two methods are applied to the 7-DOF Kuka LWR Robot using MATLAB to determine the forward kinematics and Jacobian matrix and are compared.

II. PRODUCT OF EXPONENTIALS (POE) FORMULA

The product of exponential formula presents some significant advantages compared to the D-H formulation since it uses only the base and tool frames and the determination of the twists is quite easy and compact representation of the joint axes. The well-known equations are presented for the facilitation of the computational burden calculation and the reader can find details in the presented references.

Using the Product of Exponentials (PoE) formula, the forward kinematics equations for a serial manipulator with 𝜃 the vector of the joint are the following [3];

𝑔𝑠𝑡(𝜃) = 𝑒 �̃�1𝜃1 … 𝑒 �̃�𝑖𝜃𝑖 . . . 𝑒 �̃�𝑚𝜃𝑚 𝑔𝑠𝑡(0)

where

𝑒�̃�i𝜃𝑖 = [𝑒�̃�𝑖𝜃𝑖 (𝐼 − 𝑒�̃�𝑖𝜃𝑖)(𝜔𝑖 × 𝑣𝑖)

0 1]

𝑒�̃�𝑖𝜃𝑖 = [𝜔x

2 𝑣𝜃 + 𝑐𝜃

𝜔x𝜔y 𝑣𝜃 + 𝜔z𝑠𝜃

𝜔x𝜔z 𝑣𝜃 − 𝜔y𝑠𝜃

𝜔x𝜔y 𝑣𝜃 − 𝜔z𝑠𝜃

𝜔y2 𝑣𝜃 + 𝑐𝜃

𝜔y𝜔z 𝑣𝜃 + 𝜔1𝑠𝜃

𝜔x𝜔z 𝑣𝜃 + 𝜔y𝑠𝜃

𝜔y𝜔z 𝑣𝜃 − 𝜔x𝑠𝜃

𝜔z2 𝑣𝜃 + 𝑐𝜃

]

𝑔𝑠𝑡(0) is the transformation between tool and base frames at

the reference configuration (𝜃 = 0), 𝜉𝑖 is the twist of the ith

joint axis shown in Fig. 1 with 𝜔𝑖 , 𝑞𝑖 𝜖𝑅3 , 𝜔𝑖 is the unit vector defining the twist, 𝑞𝑖 is a point on the joint axis, and 𝑐𝜃 = 𝑐𝑜𝑠 𝜃𝑖 , 𝑠𝜃 = 𝑠𝑖𝑛𝜃𝑖 , 𝑣𝜃 = 1 − 𝑐𝑜𝑠𝜃𝑖 , m is the number of degrees of freedom, the symbol ~ refers to the twist and skew-symmetric matrix and the symbol ^ refers to the unit dual quaternion.

Figure 1. The definition of the twists and unit dual quaternions and

vectors in successive joint axes.

According to the above presented forward kinematics the spatial Jacobian is determined as [3];

𝐽𝑠𝑡𝑠 (𝜃) = [𝜉1 𝜉2

′ … … 𝜉𝑚′]

where 𝜉𝑖′ = 𝐴𝑑

(𝑒�̃�1𝜃1…….𝑒�̃�𝑖−1𝜃𝑖−1) 𝜉𝑖

Each column of the Jacobian is formulated by the transformation of the reference joint twists to the current configuration of the manipulator, so its calculation depends heavily on the calculation of the adjoint of the relative

transformation matrix. The body Jacobian can be derived by using an adjoin transformation between the body and spatial frames.

III. UNIT DUAL QUATERNION APPROACH

The advantages of the spatial representation and transformation of the rigid bodies are well justified in the relative literature [13]. Among them are the following: the singularity-free and un-ambiguous representation, the most efficient and compact form for representing rigid transforms, and the unified representation of translation and rotation. In addition, it can be integrated with little coding effort; unit dual quaternions can be used for smooth translational and rotational interpolation and proper formulation of the combined error in control systems.

In [8], a recursive algorithm is presented to solve the forward kinematic problem for any serial robot based on unit dual quaternions, where the representation and transformation of the joint axes are considered rather than point based approaches. The dual angle �̂�𝑖,𝑖+1 between the

unit line vectors �̂�𝑖 and �̂�𝑖+1 is defined as �̂�𝑖,𝑖+1 = 𝛼𝑖 + 𝜀𝐿𝑖

and the dual angle �̂�𝑖 between the unit line vectors �̂�𝑖−1,𝑖 and

�̂�𝑖,𝑖+1 is defined as �̂�𝑖 = 𝜃𝑖 + 𝜀𝑑𝑖 .

Here we present the recursive formulas in an analytic way in order to facilitate the calculation of the required operations. The unit dual quaternion for the transformation between the unit line vectors �̂�𝑖−1,𝑖 and �̂�𝑖,𝑖+1 is given by

�̂�𝑖 = cos 𝜃𝑖 + �̂�𝑖 sin �̂�𝑖 = (𝑐𝑜𝑠 𝜃𝑖 + 𝜀(−𝑑𝑖 𝑠𝑖𝑛 𝜃𝑖)) +

[

𝑠2 𝑠𝑖𝑛 𝜃𝑖 + 𝜀 (𝑑𝑖 𝑠2 𝑐𝑜𝑠 𝜃𝑖 + 𝑠2𝑜𝑠𝑖𝑛 𝜃𝑖)

𝑠3 𝑠𝑖𝑛 𝜃𝑖 + 𝜀 (𝑑𝑖 𝑠3 𝑐𝑜𝑠 𝜃𝑖 + 𝑠3𝑜𝑠𝑖𝑛 𝜃𝑖)

𝑠4 𝑠𝑖𝑛 𝜃𝑖 + 𝜀 (𝑑𝑖 𝑠4 𝑐𝑜𝑠 𝜃𝑖 + 𝑠4𝑜𝑠𝑖𝑛 𝜃𝑖)

] = �̂� + �̂� (3)

where �̂� is the scalar part and �̂� is the vector part of �̂�𝑖 .

Since �̂�𝑖 is perpendicular to �̂�𝑖−1,𝑖 as shown in “Fig.1” then

the unit dual line vector �̂�𝑖,𝑖+1 is determined by the

transformation of the �̂�𝑖−1,𝑖 [14]:

�̂�𝑖,𝑖+1 = �̂�𝑖 �̂�𝑖−1,𝑖 = �̂� × �̂� + �̂� �̂� = [

𝑁2 + 𝜀𝑁2𝑜

𝑁3 + 𝜀𝑁3𝑜

𝑁4 + 𝜀𝑁4𝑜

] (4)

where �̂� is the vector part of �̂�𝑖−1,𝑖. The unit dual quaternion

for the transformation between the unit line vectors �̂�𝑖 and

�̂�𝑖+1 is given by

�̂�𝑖,𝑖+1 = cos �̂�𝑖,𝑖+1 + �̂�𝑖,𝑖+1 sin �̂�𝑖,𝑖+1 =

(𝑐𝑜𝑠𝛼𝑖 + 𝑁1 𝑠𝑖𝑛 𝛼𝑖 + 𝜀(𝐿𝑖 𝑁1 𝑐𝑜𝑠 𝛼𝑖 + 𝑁1

𝑜𝑠𝑖𝑛 𝛼𝑖 − 𝐿𝑖 𝑠𝑖𝑛 𝛼𝑖))

+ [

𝑁2 𝑠𝑖𝑛 𝛼𝑖 + 𝜀 (𝐿𝑖 𝑁2 𝑐𝑜𝑠 𝛼𝑖 + 𝑁2𝑜𝑠𝑖𝑛 𝛼𝑖 )

𝑁3 𝑠𝑖𝑛 𝛼𝑖 + 𝜀 (𝐿𝑖 𝑁3 𝑐𝑜𝑠 𝛼𝑖 + 𝑁3𝑜𝑠𝑖𝑛 𝛼𝑖)

𝑁4 𝑠𝑖𝑛 𝛼𝑖 + 𝜀 (𝐿𝑖 𝑁4 𝑐𝑜𝑠 𝛼𝑖 + 𝑁4𝑜𝑠𝑖𝑛 𝛼𝑖)

] (5)

180

Then

�̂�𝑖+1 = �̂�𝑖,𝑖+1 �̂�𝑖 (6)

Equation (6) is not presented in the extended form since the computational cost is equal to the one of (4).

According to [8] for the computation of the position vector of the end effector only the primary parts of the dual unit vectors are required as

𝑝𝑚 = ∑ (𝑑𝑖 𝑠𝑖 + 𝐿𝑖 𝑎𝑖,𝑖+1)𝑚𝑖=1 (7)

The transformation matrix 𝑇𝑚0 that presents the end

effector frame relative to the base frame is calculated by using only the primary parts of the dual unit vectors:

𝑇𝑚0 = [

𝑛𝑚,𝑚+1

0

𝑠𝑚+1 × 𝑛𝑚,𝑚+1

0

𝑠𝑚+1

0

𝑝𝑚

1] (8)

In most of manipulator control systems the Jacobian is used, so its fast determination is quite critical. The instantaneous first order kinematics can be solved assuming that the forward kinematics were determined. To derive the Jacobian matrix using unit dual quaternions, the following equations illustrate the Velocity relations – Jacobians [2].

∑ �̂�𝑖̇𝑚

𝑖=1 �̂�𝑖 = �̂� �̂� = (𝜔 + 𝜀 𝑣)(𝑠 + 𝜀 𝑠𝑜) (9)

where �̂�𝑖̇ = �̇�𝑖 + 𝜀 �̇�𝑖 and �̂�𝑖 = 𝑠𝑖 + 𝜀 s𝑖

𝑜 , so (9) can be written as the following equation:

∑ �̂�𝑖̇

𝑚

𝑖=1

�̂�𝑖 = ∑ [�̇�𝑖 𝑠𝑖 + 𝜀 (�̇�𝑖 𝑠𝑖𝑜 + �̇�𝑖 𝑠𝑖)]

𝑚

𝑖=1

= 𝜔 𝑠 + 𝜀 (𝑠𝑜 𝜔 + 𝑠 𝑣) (10)

For rotational joints, �̇�𝑖 = 0.0, then

𝜔 𝑠 = ∑ �̇�𝑖 𝑠𝑖𝑚𝑖=1 , 𝑠𝑜 𝜔 + 𝑠 𝑣 = ∑ �̇�𝑖 𝑠𝑖

𝑜𝑚𝑖=1 (11)

𝑠 𝑣 = −𝑠𝑜 𝜔 + ∑ �̇�𝑖 𝑠𝑖𝑜

𝑚

𝑖=1

= ∑(𝑝𝑖 − 𝑝𝑚+1) × 𝑠𝑖 �̇�𝑖

𝑚

𝑖=1

= ∑ 𝑠𝑖 × (𝑝𝑚+1 − 𝑝𝑖)�̇�𝑖

𝑚𝑖=1 (12)

where 𝑠𝑜 = 𝑝𝑚+1 × 𝑠 , 𝑠𝑖𝑜 = 𝑝𝑖 × 𝑠𝑖 . From (12), the

Jacobian Matrix is derived as the following;

𝐽𝑖 = [𝑠𝑖 × (𝑝𝑚+1 − 𝑝𝑖)

𝑠𝑖] = [

𝑠𝑖 × 𝑝𝑚+1 − 𝑠𝑖 × 𝑝𝑖

𝑠𝑖]

= [𝑠𝑖 × 𝑝𝑚+1 − 𝑠𝑖

𝑜

𝑠𝑖] (13)

where

𝑝𝑚+1 = 𝑛𝑚+1 × 𝑛𝑚+1𝑜

+ ((𝑠𝑚+1 × 𝑠𝑚+1𝑜)𝑇 𝑛𝑚+1 ) 𝑛𝑚+1

Jacobian matrix can be determined also based on the

equation 𝑉𝑠𝑡𝑠 = 𝐽𝑠𝑡

𝑠 (𝜃)�̇� and 𝜉𝑖′ = �̂�𝑖 where 𝑉𝑠𝑡

𝑠 represents

the instantaneous spatial velocity of the end-effector as the following equation

𝐽 = [�̂�1 �̂�2 … �̂�𝑖 … �̂�𝑚] (14)

where �̂�𝑖 = [ 𝑠𝑖

𝑜

𝑠𝑖] and this equation gives the same results

using the product of exponential formula based Jacobian matrix given by (2).

IV. COMPUTATIONAL TIME FOR THE TWO ALGORITHMS

Using the equations presented in the two previous sections the computational burden for each method is determined. For the forward kinematics, the entire sum of the required multiplications and additions of simple real numbers are calculated and analytically presented for two methods in the Table Ι along with the respective equations.

TABLE I. NUMBER OF OPERATIONS FOR THE FORWARD KINEMATICS

Product of Exponential Formula

Term Additions Multiplications

𝑒�̃�𝑖𝜃𝑖 (eq.1) 18 33

(𝐼 − 𝑒�̃�𝑖𝜃𝑖) 3 0

(𝜔𝑖 × 𝑣𝑖) 3 6

(𝐼 − 𝑒�̃�𝑖𝜃𝑖)(𝜔𝑖 × 𝑣𝑖) 6 9

Overall 𝑒�̃�i𝜃𝑖 (eq.1) 30 48

Multiplication of two 4

X 4 transformation matrices

36 48

Total operations for m

Link Robot

30m + 36m =

66m

48m +48m =

96m

Unit Dual Quaternion Method

Dual Part is included

�̂�i(eq.3) 3 13

�̂�𝑖,𝑖+1(eq.4) 21 27

�̂�𝑖,𝑖+1(eq.5) 3 13

�̂�𝑖+1(eq.6) 21 27

𝑝𝑚(eq.7) 6 6

𝑠𝑚+1 × 𝑛𝑚,𝑚+1(eq.8) 3 6

Total operations for m

Link Robot

54m + 3 86m + 6

Dual Part is ignored

�̂�𝑖(eq.3) 0 3

�̂�𝑖,𝑖+1(eq.4) 6 9

�̂�𝑖,𝑖+1(eq.5) 0 3

�̂�𝑖+1(eq.6) 6 9

𝑝𝑚(eq.7) 6 6

𝑠𝑚+1 × 𝑛𝑚,𝑚+1(eq.8) 3 6

Total operations for m

Link Robot

18m + 3 30m + 6

181

For the determination of the number of operations required for the calculation of the Jacobian matrix it is supposed that the forward kinematics were done so the required operations for this are not recalculated. In the

product of exponential the calculation of 𝑒 �̃�𝑖𝜃𝑖 and for the multiplications of the 4 X 4 transformation matrices are ready from forward kinematics. For the determination of the Jacobian based on unit dual quaternions, 𝑠𝑖 and 𝑠𝑖

𝑜 are ready from the forward kinematics. For the Jacobian matrix calculation, the number of operations for the two methods is shown analytically in the Table ΙΙ.

TABLE II. NUMBER OF OPERATIONS FOR THE JACOBIAN MATRIX

CALCULATIONS.

Product of Exponential Formula

Term Additions Multiplications

Adjoint Matrix = 𝐴𝑑𝑔 9 18

Multiplication Adg

by 𝜉𝑖 (eq.2)

21 27

Overall Operations for

m Link Robot

30 (m -1) =

30m - 30

45 (m -1) =

45m - 45

Unit Dual Quaternion Method

𝑝m+1 21 60

𝑠𝑖 × 𝑝𝑚+1 − 𝑠𝑖𝑜

( eq.13)

6 6

Overall Operations for m Link Robot

6m + 21 6m + 60

A comparison of the number of mathematical operations

required for the computation of the end-effector position and orientations and the Jacobian matrix versus the number of joints using the two methods is presented in Fig. 2.

Figure 2. Mathematical operations required vs. the number of DOF of a

manipulator.

The comparative study illustrates that the unit dual quaternions require considerably lower number of arithmetic operations (additions and multiplications) compared with the product of exponential formula as the number of DOF regardless taking into account the dual part or not for both

the forward kinematics and Jacobian matrix. For the forward kinematics, unit dual quaternion requires 54m + 3 and 18m +3 additions using dual part and ignoring it respectively compared with product of exponentials that requires 66m. For multiplications, unit dual quaternion requires 86m + 6 and 30m + 6 using dual part and ignoring it respectively and the product of exponential requires 96m. For the Jacobian matrix, unit dual quaternion requires 6m + 21 additions compared with product of exponentials that requires 30m - 30. For multiplications, unit dual quaternion requires 6m + 60 and the product of exponential requires 45m - 45. In case of the Jacobian given by (14) which is identical to the one given by (2), the computational cost is zero since the unit dual vector is calculated in the forward kinematics by (6). Therefore for real time applications and kinematic control of serial manipulators the unit dual quaternion representation is preferable.

It is clear that the number of calculations is lower by using the unit dual quaternion method and it is known that unit dual quaternion requires 8 memory locations for the representation of position and 3 memory locations for the orientation despite of the product of exponential that is based on the 4 X 4 transformation matrices that require 16 memory locations for both the position and orientation so the storage in a memory needs less space. Therefore the computational costs and memory requirements are lower in unit dual quaternion. The explanation of the physical meaning of the parameters and operations in dual quaternion and PoE shows that the intuitive understanding of the combined orientation and translation it is easier in unit dual quaternion based algorithm.

V. APPLICATIONS OF THE ALGORITHMS IN KUKA LWR

ROBOT

Figure 3. Denavit-Hartenberg and the twist of the 7-DOF Kuka Robot.

In this section, the two algorithms are applied to 7-DOF Kuka LWR Robot presented in Fig. 3 and programmed in Matlab to determine its forward kinematics and Jacobian matrix for the verification and demonstration of the

182

compared algorithms. To our knowledge is the first time that the POE and unit dual quaternion are used for the forward kinematics and the Jacobian determination of the 7-DOF Kuka LWR and in addition that are programmed and the required operations are compared. In KUKA Control Toolbox [15] the forward kinematics are based on homogeneous transformations and the Jacobian is not determined.

After the calculation of forward kinematics, it is found that the two algorithms give the same results for the forward kinematics but with different calculation time. There is a difference in the results of the Jacobian matrix given by (2) and the one given by (13); since in the case of the product of exponential formula, the angular component is the instantaneous angular velocity of the body as viewed in the spatial frame, however the linear component is not the velocity of the origin of the end-effector frame, rather it is the velocity of a possibly imaginary point on the rigid body which is traveling through the origin of the spatial frame at time t, as it is stressed in [3]. If the Jacobian given by (13) is used then the calculated translational velocity is the one of the origin of the end-effector frame.

The computational time required by the corresponding Matlab programs is not compared because this depends on the way of programming. From the general comparison of the two algorithms illustrated in section 4, for the 7-DOF LWR Kuka robot (m=7), the forward kinematics requires 672 multiplications and 462 additions using the Product of Exponential formula and 608 multiplications and 381 additions using the unit Dual Quaternion taking into consideration the dual part while in the case of ignoring the dual part, 216 multiplications and 129 additions are required. The Jacobian matrix requires 270 multiplications and 180 additions based on Product of Exponential formula and 102 multiplications and 63 additions using the unit Dual Quaternion algorithm.

From the analytic presentation of the algorithms and its programming in Matlab, it is clear that unit dual quaternions present higher compactness and facilitates the understanding of the geometrical meaning of the joint axes. Therefore, the wider use of these methods into the robotics community has to be considered particularly the dual quaternion approach in the manipulator control of simultaneous rotation and translation of the end-effector.

VI. CONCLUSION

In this paper, two methods are presented in an algorithmic way for the formulation of the kinematic equations and Jacobian matrix of serial manipulators. The comparative study including the calculation of the number of arithmetic operations (additions and multiplications) as an index of the computational costs for each algorithm are determined and compared. The unit Dual Quaternion Method is proved more effective than the Product of Exponential formula as the number of the robot degrees of freedom increases.

Unit Dual Quaternion offers a more compact and consistent way than the product of exponential formula for determining the Jacobian Matrix and needs less

computational time and memory requirements. Calculations of the forward kinematics and Jacobian matrix using these two algorithms are applied and programmed in Matlab on the 7-DOF LWR Kuka Robot and are compared. According to the quantitative comparison and the presented qualitative advantages of the unit dual quaternion approach it is clear that for real-time applications and manipulator control the dual quaternions is much preferable than PoE.

ACKNOWLEDGMENT

Abdel-Nasser Sharkawy is funded by the “Egyptian Cultural Affairs & Missions Sector” and “Hellenic Ministry of Foreign Affairs Scholarship” for Ph.D. study in Greece.

REFERENCES

[1] Donald L. Pieper, The kinematics of manipulators under computer control. PhD, 1968.

[2] J. Kim and V. R. Kumar, “Kinematics of Robot Manipulators via Line Transformations,” J. Robot. Syst., vol. 7, no. 4, pp. 649–674, 1990.

[3] R. M. Murray, Z. Li, and S. S. Sastry, A Mathematical Introduction to Robotic Manipulation. CRC Press, 1994.

[4] J. D. Adams and D. E. Whitney, “Application of Screw Theory to Constraint Analysis of Mechanical,” Trans. ASME, vol. 123, pp. 26–32, March 2001.

[5] A. Perez and J. M. McCarthy, “Dual Quaternion Synthesis of Constrained Robotic Systems,” J. Mech. Des., vol. 126, pp. 425–435, May 2004.

[6] Y. WU, X. HU, D. HU, T. LI, and J. LIAN, “Strapdown Inertial Navigation System Algorithms Based on Dual Quaternions,” IEEE Trans. Aerosp. Electron. Syst., vol. 41, no. 1, 2005.

[7] P. N. Azariadis and N. A. Aspragathos, “Computer Graphic Representation and Transformation of Geometric Entities using Dual Unit Vectors and Line Transformations,” Comput. Graph., vol. 25, no. 2, 2001.

[8] N. A. Aspragathos and J. K. Dimitros, “A Comparative Study of Three Methods for Robot Kinematics,” IEEE Trans. Syst. MAN, Cybern. B Cybern., vol. 28, no. 2, pp. 135–145, 1998.

[9] E. Sariyildiz, E. Cakiray, and H. Temeltas, “A Comparative Study of Three Inverse Kinematic Methods of Serial Industrial Robot Manipulators in the Screw Theory Framework,” Int. J. Adv. Robot. Syst., vol. 8, no. 5, pp. 9–24, 2011.

[10] E. Özgür and Y. Mezouar, “Kinematic modeling and control of a robot arm using unit dual quaternions,” Rob. Auton. Syst., vol. 77, pp. 66–73, 2016.

[11] H. Pham, V. Perdereau, B. V. Adorno, and P. Fraisse, “Position and Orientation Control of Robot Manipulators Using Dual Quaternion Feedback,” in 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 658–663, 2010.

[12] L. F. C. Figueredo, B. V Adorno, J. Y. Ishihara, and G. A. Borges, “Robust kinematic control of manipulator robots using dual quaternion representation,” in 2013 IEEE International Conference on Robotics and Automation (ICRA), pp. 1949–1955, 2013.

[13] B. Kenwright, “Inverse Kinematics with Dual-Quaternions, Exponential-Maps , and Joint Limits,” Int. J. Adv. Intell. Syst., vol. 6, no. 1, pp. 53–65, 2013.

[14] J. Rooney, “A comparison of representations of general spatial screw displacement,” Environ. Plan. B Plan. Des., vol. 5, no. 1, pp. 45–88, 1978.

[15] F. Chinello, S. Scheggi, F. Morbidi, and D. Prattichizzo, “The KUKA Control Toolbox : motion control of kuka robot manipulators with matlab,” IEEE Robot. Autom. Mag., pp. 1–10, 2010.

183