teleoperation by using non-isomorphic mechanisms …...1 teleoperation by using non-isomorphic...

13
1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member, IEEE, Hamad Karki, Member, IEEE, Laxmidhar Behera, Member, IEEE, Mo Jamshidi, Fellow, IEEE, Abstract—This paper presents modeling, simulation and con- trol of a novel teleoperated mechanism, where two non- isomorphic manipulators are used in one integrated system, with the purpose of usage in Oil and Gas industry in the future. Overall integration of the teleoperated system has been done in the master-slave configuration, where a stuart type 6-DOF parallel manipulator is used as a master robot and a 6-DOF serial manipulator is used as a slave robot. Since, the parallel manipulator has a close loop structure and serial manipulator is an open loop structure their work spaces are of completely differ- ent nature in terms of overall shape and size. A novel task-space mapping mechanism has been proposed in this work to integrate these two completely non-identical manipulators. Damped-least square method is used for overcoming the singularity of proposed task-space mapping matrix. To capture the dynamic response of the teleoperator device, detailed dynamic modeling of the parallel and serial manipulator has been presented. Multilevel control architecture with local actuator-space and joint-space controllers, for the parallel and serial manipulators respectively, has also been presented in this work. Index Terms—Parallel Manipulator, Serial Manipulator, Tele- operation, Master-slave mechanism, Singularity I. I NTRODUCTION W ITH ever increasing consumption, easy resources of petroleum products are depleting very fast, whereas new resources situated in extreme conditions are posing se- rious challenges to safety of human lives and environment. Apart from this, Oil and Gas industry has to cope-up with profitability of business model, optimal usage of resources, and finally increasing production and recovery rate to satisfy soaring global demand [1]. Strategy to meet these critical challenges require radical innovations and optimal usage of available state of art technologies. Oil and Gas industry has lot to learn from successful implementation of robotics and automation for repetitive, dirty and dangerous tasks of manufacturing industry. Tragic events like Deep Horizon oil spill in the Gulf of Mexico [2] has now literally forced Oil and Gas Industry to put automation high on their agenda [3]. Since, materials involved in Oil and Gas industry are highly sensitive and very different in nature compared to manufacturing industry, usage of fully autonomous robotic Amit Shukla is with the Department of Mechanical Engineering, The Petroleum Institute, Abu Dhabi, UAE, e-mail: ([email protected]). Hamad Karki is with the Department of Mechanical Engineering, The Petroleum Institute, Abu Dhabi, UAE, e-mail: ([email protected]). Laxmidhar Behera is with the Department of Electrical Engineering, Indian Institute of Technology Kanpur, India, e-mail: ([email protected]). Mo Jamshidi is with the Department of Electrical and Computer Engineering, The University of Texas at San Antonio, USA, e-mail: ([email protected]). technology is risky and still farfetched solution. Therefore, humanly supervised semi-autonomous robotic technology like teleoperation finds perfect match of expectations for this industry. Intelligent drilling, under water exploration, smart inspection and manipulation of pipes and tanks, and automated operations for final production are some of the key areas where usage of teleoperated mechanism will not only increase safety standards but also help to increase production as well. Keeping all these issues in mind, present work describes a novel teleoperator mechanism to be used in Oil and Gas industry. Teleoperation is one of the oldest branches of robotics. Tele- operation word itself means ‘operation at distance’ where brain of the mechanism is located at distance from the site of opera- tion. A close loop teleoperator is a mechanism which has two spatially separated ports interacting with human operator and remote environment simultaneously, while being connected via communication channel [4]. In 1952, Goertz [5] was the first person to propose such tele-operated devices for handling of radioactive materials from behind the shielded wall. This was the first robotic device working on the principle of the master-slave configuration [6]. The local manipulator from which operator is giving command, is called master robot, whereas remote manipulator at working site is called slave robot. Teleoperation mechanism has been already developed to be used for various research and commercial purposes such as space exploration [7]–[9], military operation [10], waste management [11], nuclear environment [12]–[14], explosive material disposal [15]–[17], offshore and undersea operations [18], [19], rescue operation [20]–[22], entertainment [23], [24] and robot assisted surgery [25]–[29]. Mechanically integrated teleoperators of the early days had limitations of distance with poor performance [6], and then emergence of electrically coupled teleoperators overcame both the problems [30]. But with increasing distances came problem of time delay, which led to destabilization of systems [31] and delayed force-feedback [32], therefore subsequently lot of research work had gone in to that direction [33]. Later on introduction of the internet, around mid 1990, has completely removed the distance problem but brought completely new challenges in the form of variable time delays, packet-loss and disconnections [34]. To overcome these challenges passivity theory and scattering approaches has been suggested by re- searchers [35]. In most of the teleoperated devices, the master- salve manipulators have isomorphic structures [36] and liner dynamic similarity like combination of serial-serial [37] and parallel-parallel [38], therefore master and slave manipulators

Upload: others

Post on 24-Aug-2020

9 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

1

Teleoperation by using non-isomorphic mechanisms

in the master-slave configuration for speed controlAmit Shukla, Member, IEEE, Hamad Karki, Member, IEEE, Laxmidhar Behera, Member, IEEE,

Mo Jamshidi, Fellow, IEEE,

Abstract—This paper presents modeling, simulation and con-trol of a novel teleoperated mechanism, where two non-isomorphic manipulators are used in one integrated system, withthe purpose of usage in Oil and Gas industry in the future.Overall integration of the teleoperated system has been donein the master-slave configuration, where a stuart type 6-DOFparallel manipulator is used as a master robot and a 6-DOFserial manipulator is used as a slave robot. Since, the parallel

manipulator has a close loop structure and serial manipulator isan open loop structure their work spaces are of completely differ-ent nature in terms of overall shape and size. A novel task-spacemapping mechanism has been proposed in this work to integratethese two completely non-identical manipulators. Damped-leastsquare method is used for overcoming the singularity of proposedtask-space mapping matrix. To capture the dynamic response ofthe teleoperator device, detailed dynamic modeling of the paralleland serial manipulator has been presented. Multilevel controlarchitecture with local actuator-space and joint-space controllers,for the parallel and serial manipulators respectively, has also beenpresented in this work.

Index Terms—Parallel Manipulator, Serial Manipulator, Tele-operation, Master-slave mechanism, Singularity

I. INTRODUCTION

W ITH ever increasing consumption, easy resources of

petroleum products are depleting very fast, whereas

new resources situated in extreme conditions are posing se-

rious challenges to safety of human lives and environment.

Apart from this, Oil and Gas industry has to cope-up with

profitability of business model, optimal usage of resources,

and finally increasing production and recovery rate to satisfy

soaring global demand [1]. Strategy to meet these critical

challenges require radical innovations and optimal usage of

available state of art technologies. Oil and Gas industry

has lot to learn from successful implementation of robotics

and automation for repetitive, dirty and dangerous tasks of

manufacturing industry. Tragic events like Deep Horizon oil

spill in the Gulf of Mexico [2] has now literally forced Oil

and Gas Industry to put automation high on their agenda

[3]. Since, materials involved in Oil and Gas industry are

highly sensitive and very different in nature compared to

manufacturing industry, usage of fully autonomous robotic

Amit Shukla is with the Department of Mechanical Engineering, ThePetroleum Institute, Abu Dhabi, UAE, e-mail: ([email protected]).

Hamad Karki is with the Department of Mechanical Engineering, ThePetroleum Institute, Abu Dhabi, UAE, e-mail: ([email protected]).

Laxmidhar Behera is with the Department of Electrical Engineering, IndianInstitute of Technology Kanpur, India, e-mail: ([email protected]).

Mo Jamshidi is with the Department of Electrical and ComputerEngineering, The University of Texas at San Antonio, USA, e-mail:([email protected]).

technology is risky and still farfetched solution. Therefore,

humanly supervised semi-autonomous robotic technology like

teleoperation finds perfect match of expectations for this

industry. Intelligent drilling, under water exploration, smart

inspection and manipulation of pipes and tanks, and automated

operations for final production are some of the key areas

where usage of teleoperated mechanism will not only increase

safety standards but also help to increase production as well.

Keeping all these issues in mind, present work describes a

novel teleoperator mechanism to be used in Oil and Gas

industry.

Teleoperation is one of the oldest branches of robotics. Tele-

operation word itself means ‘operation at distance’ where brain

of the mechanism is located at distance from the site of opera-

tion. A close loop teleoperator is a mechanism which has two

spatially separated ports interacting with human operator and

remote environment simultaneously, while being connected

via communication channel [4]. In 1952, Goertz [5] was the

first person to propose such tele-operated devices for handling

of radioactive materials from behind the shielded wall. This

was the first robotic device working on the principle of the

master-slave configuration [6]. The local manipulator from

which operator is giving command, is called master robot,

whereas remote manipulator at working site is called slave

robot. Teleoperation mechanism has been already developed

to be used for various research and commercial purposes such

as space exploration [7]–[9], military operation [10], waste

management [11], nuclear environment [12]–[14], explosive

material disposal [15]–[17], offshore and undersea operations

[18], [19], rescue operation [20]–[22], entertainment [23], [24]

and robot assisted surgery [25]–[29].

Mechanically integrated teleoperators of the early days had

limitations of distance with poor performance [6], and then

emergence of electrically coupled teleoperators overcame both

