Page 1

Engineering Optimization

Vol. 42, No. 6, June 2010, 535–565

Differential evolution techniques for the structure-control design

of a five-bar parallel robot

Miguel G. Villarreal-Cervantesa*, CarlosA. Cruz-Villara, JaimeAlvarez-Gallegosaand

EdgarA. Portilla-Floresb

aCinvestav-IPN, Departamento de Ingeniería Eléctrica, Av. IPN 2508, Apdo. Postal 14-740,

07300 México D.F., México;bCIDETEC-IPN, Departamento de Posgrado, Area de Mecatrónica,

Av. Juán de Dios Bátiz s/n Esq. Miguel Othon de Mendizabal, Unidad Profesional Adólfo López Mateos,

07700, México D.F., México

(Received 8 April 2009; final version received 1 September 2009)

The present work deals with the use of a constraint-handling differential evolution algorithm to solve a

nonlineardynamicoptimizationproblem(NLDOP)with51decisionvariables.Anovelmechatronicdesign

approach is proposed as an NLDOP, where both the structural parameters of a non-redundant parallel

robot and the control parameters are simultaneously designed with respect to a performance criterion.

Additionally, the dynamic model of the parallel robot is included in the NLDOP as an equality constraint.

The obtained solution will be a set of optimal geometric parameters and optimal PID control gains. The

optimal geometric parameters adjust the dynamic and the kinematic parameters, optimizing then, the link

shapes of the robot. The proposed mechatronic design approach is applied to design simultaneously both

the mechanical structure of a five-bar parallel robot and the PID controller.

Keywords: differential evolution; parallel robot; integrated design; dynamic optimization problem

1.Introduction

Optimizationproblemsarefrequentlyfoundinengineeringapplications.Oneofthemostcommon

approachestoformulateaparametricdesignproblemistoconsideritasanoptimizationproblem.

The integration of mechanical and electronic elements in mechatronic systems has originated

a multidisciplinary framework for their design (Youcef-Toumi 1996). In this multidisciplinary

design approach a whole description of the system behaviour is needed, where the mechanical

behaviour and the dynamic performance must be considered. Some works in mechatronic system

design propose an integrated design approach in order to fulfil the multidisciplinary framework

(Alvarez-Gallegos et al. 2005, Portilla-Flores et al. 2007, Cruz-Villar et al. 2009). Hence, the

integrateddesignapproachisstatedasanNLDOPinordertoobtainasetofdynamicandkinematic

parameters of the system. In most cases, the NLDOP implicates a set of criteria to satisfy in order

to measure the system performance, such that a multiobjective optimization problem (MOP) is

formulated.A typical method to handle MOPs consists of transforming the original problem into

*Corresponding author. Email: gvillarr@cinvestav.mx

ISSN 0305-215X print/ISSN 1029-0273 online

© 2010 Taylor & Francis

DOI: 10.1080/03052150903325557

http://www.informaworld.com

Page 2

536

M.G. Villarreal-Cervantes et al.

a weighted sum approach (Osyczka 1984). This transformation will be easier to solve than the

original multiobjective problem.

Several mathematical programming methods such as sequential quadratic programming (SQP)

are used to solve an NLDOP. However, a weakness of these methods is that they can be attracted

by local minima in the neighbourhood of the starting point. Moreover, these methods are able

to produce only one possible solution. In order to save this problem, various points are needed

to initialize the solution search, nevertheless a considerable sensitivity to its initial search point

is observed on the algorithm convergence (Cruz-Villar et al. 2009). Also, these methods involve

computing the gradient and the Hessian of the objective function and constraints, which implies

that continuity of the second order must be ensured (Portilla-Flores et al. 2007).

Hence, stochastic methods such as evolutionary algorithm (EAs), genetic algorithms (GAs)

or particle swarm optimization (PSO) can be used in order to overcome the above drawbacks.

That is, the development of efficient optimization algorithms remains as an active research area.

Some advantages are obtained when stochastic methods are used to solve this kind of opti-

mization problem: (1) these methods are population-based methods – therefore a global minima

solution can be reached, although not in all kinds of problem; (2) in order to start the search,

additional information is not necessary, i.e. gradients, Hessian matrices, initial search points, etc.;

(3) with these methods, complex problems can be solved, meaning that the optimization prob-

lem can include discontinuous physical models; (4) finally, these methods are independent of

the problem characteristics. That is, these methods can be used and/or adapted to a large set of

problems.

Several extensions of the EAs and PSO have been suggested during the last decades offering

improvedperformanceonselectedbenchmarkproblems.Recently,anothersearchheuristiccalled

differential evolution (DE) has shown performance superior to that of PSO and EAs in the widely

usedbenchmarkproblems,asmaybeobservedin(VesterstromandThomsen2004).DEisrobust,

i.e. it is able to reproduce similar results consistently over many trials, whereas the performance

of PSO is more dependent on the randomized initialization of the individuals. As a result, PSO

mustbeexecutedseveraltimestoensuregoodresults,whereasonerunofDEisusuallysufficient.

Therefore, the DE algorithm is used in this article.

Differentialevolution(DE)isapopulation-basedevolutionaryalgorithm(Priceetal.2005)with

a special recombination operator that performs a linear combination of a number of individuals

(normallythree)andoneparent(whichissubjecttoreplacement)tocreateonechild.Theselection

is deterministic between the parent and the child (the best of them remain in the next population).