the problems [30]. But with increasing distances came problem

of time delay, which led to destabilization of systems [31]

and delayed force-feedback [32], therefore subsequently lot

of research work had gone in to that direction [33]. Later on

introduction of the internet, around mid 1990, has completely

removed the distance problem but brought completely new

challenges in the form of variable time delays, packet-loss and

disconnections [34]. To overcome these challenges passivity

theory and scattering approaches has been suggested by re-

searchers [35]. In most of the teleoperated devices, the master-

salve manipulators have isomorphic structures [36] and liner

dynamic similarity like combination of serial-serial [37] and

parallel-parallel [38], therefore master and slave manipulators

Page 2: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

2

always have scalable relationship between their workspaces.

Though there are some devices where non-isomorphic manip-

ulators are also put in to master-slave configuration for tele-

operation but not much work has been done for teleoperation

control of a 6-DOF serial manipulator by a 6-DOF parallel

manipulator with full haptic feedback.

Integration of two 6-DOF manipulators, having completely

different workspace and structure, in master-slave configu-

ration requires novel solution for workspace mapping. Most

of the time proposed solution for such integration is scaling

up of master manipulator’s work space to the task space of

the salve manipulator. This concept involves direct position

to position mapping with clutching [39]. In this mechanism

when operator hits the boundary in the task space of the

master manipulator, teleoperation is suspended and master

end-effector is relocated just like a computer mouse. Though

direct task space mapping is intuitive but process of clutching

and relocation is highly frustrating and inefficient. Workspace

drift control has been proposed by Conti and Khatib in [40]

but this technique can be used only when task space of slave

manipulator is already known in detail. Space mapping have

other problems such as underutilization of the task-space of

the slave manipulator as whole space can not be utilized

efficiently. This research work presents joint-space mapping

for teleoperation, rather than commonly used task-space map-

ping. When in teleoperation master and slave manipulators

are integrated by mapping of joint-space every manipulation

trajectory in the task space of the slave manipulator will

always have corresponding trajectory in the task space of

the master manipulator without ever hitting boundary line.

Such joint-space mapping will automatically create a non-

linear mapping between task-space of the master and slave

manipulators without any scaling factor even though master

and slave task spaces are of completely different shapes and

sizes. This novel mapping mechanism will be useful in some

of the teleoperation based manipulation tasks of oil and gas

industry, such as there are many sensitive operations in oil and

gas fields where getting clear visual feedback from task space

of the slave manipulator is not possible or remain challenging

such as underground or underwater conditions with very low

visibility. In such conditions haptic feedback along with full

access of the manipulation space becomes very important.

The biggest benefit of using joint-space mapping is the fullest

access of complete cartesian task space of both the master

and slave manipulators without any scaling factor in cartesian

space. Simple Jacobian matrices are used to derive the final

form of the task-space mapping matrix and further damped

least square method is used to solve singularity problem of

the matrix inversion. To the best of our knowledge, derivation

of such mapping matrix for the teleoperation based control of

the manipulator speed has been proposed for the first time.

Therefore, to test validity of the integration mechanism and

efficacy of its control structure, operator and remote sides

(both are placed in same room) are connected directly without

any internet and only speed control has been tested though

there is capability of haptic feedback as well. This paper is

divided in four sections, first and second section will describe

modeling and control of the parallel and serial manipulator

respectively, third section will describe integration of these

two non-isomorphic manipulators by novel mapping technique

and overall control mechanism and fourth section will present

analysis over tracking results.

II. PARALLEL MANIPULATOR

First physically realizable parallel mechanism was proposed

by Gough and Whitehall [41] and later in 1965 Stewart

has proposed a manipulating structure [42] which has 6-

DOF and can have general motion in space. From 1960s till

now parallel mechanisms have got many applications such

as flight simulators, machine tool, parallel robots, precise

positioning, VR technologies and medical treatment fields etc

[43]. Force-output-to-manipulator-weight ratio of parallel ma-

nipulator is increased substantially by using its close-loop and

multiple parallel links architecture [44]. Close-loop structure

also increases parallel maipulator’s stiffness and accuracy, by

averaging effect of end-effector error, in comparison to most

of the serial manipulators in-spite of having significantly low

inertia. All the methods proposed in literature for solution of

dynamics of the parallel manipulator can be placed in three

main categories first Lagrangian methods [45]–[47] , second

Newtown-Euler method [48]–[50] and third Kane’s method

[51]. Though Euler-Lagrangian formulation is well structured

and can be expressed in close form but requires large amount

of symbolic and numeric computations to derive and evalu-

ate partial derivatives of the Lagrangian [52]. Newton-Euler

approach requires computations of all the constraints and

moments between the links though these calculations are not

involved in the control of manipulator [51]. Whereas Kane’s

method based derivations for dynamic model is a kind of

combination of both Lagrange and Newton-Euler method,

which inherits all the advantages of these methods but still

remains free from above mentioned disadvantages [53].

A. Dynamic analysis of the Parallel Manipulator

In the parallel manipulator also known as stewart plat-

form, base platform and end-effector (movable platform) are

connected by multiple linear mechanisms. Fig. 1(b) presents

schematic diagram of a 6-DOF parallel manipulator having

a fixed base, a movable platform and a extendable actuator.

To fully describe the motion of movable platform, an inertial

reference frame is fixed at origin shown in Fig. 1(b). Actuators

are used to closely connect movable platform and fixed base

frame. Upper and lower parts of the actuators are connected to

movable platform and base frame respectively with coordinate

points (si) and Bi. Where parameter subscript i stands for ith

actuator. When actuators change their lengths in synchronized

way there is a change in position of the movable platform. This

change can be calculated by knowing new joint coordinates of

the actuators and movable platform.

Coordinates of the new position of actuator’s upper joint is

sfi =(s

fix, s

fiy , s

fiz) after parallel displacement (x, y, z) and

rotation (φ, θ, ψ) along and around x, y, z axes, respectively

from its initial position si=(six, siy siz). It can be written in

Page 3: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

3

terms of rotation matrix as follows:

sfix

sfiy

sfiz

= R

sixsixsiz

+

x

y

z

(1)

Where R is the rotation matrix ([54]) and index i = 1, 2...6.

R =

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φ

(2)

Where c = cos and s = sin

(a) Parallel manipulator (b) Vector diagram

(c) PUMA 560

Fig. 1. (a) Six-DOF parallel manipulator used in present research work , (b)Vector representation of manipulator with one actuator and (c) 6-DOF serialmanipulator PUMA 560.

This parallel manipulator has six independent links to enable

six freedom of motion (x, y, z, φ, θ, ψ) for the movable

platform. Fig. 1(a) presents a picture of 6-DOF parallel ma-

nipulator used in present work.

q = [uT ωT ]T (3)

Where u = [x, y, z]T is translational velocity of the end

effector and ω is the generalized rotational velocity of the

end effector. Relationship between ω, Euler angles (φ, θ, ψ)

and is defined as follows:

ω =

ωx

ωy

ωz

= R

1 0 −sθ0 cφ cθsφ

0 −sφ cθcφ

φ

θ

ψ

(4)

Actuator vector is defined by following expression:

li = Li · ai,n = u+Rsfi −Bi, (5)

Where ai,n and Li are the unit vector and actuator length

along the ith actuator respectively, u is the end-effector vector,

sfi is the position vector of joint with the ith actuator in upper

platform frame and Bi is the vector representing joint of the

ith actuator in the base frame.

Relationship between infinitesimal displacements of the

movable platform and the actuators can be derived by taking

derivative of (5):

δLi · ai,n + Li · δai,n = δu+ δR · sfi +R · δsfi − δBi (6)

Where δBi = δsfi = 0 and δR · sfi can be expressed as:

δR · sfi = Ω ·R · sfi

=

0 −δΩz δΩy

δΩz 0 δΩx

−δΩy δΩx 0

·R · sfi

= δΩ×R · sfi (7)

Where δΩ = (δφ, δθ, δψ) is the infinitesimal rotation of the

movable platform.

Now (6) can be written as follows:

δLi · ai,n + Li · δai,n = δu+ δΩ×R · sfi (8)

By taking inner product of (8) with unit vector ai,n:

ai,n ·ai,n ·δLi+ai,n ·δai,n ·Li = ai,n ·δu+ai,n ·(δΩ×R·sfi )(9)

Where ai,n ·ai,n = 1 and ai,n · δai,n = 0 and once again (9)

can be simplified as:

δLi = ai,n · δu+ (R · sfi × ai,n) · δΩ (10)

Unit vector along the actuator length can be described as

follows:

ai,n =

(sfix −Bix)/Li

(sfiy −Biy)/Li

(sfiz −Biz)/Li

(11)

Where Bi is a constant vector as joints at the base frame are

fixed.

Equation (10) can be further expanded for all the six

actuator links in a more compact and useful form as follows:

δLp = [Jp]−16×6δXp (12)

Where δXp = (δuT δΩT )T is the infinitesimal movement

of the platform and δLp = (δL1, ..., δL6)T is the infinitesimal

movement of the six actuators. This relationship will be further

used in mapping the task-spaces of the parallel and serial

manipulators for which more details will be given in control

section of this paper.

There is a relationship between every upper joint velocity

(vs,i ) and generalized velocity (q) of the end-effector and it

can be described in terms of Jacobian as follows:

vs,i = u+ ω × (Rsi) = Jsi,qq, (13)

Page 4: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

4

B. Dynamics of the actuators

Upper platform of the manipulator is supported by six

actuator links and these actuators are driven by the core-less

DC-motors. Every actuator in its configuration has two parts,

the first is a lower part which is a lead ball screw connected

to the motor rotor by a synchronous belt and the second is

a upper part, which is a hollow cylinder with groves at inner

surface. With every rotation of lower screw part (rotating part),

upper part (actuating part) of the actuator moves forward or

backward depending on the direction of rotation. Rotational

Fig. 2. Schematic diagram of a actuator

speed of the motor rotor and related actuator velocity has the

following relationship:

va,i =Lb

60·ηNγ

· ωm,i, (14)

Where va,i is the translational velocity of the actuator along

the actuator length, ηN is the rotational efficiency, γ is the

gear reduction ratio and ωm,i is the rotational speed of the

motor.

Translational velocity of the actuator can also be described

in terms of generalized platform velocity:

va,i = aTi,n · vs,i = Jθi,qq, (15)

Where Jθi,q is the Jacobian between actuator velocity and

generalized velocity of the end-effector.

Angular acceleration αm,i of the motor rotor can be defined

further as:

αm,i = ωm,i

= K(aTi,nvs,i + aTi,nvs,i)

= K(aTi,nvs,i + vTs,i

(

(I − ai,naTi,n)

‖li‖

)

vs,i),(16)

Where(I−ai,na

Ti,n)

‖li‖= P ai,n is the projection to the plane with

normal vector ai,n and K is the transmission ratio between

motor rotor angular velocity (ωm,i) and actuator’s translational

velocity (va,i).

The acceleration of the upper actuator joint can be described

by further differentiating (13):

vs,i = u+ ω × (Rsi) + ω × (ω × (Rsi))

= Jai,qq − ‖ω‖2P ωai, (17)

Where P ω = (I − ωnωTn ).

Angular velocity of the actuator perpendicular to the actu-

ator length can be described as follows:

ωs,i = ai,n ×vs,i

‖li‖, (18)

If rotating part of the actuator has center of gravity (COG) at

rc and the actuating part has COG at ac, velocities of these

COG’s can be described, in terms of upper joint velocity vs,i,

as follows:

vrc,i = ωs,i × (rrc · an,i) = Jrc,s,ivs,i, (19)

vac,i = vs,i + ωs,i × (−rac · an,i) = Jac,s,ivs,i, (20)

Since acceleration of the COGs of the actuator parts also

generate inertial forces there calculation is important and

should be written in terms of platform motion:

vac,i =d

dtvac,i =

d

dt(Jac,s,ivs,i) = Jac,s,ivs,i + Jac,s,ivs,i,

(21)

Differentiation of the Jacobian Jac,s,i can be calculated as

follows [55]:

Jac,s,i =d

dt(I −

rac,i‖li‖

P ai,n)

=rac‖li‖2

(vTs,iai,nP ai,n)

+rac‖li‖2

(P ai,nvs,iaTi,n + ai,nv

Ts,iP ai,n),

(22)

When inertia of the load torque is high in comparison to light

actuators, inertial forces due to actuators can be neglected but

when both are comparative, effect of the actuator forces can

not be ignored anymore, as in present case of the experimental

manipulator setup shown in Fig. 1(a). The gimbals are as-

sumed to rotate frictionlessly and inertia of actuator around

actuating axis is negligible. There are two basic parameters

to define both the parts of the actuator, the first is the mass

and the inertia around the axis orthogonal to the actuating

direction of the actuator. For rotating and actuating part these

parameters will be (mr, ir) and (ma, ia), respectively.

The inertial forces of the actuators mainly have three parts,

the inertial mass forces, the influence of the inertia and overall

gravitational force. Finally all these forces are projected in the

direction of the generalized velocities of the upper joints of

the actuators with the platform to be accommodated in the

overall dynamics of the system.

f sas,i = JT

ac,s,imavac,i,

= JTac,s,imaJac,s,ivs,i + J

Tac,s,imaJac,s,ivs,i,

= Mas,ivs,i +Cas,ivs,i, (23)

Now total inertial forces at upper gimbal points due to move-

ment of inertias of rotating and actuating parts can be derived

Page 5: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

5

by using Lagrangian method and resultant relationship can be

described as follows [55]:

fsia,ir,i =

(ia + ir)

‖li‖2 (P ai,nvs,i −

(aTi,nvs,i)

‖li‖P ai,nvs,i),

= M ia,ir,ivs,i +Cia,ir,ivs,i, (24)

At last the gravitational forces on the actuating part and

rotating part are calculated and they are projected along the

generalized velocities of the platform:

fsa,g,i = JT

ac,imag, (25)

fsr,g,i = JT

rc,imrg, (26)

C. Influence of the motor systems’ dynamics

All the actuators are actively driven by lead-ball screw,

which in turn driven by the core-less DC-motors. Rotating part

of the actuator is connected to the DC-motor by a synchronous

belt. When motor rotor rotates around its axis it also forces

screw to rotate around its own axis. Since, motor is fixed

on the actuator, so along with this self rotation, motor also

rotates with rotating actuator part. For the first kind of rotation

combined inertia of the motor rotor and screw (snail) is defined

as ims in motor’s rotor reference frame, for the second kind

of motion total mass and inertia are defined as msm and ismin the reference frame of screw respectively.

The inertial torque generated by the motion of the motor

and actuator can be described as follows:

Tms,i = imsαm,i,

= imsK · (aTi,nvs,i + v

Ts,i

(

(I − ai,naTi,n)

‖ai,n‖

)

vs,i),

= Mms,ivs,i +Cms,ivs,i, (27)

Where Mms,i = imsK · aTi,n and Cms,i = imsK ·

vTs,i

(

(I−ai,naTi,n)

‖ai,n‖

)

. This inertial torque can be projected

along the generalized velocities of the platform as follows:

f sms,i = J

Tθi,qTms,i = J

Tθi,qMms,ivs,i + J

Tθi,qCms,ivs,i,

(28)

The inertial forces due to combined movement of inertias of

motor and actuator can be described at the upper joint of the

platform as follows:

f sims,i =

ims

iac + irc(M ia,ir,ivs,i +Cia,ir,ivs,i),

= M ims,ivs,i +Cims,ivs,i (29)

Finally, calculation of inertial force due to gravity can be

defined as follows:

fsms,g,i = J

Trc,s,imms,ig, (30)

D. Multi-body dynamics of the Parallel Manipulator using

Kane’s equations

The principle of virtual work is an efficient method for

developing dynamic equations for inverse dynamics of the

parallel manipulator as shown in [56], [57]. Every external

force applied on the body can be decomposed into a force

passing through the center of gravity of the system and a

moment around it. And then by applying principle of virtual

work, Kane’s equation for the parallel manipulator has been

derived, where sum total of active forces/torques and inertial

forces/torques are zero [58], [59].

F ac + F∗in = 0 (31)

Mac +M∗in = 0 (32)

Where F ac and F ∗in are the generalized active forces and iner-

tial forces, respectively applied on the manipulator’s platform

in the direction of generalized velocities. This can be further

elaborated as follows ([53]):

F ac = An · F a +mp ·G (33)

F in = −mp · u (34)

For angular motion of the platform active moment and inertial

moment are calculated in the base frame:

Mac = RSp ×An · F a (35)

M in = −Ip · ω − ω × Ip · ω (36)

By combining all the equations from (31) to (36) complete

dynamic model of the 6-DOF parallel manipulator can be

derived as follows:[

An

RSp ×An

]

F a =

[

mpI 00 Ip

] [

u

ω

]

+

[

0 00 ωIp

] [

u

ω

]

+

[

mpG

0

] (37)

In short, (37) can also be written in following form:

Jθi,q (χ)F a =Mp(χ)q +Cp(χ, q)q +Gp, (38)

Where F a is the active force vector applied on the plat-

form by the six actuators, R is the rotation matrix, An =(a1,n,a2,n....a6,n) is the coordinate matrix of the normal

actuator vectors, Sp is the coordinate matrix of the actuator

joints on the platform Sp = (s1, s2....s6), Mp(χ) is the

mass matrix of the movable platform in the base frame, mp

is the mass of the upper platform, ω is the skew symmetric

matrix related to angular velocity ω, Ip = RIppRT is the

inertia matrix transformation with Ipp as the inertia matrix in

the platform frame, Cp(χ, q) contains centripetal and Coriolis

force components involved in the platform movement and Gp

is the overall gravitational force on the moving platform.

E. Complete dynamics of the parallel manipulator including

actuators

Total inertial forces generated by the motion of actuators

and motors can be described as follows:

f∗t =

6∑

i=1

JTsi,q

(f sas,i + f

sia,ir,i + f

sa,g,i + f

sr,g,i

+ fsms,i + f

sims,i) +

6∑

i=1

f sms,i

(39)

It can be observed from (38) that left-hand-side of the equation

has all the active forces and right-hand-side of the equation

Page 6: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

6

has inertial forces. After combining all the inertial forces,

generated due to motion of the actuators and motor systems,

total inertial forces applied on the parallel manipulator can be

written as follows [60]:

f∗ = f∗t +Mp(χ)q +Cp(χ, q)q +Gp, (40)