Moreover, the DE algorithm is easy to implement due to the design variables being encoded

as floating point variables and few control parameters being required. The DE algorithm can

efficiently find the neighbourhood of the global optimum. DE has been successfully applied to

optimize mechanical systems (Deb and Kain 2003,Alvarez-Gallegos et al. 2005, Shiakolas et al.

2005, Portilla-Flores et al. 2007, Cruz-Villar et al. 2009).

ItisimportanttoremarkthatonlyafewworksuseDEtotacklethemechatronicdesignproblem

asanNLDOP(Alvarez-Gallegosetal.2005,Portilla-Floresetal.2007,SaravananandRamabalan

2008).Aconcurrentdesignmethodologytoformulatethemechatronicdesignproblemisproposed

in Alvarez-Gallegos et al. (2005) and Portilla-Flores et al. (2007). In such a methodology, the

mechatronic design problem is stated as a dynamic optimization problem. The concurrent design

ofarack-and-pinioncontinuouslyvariabletransmission(CVT)iscarriedout.Thismeansthatboth

the parametrical optimal design and the proportional integral (PI) controller gains of a CVT are

obtained.Boththekinematicandthedynamicmodelsofthemechanicalstructure,andthedynamic

of the controller, are considered together with two system performance criteria. The resulting

problem is solved using two methods: a mathematical programming method and an heuristic

approach. In Saravanan and Ramabalan (2008) a general method for computing minimum cost

trajectoryplanningforindustrialrobotmanipulatorsispresented.Theaimistheminimizationofa

Page 3

Engineering Optimization

537

cost function with constraints namely joint positions, velocities, jerks and torques by considering

dynamic equations of motion. A clamped cubic spline curve is used to represent the trajectory

and a nonlinear constrained optimization problem is presented. The cost function is a weighted

balance of transfer time, mean average of actuators efforts and power, singularity avoidance, joint

jerks and joint accelerations.

Traditionally, serial robotic systems (Lung-Wen 1999) have been used in factories for high-

precision routine operations. None the less, parallel robots, which consist of one or more closed

kinematicchains,havebeenusedrecentlyduetotheiradvantagesincomparisonwithserialrobots.

Those advantages involves high stiffness, speed and acceleration, good dynamic characteristics

and precise positioning capability (Hunt 1983). However, the main disadvantages are more sin-

gularity configurations and the lack of well developed tools for analysis, synthesis, control and

trajectory planning. Hence, the parallel robot design is a huge challenge because it is not an easy

task to find the mechanical and the control parameters that improve the system performance.

Severaldesignmethodologiesforparallelrobotshavebeenproposed.Asequentialanditerative

process is one of the most used methodologies to design parallel robots. That methodology is

usually composed of two design phases: the mechanical design, in which the structural design

variablesaredetermined;followedbythecontrolsystemdesign,inwhichthedynamicbehaviouris

considered.Nevertheless,therobotperformancedependsonthesimultaneousinteractionbetween

both design (Youcef-Toumi 1996). On the other hand, a design approach for a five-bar parallel

robot with nonlinear PD controller gains is stated for the trajectory tracking problem in Ouyang

et al. (2003). The key idea of this approach is to find the dynamic (masses, mass centre lengths,

mass centre angles, inertias) and kinematic (link lengths) parameters of the links that produce the

best mass distribution in the parallel robot. The main idea of finding the best mass distribution is

to simplify the dynamic model. Once the dynamic and the kinematic parameters are found, the

control strategy is designed. But that results in a lack of integration in the design, which typically

requires several redesigns to achieve an aceptable system performance.

Another way to state the parallel robot design for the tracking of few points in the Cartesian

space is proposed in Affi et al. (2007). In that work, the authors take into account the Cartesian

positioning error, the maximum current variation and the current fluctuation to be optimized

in order to find the dynamic and kinematic parameters of a four-bar parallel robot. In order to

simplify the control strategy and minimize the power consumption of the motor, the velocity of

the crank is set as a constant. This means that the dynamic model (dynamic behaviour) is not

considered in the optimization process. So, the optimization problem is an approximation of the

real design problem and this problem results in a static one.A static optimization problem (Betts

2001)resultswhenthebehaviouroftheperformancefunctiondoesnotdependonthetime.Hence

in the optimization problem, the time variable is not included and/or the system dynamics is not

considered. The system dynamics is a function where the time variable is considered and this

dynamics is represented by nonlinear differential equations (NLDEs) and described by a set of

dynamic variables referred to as the state equations. The NLDEs describe the dynamic behaviour

of the system, such as mass and energy balances, and algebraic equations that ensure physical

and electrical relations.

On the other hand, singularity configurations are some of the most significant and critical

problemsinthedesignandcontrolofparallelrobots.Unlikeserialrobots,theoperationofparallel

robots near a singular point can cause severe destruction of the robot. Several articles (Klein and

Blaho 1987,Yoshikawa 1990, Kim 2006) have established performance indexes derived from the

Jacobian matrix in order to avoid singularities. Optimal robot configurations (optimal position)

and optimal link lengths are found with those indexes. In Kim (2006), a kinematic design (static

optimization problem) based on the tracking task of a few Cartesian points for a parallelogram

five-bar parallel robot is proposed. In that work, the optimal link lengths are only found in one

single design step without considering the control parameters.

Page 4

538