Final equation describing the dynamics of the parallel

manipulator can be described as follows:

Jθi,q (χ)F a =M tp(χ)q +Ctp(χ, q)q +Gtp, (41)

Where F a, M tp, Ctp and Gtp are defined as follows:

F a =2π

Lb

· γ · ηT · T em, (42)

M tp =Mp +

6∑

i=1

(JTsi,q

(Mas,i +M ia,ir,i +Mms,i))J si,q

+

6∑

i=1

JTθi,qM imsJsi,q

(43)

Ctp =Cp(χ, q)q +

6∑

i=1

JTsi,q

(Cas,i +Cia,ir,i +Cms,i)Jsi,q

+6∑

i=1

JTθi,qCimsJsi,qq − ‖ω‖2

6∑

i=1

JTθi,qM imsP ωsi

− ‖ω‖2

6∑

i=1

(JTsi,q

(Mas,i +M ia,ir,i +Mms,i))P ωsi

(44)

Gtp = Gp +

6∑

i=1

JTsi,q

(f ss,i + f

ss,i) (45)

III. SERIAL MANIPULATOR

The serial manipulator is a structure, whose links are serially

connected by revolute or prismatic joints driven by actuators.

These actuators generally contain DC-motors at the revolute

joints and hydraulically driven mechanism at the prismatic

joints. These links are connected in open ended manner rather

than close loop structure as generally found in the paral-

lel mechanisms. Though serial manipulators, having serially

connected links, can sweep through larger workspace with

dexterous manoeuverability, but suffer from instability with

increasing load and vibrations at higher operating speed. They

also suffer from poor positioning capabilities in the workspace

in comparison to equivalent parallel manipulator.

In this research work a serial manipulator, known as PUMA

560, has been used as a slave manipulator to be controlled by

the parallel manipulator. Kinematic structure of the PUMA

560 is presented in Fig. 1(c). In this particular manipulator all

the joints are revolute and driven by brushless DC-motors.

The dynamic equation of the 6-DOF serial manipulator

PUMA 560 can be written in a following form:

τ =M(q)q +B(q)[qq] +C(q)[q2] +G(q) (46)

Where τ is the joint torque vector, M(q) is the inertia matrix

also called as positive definite inertia matrix, q is the joint-

space-variable vector (six rotational joints of the PUMA 560),

q is the joint acceleration vector,B(q) is the matrix of Coriolis

torques, C(q) is the matrix of Centrifugal torque, [qq] = [q1 ·q2, q1 · q3...., q1 · qn, q2 · q3, .....]

T is vector of joint velocity,

vector [q]2 = [q21 , q22 , q

23 , ....q

26 ]

TandG(q) is the gravity torque

vector.

In an actuator driven manipulator, actuator torques are the

inputs signals and outputs are the actual joint displacements,

therefore solution of (46) can be described in the following

form:

q =M−1(q)(τ −B(q)(qq)−C(q)(q2)−G(q)) (47)

There are three important assumptions, which have been made

for the purpose of simplifying the calculation of matrices

M(q), B(q), C(q) and G(s) and these assumptions are

as follows: the rigid body assumption, sixth link has been

assumed to be symmetric, that is Ixx = Iyy and only the mass

moments of inertia are considered, that is Ixx, Iyy and Izz .

Complete expressions of these matrices have been described

in [61].

IV. OVERALL CONTROL ARCHITECTURE OF THE

TELEOPERATED MECHANISM

In general every teleoperated mechanism has three main

components, first operator side, second remote side and third

communication channel between these two distant ports. On

the operator side, human operator interacts with master ma-

nipulator to give commands to the slave manipulator through

communication channel. Using internet as a communication

channel creates various other challenging problems such as

instability due to network delay. Therefore, in present work

these ports are connected directly without any internet to

demonstrate working principle of newly proposed teleoperated

device, where involved manipulators have completely non-

identical structure and fundamentally different operating prin-

ciple.

Before integrating, parallel and serial manipulator in the

master-slave configuration, PID controller based multi staged

control mechanism has been implemented for both the manip-

ulators individually. And efficacy of the control mechanisms

have been tested by supplying them with suitable trajectories in

the task-space and joint-space, respectively. Validation of the

standalone trajectory-tracking performances have been done

by comparing the obtained results with already published

data for each manipulator. Since, in both the manipulators all

the actuators are driven by the DC-motors, suitable control

mechanism for the DC-motor has been given in the next

section. Subsequently, standalone control of the parallel and

serial manipulator have been described in successive sections

and at last overall control of the integrated teleoperated device

has been discussed in detail. Fig. 3, 4 and 5 present schematic

diagrams of the parallel manipulator, serial manipulator and

finally integrated teleoperator system, respectively, along with

their multi-stage controllers for the actuators.

Page 7: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

7

Fig. 3. Schematic diagram of parallel manipulator describing its complete dynamics and control loops with compensator

Fig. 4. Schematic diagram of serial manipulator describing its complete dynamics and control loops

A. Control mechanism for the DC motor

Due to speed controllability and well behaved torque charac-

teristics, DC-servo motors are the most widely used actuators

for automated devices. Every actuator of the parallel and serial

manipulator is driven by a DC-motor. Electromagnetic torque

Tem of the motor is produced by circulating armature current

ia in its stator windings and they are related as follows:

Tem = Ktia (48)

Similarly, induced emf ea depends only on the the motor speed

ωm and is related to each other by voltage-constant Ke:

ea = Keωm (49)

When va is applied on the motor windings, it overcomes

induced emf ea and causes current ia to flow in the motor

windings. By applying Kirchhoff’s voltage law following

equation can be written:

va = ea +Raia + La

diadt

(50)

On the mechanical side, electromagnetic torque Tem, produced

by the motor, overcomes the mechanical torque TL to produce

acceleration:dωm

dt=

1

Jeq(Tem − TL) (51)

Where Jeq is the equivalent inertia of the DC-motor and

the mechanical load. The lengths of the actuators keep on

changing with motions of the actuator motors, therefore the

equivalent inertia Jeq will be keep on varying with time and

which is very difficult to continously calculate in real time.

B. Control of the parallel manipulator

Actuators driven by the DC-motors are sole source of

active forces and torques applied on the upper platform of

the parallel manipulator. Since, in the motor driven parallel

manipulator, calculation of time varying equivalent inertia

Jeq in (51) is very difficult in real time, therefore, instead

of directly calculating Jeq in the DC-motor frame, torque-

force balance equation is written in the parallel manipulator’s

reference frame and electromagnetic torque, produced by the

DC-motors, is just taken as input vector in to the dynamic

equation (41) derived for the parallel manipulator.

Overall control architecture of the parallel manipulators can

be described in three main stages, position control of the motor

rotor position (θm), speed control of the motor rotor (ωm) and

current control in the motor windings (ia). Fig. 3 presents

schematic diagram of the parallel manipulator along with its

three stage controllers for the actuators.

At first a desired cartesian trajectory with surge, sway,

heave, roll, pitch and yaw is defined. Then by using inverse

kinematics of the parallel manipulator this trajectory given in

the task space of the manipulator is converted in to the joint

space of the manipulator. Here joint space of the manipulator

is actuators’ translational speeds in the direction of their

actuation. From speed of the actuator, speed of the correspond-

ing motor rotor is calculated which is further integrated to

calculate the angular position of the motor rotor. This desired

position of the motor rotor (θd) is then compared against

actual position of the motor rotor (θm). The difference between

desired and actual rotor position (δθ=θd-θm) is passed through

a PID based position controller to calculate desired speed (ωd)

of the motor rotor:

ωd = (Kp1 +Ki1

dt+Kd1d

dt)θd − θm (52)

This desired speed (ωd) is compared against actual speed (ωm)

of the motor rotor and again a PID based speed controller is

used to calculate the desired current in the motor windings.

id =TrefKt

= (Kp2 +Ki2

dt+Kd2d

dt)ωd − ωm (53)

This desired current (id) is compared against the actual current

(ia) flowing in the motor windings. A PID based current

controller is operated on the current difference to generate

Page 8: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

8

reference voltage to be applied on the windings to generate

required current.

vd = (Kp3 +Ki3

dt+Kd3d

dt)id − ia (54)

When this current ia flows through motor windings, it gen-

erates suitable electromagnetic torque Tem, which is further

supplied in to the dynamic equation of the manipulator.

Each actuator has three control loops, and there are total six

actuators so there are total eighteen control loops. Complete

process of the control is explained schematically in Fig. 3

and mathematically in equations (41) - (45). Since, complete

dynamics of the 6-DOF parallel manipulator is highly non-

linear along with strong coupling terms and time varying

parameters, PID controllers by themselves were unable to

mitigate tracking errors. Therefore, to improve performance of

the tracking controllers, Su, et al., [62] have proposed usage

of nonlinear PID control based technique. With same purpose

in [63] researchers have proposed novel feedback linearization

mechanism leading to some improvement, but still overall re-

sults were not very satisfactory. In [64], model based improved

controller has been used, which essentially modifies required

torque reference to the PMSM motors. In contrast to these

approaches, in present work, one lag-compensator for each

actuator leg has been proposed in addition to the three staged

PID controllers, to drastically improve tracking performance.

By using lag-compensators [65], desired rotational speed of