M.G. Villarreal-Cervantes et al.

In Ouyang et al. (2003),Affi et al. (2007) and Kim (2006), the optimal dynamic and kinematic

parameters of the links do not give to the designer an idea of the link shapes, therefore other

optimization process will be required for the optimal geometric design of the links. In addition,

in order to compute the inertias of the links, the link shapes must be known. Nevertheless, in

those works the following assumption is considered: the inertias were computed as if the links

were cylindrical or rectangular geometries due to the unknown shapes of links. Also, a static

optimization problem is stated since the system dynamics is not taken into consideration as an

equality dynamic constraint (Betts 2001).As a result, the optimal design found does not provide

the best performance in the real world due to the lack of system dynamics in the optimization

problem and due to the above assumption.

The main contributions of the present work is to state a mechatronic design as a nonlinear

dynamic optimization problem. The mechatronic design must consider the synergy between the

mechanical design of a non-redundant parallel robot and the control design. The target of the

mechatronic design is to find simultaneously the optimum structure-control parameters so that

the end-effector of the parallel robot can track a desired trajectory without singularity configu-

rations. In addition, this work deals with the use of a constraint-handling differential evolution

(CHDE) algorithm (Mezura-Montes et al. 2004) to solve such nonlinear dynamic optimization

problemswherenonlineardifferentialequationsareincludedasconstraints.Amodificationofthis

algorithm is included for saving time in the evaluation of the performance function. The obtained

solutionwillbeasetofoptimalgeometricparametersandoptimalPIDcontrolgains.Theoptimal

geometric parameters adjust the dynamic and kinematic parameters and the link shapes of the

robot such that other optimization processes are not required to adjust the geometry of the robot

links (link shapes). The mechatronic design is efficiently applied to the mechanical design of the

five-bar parallel robot and the PID control design.

This article is organized as follows: the five-bar parallel robot with its controller is presented

in Section 2. The formulation of the mechatronic design approach is stated in Section 3, where

eachpartofthedynamicoptimizationproblemfortheparticularcaseofthefive-barparallelrobot

designanditscontroldesignisdetailed.InSection4,theevolutionaryalgorithmispresented.The

resultsanddiscussionofthedynamicoptimizationproblemarecarriedoutinSection5,wherethe

results and discussions of the optimal structure-control design parameters for the five-bar parallel

robot are presented too. Finally, the conclusions of this approach are presented in Section 6.

2.Five-bar parallel robot

The five bar parallel robot is a non-redundant robot consisting of five revolute joints with two

of them active (Figure 1). The reduced model method of closed chain mechanisms presented in

Ghorbel et al. (2000) is employed to obtain the dynamic model of the five-bar parallel robot. The

dynamic parameters of the ith link are the mass mi, the distance of the mass centre lci, the inertia

Iiand the angle of the mass centre γi. The kinematic parameter is the link length asi. In Figure 1

these parameters are shown.

The dynamic model of the five-bar parallel robot is shown in Equation (1), where q =

[q1,q2]T∈ R2, ˙ q = [˙ q1, ˙ q2]T∈ R2areindependentgeneralizedcoordinatevectorsofpositionand

velocity of the actuated links, respectively. q?= [q1,q2,q3,q4]T∈ R4, ˙ q?= [˙ q1, ˙ q2, ˙ q3, ˙ q4]T∈

R4are dependent coordinate vectors of position and velocity. q3 and q4 are the angu-

lar positions of unactuated links and u = [u1,u2]T∈ R2is the applied generalized force

vector. D(q?) = ρ(q

C(q?, ˙ q?) = ρ(q

matrix, g(q?) = ρ(q

?)TD

?(q

?(q

?)ρ(q

?)ρ(q

?) ∈ R2×2is a symmetric positive definite inertia matrix,

?)TC

?, ˙ q

?(q

?) + ρ(q

?)TD

?(q

?) ˙ ρ(q

?) ∈ R2×2is the Coriolis and centrifugal

?)Tg

?) ∈ R2is the gravity vector, ¯ c = [¯ xp, ¯ yp]Tand

·

¯ c = [

·

¯ xp,

·

¯ yp]Tare

Page 5

Engineering Optimization

539

Figure 1.Schematic diagram of the five-bar parallel robot.

the position and velocity in the Cartesian space of the desired trajectory to be executed by the

end-effector of the robot. σ(q) involves a parametrization of q → q?,

?∂σ(q)

?) =d(ρ(q

dt

ρ(q

?) =

∂q

,∂σ(q)

∂q?

?

∈ R4×2,

˙ ρ(q

?))

∈ R4×2

and D

when the parallel robot is virtually cut open at the end-effector (Ghorbel et al. 2000).

?(q

?) ∈ R4×4, C

?(q

?) ∈ R4×4, g

?(q

?) ∈ R4are the motion equations of two serial robots

¨ q = D−1(q?)(−C(q?, ˙ q?)˙ q − g(q?) + u)

˙ q?= ρ(q?)˙ q

q?= σ(q).

(1)

The main characteristic of the parallel robot dynamic model that makes the difference to serial

robot models (Spong andVidyasagar 2004), is that there exist more singularity configurations in

the workspace and it is defined on a compact set where closed-chain constraints are satisfied and

singularity configurations are avoided. A manipulator is said to be at a singularity configuration

when the Jacobian matrix loses its full rank (Lung-Wen 1999). Therefore, at a singularity config-

uration, a manipulator may lose one or more degrees of freedom, and it will not be able to follow

some trajectories in the end-effector space. It follows that all control laws for open chain robots

could also be applied with the only restriction that the guaranteed (Lyapunov) stability conclu-

sions will be local (Ghorbel et al. 2000). In addition, some parallel robot dynamic models have

implicit equations requiring a numerical method to solve. For the particular case of the five-bar

parallel robot, the dynamic model is an explicit equation.

Page 6

540

M.G. Villarreal-Cervantes et al.

2.1.

Control system

In the last decades, researchers have been developing new and sophisticated control laws in order

to improve the system performance from the control system standpoint. Nevertheless, in most of

the cases the control system calibration is quite difficult, requiring previous experience to tune

the control system.

Ontheotherhand,fromthemechatronicdesignstandpoint(Lietal.2001),theperformanceofa

robotreliesonboththecontrolsystemdesignandthemechanicalsystemdesign.Themechatronic

design focuses on developing neither new control strategies nor a new mechanical system. The

idea of a mechatronic design is to find a compromise between the control system design and the

mechanical system design in order to improve the mechatronic system performance, considering

control laws easy to implement and a predefined robot structure.Therefore, based on the idea of a

mechatronic design, two PID controllers are chosen, since the PID controller has an appropriate

performance in most of the applications and it is widely accepted by several industrial control

processes despite of the development of many others control strategies. Therefore with the PID

controller, the input vector u = [u1,u2]Tis defined in Equation (2):

?tf

Due to the integrator of the PID controller, the closed-loop system order is increased by one for

each control input. So, the dynamic model of the five-bar parallel robot (1) with its PID controller

(2) can be formulated in state variables as nonlinear differential Equations (3), which must be

solved by a numerical method such as the Runge–Kutta method:

ui= kpiei+ kii

0

eidt + kdi˙ ei,

for i = 1,2.

(2)

˙ x =dx

dt

= f(x, ¯ x,p,u),

(3)

where x = [q1, q2, ˙ q1, ˙ q2,?tf

x3, ¯ x4− x4]Taretheangularpositionandvelocityerrorvectorsoftheactuatedangles,respectively,

t is the time, tf∈ R is the final time and p ∈ Rnpis a vector of all design variables where the

mechanical and controller parameters of the system are included.

0e1dt,?tf

0e2dt]T= [x1,...,x6]T∈ R6and ¯ x ∈ R6are the current

and desired state variable vectors, e = [e1,e2]T= [¯ x1− x1, ¯ x2− x2]Tand ˙ e = [˙ e1, ˙ e2]T= [¯ x3−

3.Structure–control integrated design approach

Dynamic optimization is the process of determining control and state histories for a dynamic

system over a finite time period to minimize a performance index (Bryson 1999). That is, an

optimal control problem (OCP) for a dynamic continuous system consist in finding the time

history of a control vector u(t) for t0< t < tfto minimize a performance index of the form:

?tf

subject to:

J = ?[x(tf)] +

t0

L(x(t),u(t),p,t)dt

(4)

dx

dt

= f(x(t),u(t),p,t)

x(t0) = x0

(5)

with t0, tfand x0specified.

Page 7

Engineering Optimization

541

In the general optimal problem, an n-dimensional state vector stated by x(t) describes the

behaviour of the system at time t.Also, an m-dimensional control vector u(t) determines the time

rate of change of the state vector through the set of ordinary differential equations (ODEs) stated

by Equation (5). p is the time-independent parameter vector.

Dynamic optimization problems can be solved either by variational approaches or by applying

somelevelofdiscretizationthatconvertstheoriginalcontinuous-timeproblemintoadiscrete-time

problem (Kameswaran and Biegler 2006). The variational approaches are focused on obtaining

a solution to the classical necessary conditions for optimality (Bryson 1999). These approaches

are also known as indirect methods. The second approaches are the methods that discretize the

original continuous-time formulation, and can be divided into two categories, according to the

level of discretization. The first category consists of methods that discretize only the control

profiles (partial dicretization methods) and the second one consists of the methods that discretize

thestateandcontrolprofiles(fulldiscretizationmethods).Thepartiallydiscretizedproblemcanbe

solved either by dynamic programming or by applying a nonlinear programming (NLP) strategy

and they are known as control parametrization methods (Betts 2001). A basic characteristic of

theseapproachesisthatateveryiterationafeasiblesolutionoftheODEssystem,forgivencontrol

values, is obtained by integration. The main advantage of these approaches is that they generate

smaller discrete problems than full discretization methods. The full discretization problem can

only be solved by NLP but the basic characteristic is that they solve the ODEs only once, at the

optimum. The full discretization method is larger and may require special solution techniques

(Kameswaran and Biegler 2006).

InordertosolvetheOCP,acontrolparametrizationmethodcanbeused.Theideaistotransform

the infinite-dimensional OCP into a finite-dimensional optimization problem or NLP problem,

where the trajectory generation (state vector x(t)) and the feedback design of a control system

(control vector u(t)) can be considered as two separate problems. That is, the design of a control

system can be computed based on a control vector parametrization (CVP) while the trajectory

generation is subject to fulfilling the set of ODEs stated by Equation (5).The control parametriza-

tion method is used in several works, such as Sadegh and Driessen (1999) and Cruz-Villar et al.

(2009).Therefore,inthisworkthecontrolvectorisparametrizedusingPIDcontrollers.Thiscon-

trol vector parametrization is stated in Equation (2). Without loss of generality in the integrated

design framework, the problem stated in Equations (4) and (5) is rewritten as:

Min

p

¯ J(x, ¯ x, ¯ c,

·

¯ c,p,t)

(6)

¯ J =

?tf

t0

L(x, ¯ x, ¯ c,

·

¯ c,p,t)dt

subject to:

dx

dt

= f (x, ¯ x,p,t),

·

¯ c,p,t) < 0,