the motor (ω∗d), as seen in Fig. 3, is modified as follows:

ω∗d =

(

1 + T1s

1 + T2s

)

(Kp1+Ki1

dt+Kd1d

dt)θd−θm (55)

Usage of lag-compensators, to modify the desired rotational

speed of the DC-motors, has significantly improved the track-

ing performance of the controller with minimization of track-

ing error. This novel approach gives even better results in

comparison to the approach presented in [64].

C. Control mechanism of the PUMA 560

There are mainly two categories of trajectory tracking

schemes for the serial-manipulator, task-level servo schemes

and joint-level servo schemes. In the present work for the

local control of serial manipulator joint-level servo scheme

has been used because both the manipulators, master and slave

(PUMA 560) have 6-DOF joint-space and it will be very easy

to integrate them via their joint-spaces. The biggest benefit of

using this kind of integrated control structure is that it also

allows us to bypass the difficulty of solving inverse kinematic

of the serial manipulator in the master-slave teleoperation.

PUMA 560 has six rotatory joints and all the joints are

driven by DC-motors of different parameters, which has been

described in [66] and presented here in the Table I. Modeling

and control of the DC-motors has been already described in

Section IV-A. The joint-space control for the PUMA 560 is

implemented here with three layers of PID controllers. First of

all a joint-space trajectory, in the form of joint-angle variations

with respect to time, will be supplied to the manipulator

control. At the stage of position control, the difference between

actual joint angle (θsa) and desired joint angle (θsd) will be

TABLE IACTUATOR DATA OF PUMA 560 MANIPULATOR

Joint Rs,i Ls,i Kv, i KT,i Gearmotor (Ω) (Ω-sec) (volt/(rad/sec)) (Nm/A) ratio

First 1.6 0.0048 0.19 0.2611 62.55Second 1.6 0.0048 0.19 0.2611 107.81Third 1.6 0.0048 0.19 0.2611 53.15Fourth 3.9 0.0039 0.12 0.0988 76.04Fifth 3.9 0.0039 0.12 0.0988 71.92Sixth 3.9 0.0039 0.12 0.0988 76.65

calculated and this difference will be passed through a PID

controller to further generate desired speed reference.

ωsd = (Ksp1 +Ksi1

dt+Ksd1d

dt)θsd − θsa (56)

Now difference between desired (ωsd) and actual speed (ωsa)

of the joints will be calculated and this difference will be

further pass through a PID controller to generate desired

current reference.

isd =TrefKst

= (Ksp2+Ksi2

dt+Ksd2d

dt)ωsd−ωsa (57)

Once again actual current (isa) will be measured and will

be compared with desired current reference (isd) and this

difference will be passed through last PID controller to gen-

erate required voltage vs which in turn will generate suitable

electromagnetic torque (Tse) for tracking given desired joint-

space trajectory.

vs = (Ksp3 +Ksi3

dt+Ksd3d

dt)isd − isa (58)

Similar three staged controller will be implemented for all the

six rotatory joints of the serial manipulator. Next section will

describe integration and over all control of the parallel and

serial manipulator in the master-slave configuration.

D. Integrated control of the teleoperated device

In the present work, overall integrated teleoperator mecha-

nism has three broad layers of control architecture, which are

described schematically in Fig. 5. Two main components of the

teleoperation device, namely the master and slave manipulator,

have their own stand-alone control mechanisms. These local

control loops are further divided in three stages, position

control, speed control and finally torque control (actually

current control) as described in previous sections.

The master manipulator, which is a parallel manipulator, has

six actuators in the form of six links, whereas the salve ma-

nipulator, which is a serial manipulator, has serially connected

six-rotatory joints. To drive serial manipulator from commands

of the parallel manipulator in the master-salve configuration

basically requires integration of their joint spaces with each

other. In principle, there can be two ways to integrate the

joint-spaces of these two manipulators:

• Each actuator of the parallel manipulator is directly

mapped with one rotatory joint of the serial manipulator

and in return mapping between dissimilar cartesian work-

spaces of the master and slave manipulators will be

calculated indirectly.

Page 9: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

9

Fig. 5. Schematic diagram of integrated parallel manipulator with serial manipulator for the purpose of teleoperation

• Cartesian work-spaces of these two manipulators are

directly mapped on each other while relation between

the joint-space variables of both the manipulators will be

calculated indirectly.

Both the master and slave manipulators have six degrees of

freedom but they have completely non-identical work-spaces

(cartesian task-spaces) and also have different types of singu-

larities (which has to be avoided). Therefore, direct mapping

of these work-spaces will not be an easy working solution.

Another problem with such direct cartesian-space mapping is

that task-space of the slave manipulator can not be utilized

optimally as task space of the master manipulator is very

different in terms of overall shape and size. Whereas in the

first method, where each actuator of the parallel manipulator

has been mapped on the one rotatory joint of the serial

manipulator, will have two following important benefits:

• The first benefit is that slave manipulator will be able to

access its complete cartesian task space and during the

operation slave manipulator will never hit its boundary

so frequent disengagements between master and slave

manipulator will not be required anymore.

• The second benefit is that this method of integration

will be computationally simple and calculation of inverse

kinematics of the serial manipulator will be avoided.

The basic integration mapping mechanism can be described

by following expression:

∂θs = [K]6×6∂Lp (59)

Where joint-space vector Lp of the parallel manipulator is

combination of six actuators’ lengths and described as Lp =

L1, L2, L3, L4, L5, L6 Lp and joint-space of the serial

manipulators is described as a vector of six joint angles in the

form of θs = θ1, θ2, θ3, θ4, θ5, θ6 . Both of these spaces are

mapped on each other by a diagonal matrix [K]6×6. Elements

of this matrix can be calculated easily by establishing a

relationship between the maximum possible variations of each

actuator’s length of the parallel manipulator and respective

variations of the joint-angles of the serial manipulator.

Once both of these manipulators are integrated as one

system, a desired trajectory is given in the task-space of

the serial manipulator, which then will be converted in to a

trajectory in the task-space of the parallel manipulator. For

successful tracking of every given trajectory in the serial-

task-space Xs = xs, ys, zs, α, β, γ there should be

always an unique corresponding trajectory in the parallel-

task-space Xp = xp, yp, zp, φ, θ, ψ . This calculated

trajectory in the parallel-task-space is used as an input to

the control mechanism of the parallel manipulator. By using

inverse kinematics of the parallel manipulator, variations in the

actuators’ lengths can be obtained by following expression:

∂Lp = [Jp]−16×6∂Xp (60)

Where [Jp]−16×6 is the inverse Jacobian of the parallel manipu-

lator. By using (10)-(11)-(12), expression for the [Jp]−16×6 can

be derived as follows:

[Jp]−16×6 =

aT1

(R · sf1 × a1,n)T

. .

. .

. .

aT6

(R · sf6 × a6,n)T

(61)

Whereas the relationship between serial task-space Xs = xs, ys, zs, α, β, γ and its internal joint-space θs = θ1,

θ2, θ3, θ4, θ5, θ6 can be defined by using [Js]6×6 forward

Jacobian:

∂Xs = [Js]6×6∂θs (62)

The Jacobian matrix [Js]6×6 relates the linear and angular

velocities of the manipulator tip to the angular velocities of

the joints.

(

v

ω

)

= [Js]6×6 = [J1(θs),J2(θs), ....J6(θs)] θs(t)

(63)

For the PUMA 560 manipulator, which is a 6R type robot,

[Js]6×6 can be defined as follows:

Js(θs) =

[

z0 z1 . . . z5z0 × p0,6 z1 × p1,6 . . . z5 × p5,6

]

(64)

Column vectors of the [Js]6×6 can be defined as follows:

J1(θs) =[S1(C23C4S5d6 + S23(d4 + C5d6) + a2C2)

− C1(S4S5d6 + d2), C1(C23C4S5d6

+ S23(d4 + C5d6) + a2C2)− S1(S4S5d6 + d2),

0, 0, 0, 1]T

(65)

Page 10: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

10

J2(θs) =[−C1(S23C4S5d6 − C23(d4 + C5d6) + a2S2),

− S1(S23C4S5d6 − C23(d4 + C5d6) + a2S2),

− (C23C4S5d6 + S23(d4 + C5d6) + a2C2),

− S1, C1, 0]T

(66)

J3(θs) =[−C1(S23C4S5d6 − C23(d4 + C5d6)),

− S1(S23C4S5d6 − C23(d4 + C5d6)),

(C23C4S5d6 − S23(d4 + C5d6)),

− S1, C1, 0]T

(67)

J4(θs) =[(−C1C23S4S5d6 − S1C4S5d6),

(−S1C23S4S5d6 + C1C4S5d6),

(S23S4S5d6), (C1S23), (S1S23), (C23)]T

(68)

J5(θs) =[(−C1C23C5 − S1S5)d6, (−C1C23C5 − S1S5)d6,

(S23C5d6), (−C1C23S4 − S1C4),

(S1C23S4 + C1C4), S23S4]T

(69)

J6(θs) =[0, 0, 0, (C1C23C4S5 − S1S4S5

+ C1S23C5), (S1C23C4S5 + C1S4S5

+ S1S23C5), (−S23C4S5 + C23C5)]T

(70)

By solving (59)-(60)-(62) following expression can be derived

to map the task-spaces of the two manipulators:

∂Xs = [Js]6×6[K]6×6[Jp]−16×6∂Xp (71)

Suppose, there exists a relationship between cartesian-task-

spaces of the serial manipulator Xs = xs, ys, zs, α, β, γ and parallel manipulator Xp = xp, yp, zp, φ, θ, ψ by

mapping matrix [S]6×6, then that relationship can be defined

as follows:

∂Xp = [S]6×6∂Xs (72)

Above relationship is defined in this form because we want

to do a trajectory tracking in the task space of the serial

manipulator not other way round in the task space of the

parallel manipulator. Equations (71) and (72) can be solved

to get [S]6×6 in terms of other known Jacobians:

[S]6×6 = [[Js]6×6[K]6×6[Jp]−16×6]

−1 (73)

[S]6×6 = [Jp]6×6[K]−16×6[Js]

−16×6 (74)

Where [Js]−16×6 is the inverse Jacobian function, which is the

function of θs = θ1, θ2, θ3, θ4, θ5, θ6 .

Unfortunately the joint velocity vector of the serial ma-

nipulator, which is calculated by using inverse Jacobian

[Js]−16×6 and known velocity of the manipulator’s end-effector,

is very sensitive to the singularities. A singularity is the

condition where inverse Jacobian matrix [Js]−16×6 becomes

singular means having zero determinant. Near singularities,

many control algorithms fails because physically in such near

singular configuration of the manipulator even small desired

end effector velocity can result in to very high joint velocity

[67]. One very widely used solution to overcome this difficulty

is by implementing the singularity avoidance technique into a

low-level control algorithm. Among many such methods, for

overcoming singularity problem, are pseudo-inverse, damped

least-square (DLS) [68] and selectively damped least square

(SDLS) etc. Out of all, damped least-square (DLS) method is

the most effective and computationally efficient to deal with

singularity. In general manipulator reaches to the singularity

configuration, if the manipulator motion lies completely in the

feasible direction at the singularity. But usage of damped least-

square inverse technique always produces a new trajectory

which deviates from the original path near singularity.

The damped least-square inverse method, minimizes the

error of the joint velocities solution and magnitude of joint

velocities [69],i.e.

‖ [Js]6×6∂θs − ∂Xs‖2+ λ ‖ ∂θs‖

2(75)

The joint velocities are given as the solution of the normal

equation:

∂θs = [Js]∗6×6∂Xs (76)

Where

[Js]∗6×6 = ([Js]

T

6×6[Js]6×6 + λ2[I]6×6)

−1[Js]T

6×6 (77)

and [Js]∗6×6 is the damped least-square inverse Jacobian which

should be used in the place of normal inverse Jacobian [Js]−16×6

to produce non-singular solution for inverse kinematics of the

manipulator. λ is the damping factor, which represents the

relationship between the joint velocity and velocity error. The

lower the value of the λ, closer the dynamics of the manipula-

tor to the real system due to [Js]∗6×6 ≈ [Js]

−16×6 which can lead

to near singularity situation and the higher the value of the λ,

the more deviation error is found between requested and actual

end effector velocity. Therefore, an optimized value of the λshould be used so that system can maintain the feasibility of

joint velocity and simultaneously deviation error should also

be minimized [70].

Final expression for the modified mapping matrix will be:

[S]6×6 = [Jp]6×6[K]−16×6[Js]

∗6×6 (78)

[S]6×6 = [Jp]6×6[K]−16×6([Js]

T

6×6[Js]6×6+λ2[I]6×6)

−1[Js]T

6×6

(79)

V. SIMULATION RESULTS

In the proposed teleoperated mechanism, the master robot is

a 6-DOF parallel manipulator and the slave robot is a 6-DOF

serial manipulator. To evaluate the accuracy of the complete

model and efficacy of its control architecture as one integrated

system, several trajectories have been given for the tracking in

cartesian space of the serial manipulator. Generating a desired

trajectory in the task space of the serial manipulator, where

at every moment of time all the six parameters Xs = xs,

ys, zs, α, β, γ of the serial manipulator’s end effector is

defined, is a serious challenge. Therefore, an indirect way

has been devised to overcome this challenge, according to

which first the parallel and serial manipulator are connected

without any kind of mapping of the task-spaces of the both the

manipulator. Now in this configuration the parallel manipulator

is directly driving the serial manipulator. Defining a task-space

trajectory for the parallel manipulator is quite easy and it is

Page 11: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

11

Fig. 6. Schematic diagram of integrated teleoperator system for the purpose of trajectory generation in the task-space of the serial manipulator

shown in (80). This desired trajectory in the task-space of

the parallel manipulator has been fed to the controller of

the parallel manipulator. Now the tracking controllers will

set the actuators of the parallel manipulator in a desired

motion which in turn will set desired joint angle motion for

the serial manipulator due to mapping between joint-spaces

of both the manipulator as shown in (59). The controllers

of the serial manipulator will make sure that actual joint

angles of the serial manipulator must track the desired joint

angle motion calculated by (59). Finally by knowing the joint

angle trajectory(θs), task-space trajectory (Xs) for the serial

manipulator can be calculated by (62). This actual task-space

trajectory of the serial manipulator is recorded and supplied

to the integrated teleoperated system as a desired trajectory

in the task-space of the serial manipulator, where all the six

parameters of the end-effector are known. Fig. 6 describes the

whole technique of generating a desired task-space trajectory

for the serial manipulator from feeding known trajectory in

the task-space of the parallel manipulator.

The maximum allowed displacement for the parallel

manipulator platform in cartesian space is as follows

(Xmax = 0.02m,Ymax = 0.02m,Zmax = 0.017m,φmax =10, θmax = 10, ψmax = 20). The desired cartesian trajec-

tories given to platform is described as follows:

S(t) =

Surge : X = χ1 = 0.015 sin(2π × 0.2t)m,Sway : Y = χ2 = 0.015 sin(2π × 0.2t)m,Heave : Z = χ3 = 0.012 sin(2π × 0.2t)m,Roll : φ = χ4 = 5 sin(2π × 0.2t),pitch : θ = χ5 = 5 sin(2π × 0.2t),yaw : ψ = χ6 = 15 sin(2π × 0.2t),

(80)

Parameters for both the manipulators are described in Tables

II-III-I-IV. Fig. 7 shows the comparison of desired trajectory

and actually achieved trajectory, and this is done in the task-

space so that comparison can be made in realistically visible

space. Though, overall tracking performance is very good still

here are some visible deviations between desired and actual

speed during whole trajectory as shown in Fig. 7(a)-7(c) and

7(e) and this deviation is basically due to introduction of

damped least square Jacobian to avoid singularity. From Fig.

7(b)-7(d) and 7(f), it is clearly evident that tracking of angular

speed is extremely good. There are some oscillations in

actual task-space trajectory around desired trajectory but these

oscillations get settled very soon as tracking goes forward.

These oscillation are due to various reasons such has high

gain values of the PID controllers and mismatch of task-

space mapping at initial condition of operation but all these

incompatibility and uncertainties get settled in time less than

one second.

TABLE IIPARAMETER VALUES OF THE PARALLEL MANIPULATOR.

parallel manipulator Parameter Symbols Values

Total height of the manipulator H 0.227 mUpper joint radius ra 0.110 mLower joint radius rb 0.345 mUpper joint spacing La 37

Lower joint spacing Lb 16

Middle actuator length lio 0.250 mUpper platform mass mp 1.4235 kgActuator’s actuating part mass ma 0.37 kgActuator’s rotating part mass mb 0.06 kg

Actuator’s actuating part inertia ia 0.00055 kgm2

Actuator’s rotating part inertia ib 0.00009 kgm2

Reduction ratio from actuator to motor γ 16Lead of ball screw Lbs 0.002 m

TABLE IIIPARAMETER VALUES OF THE CORELESS-DC MOTOR.

PMSM Parameter Symbols Values

Rated output power Pn 5.3 WRated speed ωn 8200 rpmTorque constant Kt 0.0117mNm/ABack-emf constant Ke 0.00123V/rpmArmature resistance Ra 3.6 Ω

Armature inductance La 0.00022 mHMaximum current Ia,max 3.4 ARotor magnetic flux λf 0.1252 Wb

Moment of inertia J 1.85 kgm2

VI. CONCLUSION

This paper has proposed a novel teleoperated mechanism

by integrating two non-isomorphic mechanisms in the master-

slave configuration, where a 6-DOF parallel manipulator is

the master robot and a 6-DOF serial manipulator is the slave

robot. A novel task-space mapping matrix based mechanism

has been proposed to integrate these manipulators as the one

system. Damped least square method has been used to over-

come the singularity of Jacobian of serial manipulator while

calculating inverse kinematic. This work has also presented

a detailed dynamic modeling procedure of the DC-motor

driven 6-DOF parallel and serial manipulators. For simplicity

of the derivation and inclusion of inertial forces applied by

TABLE IVHARTENBERG-DENAVIT PARAMETERS OF THE PUMA 560

Joint αi (deg) di (mm) ai (mm) Variation

First −90 0 0 −160 : 160

Second 0 149.5 432 −225 : 45

Third 90 0 0 −45 : 225

Fourth −90 432 0 −110 : 170

Fifth 90 0 0 −100 : 100

Sixth 0 56.5 0 −266 : 266

Page 12: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

12

0 2.5 5 7.5 10−1

−0.5

0

0.5

1

Time (s)

∂Xs/∂

t (m

/s)

V

x,sd

Xx,sa

(a) Surge motion

0 2 4 6 8 10−10

−5

0

5

10

Time(s)

∂α/∂

t (ra

d/s)

∂αsd

/∂t

∂αsa

/∂t

(b) Roll motion

0 2.5 5 7.5 10−2

−1

0

1

2

Time (s)

∂Ys/∂

t (m

/s)

Vy,sd

Vy,sa

(c) Sway motion

0 2.5 5 7.5 10−5

−2.5

0

2.5

5

Time (s)

∂β/∂

t (ra

d/s)

∂βsd

/∂t

∂βsa

/∂t

(d) Pitch motion

0 2.5 5 7.5 10

−2

−1

0

1

2

Time (s)

∂Zs/∂

t (m

/s)

Vz,sd

Vz,sa

(e) Heave motion

0 2.5 5 7.5 10−10

−5

0

5

10

Time (s)

∂γ/∂

t (ra

d/s)

∂γsd

/∂t

∂γsa

/∂t

(f) Yaw motion

Fig. 7. Speed tracking performance along and around the X-axis (a)-(b), Y-axis (c)-(d), Z-axis (e)-(f) respectively where solid blue lines represent desiredspeed trajectory and dotted red lines represent actual speed trajectory

the actuators, Kane’s method based modeling technique is

used. By establishing force-torque balance in manipulator’s

reference frame, calculation of time varying equivalent inertia

of the motor is successfully avoided. Since, over all system

of parallel manipulator is highly non-linear in nature with

coupling terms and varying parameters, only PID controller

alone could not reduce this resultant tracking error, even after

best tuning. One lag compensator for each actuator has been

designed in combination with PID controller, which resulted in

error improved tracking performance for parallel manipulator.

Accuracy of the trajectory tracking in the task-space of the

serial manipulator has demonstrated validity of the modeling

procedure and efficacy of the overall control architecture

proposed in this work. After getting successful results from

modeling and simulation, experimental implementation of the

overall procedure is underway in a larger project, where usage

of this technology in the form of telepresence in the Oil and

Gas industry is the main aim.

REFERENCES

[1] A. Shukla and H. Karki, “A review of robotics in onshore oil-gasindustry,” in IEEE Int. Conf. on Mech. and Auto., pp. 1153–1160, Aug2013.

[2] D. A. Anisi, E. Persson, and C. Heyer, “Real-world demonstration ofsensor-based robotic automation in oil and gas facilities,” in IEEE Conf

on Intelligent Robots and Systems, pp. 235–240, Sep 2011.

[3] C. Skourup and J. Pretlove, “Remote inspection and intervention-remoterobotics at work in harsh oil and gas environments,” Jan. 2012.

[4] E. Delgado, M. Diaz-Cacho, D. Bustelo, and A. Barreiro, “Genericapproach to stability under time-varying delay in teleoperation: Appli-cation to the position-error control of a gantry crane,” Mechatronics,IEEE/ASME Transactions on, vol. 18, pp. 1581–1591, Oct 2013.

[5] R. C. Goertz, “Fundamentals of general-purpose remote manipulators,”Nucleonics, vol. 10, pp. 36–42, May 1952.

[6] R. C. Goertz, “Mechanical masterslave manipulator,” Nucleonics,vol. 12, pp. 45–46, May 1954.

[7] S. Stramigioli, R. Mahony, and P. Corke, “A novel approach to haptictele-operation of aerial robot vehicles,” in Robotics and Automation

(ICRA), 2010 IEEE Int. Conf. on, pp. 5302–5308, May 2010.

[8] D. Lee, A. Franchi, H. I. Son, C. Ha, H. H. Bulthoff, and P. R. Giordano,“Semiautonomous haptic teleoperation control architecture of multipleunmanned aerial vehicles,” IEEE/ASME Transactions on Mechatronics,vol. 18, pp. 1334–1345, Aug 2013.

[9] A. Y.Mersha, S. Stramigioli, and R. Carloni, “On bilateral teleoperationof aerial robots,” IEEE Tran. on Robotics, vol. 30, pp. 258–274, Feb2014.

[10] J. Y. C. Chen and M. J. Barnes, “Robotics operator performance ina military multi-tasking environment,” in 3rd ACM/IEEE Int. Conf. onHuman-Robot Interaction (HRI), pp. 279–286, March 2008.

[11] R. Anderson, “Smart: a modular control architecture for telerobotics,”Robotics Automation Magazine, IEEE, vol. 2, pp. 10–18, Sep 1995.

[12] J. D. Geeter, H. V. Brussel, J. D. Schutter, and M. Decreton, “Localworld modelling for teleoperation in a nuclear environment using abayesian multiple hypothesis tree,” in IEEE Int. Conf. on IntelligentRobots and Systems, vol. 3, pp. 1658–1663, Sep 1997.

[13] K. A. Manocha, N. Pernalete, and R. V. Dubey, “Variable positionmapping based assistance in teleoperation for nuclear cleanup,” in IEEE

Int. Conf. on Robotics and Automation, vol. 1, pp. 374–379, 2001.

[14] L. Cragg and H. Huosheng, “Application of mobile agents to robustteleoperation of internet robots in nuclear decommissioning,” in IEEE

Int. Conf. on Industrial Technology, Dec 2003.

[15] B. Horan, Z. Najdovski, and S. Nahavandi, “Exploiting ungroundedtactile haptic displays for mobile robotic teleoperation,” in World Au-

tomation Congress, pp. 1–6, Sept 2008.

[16] S. Kang, C. Cho, J. Lee, D. Ryu, C. Park, K.-C. Shin, and M. Kim,“Robhaz-dt2: design and integration of passive double tracked mobilemanipulator system for explosive ordnance disposal,” in Int. Conf. on

Intelligent Robots and Systems, vol. 3, pp. 2624–2629, Oct 2003.

[17] A. Kron, G. Schmidt, B. Petzold, M. I. Zah, P. Hinterseer, and E. Stein-bach, “Disposal of explosive ordnances by use of a bimanual haptictelepresence system,” in IEEE Int. Conf. on Robotics and Automation,vol. 2, pp. 1968–1973 Vol.2, April 2004.

[18] E. I. Agba, M. Z. Huang, T.-L. Wong, and A. M. Clark, “A hybridsimulator for undersea robotic telemanipulation,” in IEEE Proceedings

of Southeastcon, pp. 636–641 vol.2, Apr 1990.

[19] E. I. Agba, “Seamaster: an rov-manipulator system simulator,” IEEEComputer Graphics and Applications, vol. 15, pp. 24–31, Jan 1995.

[20] T. Tsubouchi, A. Tanaka, A. Ishioka, M. Tomono, and S. Yuta, “Aslam based teleoperation and interface system for indoor environment

Page 13: Teleoperation by using non-isomorphic mechanisms …...1 Teleoperation by using non-isomorphic mechanisms in the master-slave configuration for speed control Amit Shukla, Member,

13

reconnaissance in rescue activities,” in IEEE/RSJ Int. Conf. on Intelligent

Robots and Systems, vol. 2, pp. 1096–1102 vol.2, Sept 2004.

[21] C. Beltran-Gonzalez, A. Gasteratos, A. Amanatiadis, D. Chrysostomou,R. Guzman, A. Toth, L. Szollosi, A. Juhasz, and P. Galambos, “Methodsand techniques for intelligent navigation and manipulation for bombdisposal and rescue operations,” in IEEE Int. Workshop on Safety,

Security and Rescue Robotics, pp. 1–6, Sept 2007.

[22] H. Martins and R. Ventura, “Immersive 3-d teleoperation of a search andrescue robot using a head-mounted display,” in IEEE Conf. on Emerging

Technologies Factory Automation, pp. 1–8, Sept 2009.

[23] G. S. Gupta, S. C. Mukhopadhyay, C. H. Messom, and S. N. Demidenko,“Master and slave control of a teleoperated anthropomorphic robotic armwith gripping force sensing,” IEEE Transactions on Instrumentation and

Measurement, vol. 55, pp. 2136–2145, Dec 2006.

[24] F. Danieau, A. Lecuyer, P. Guillotel, J. Fleureau, N. Mollet, andM. Christie, “Enhancing audiovisual experience with haptic feedback:A survey on hav,” IEEE Trans. on Haptics, vol. 6, pp. 193–205, Apr2013.

[25] J. Funda, R. H. Taylor, B. Eldridge, S. Gomory, and K. G. Gruben,“Constrained cartesian motion control for teleoperated surgical robots,”IEEE Transactions on Rob. and Auto., vol. 12, pp. 453–465, Jun 1996.

[26] M. C. Cavusoglu, F. Tendick, M. Cohn, and S. S. Sastry, “A laparo-scopic telesurgical workstation,” IEEE Transactions on Robotics and

Automation, vol. 15, pp. 728–739, Aug 1999.

[27] A. M. Okamura, “Methods for haptic feedback in teleoperated robot-assisted surgery,” Industrial Robot:An Int. Journal, vol. 31, pp. 499–508,2004.

[28] R. H. Taylor and D. Stoianovici, “Medical robotics in computer-integrated surgery,” IEEE Trans. on Rob. and Auto., vol. 19, pp. 765–781,Oct 2003.