hk(x, ¯ x, ¯ c,

x(t0) = x0

(7)

gj(x, ¯ x, ¯ c,

for j = 1,...,ng

for k = 1,...,nh,

(8)

·

¯ c,p,t) = 0,

(9)

where p ∈ Rnpis a vector of all design variables involving the geometric mechanical parameters

of the five-bar parallel robot and the PID controller gains, x ∈ Rnand ¯ x ∈ Rnare the current

and desired state variable vectors for the generalized coordinates and generalized velocities of

the system dynamics, respectively, x0∈ Rnis the initial state vector required for solving the

nonlinear differential equations (NLDEs) (7), t ∈ R is the time variable, ¯ c ∈ Rncand ¯ c ∈ Rncare

Page 8

542

M.G. Villarreal-Cervantes et al.

the position and velocity vectors in the Cartesian space of the desired trajectory to be tracked by

the system, f(x, ¯ x,p,t) : Rn+np→ Rnis a nonlinear vector function, and L(x, ¯ x, ¯ c,

Rn+np→ R, gj(x, ¯ x, ¯ c,

functions which correspond to the performance criterion, inequality and equality constraints

referred to the system design, respectively. Then, the nonlinear dynamic optimization problem

(NLDOP) for the mechatronic design of the five-bar parallel robot is to find the design variables

p that minimize problem (6) subject to inherent design constraints (7)–(9).

In the next subsections, the performance criterion for the structure-control integrated design of

the five-bar parallel robot is presented. Moreover, the design variable vector and the constraints

of the NLDOP (6)–(9) are detailed.

·

¯ c,p,t) :

·

¯ c,p,t) : Rn+np→ R and hk(x, ¯ x, ¯ c,

·

¯ c,p,t) : Rn+np→ R are smooth

3.1.

Performance criterion

Singularity configuration is a typical problem in parallel robots. In a singular configuration, a

manipulator may lose one or more degrees of freedom, and it will not be able to follow some

trajectoriesintheend-effectorspace(Lung-Wen1999).Hence,whenithappens,theparallelrobot

cannot be controlled.

According to the singularity classification (Liu et al. 2006) of the five-bar parallel robot, there

are three kinds of singularity: the first kind, called the stationary singularity, occurs when the

end-effector reaches its workspace limit, that is, when the angles q1and q3or q2and q4are

collinear (see Figure 1). The second kind of singularity, called the uncertainty singularity, arises

when the robot gains an additional degree of freedom (d.o.f.). This kind of singularity is usually

inside the workspace and it occurs when the angles q3and q4are collinear. The last kind of

singularity is of a different nature from the first two, since it is not only configuration–but also

architecture-dependent, and it occurs when all links are collinear.

Akindofdistanceoftherobotconfigurationfromsingularonesisthemanipulabilitymeasure.A

large manipulability measure means singularities remoteness and a small one means singularities

closeness.ThismeasurewasdevelopedbyYoshikawa(1990)andcanbeappliedtonon-redundant

robots (Mayorga and Carrera 2006). As the five-bar parallel robot is a non-redundant robot, the

manipulability measure is a useful criterion to avoid singularity configurations. Nevertheless, the

manipulability measure cannot be used as the only performance criterion in a design approach

where both the mechanical and control parameters (mechatronic design) are simultaneously con-

sidered,sincethecontrolobjective(tofollowadesiredpointortrajectory)wouldnotbeabletobe

carried out. So, the following performance criterion (10) is proposed in order to satisfy trajectory

tracking without singularity configurations:

¯ J =

?tf

t0

?

eTe

max1

−

2??detJ−1??

tr(J−1J−T)

?

dt,

(10)

where

J =

⎡

⎢

⎢

⎢

⎣

−a1(sin(q2+ q4))sinq3

sin(q1− q2+ q3− q4)

a1(cos(q2+ q4))sinq3

sin(q1− q2+ q3− q4)

q3= sin−1a4sinq4+ a2sinq2− a1sinq1

a2(sin(q1+ q3))sinq4

sin(q1− q2+ q3− q4)

−a2(cos(q1+ q3))sinq4

sin(q1− q2+ q3− q4)

⎤

⎥

⎥

⎥

⎦

(11)

a3

Page 9

Engineering Optimization

543

q4= 2tan−1

?

−B ±

?

B2− 4AC4

2A

?

A = a2

4+ a2

− 2a5a1cos(−q1) − 2a4a2cosq2− 2a4a5+ 2a4a1cosq1

B = 4a4a2sinq2− 4a4a1sinq1

C = a2

− 2a5a1cos(−q1) + 2a4a2cosq2+ 2a4a5− 2a4a1cosq1.

2+ a2

5+ a2

1− a2

3+ 2a2a5cos(q2) − 2a2a1cos(q2− q1)

4+ a2

2+ a2

5+ a2

1− a2

3+ 2a2a5cos(q2) − 2a2a1cos(q2− q1)

In performance criterion (10), the first term involves the position errors where e = [ ¯ x1−

x1, ¯ x2− x2]Tis the vector of angular position errors. The second term is the manipulability

measure where det (•) and tr (•) are the determinant and the trace of the matrix (•), and J is the

Jacobianmatrixofthefive-barparallelrobot.max1isthesquareofthemaximumangularposition

error found in the trajectory tracking for the time interval [0,tf]. So, performance criterion (10)

is dimensionless.

3.2.

Design variables

Let us consider Figure 2. In this article an octagonal shape of the links is used because the

geometric parameters of the links can modify in a wide range the dynamic parameters of the

links (i.e. the mass mi, the mass centre length lci, the mass centre angle γi) and the kinematic

parameters (i.e. the link length asi). The geometric parameters of the ith link, asi, bsi, csi, dsi,

esi, fsi, gsi, hsi, isi, jsi, ksi, for the five-bar parallel robot are considered as the structural design

parameters to be optimized. Those parameters are selected because they can modify the dynamic

and kinematic parameters of the links. Once the optimization process is finished, the optimum

geometricparameterswillprovidetheshapeofthelink.Ifthoseparametersarenotconsideredand

if one selects only the dynamic and kinematic parameters, another optimization process would

be required in order to find the structure shape.

Figure 2.

for the five-bar parallel robot.

Schematicrepresentationofthekinematicanddynamicparameters,andthegeometricparametersofthelinks

Page 10

544

M.G. Villarreal-Cervantes et al.

Ontheotherhand,thegainsofthetwoPIDcontrollers(kp1,ki1,kd1,kp2,ki2,kd2)areconsidered

as the control design parameters to be optimized. So, the design parameter vector p ∈ R51which

involves structural and control design parameters results as in (12):

p = [as1···as5,bs1···bs4,cs1···cs4,ds1···ds4,es1···es4,fs1···fs4,

gs1···gs4,hs1···hs4,is1···is4,js1···js4,ks1···ks4

kp1,kp2,ki1,ki2,kd1,kd2]T

NotethatinFigure2thegeometricparametersfsi,gsi,hsi,isi,jsi,ksi,i = 1,...,4,canchange

the mass centre angle γiof the ith link in a closed interval [0,±π]. If these parameters are not

taken into account, the mass centre angle of the links could be changed to the following discrete

values:0,±π rad.Inordertofindthemathematicalexpressionforthedynamicparameters(mi,lci,

γi, Ii) of the ith link in terms of geometric parameters, it is necessary to consider the following.

(12)

• The coordinate origin is placed at the intersection of the x–y-axis and in the C hole as shown

in Figure 2.

• The ith link can only move at the x–y-plane.

• There is a shaft in the B hole at links 1 and 3. A cylindrical support is placed on the C hole of

link 1 and two cylindrical supports are placed at the B and C holes of link 2, respectively.

• Links and shafts are made of aluminium and steel, respectively. The density of the aluminium

and the steel are ρal= 2710kgm−3and ρst= 7840kgm−3, respectively.

• The links are divided in simple geometries in order to simplify the computing of their dynamic

parameters. Therefore, the ith link is divided into nine parts, Ai, Bi, Ci, Di, Ei, Fi, Gi, Hi, Ii,

as shown in Figure 2.

• The ith mass is concentrated at the mass centre of the ith link.

TheproceduretoobtainthedynamicparametersofabodyisexplainedinHibbeler(2003).The

dynamicparametersofthefive-barparallelrobotintermsofgeometricparametersaresummarized

in next subsections.

3.2.1.

Mass mi

The masses of links are shown in Equations (13), where mAi,...,mIiare masses of the A, …, I

geometricshapes,mxBiisthemassoftheshaftwhichisplacedontheBihole,mcsBiandmcsCiare

the masses of cylindrical supports which are placed on the B and C holes. rB= 3.175 × 10−3m

is the radius of the B hole, rcsB= 15.875 × 10−3m and rcsC= 19.05 × 10−3m are the radii of

cylindrical supports which are placed on the B and C holes, respectively, Lcs= 0.010m is the

length of the cylindrical support which is placed on the C hole, and ri= 0.006m for i = 1,2 and

ri= 0.0025m for i = 3,4 are the radii of cylindrical supports which are placed on the C hole.

m1= mT1+ mxB1+ mcsC1

m2= mT2+ mxB2+ mcsC2+ mcsB

m3= mT3+ mxB3

m4= mT4,

where

(13)

mTi= mAi− mBi− mCi+ mDi+ mEi− mFi− mGi− mHi− mIi

mxB1= ρstπrB2(es1+ es3)

Page 11

Engineering Optimization

545

mxB3= ρstπrB2(es3+ es4)

mcsCi= ρalπ[rcsC2− ri2]Lcs

mBi= ρal[π(rB)2(esi)]

mcsB= ρalπ[rcsB2− rB2]es3

mCi= ρal[π(ri)2(esi)]

mFi=1

mGi=1

mHi=1

mIi=1

mAi= ρal[(asi+ bsi+ dsi)(csi)(esi)]

mDi= ρal[(asi+ bsi+ dsi)(fsi)(esi)]

mEi= ρal[(asi+ bsi+ dsi)(gsi)(esi)]

mxB2= ρst[π(rB)2(es2+ es3+ es4)].

2ρal(hsi)(fsi)(esi)

2ρal(isi)(fsi)(esi)

2ρal(jsi)(gsi)(esi)

2ρal(ksi)(gsi)(esi)

3.2.2.

Length lciand angle γiof the mass centre

The mathematical expression for the length lciand the angle γiof the mass centre for the ith link

is shown in Equation (14). (xCMi,yCMi) are the x–y-coordinates of the total mass centre of the

link, (xAi,yAi),...,(xIi,yIi), (xxBi,yxBi), and (xcsB,ycsB) are the x–y mass centre coordinates

for theAi, …, Iipart, for the shaft placed on the B hole and for the cylindrical support placed on

the B hole, respectively.

lci=

?

(xCMi)2+ (yCMi)2,γi= Atan2

?yCMi

xCMi

?

,

(14)

where

xTi= xAimAi− xBimBi− xCimCi+ xDimDi+ xEimEi− xFimFi− xGimGi

− xHimHi− xIimIi

yTi= yAimAi− yBimBi− yCimCi+ yDimDi+ yEimEi− yFimFi− yGimGi

− yHimHi− yIimIi

xCM1=xT1+ xxB1mxB1

m1

?1

;

xCM2=xT2+ xxB2mxB2+ xcsBmcsB

?

m2

yHi= yIi= −

2csi+ gsi

+1

3gsi

Page 12

546

M.G. Villarreal-Cervantes et al.

xxB2= xscB2= as2

xCM3=xT3+ (xxB3)(mxB3)

yCM4=yT4

m4

m3

;

xCM4=xT4

m4

yFi= yGi=

?1

2csi+ fsi

?

−1

2fsi

yDi=1

xDi=(asi+ bsi+ dsi)

xEi=(asi+ bsi+ dsi)

2fsi+1

2csi

2

− bsi

2

yCM2=yT2+ (yxB2)(mxB2) + (ycsB)(mcsB)

− bsi

yCM1=yT1

m1;

m2

yAi= yBi= yCi= yxBi= ycsCi= xCi= xcsCi= 0

xGi= (asi+ dsi) −1

xIi= (asi+ dsi) −1

yxB2= ycsC2= ycsB= yxB3= xcsB= xcsC2= 0

xAi=(asi+ bsi+ dsi)

2

xxB3= as3

yCM3=yT3+ (yxB3)(mxB3)

m3

yEi= −1

xFi=1

xHi=1

xxBi= asi.

3isi

3ksi

− bsi;

xBi= asi

2(gsi− csi)

3hsi− bsi

3jsi− bsi

3.2.3.

Inertia Ii

Theinertiasofthelinksmustbecomputedwithrespecttothemasscentreofthelink,thereforethe

parallelaxistheorem(Hibbeler2003)isrequired.TheseinertiasarecomputedasinEquations(15),

where IAi,...,IIiare the inertias of theA, …, I geometric shapes, respectively, IxBiis the inertia

of the shaft placed at the Bihole, IcsBand IcsC2are the inertias of cylindrical supports which are

Page 13

Engineering Optimization

547

placed at the B and C holes, respectively, and P#is an equation where the sign # represents the

appropriate subscript, for example PAi, PBi, etc.

I1= IT1+ IxB1+ IcsC1

I2= IT2+ IxB2+ IcsC2+ IcsB

I3= IT3+ IxB3

I4= IT4,

(15)

where

ITi= IAi− IBi− ICi+ IDi+ IEi− IFi− IGi− IHi− IIi

1

18mIi

IxB3=1

1

18mHi

IxB1=1

1

18mGi

IxB2=1

IcsB=1

IBi=1

1

18mFi

ICi=1

1

12mAi

1

12mDi

1

12mEi

???x#− xCMi

IcsC1=1

IcsC2=1

IIi=

?ksi

2+ gsi

2?+ PIi

2mxB3rB2+ PxB3

?jsi

2mxB1rB2+ PxB1

?isi

2mxB2rB2+ PxB2

?rcsB2+ rB2?+ PcsB

2mBirB2+ PBi

?hsi

2mCiri2+ PCi

??asi+ bsi+ dsi

??asi+ bsi+ dsi

??asi+ bsi+ dsi

P#= m#

?rcsC2+ ri2?+ PcsC1

2mcsC2

IHi=

2+ gsi

2?+ PHi

IGi=

2+ fsi

2?+ PGi

2mcsB

IFi=

2+ fsi

2?+ PFi

IAi=

?2+?csi

?2+?fsi

?2+?gsi

?2?

?2?

?2?

+ PAi

IDi=

+ PDi

IEi=+ PEi

?2?2

?2+?y#− yCMi

2mcsC1

?rcsC2+ ri2?+ PcsC2.

Page 14

548

M.G. Villarreal-Cervantes et al.

3.3.

Constraint functions

The constraints in the parallel robot design involve: the maximum torque of the actuators (16)

which establishes the real torque limits; the mobility of the robot (17) which is stated by the

five-bar Grashof criterion; the real limits in the geometric design variables (18); the trajectory

specification (19) to be followed by the end-effector of the five-bar parallel robot; and the parallel

robot dynamic model (3).

|ui(t)| ≤ ui max,

as5+ as1+ as2− as3− as4< 0

as1+ as2− as3< 0

as1+ as2− as4< 0

as5− asmax≤ 0

−as2+ asmin< 0

bsimin≤ bsi≤ bsimax

dsimin≤ dsi≤ dsimax

fsimin≤ fsi≤ fsimax

gsimin≤ gsi≤ gsimax

hsi+ isi≤ bsi+ asi+ dsi

jsi+ ksi≤ bsi+ asi+ dsi

for i = 1,...,4,

for i = 1,2, 0 ≤ t ≤ tf

(16)

as3− as5< 0

as4− as5< 0

− as1+ asmin< 0

(17)

csimin≤ csi≤ csimax

esimin≤ esi≤ esimax

dsimin≤ dsi≤ dsimax

(18)

whereuiistheappliedtorqueatthemotori,ui max= 5Nmisthemaximumtorquefortheithmotor

due to the maximum actuator torque andasiis theith link length.asmax,asminare the maximum and

minimum lengths. The maximum and minimum values of the geometric parameters are chosen

as follows: asmax= 0.5m, asmin= 0.035m; bsimin= 0.01905m, bsimax= 0.3m, csimin= 0.0381m,

csimax= 0.10m,fori = 1,2;bsimin= 0.015m,bsimax= 0.3m,csimin= 0.03175m,csimax= 0.10m,

for i = 3, 4; dsimin= 0.015m, dsimax= 0.3m, esimin= 0.00635m, esimax= 0.03m, fsimin= 0m,

fsimax= 0.1m, gsimin= 0m, gsimax= 0.1m, for i = 1,...,4.

Thefive-barGrashofcriterion(Ting1986)statesthatthefive-barparallelrobotisadouble-crank

linkage. Therefore, the second and third kind of singularity are avoided (Liu et al. 2006).

On the other hand, a circle in the Cartesian space is proposed to be tracked by the end-effector

of the parallel robot. Nevertheless, whatever other trajectory could be chosen, and in order to

verify that statement, a Lissajous curve is proposed too. Those trajectories are shown in Figure 3.

The mathematical expression is shown in Equations (19), where t is the time, frec= 0.2Hz

is the frequency at which the trajectory is completely tracked, r = 0.1m, ¯ c = [¯ xp, ¯ yp]Tand

·

¯ c =

the Cartesian space. cx= 0.15m, cy= 0.3m are the Cartesian coordinates of the intersection of

two lines or the circle centre for the Lissajous curve or for the circle, respectively (see Figure 3).

ˆ a = 2 or ˆ a = 0 for the Lissajous curve or for the circle, respectively.

¯ xp= cx+ r cos(2πfrect)

·

¯ xp= −2πfrecr sin(2πfrect)

·

[¯ xp,

·

¯ yp]Tare vectors which involve the position and the velocity of the desired trajectory in

¯ yp= cy+ r sin(ˆ a2πfrect)

·

¯ yp= ˆ a2πfrecr cos(ˆ a2πfrect)

(19)

Page 15

Engineering Optimization

549

0.2

0.22

0.24

0.26

0.28

0.3

0.32

0.34

0.36

0.38

0.4

ˆ y(m)

0.05 0.10.15

ˆ x(m)

0.2 0.25

0.2

0.22

0.24

0.26

0.28

0.3

0.32

0.34

0.36

0.38

0.4

ˆ y(m)

0.05 0.10.15

ˆ x(m)

0.20.25

(a)(b)

Figure 3.Desired trajectories: (a) Lissajous curve; (b) circle.

Both the inverse kinematic IK and the Jacobian J of the parallel robot are required in order to

transformthepositionandthevelocityofthedesiredtrajectory(19)fromtheCartesiancoordinates

to joint coordinates.The direct kinematic DK and the inverse of the Jacobian J−1are required in

order to transform the position and the velocity from the current joint coordinates to the current

position c = [xp,yp]Tand velocity

robot the IK and DK are developed in Liu et al. (2006).

The last constraint includes the parallel robot dynamic model (3). This constraint and the

constraint stated in Equation (16) are dynamic constraints which are modified when the time is

changed (the time variable is included in those constraints), making the difference with respect

to a static optimization. The system dynamic (3) must be solved as NLDEs by a numeric method

in order to provide the temporary behaviour of the state vector x in the time interval [0,tf]. The

initial state vector for the NLDEs is proposed as x(t0) = [1.7453, 0, 0, 0, 0, 0]Twith final time

tf= 5s.

·c = [˙ xp, ˙ yp]TCartesian coordinates. For the five-bar parallel

3.4.

Formulation of the five-bar parallel robot design as an NLDOP

The NLDOP consist of finding the optimal design variable vector p∗(12) which involves

the optimal geometries of the parallel robot’s links and the optimal PID controller gains, that

simultaneously minimize (20) (minimize the position error and move away from singularity con-

figurations), subject to constraints at the parallel robot dynamic model (3), the motor torque (16),

the Grashof criterion (17), the geometric limits of the links (18), and the desired trajectory to be

executed in the Cartesian space (19). Therefore, the NLDOP can be formulated as follows:

Min

p

¯ J

(20)

¯ J =

?tf

t0

?eTe

max1

−

2|detJ−1|

tr(J−1J−T)

?

dt

subject to:

(i) the system dynamics (3);

(ii) the maximum applied power for the motor (16);

(iii) the Grashof criterion (17);

(iv) the geometric limits of the links (18);

(v) the desired trajectory (19).