[29] Y. Nakajima, T. Nozaki, and K. Ohnishi, “Heartbeat synchronizationwith haptic feedback for telesurgical robot,” Industrial Electronics, IEEETransactions on, vol. 61, pp. 3753–3764, July 2014.

[30] R. C. Goertz and F. Bevilacqua, “A force-reflection position servomech-anism,” Nucleonics, vol. 10, no. 11, pp. 43–45, 1952.

[31] Y. Ye, Y.-J. Pan, and T.Hilliard, “Bilateral teleoperation with time-varying delay: A communication channel passification approach,”IEEE/ASME Tran. on Mechatronics, vol. 18, pp. 1431–1434, Aug 2013.

[32] W. R. Ferrell, “Remote manipulation with transmission delay,” IEEETransactions on Human Factors in Electronics, vol. 6, pp. 24–32, Sept1965.

[33] W. R. Ferrell, “Delayed force feedback,” Journal of the Human Factors

and Ergonomics Society, vol. 8, pp. 449–455, Oct 1966.

[34] E. J. Rodriguez-Seda, D. Lee, and M. W. Spong, “Experimental com-parison study of control architectures for bilateral teleoperators,” IEEE

Transactions on Robotics, vol. 25, pp. 1304–1318, Dec 2009.

[35] C.-C. Hua and X. P. Liu, “A new coordinated slave torque feedbackcontrol algorithm for network-based teleoperation systems,” IEEE/ASME

Transactions on Mechatronics, vol. 18, pp. 764–774, Apr 2013.

[36] A. Hace and M. Franc, “Pseudo-sensorless high-performance bilateralteleoperation by sliding-mode control and fpga,” IEEE/ASME Transac-

tions on Mechatronics, vol. 19, pp. 384–393, Feb 2014.

[37] D. Lee and P. Y. Li, “Passive bilateral feedforward control of linear dy-namically similar teleoperated manipulators,” Robotics and Automation,

IEEE Transactions on, vol. 19, pp. 443–456, June 2003.

[38] Z. Zhang, D. Zhao, and T. Chen, “Master-slave manipulators bilateralcontrol system with force tele-presence,” in IEEE Conf. on Robotics andBiomimetics, pp. 307–311, Dec 2007.

[39] L. Dominjon, J. Perret, and A. Locuyer, “Novel devices and interactiontechniques for human-scale haptics,” The Visual Computer, vol. 23,no. 4, pp. 257–266, 2007.

[40] F. Conti and O. Khatib, “Spanning large workspaces using small hapticdevices,” in Symposium on Haptic Interfaces for Virtual Environment

and Teleoperator Systems, pp. 183–188, IEEE, 2005.

[41] V. E. Gough and S. G. Whitehall, “Universal tyre test machine,” in 9th

Int. Congress FISITA, pp. 117–137, May 1962.

[42] D. Stewart, “Mobile robots for offshore inspection and manipulation,”in Proc. of the Inst. of Mech. Eng., vol. 180, pp. 371–386, 2009.

[43] Y. Patel and P. George, “Parallel manipulators applications-a survey,”Modern Mechanical Engineering, vol. 2, pp. 57–64, 2012.

[44] K. Liu, J. M. Fitzgerald, and F. L. Lewis, “Kinematic analysis of a stew-art platform manipulator,” IEEE Transactions on Industrial Electronics,vol. 40, no. 2, pp. 282–293, 1993.

[45] Z. Geng, L. S. Haynes, J. D. Lee, and R. L. Carroll, “On the dynamicmodel and kinematic analysis of a class of stewart platforms,” Robot.

Autonom. Syst., vol. 9, no. 4, pp. 237–254, 1992.

[46] S. Bhattacharya, H. Hatwal, and A. Ghosh, “An on-line estimationscheme for generalized stewart platform type parallel manipulators,”Mech. Mach. Theory, vol. 32, pp. 79–89, Jan. 1997.

[47] S. Bhattacharya, D. N. Nenchev, and M. Uchiyama, “An on-line estima-tion scheme for generalized stewart platform type parallel manipulators,”Mech. Mach. Theory, vol. 33, pp. 957–964, Oct. 1998.

[48] B. Dasgupta and T. S. Mruthyunjaya, “A newton-euler formulation forthe inverse dynamics of the stewart platform manipulator,” Mech. Mach.

Theory, vol. 33, no. 8, pp. 1135–1152, 1998.[49] B. Dasgupta and P. Choudhury, “A general strategy based on the newton-

euler approach for dynamic formulation of parallel manipulator,” Mech.Mach. Theory, vol. 34, no. 6, pp. 801–824, 1999.

[50] W. Khalil and S. Guegan, “Inverse and direct dynamic modeling ofgough-stewart robots,” IEEE Transactions on Robotics and Automation,vol. 20, pp. 754–762, Aug. 2004.

[51] M. J. Liu, C. X. Li, and C. N. Li, “Dynamics analysis of the gough-stewart platform manipulator,” IEEE Trans. Robot. Automat., vol. 16,no. 1, pp. 94–98, 2000.

[52] B. Dasgupta and T. S. Mruthyunjaya, “Closed-form dynamic equationsof the general stewart plateform through newton-euler approach,” Mech.

Mach. Theory, vol. 33, no. 7, pp. 993–1012, 1998.[53] Y. Wang, S. Zheng, J. Jin, H. Xu, and J. Han, “Dynamic modeling of

spatial 6-dof parallel manipulator using kane method,” in Int. Conf on

E-Product E-Service and E-Entertainment, pp. 1–5, 2010.[54] Y. X. Su and B. Y. Duan, “The mechanical design and kinematics

accuracy analysis of a fine tuning stable platform for the large sphericalradio telescope,” Mechatronics, vol. 10, no. 7, pp. 819–834, 2000.

[55] S. H. Koekebakker, Model Based Control of a Flight Simulator Motion

System. PhD thesis, Delft Uni. of Technology, The Netherlands, 2001.[56] C. D. Zhang and S. M. Song, “An efficient method for the inverse

dynamics of manipulators based on the virtual work principle,” Journal

Robotic System, vol. 10, no. 5, pp. 605–627, 1993.[57] J. Wang and C. M. Gosselin, “A new approach for the dynamic analysis

of parallel manipulators,” Multibody System Dynamics, vol. 2, pp. 317–334, 1998.

[58] T. R. Kane and D. A. Levinson, Dynamics: Theory and Applications.New York: McGraw-Hill, 1985.

[59] C. Yang, Q. Huang, J. He, H. Jiang, and J. Han, “Model-based control for6-dof parallel manipulator,” in Int. Asia Conf. on Informatics in Control,

Automation and Robotics, pp. 81–84, 2009.[60] C. Yang, Q. Huang, Z. Ye, and J. Han, “Dynamic modeling of spatial

6-dof parallel robots using kane method for control purposes,” in Int.

Conf on Intelligent Human-Machine Systems and Cybernetics (IHMSC),vol. 2, pp. 180–183, 2010.

[61] B. Armstrong, O. Khatib, and J. Burdick, “The explicit dynamic modeland inertial parameters of the puma 560 arm,” in IEEE Int. Conf. on

Robotics and Automation, vol. 3, pp. 510–518, Apr 1986.[62] Y.Su, B.Duan, and C.Zheng, “Nonlinear pid control of a six-dof parallel

manipulator,” IEE Proc. Control Theory and Appl., vol. 151, no. 1,pp. 95–102, 2004.

[63] C. Yang, S. Zheng, O. O. Peter, , Q. Huang, and J. Han, “Approxi-mate feedback linearization control for spatial 6-dof hydraulic parallelmanipulator,” The Open Mech. Eng. Journal, vol. 5, pp. 117–123, May2011.

[64] Q. Meng, T. Zhang, J. He, J. Song, and X. Chen, “Improved model-basedcontrol of a six-degree-of-freedom stewart platform driven by permanentmagnet synchronous motors,” Industrial Robot: An Int. Journal, vol. 39,no. 1, pp. 47–56, 2012.

[65] N. S. Nise, Control Systems Engineering. California State PolytechnicUniversity, Pomona: John Wiley & Sons, Inc., 6th ed., 2011.

[66] T. J. Tarn, A. K. Bejczy, G. T. Marth, and A. K. Ramadorai, “Perfor-mance comparison of four manipulator servo schemes,” IEEE Control

Systems, vol. 13, pp. 22–29, Feb 1993.[67] C. A. Klein and C. H. Huang, “Review of pseudoinverse control for

use with kinematically redundant manipulators,” IEEE Transactions onSystems, Man and Cybernetics, vol. SMC-13, pp. 245–250, March 1983.

[68] Y. Nakamura and H. Hanafusa, “Inverse kinematic solutions with sin-gularity robustness for robot manipulator control,” Journal of DynamicSystems, Measurement, and Control, vol. 108, pp. 163–171, Sep 1986.

[69] A. N. Pechev, “Inverse kinematics without matrix inversion,” in IEEE

Int. Conf. on Robotics and Automation, pp. 2005–2012, May 2008.[70] S. Chiaverini, B. Siciliano, and O. Egeland, “Review of the damped

least-squares inverse kinematics with experiments on an industrial robotmanipulator,” IEEE Transactions on Control Systems Technology, vol. 2,pp. 123–134, Jun 1994.