research article optimizing industrial robots for accurate high … · 2019. 7. 31. · trial pc,...

13
Hindawi Publishing Corporation Journal of Industrial Engineering Volume 2013, Article ID 625638, 12 pages http://dx.doi.org/10.1155/2013/625638 Research Article Optimizing Industrial Robots for Accurate High-Speed Applications Hubert Gattringer, Roland Riepl, and Matthias Neubauer Institute for Robotics, Johannes Kepler University, Altenbergerstraße 69, 4040 Linz, Austria Correspondence should be addressed to Hubert Gattringer; [email protected] Received 26 September 2012; Revised 14 December 2012; Accepted 13 January 2013 Academic Editor: Aydin Nassehi Copyright © 2013 Hubert Gattringer et al. is is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Today’s standard robotic systems oſten do not meet the industry’s demands for accurate high-speed robotic applications. Any machine, be it an existing or a new one, should be pushed to its limits to provide “optimal” efficiency. However, due to the high complexity of modern applications, a one-step overall optimization is not possible. erefore, this contribution introduces a step- by-step sequence of multiple nonlinear optimizations. Included are optimal configurations for geometric calibration, best-exciting trajectories for parameter identification, model-based control, and time/energy optimal trajectory planning for continuous path and point-to-point trajectories. Each of these optimizations contributes to the improvement of the overall system. Existing optimization techniques are adapted and extended for use with a standard industrial robot scenario and combined with a comprehensive toolkit with discussions on the interplay between the separate components. Most importantly, all procedures are evaluated in practical experiments on a standard robot with industrial control hardware and the recorded measurements are presented, a step oſten missing in publications in this area. 1. Introduction State-of-the-art robotic systems are equipped with highly sophisticated industrial hardware, capable of short sample times and offering high computational power. is increasing arithmetic performance may be used to improve positioning accuracy and dynamic accuracy and compute time/energy- optimal trajectories. e proper fundamentals are found in the underlying mathematical models. is contribution focuses on giving an overview of vari- ous nonlinear optimizations. With each optimization, a certain aspect of an arbitrary robotic system is improved. Applying all of them in sequence will provide better results regarding positioning accuracy and dynamic accuracy and will reduce the cycle times. e basis for this optimization lies in the kinematic and dynamical modeling of the sys- tem. erefore, Section 2 starts with the deviation of these models enhanced by a model-based control strategy. Special emphasis is laid on the implementation on an industrial system including time delays. In Section 3, the static position accuracy of the robot is improved by considering unavoidable tolerances in the robot kinematics. e main topic is obtain- ing optimal configurations for the identification process. e identification of the dynamic parameters, that are used for the model-based control, is described in Section 4. Also, the problem of optimal exciting trajectories is solved by nonlinear optimization techniques. Finally, Section 5 reviews time/energy optimal trajectory planning for continuous path trajectories and point-to-point trajectories. Each section provides information on the used solvers for the various optimizations and also presents detailed results of the conducted experiments. Experiments are performed using an off-the-shelf robot, a St¨ aubli RX130L shown in Figure 3, with industrial control hardware and commercially available measurement hardware, to guarantee that all pro- posed methods are applicable for industry. For specifications of the articulated robot, please consult Table 1. Previous works of the authors, which are also focused on industrial robotics, see, for example, [1], cover the basics like control and geometric path planning. Based on these works, a specific combination of algorithms is presented, each of which optimizes a specific aspect of the robotic system.

Upload: others

Post on 24-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Hindawi Publishing CorporationJournal of Industrial EngineeringVolume 2013 Article ID 625638 12 pageshttpdxdoiorg1011552013625638

Research ArticleOptimizing Industrial Robots for AccurateHigh-Speed Applications

Hubert Gattringer Roland Riepl and Matthias Neubauer

Institute for Robotics Johannes Kepler University Altenbergerstraszlige 69 4040 Linz Austria

Correspondence should be addressed to Hubert Gattringer hubertgattringerjkuat

Received 26 September 2012 Revised 14 December 2012 Accepted 13 January 2013

Academic Editor Aydin Nassehi

Copyright copy 2013 Hubert Gattringer et al This is an open access article distributed under the Creative Commons AttributionLicense which permits unrestricted use distribution and reproduction in any medium provided the original work is properlycited

Todayrsquos standard robotic systems often do not meet the industryrsquos demands for accurate high-speed robotic applications Anymachine be it an existing or a new one should be pushed to its limits to provide ldquooptimalrdquo efficiency However due to the highcomplexity of modern applications a one-step overall optimization is not possible Therefore this contribution introduces a step-by-step sequence of multiple nonlinear optimizations Included are optimal configurations for geometric calibration best-excitingtrajectories for parameter identificationmodel-based control and timeenergy optimal trajectory planning for continuous path andpoint-to-point trajectories Each of these optimizations contributes to the improvement of the overall system Existing optimizationtechniques are adapted and extended for use with a standard industrial robot scenario and combined with a comprehensive toolkitwith discussions on the interplay between the separate components Most importantly all procedures are evaluated in practicalexperiments on a standard robot with industrial control hardware and the recorded measurements are presented a step oftenmissing in publications in this area

1 Introduction

State-of-the-art robotic systems are equipped with highlysophisticated industrial hardware capable of short sampletimes and offering high computational powerThis increasingarithmetic performance may be used to improve positioningaccuracy and dynamic accuracy and compute timeenergy-optimal trajectories The proper fundamentals are found inthe underlying mathematical models

This contribution focuses on giving an overview of vari-ous nonlinear optimizations With each optimization acertain aspect of an arbitrary robotic system is improvedApplying all of them in sequence will provide better resultsregarding positioning accuracy and dynamic accuracy andwill reduce the cycle times The basis for this optimizationlies in the kinematic and dynamical modeling of the sys-tem Therefore Section 2 starts with the deviation of thesemodels enhanced by a model-based control strategy Specialemphasis is laid on the implementation on an industrialsystem including time delays In Section 3 the static positionaccuracy of the robot is improved by considering unavoidable

tolerances in the robot kinematics The main topic is obtain-ing optimal configurations for the identification process Theidentification of the dynamic parameters that are used forthe model-based control is described in Section 4 Alsothe problem of optimal exciting trajectories is solved bynonlinear optimization techniques Finally Section 5 reviewstimeenergy optimal trajectory planning for continuous pathtrajectories and point-to-point trajectories

Each section provides information on the used solvers forthe various optimizations and also presents detailed resultsof the conducted experiments Experiments are performedusing an off-the-shelf robot a Staubli RX130L shown inFigure 3 with industrial control hardware and commerciallyavailable measurement hardware to guarantee that all pro-posed methods are applicable for industry For specificationsof the articulated robot please consult Table 1

Previous works of the authors which are also focused onindustrial robotics see for example [1] cover the basics likecontrol and geometric path planning Based on these worksa specific combination of algorithms is presented each ofwhich optimizes a specific aspect of the robotic system

2 Journal of Industrial Engineering

Table 1 Technical specifications

Staubli RX130L industrial robotDegrees of freedom 6Maximum load capacity 10 kgReach at wrist 1660mmWeight asymp200 kg

2 System Modeling and Control

21 Kinematic Modeling The kinematic modeling can bedivided in the direct kinematics problem and the inversekinematics problem The direct kinematics calculates theend-effector coordinates z119879

119864= (r119879

119864120593

119879

119864) as a function of the

joint coordinates q and nominal geometric parameters p119899as

z119864= fDK (q p119899

) (1)

see Figure 3 Vector r119864indicates the end-effector position

which can be calculated by a sequential summation of therelative connecting vectors For the orientation a descriptionin Cardan angles is used A sequential multiplication ofthe relative rotation matrices between two successive jointsdelivers the rotation matrix A

119868119864between end-effector frame

(119864) and inertial frame (119868) from which the Cardan anglescan be extracted In this paper also the notation tool centerpoint (TCP) is used for the end-effector Inverse kinematicscalculates the joint coordinates q as a function of end-effectorcoordinates z

119864and p

119899

q = f119868119870(z

119864 p

119899) (2)

Solutions for the inverse kinematics problemof such standardrobotic systems can be found inmany textbooks for example[2] or [3]

22 Dynamic Modeling The equations of motion for multi-body systems like a robot can be calculated by severalmethods The method with minimal effort is the ProjectionEquation see [4] Linear momenta p = 119898v

119888and angular

momenta L = J120596119888are projected into the minimal space

(minimal velocities q) via the appropriate Jacobian matrices

119873

sum

119894=1

[[

120597119877v119888

120597q]

119879

[

120597119877120596

119888

120597q]

119879

]

119894

(

119877P +

119877

119868119877 119877P minus

119877f119890

119877L +

119877

119868119877 119877L minus

119877M119890

)

119894

= 0

(3)

All the values like the translational velocity v119888or the rota-

tional velocity of the center of gravity 120596119888can be inserted

in arbitrary coordinate systems 119877 In contrast to 120596119888 120596

119868119877is

the velocity of the used reference system The matrix J is theinertia tensor while p characterizes the vector product120596timespf119890 and M119890 are impressed forces and moments acting on the119894th body An evaluation of (3) yields the highly nonlinearequations of motion for the robot

M (q) q + g (q q) = Q119872 (4)

They are composed of the minimal coordinates q the config-uration dependent symmetric and positive definite massmatrix M(q) the vector g(q q) containing all nonlineareffects (like Coriolis centrifugal gravity and friction forces)and the vector of the generalized actuating forcesQ

119872

Detailed dynamical modeling is an essential task becauseit is the basis for model-based control and optimal trajectorygeneration

23 Control The hardware setup is composed of an indus-trial PC communicating via Powerlink with six ACOPOSservo drives which power the synchronous motors of theStaubli robot The servo drives use cascaded controllers forprecise position control of the robotrsquos joints However thearticulated robot is a highly nonlinear system due to theserially connected armjoint units Typically using linearjoint controllers on a highly nonlinear mechanical systemwill not lead to sufficiently accurate and dynamic end-effectormotion

231 Model-Based Control This contribution suggests toeffectively linearize the nonlinear mechanical system witha flatness-based feed-forward approach and use the servodrivesrsquo linear cascaded controllers to compensatemodel devi-ations and external disturbances Thus they are summarizedfor the sake of completeness Introducing the state x119879

=

(q119879q119879) the equations of motion (4) in state space read

119889

119889119905

(

qq) = (

qM(q)minus1

(minusg (q q) +Q119872)

) (5)

with the input vector of motor torques Q119872 With the flat

output y = q and its derivatives with respect to time

y = q

y = q

y = q = M(q)minus1(minusg (q q) +Q119872

)

(6)

all state and input variables can be computed as a functionof the flat output see for example [5] Consequently theevolution of all system variables q q and Q

119872is determined

by a sufficiently smooth trajectory y(119905)Thus combining the superimposed feed-forward branch

with the servo drivesrsquo internal controllers yields the controllaw for the motor torquesQ

119872

Q119872= M(q

119889)q

119889+ g(q

119889 q

119889)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

feed-forward Q119872119891119891

+ K119901(q

119889minus q) + K

119889(q

119889minus q)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

feed-back

(7)

Please note that the feed-forward term in (7) guides thesystem states along the desired trajectory while the feed-back control law ensures stability against disturbances andmodeling errors with the positive diagonal matrices K

119901and

K119889 The stability of the overall system applying (7) is proven

in [6] Alternatively the feed forward control law may alsobe computed by using the structural properties of the robotrsquossubsystem representation as described in [7]

Journal of Industrial Engineering 3

Industrial PC Bus Servo drives Joints

Trajectorygeneration

Feedforward

Cascadedcontrol

Current controland commutation

Q119872119891119891

Figure 1 Block diagram of the control structure

232 Implementation In order to evaluate the quality of thesuggested controls the Staubli RX130L robot is interfacedwith the motion hardware During this process the robotrsquosmechanics AC motors and resolvers are not changed ormanipulated in any way

The industrial PC is using 400 120583119904 as base sample timeEvery sample step the inverse kinematic problem is solvednumerically to transform the desired end-effector movementinto corresponding joint positions velocities and accelera-tions With these reference joint variables (q

119889 q

119889 and q

119889)

the mathematical model is evaluated to compute the feed-forward motor torques as stated in (7) Then for each jointa separate Ethernet telegram is generated containing thereference positions and corresponding feed-forward motortorques

The servo drives are parameterized to accept cyclicposition inputs for the cascaded controller To do so thecyclically arriving network telegrams are received and thedesired reference positions are passed to the set value inputsof the cascaded controllers Also the computed feed-forwardtorques are transformed to corresponding motor currentsand added to the servo drivesrsquo current controllers set valuesFigure 1 presents the corresponding block diagram

233 Experimental Results The quality of the implementedcontrol strategy is validated by experiments with the StaubliRX130L robot Regarding industrial interests the standard-ized trajectory found in the EN ISO NORM 9283 see [8] isused as reference trajectory It consists of various elementscircles straight lines and squares in the typical workspacefor an industrial applicationThe TCP velocity is chosen with1ms and its acceleration with 5ms2

Figure 2(a) depicts the the lag errors of the first threejoints The other axes show similar results The positiveinfluence of the feed-forward loop is clearly observable Topresent insights on the TCP-accuracy during high dynamicsthe TCP errors for the standard and the improved controllaw along the trajectory are presented in Figure 2(b)They are

measured using a high-precision laser tracker LTD600 fromLeica at a sampling rate of 1ms

Obviously the positive effects of the model-based feed-forward approach drastically reduce the TCP and joint errorsMainly they compensate static effects for example resultingfrom gravity and dynamic effects for example arising fromfriction and high accelerations while the standard cascadedcontroller provides stiffness stability and robustness

3 Static Position Accuracy

Industrial robotic systems usually offer a satisfying repeata-bility However the lack of sufficient accuracy of the end-effector is responsible for time-consuming adjustments whilecommissioning new tasks The sources of these errors arenonmodeled manufacturing tolerances assembly inaccura-cies and joint encoder offsets

31 Kinematics with Error Parameters Thedirect kinematicswhich compute the end-effector position r

119864and orientation

120593119864as function of the joint angles q and nominal geometric

parameters p119899 can be extended by a set of error parameters

p119890regarding lengths joint offsets and assembly inaccuracies

For example the connection vector between points 2 and 3reads

r23= (

1198972

0

0

) + (

1199011198902119909

1199011198902119910

1199011198902119911

) (8)

where 1198972is the nominal length of the connection (part of p

119899)

and 1199011198902119909 119901

1198902119910 119901

1198902119911are the position error values (part of p

119890)

Thus the robotrsquos TCP position and orientation is

z119864119890= (

r119864119890

120593119864119890

) = fDK119890(q p

119899 p

119890) (9)

For a standard six-axis industrial robot as sketched inFigure 3 p

119890contains 6 sdot 3 error parameters regarding length

6 joint encoder offsets 6 sdot 2 angles for misaligned coordinate

4 Journal of Industrial Engineering

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

minus2

0

2

minus2

0

2

minus2

0

2

Time 119905 (s)

119890 1(m

rad)

119890 2(m

rad)

119890 3(m

rad)

(a) Joint errors

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20minus50510

minus6minus4minus2024

minus20246

Time 119905 (s)

119890 119909(m

m)

119890 119910(m

m)

119890 119911(m

m)

(b) TCP errors

Figure 2 Measured errors with (model-based) and without feed-forward loop (standard)

2

3

1199022

1199023

1199024

1199021

1199025

1199026

120659

r23

r119864 119864

Figure 3 RX130L industrial robot

frames between each link and 3 tolerances for defining theinertial coordinate system This results in a set of 39 parame-ters To remove all linear dependencies a119876119877-decompositionis applied see Section 41 for details Applying this methodyields the final error parameter p

119890isin R30

32 Geometric Calibration Thecalibration process calculatesvalid values for the error parameterp

119890thatminimize the error

e between measured TCP-positions z119872

and TCP-positionsdetermined using the corresponding joint angles q

e = z119872minus fDK119890

(q p119899 p

119890) = 0 (10)

This highly nonlinear equation can be solved by an iterativemethod Representing (10) as a Taylor-series around p

119890

Journal of Industrial Engineering 5

neglecting higher order terms and demanding that the errorconverges towards zero yields

e = e (z119872 q p

119899 p(119899)

119890)

+

120597e (z119872 q p

119899 p

119890)

120597p119890

100381610038161003816100381610038161003816100381610038161003816p(119899)119890⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Δp119890= 0

(11)

For119898measurements (11) becomes

(

e (z1198721 q

1 p

119899 p(119899)

119890)

e (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q

+(

Θ (z1198721 q

1 p

119899 p(119899)

119890)

Θ (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ

Δp119890

= 0

(12)

which is an overdetermined equation system solvable bystandard least-squares techniques The minimum of thequadratic error is found with

120597

120597Δp119890

[

(Q +ΘΔp119890)

119879(Q +ΘΔp

119890)

2

]

119879

= Θ119879ΘΔp

119890+Θ

119879Q = 0

(13)

yielding the update law for the error parameter vector

Δp119890= minus[Θ

119879Θ]

minus1

Θ119879Q with p(119899+1)

119890= p(119899)

119890+ Δp

119890 (14)

Initial values for p(0)

119890can be assumed to be zero because the

error parameters regarding length and so forth are con-siderably smaller than the nominal geometric parametersTo finally obtain good position accuracy the identifiedparameters p

119890must be considered in the inverse kinematics

algorithm Any suitable numerical solution is viable and canhandle the set of additional parameters

33 Optimal Configurations for Calibration It is obviousthat the geometric calibration only identifies parameters wellthat are excited accordingly To overcome this problem thewhole work- or joint-space could be discretized for takingthe necessary measurements While this approach is viablefor small systems it is heavily time and cost consuming forsystems with multiple degrees of freedom Such complexsystems are common in todayrsquos industrial applications Asa consequence an optimal set of configurations whichguarantees well-excited error parameters needs to be found

331 Observation Index and Algorithm In order to ensure awell-conditioned problem formulation and also well-excitedparameters p

119890 the minimum singular value of the covariance

matrix Λ = Θ119879Θ in (14) is used as observation index and

optimization criterion and further described by 119861 = 120590119898(Λ)

As for example [9ndash11] show there exist various choices for

valid observation indices with slightly different propertiesThe proposed algorithm which has been presented in [12]allows the use of arbitrary observation indices

Before introducing the optimization algorithm two basicoperations are defined

(i) Add a configuration adding a new configurationwiththe Jacobian Θ

119895to the current information matrixΘ

119894

yields

Θ119894+1= [

Θ119894

Θ119895

] and consequently Λ119894+1= Λ

119894+Θ

119879

119895Θ

119895

(15)

which directly influences the change of the chosenobservation index

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894) (16)

(ii) Remove a configuration similar to the previous caseremoving a configuration Θ

119895from the current infor-

mation matrixΘ119894is described by

Θ119894= [

Θ119894+1

Θ119895

] with Λ119894+1= Λ

119894minusΘ

119879

119895Θ

119895

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894)

(17)

Additionally the complete set of 119873 measurable configura-tions is called the configuration-setΠ An arbitrary subset ofit is denoted by the set 120585These operations and definitions arethe basics for the following optimization method

(1) Initialization a given number of 119899 configurationsis randomly selected from the initial configuration-set Π This subset 120585

0must lead to a nonsingular

covariance-matrix Λ0to ensure a computation of

the observation index 119861(Λ0) Should this not be the

case for the chosen configurations then the randomselection process is simply repeated

(2) Remove and replace the configuration that leadsto the minimal decrease of the observation indexΔ119861(Λ

119894+1) is removed from the current configuration

set 120585119894Then the resulting subset 120585

119894+1is complemented

by exactly that configuration of Π that maximizesΔ119861(Λ

119894+2) For both operations the correct element

is found by an exhaustive search over the respectiveset Note that due to the simple way to calculateΔ119861 (see ((15)ndash(17))) the computational effort forthese searches is not as dramatic as it may soundThis remove-and-replace strategy effectively sortsout configurations that do not improve the overallconditioning of the covariance matrix and replacesthem with ones that do The step is repeated as longas one remove-and-replace operation still improvesthe observation index Otherwise the next step isexecuted

(3) Add additional configurations from the config-uration-set Π exactly the one configuration (again

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 2: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

2 Journal of Industrial Engineering

Table 1 Technical specifications

Staubli RX130L industrial robotDegrees of freedom 6Maximum load capacity 10 kgReach at wrist 1660mmWeight asymp200 kg

2 System Modeling and Control

21 Kinematic Modeling The kinematic modeling can bedivided in the direct kinematics problem and the inversekinematics problem The direct kinematics calculates theend-effector coordinates z119879

119864= (r119879

119864120593

119879

119864) as a function of the

joint coordinates q and nominal geometric parameters p119899as

z119864= fDK (q p119899

) (1)

see Figure 3 Vector r119864indicates the end-effector position

which can be calculated by a sequential summation of therelative connecting vectors For the orientation a descriptionin Cardan angles is used A sequential multiplication ofthe relative rotation matrices between two successive jointsdelivers the rotation matrix A

119868119864between end-effector frame

(119864) and inertial frame (119868) from which the Cardan anglescan be extracted In this paper also the notation tool centerpoint (TCP) is used for the end-effector Inverse kinematicscalculates the joint coordinates q as a function of end-effectorcoordinates z

119864and p

119899

q = f119868119870(z

119864 p

119899) (2)

Solutions for the inverse kinematics problemof such standardrobotic systems can be found inmany textbooks for example[2] or [3]

22 Dynamic Modeling The equations of motion for multi-body systems like a robot can be calculated by severalmethods The method with minimal effort is the ProjectionEquation see [4] Linear momenta p = 119898v

119888and angular

momenta L = J120596119888are projected into the minimal space

(minimal velocities q) via the appropriate Jacobian matrices

119873

sum

119894=1

[[

120597119877v119888

120597q]

119879

[

120597119877120596

119888

120597q]

119879

]

119894

(

119877P +

119877

119868119877 119877P minus

119877f119890

119877L +

119877

119868119877 119877L minus

119877M119890

)

119894

= 0

(3)

All the values like the translational velocity v119888or the rota-

tional velocity of the center of gravity 120596119888can be inserted

in arbitrary coordinate systems 119877 In contrast to 120596119888 120596

119868119877is

the velocity of the used reference system The matrix J is theinertia tensor while p characterizes the vector product120596timespf119890 and M119890 are impressed forces and moments acting on the119894th body An evaluation of (3) yields the highly nonlinearequations of motion for the robot

M (q) q + g (q q) = Q119872 (4)

They are composed of the minimal coordinates q the config-uration dependent symmetric and positive definite massmatrix M(q) the vector g(q q) containing all nonlineareffects (like Coriolis centrifugal gravity and friction forces)and the vector of the generalized actuating forcesQ

119872

Detailed dynamical modeling is an essential task becauseit is the basis for model-based control and optimal trajectorygeneration

23 Control The hardware setup is composed of an indus-trial PC communicating via Powerlink with six ACOPOSservo drives which power the synchronous motors of theStaubli robot The servo drives use cascaded controllers forprecise position control of the robotrsquos joints However thearticulated robot is a highly nonlinear system due to theserially connected armjoint units Typically using linearjoint controllers on a highly nonlinear mechanical systemwill not lead to sufficiently accurate and dynamic end-effectormotion

231 Model-Based Control This contribution suggests toeffectively linearize the nonlinear mechanical system witha flatness-based feed-forward approach and use the servodrivesrsquo linear cascaded controllers to compensatemodel devi-ations and external disturbances Thus they are summarizedfor the sake of completeness Introducing the state x119879

=

(q119879q119879) the equations of motion (4) in state space read

119889

119889119905

(

qq) = (

qM(q)minus1

(minusg (q q) +Q119872)

) (5)

with the input vector of motor torques Q119872 With the flat

output y = q and its derivatives with respect to time

y = q

y = q

y = q = M(q)minus1(minusg (q q) +Q119872

)

(6)

all state and input variables can be computed as a functionof the flat output see for example [5] Consequently theevolution of all system variables q q and Q

119872is determined

by a sufficiently smooth trajectory y(119905)Thus combining the superimposed feed-forward branch

with the servo drivesrsquo internal controllers yields the controllaw for the motor torquesQ

119872

Q119872= M(q

119889)q

119889+ g(q

119889 q

119889)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

feed-forward Q119872119891119891

+ K119901(q

119889minus q) + K

119889(q

119889minus q)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

feed-back

(7)

Please note that the feed-forward term in (7) guides thesystem states along the desired trajectory while the feed-back control law ensures stability against disturbances andmodeling errors with the positive diagonal matrices K

119901and

K119889 The stability of the overall system applying (7) is proven

in [6] Alternatively the feed forward control law may alsobe computed by using the structural properties of the robotrsquossubsystem representation as described in [7]

Journal of Industrial Engineering 3

Industrial PC Bus Servo drives Joints

Trajectorygeneration

Feedforward

Cascadedcontrol

Current controland commutation

Q119872119891119891

Figure 1 Block diagram of the control structure

232 Implementation In order to evaluate the quality of thesuggested controls the Staubli RX130L robot is interfacedwith the motion hardware During this process the robotrsquosmechanics AC motors and resolvers are not changed ormanipulated in any way

The industrial PC is using 400 120583119904 as base sample timeEvery sample step the inverse kinematic problem is solvednumerically to transform the desired end-effector movementinto corresponding joint positions velocities and accelera-tions With these reference joint variables (q

119889 q

119889 and q

119889)

the mathematical model is evaluated to compute the feed-forward motor torques as stated in (7) Then for each jointa separate Ethernet telegram is generated containing thereference positions and corresponding feed-forward motortorques

The servo drives are parameterized to accept cyclicposition inputs for the cascaded controller To do so thecyclically arriving network telegrams are received and thedesired reference positions are passed to the set value inputsof the cascaded controllers Also the computed feed-forwardtorques are transformed to corresponding motor currentsand added to the servo drivesrsquo current controllers set valuesFigure 1 presents the corresponding block diagram

233 Experimental Results The quality of the implementedcontrol strategy is validated by experiments with the StaubliRX130L robot Regarding industrial interests the standard-ized trajectory found in the EN ISO NORM 9283 see [8] isused as reference trajectory It consists of various elementscircles straight lines and squares in the typical workspacefor an industrial applicationThe TCP velocity is chosen with1ms and its acceleration with 5ms2

Figure 2(a) depicts the the lag errors of the first threejoints The other axes show similar results The positiveinfluence of the feed-forward loop is clearly observable Topresent insights on the TCP-accuracy during high dynamicsthe TCP errors for the standard and the improved controllaw along the trajectory are presented in Figure 2(b)They are

measured using a high-precision laser tracker LTD600 fromLeica at a sampling rate of 1ms

Obviously the positive effects of the model-based feed-forward approach drastically reduce the TCP and joint errorsMainly they compensate static effects for example resultingfrom gravity and dynamic effects for example arising fromfriction and high accelerations while the standard cascadedcontroller provides stiffness stability and robustness

3 Static Position Accuracy

Industrial robotic systems usually offer a satisfying repeata-bility However the lack of sufficient accuracy of the end-effector is responsible for time-consuming adjustments whilecommissioning new tasks The sources of these errors arenonmodeled manufacturing tolerances assembly inaccura-cies and joint encoder offsets

31 Kinematics with Error Parameters Thedirect kinematicswhich compute the end-effector position r

119864and orientation

120593119864as function of the joint angles q and nominal geometric

parameters p119899 can be extended by a set of error parameters

p119890regarding lengths joint offsets and assembly inaccuracies

For example the connection vector between points 2 and 3reads

r23= (

1198972

0

0

) + (

1199011198902119909

1199011198902119910

1199011198902119911

) (8)

where 1198972is the nominal length of the connection (part of p

119899)

and 1199011198902119909 119901

1198902119910 119901

1198902119911are the position error values (part of p

119890)

Thus the robotrsquos TCP position and orientation is

z119864119890= (

r119864119890

120593119864119890

) = fDK119890(q p

119899 p

119890) (9)

For a standard six-axis industrial robot as sketched inFigure 3 p

119890contains 6 sdot 3 error parameters regarding length

6 joint encoder offsets 6 sdot 2 angles for misaligned coordinate

4 Journal of Industrial Engineering

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

minus2

0

2

minus2

0

2

minus2

0

2

Time 119905 (s)

119890 1(m

rad)

119890 2(m

rad)

119890 3(m

rad)

(a) Joint errors

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20minus50510

minus6minus4minus2024

minus20246

Time 119905 (s)

119890 119909(m

m)

119890 119910(m

m)

119890 119911(m

m)

(b) TCP errors

Figure 2 Measured errors with (model-based) and without feed-forward loop (standard)

2

3

1199022

1199023

1199024

1199021

1199025

1199026

120659

r23

r119864 119864

Figure 3 RX130L industrial robot

frames between each link and 3 tolerances for defining theinertial coordinate system This results in a set of 39 parame-ters To remove all linear dependencies a119876119877-decompositionis applied see Section 41 for details Applying this methodyields the final error parameter p

119890isin R30

32 Geometric Calibration Thecalibration process calculatesvalid values for the error parameterp

119890thatminimize the error

e between measured TCP-positions z119872

and TCP-positionsdetermined using the corresponding joint angles q

e = z119872minus fDK119890

(q p119899 p

119890) = 0 (10)

This highly nonlinear equation can be solved by an iterativemethod Representing (10) as a Taylor-series around p

119890

Journal of Industrial Engineering 5

neglecting higher order terms and demanding that the errorconverges towards zero yields

e = e (z119872 q p

119899 p(119899)

119890)

+

120597e (z119872 q p

119899 p

119890)

120597p119890

100381610038161003816100381610038161003816100381610038161003816p(119899)119890⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Δp119890= 0

(11)

For119898measurements (11) becomes

(

e (z1198721 q

1 p

119899 p(119899)

119890)

e (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q

+(

Θ (z1198721 q

1 p

119899 p(119899)

119890)

Θ (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ

Δp119890

= 0

(12)

which is an overdetermined equation system solvable bystandard least-squares techniques The minimum of thequadratic error is found with

120597

120597Δp119890

[

(Q +ΘΔp119890)

119879(Q +ΘΔp

119890)

2

]

119879

= Θ119879ΘΔp

119890+Θ

119879Q = 0

(13)

yielding the update law for the error parameter vector

Δp119890= minus[Θ

119879Θ]

minus1

Θ119879Q with p(119899+1)

119890= p(119899)

119890+ Δp

119890 (14)

Initial values for p(0)

119890can be assumed to be zero because the

error parameters regarding length and so forth are con-siderably smaller than the nominal geometric parametersTo finally obtain good position accuracy the identifiedparameters p

119890must be considered in the inverse kinematics

algorithm Any suitable numerical solution is viable and canhandle the set of additional parameters

33 Optimal Configurations for Calibration It is obviousthat the geometric calibration only identifies parameters wellthat are excited accordingly To overcome this problem thewhole work- or joint-space could be discretized for takingthe necessary measurements While this approach is viablefor small systems it is heavily time and cost consuming forsystems with multiple degrees of freedom Such complexsystems are common in todayrsquos industrial applications Asa consequence an optimal set of configurations whichguarantees well-excited error parameters needs to be found

331 Observation Index and Algorithm In order to ensure awell-conditioned problem formulation and also well-excitedparameters p

119890 the minimum singular value of the covariance

matrix Λ = Θ119879Θ in (14) is used as observation index and

optimization criterion and further described by 119861 = 120590119898(Λ)

As for example [9ndash11] show there exist various choices for

valid observation indices with slightly different propertiesThe proposed algorithm which has been presented in [12]allows the use of arbitrary observation indices

Before introducing the optimization algorithm two basicoperations are defined

(i) Add a configuration adding a new configurationwiththe Jacobian Θ

119895to the current information matrixΘ

119894

yields

Θ119894+1= [

Θ119894

Θ119895

] and consequently Λ119894+1= Λ

119894+Θ

119879

119895Θ

119895

(15)

which directly influences the change of the chosenobservation index

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894) (16)

(ii) Remove a configuration similar to the previous caseremoving a configuration Θ

119895from the current infor-

mation matrixΘ119894is described by

Θ119894= [

Θ119894+1

Θ119895

] with Λ119894+1= Λ

119894minusΘ

119879

119895Θ

119895

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894)

(17)

Additionally the complete set of 119873 measurable configura-tions is called the configuration-setΠ An arbitrary subset ofit is denoted by the set 120585These operations and definitions arethe basics for the following optimization method

(1) Initialization a given number of 119899 configurationsis randomly selected from the initial configuration-set Π This subset 120585

0must lead to a nonsingular

covariance-matrix Λ0to ensure a computation of

the observation index 119861(Λ0) Should this not be the

case for the chosen configurations then the randomselection process is simply repeated

(2) Remove and replace the configuration that leadsto the minimal decrease of the observation indexΔ119861(Λ

119894+1) is removed from the current configuration

set 120585119894Then the resulting subset 120585

119894+1is complemented

by exactly that configuration of Π that maximizesΔ119861(Λ

119894+2) For both operations the correct element

is found by an exhaustive search over the respectiveset Note that due to the simple way to calculateΔ119861 (see ((15)ndash(17))) the computational effort forthese searches is not as dramatic as it may soundThis remove-and-replace strategy effectively sortsout configurations that do not improve the overallconditioning of the covariance matrix and replacesthem with ones that do The step is repeated as longas one remove-and-replace operation still improvesthe observation index Otherwise the next step isexecuted

(3) Add additional configurations from the config-uration-set Π exactly the one configuration (again

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 3: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Journal of Industrial Engineering 3

Industrial PC Bus Servo drives Joints

Trajectorygeneration

Feedforward

Cascadedcontrol

Current controland commutation

Q119872119891119891

Figure 1 Block diagram of the control structure

232 Implementation In order to evaluate the quality of thesuggested controls the Staubli RX130L robot is interfacedwith the motion hardware During this process the robotrsquosmechanics AC motors and resolvers are not changed ormanipulated in any way

The industrial PC is using 400 120583119904 as base sample timeEvery sample step the inverse kinematic problem is solvednumerically to transform the desired end-effector movementinto corresponding joint positions velocities and accelera-tions With these reference joint variables (q

119889 q

119889 and q

119889)

the mathematical model is evaluated to compute the feed-forward motor torques as stated in (7) Then for each jointa separate Ethernet telegram is generated containing thereference positions and corresponding feed-forward motortorques

The servo drives are parameterized to accept cyclicposition inputs for the cascaded controller To do so thecyclically arriving network telegrams are received and thedesired reference positions are passed to the set value inputsof the cascaded controllers Also the computed feed-forwardtorques are transformed to corresponding motor currentsand added to the servo drivesrsquo current controllers set valuesFigure 1 presents the corresponding block diagram

233 Experimental Results The quality of the implementedcontrol strategy is validated by experiments with the StaubliRX130L robot Regarding industrial interests the standard-ized trajectory found in the EN ISO NORM 9283 see [8] isused as reference trajectory It consists of various elementscircles straight lines and squares in the typical workspacefor an industrial applicationThe TCP velocity is chosen with1ms and its acceleration with 5ms2

Figure 2(a) depicts the the lag errors of the first threejoints The other axes show similar results The positiveinfluence of the feed-forward loop is clearly observable Topresent insights on the TCP-accuracy during high dynamicsthe TCP errors for the standard and the improved controllaw along the trajectory are presented in Figure 2(b)They are

measured using a high-precision laser tracker LTD600 fromLeica at a sampling rate of 1ms

Obviously the positive effects of the model-based feed-forward approach drastically reduce the TCP and joint errorsMainly they compensate static effects for example resultingfrom gravity and dynamic effects for example arising fromfriction and high accelerations while the standard cascadedcontroller provides stiffness stability and robustness

3 Static Position Accuracy

Industrial robotic systems usually offer a satisfying repeata-bility However the lack of sufficient accuracy of the end-effector is responsible for time-consuming adjustments whilecommissioning new tasks The sources of these errors arenonmodeled manufacturing tolerances assembly inaccura-cies and joint encoder offsets

31 Kinematics with Error Parameters Thedirect kinematicswhich compute the end-effector position r

119864and orientation

120593119864as function of the joint angles q and nominal geometric

parameters p119899 can be extended by a set of error parameters

p119890regarding lengths joint offsets and assembly inaccuracies

For example the connection vector between points 2 and 3reads

r23= (

1198972

0

0

) + (

1199011198902119909

1199011198902119910

1199011198902119911

) (8)

where 1198972is the nominal length of the connection (part of p

119899)

and 1199011198902119909 119901

1198902119910 119901

1198902119911are the position error values (part of p

119890)

Thus the robotrsquos TCP position and orientation is

z119864119890= (

r119864119890

120593119864119890

) = fDK119890(q p

119899 p

119890) (9)

For a standard six-axis industrial robot as sketched inFigure 3 p

119890contains 6 sdot 3 error parameters regarding length

6 joint encoder offsets 6 sdot 2 angles for misaligned coordinate

4 Journal of Industrial Engineering

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

minus2

0

2

minus2

0

2

minus2

0

2

Time 119905 (s)

119890 1(m

rad)

119890 2(m

rad)

119890 3(m

rad)

(a) Joint errors

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20minus50510

minus6minus4minus2024

minus20246

Time 119905 (s)

119890 119909(m

m)

119890 119910(m

m)

119890 119911(m

m)

(b) TCP errors

Figure 2 Measured errors with (model-based) and without feed-forward loop (standard)

2

3

1199022

1199023

1199024

1199021

1199025

1199026

120659

r23

r119864 119864

Figure 3 RX130L industrial robot

frames between each link and 3 tolerances for defining theinertial coordinate system This results in a set of 39 parame-ters To remove all linear dependencies a119876119877-decompositionis applied see Section 41 for details Applying this methodyields the final error parameter p

119890isin R30

32 Geometric Calibration Thecalibration process calculatesvalid values for the error parameterp

119890thatminimize the error

e between measured TCP-positions z119872

and TCP-positionsdetermined using the corresponding joint angles q

e = z119872minus fDK119890

(q p119899 p

119890) = 0 (10)

This highly nonlinear equation can be solved by an iterativemethod Representing (10) as a Taylor-series around p

119890

Journal of Industrial Engineering 5

neglecting higher order terms and demanding that the errorconverges towards zero yields

e = e (z119872 q p

119899 p(119899)

119890)

+

120597e (z119872 q p

119899 p

119890)

120597p119890

100381610038161003816100381610038161003816100381610038161003816p(119899)119890⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Δp119890= 0

(11)

For119898measurements (11) becomes

(

e (z1198721 q

1 p

119899 p(119899)

119890)

e (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q

+(

Θ (z1198721 q

1 p

119899 p(119899)

119890)

Θ (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ

Δp119890

= 0

(12)

which is an overdetermined equation system solvable bystandard least-squares techniques The minimum of thequadratic error is found with

120597

120597Δp119890

[

(Q +ΘΔp119890)

119879(Q +ΘΔp

119890)

2

]

119879

= Θ119879ΘΔp

119890+Θ

119879Q = 0

(13)

yielding the update law for the error parameter vector

Δp119890= minus[Θ

119879Θ]

minus1

Θ119879Q with p(119899+1)

119890= p(119899)

119890+ Δp

119890 (14)

Initial values for p(0)

119890can be assumed to be zero because the

error parameters regarding length and so forth are con-siderably smaller than the nominal geometric parametersTo finally obtain good position accuracy the identifiedparameters p

119890must be considered in the inverse kinematics

algorithm Any suitable numerical solution is viable and canhandle the set of additional parameters

33 Optimal Configurations for Calibration It is obviousthat the geometric calibration only identifies parameters wellthat are excited accordingly To overcome this problem thewhole work- or joint-space could be discretized for takingthe necessary measurements While this approach is viablefor small systems it is heavily time and cost consuming forsystems with multiple degrees of freedom Such complexsystems are common in todayrsquos industrial applications Asa consequence an optimal set of configurations whichguarantees well-excited error parameters needs to be found

331 Observation Index and Algorithm In order to ensure awell-conditioned problem formulation and also well-excitedparameters p

119890 the minimum singular value of the covariance

matrix Λ = Θ119879Θ in (14) is used as observation index and

optimization criterion and further described by 119861 = 120590119898(Λ)

As for example [9ndash11] show there exist various choices for

valid observation indices with slightly different propertiesThe proposed algorithm which has been presented in [12]allows the use of arbitrary observation indices

Before introducing the optimization algorithm two basicoperations are defined

(i) Add a configuration adding a new configurationwiththe Jacobian Θ

119895to the current information matrixΘ

119894

yields

Θ119894+1= [

Θ119894

Θ119895

] and consequently Λ119894+1= Λ

119894+Θ

119879

119895Θ

119895

(15)

which directly influences the change of the chosenobservation index

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894) (16)

(ii) Remove a configuration similar to the previous caseremoving a configuration Θ

119895from the current infor-

mation matrixΘ119894is described by

Θ119894= [

Θ119894+1

Θ119895

] with Λ119894+1= Λ

119894minusΘ

119879

119895Θ

119895

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894)

(17)

Additionally the complete set of 119873 measurable configura-tions is called the configuration-setΠ An arbitrary subset ofit is denoted by the set 120585These operations and definitions arethe basics for the following optimization method

(1) Initialization a given number of 119899 configurationsis randomly selected from the initial configuration-set Π This subset 120585

0must lead to a nonsingular

covariance-matrix Λ0to ensure a computation of

the observation index 119861(Λ0) Should this not be the

case for the chosen configurations then the randomselection process is simply repeated

(2) Remove and replace the configuration that leadsto the minimal decrease of the observation indexΔ119861(Λ

119894+1) is removed from the current configuration

set 120585119894Then the resulting subset 120585

119894+1is complemented

by exactly that configuration of Π that maximizesΔ119861(Λ

119894+2) For both operations the correct element

is found by an exhaustive search over the respectiveset Note that due to the simple way to calculateΔ119861 (see ((15)ndash(17))) the computational effort forthese searches is not as dramatic as it may soundThis remove-and-replace strategy effectively sortsout configurations that do not improve the overallconditioning of the covariance matrix and replacesthem with ones that do The step is repeated as longas one remove-and-replace operation still improvesthe observation index Otherwise the next step isexecuted

(3) Add additional configurations from the config-uration-set Π exactly the one configuration (again

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 4: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

4 Journal of Industrial Engineering

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

minus2

0

2

minus2

0

2

minus2

0

2

Time 119905 (s)

119890 1(m

rad)

119890 2(m

rad)

119890 3(m

rad)

(a) Joint errors

StandardModel-based

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20

4 6 820 10 12 14 16 18 20minus50510

minus6minus4minus2024

minus20246

Time 119905 (s)

119890 119909(m

m)

119890 119910(m

m)

119890 119911(m

m)

(b) TCP errors

Figure 2 Measured errors with (model-based) and without feed-forward loop (standard)

2

3

1199022

1199023

1199024

1199021

1199025

1199026

120659

r23

r119864 119864

Figure 3 RX130L industrial robot

frames between each link and 3 tolerances for defining theinertial coordinate system This results in a set of 39 parame-ters To remove all linear dependencies a119876119877-decompositionis applied see Section 41 for details Applying this methodyields the final error parameter p

119890isin R30

32 Geometric Calibration Thecalibration process calculatesvalid values for the error parameterp

119890thatminimize the error

e between measured TCP-positions z119872

and TCP-positionsdetermined using the corresponding joint angles q

e = z119872minus fDK119890

(q p119899 p

119890) = 0 (10)

This highly nonlinear equation can be solved by an iterativemethod Representing (10) as a Taylor-series around p

119890

Journal of Industrial Engineering 5

neglecting higher order terms and demanding that the errorconverges towards zero yields

e = e (z119872 q p

119899 p(119899)

119890)

+

120597e (z119872 q p

119899 p

119890)

120597p119890

100381610038161003816100381610038161003816100381610038161003816p(119899)119890⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Δp119890= 0

(11)

For119898measurements (11) becomes

(

e (z1198721 q

1 p

119899 p(119899)

119890)

e (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q

+(

Θ (z1198721 q

1 p

119899 p(119899)

119890)

Θ (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ

Δp119890

= 0

(12)

which is an overdetermined equation system solvable bystandard least-squares techniques The minimum of thequadratic error is found with

120597

120597Δp119890

[

(Q +ΘΔp119890)

119879(Q +ΘΔp

119890)

2

]

119879

= Θ119879ΘΔp

119890+Θ

119879Q = 0

(13)

yielding the update law for the error parameter vector

Δp119890= minus[Θ

119879Θ]

minus1

Θ119879Q with p(119899+1)

119890= p(119899)

119890+ Δp

119890 (14)

Initial values for p(0)

119890can be assumed to be zero because the

error parameters regarding length and so forth are con-siderably smaller than the nominal geometric parametersTo finally obtain good position accuracy the identifiedparameters p

119890must be considered in the inverse kinematics

algorithm Any suitable numerical solution is viable and canhandle the set of additional parameters

33 Optimal Configurations for Calibration It is obviousthat the geometric calibration only identifies parameters wellthat are excited accordingly To overcome this problem thewhole work- or joint-space could be discretized for takingthe necessary measurements While this approach is viablefor small systems it is heavily time and cost consuming forsystems with multiple degrees of freedom Such complexsystems are common in todayrsquos industrial applications Asa consequence an optimal set of configurations whichguarantees well-excited error parameters needs to be found

331 Observation Index and Algorithm In order to ensure awell-conditioned problem formulation and also well-excitedparameters p

119890 the minimum singular value of the covariance

matrix Λ = Θ119879Θ in (14) is used as observation index and

optimization criterion and further described by 119861 = 120590119898(Λ)

As for example [9ndash11] show there exist various choices for

valid observation indices with slightly different propertiesThe proposed algorithm which has been presented in [12]allows the use of arbitrary observation indices

Before introducing the optimization algorithm two basicoperations are defined

(i) Add a configuration adding a new configurationwiththe Jacobian Θ

119895to the current information matrixΘ

119894

yields

Θ119894+1= [

Θ119894

Θ119895

] and consequently Λ119894+1= Λ

119894+Θ

119879

119895Θ

119895

(15)

which directly influences the change of the chosenobservation index

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894) (16)

(ii) Remove a configuration similar to the previous caseremoving a configuration Θ

119895from the current infor-

mation matrixΘ119894is described by

Θ119894= [

Θ119894+1

Θ119895

] with Λ119894+1= Λ

119894minusΘ

119879

119895Θ

119895

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894)

(17)

Additionally the complete set of 119873 measurable configura-tions is called the configuration-setΠ An arbitrary subset ofit is denoted by the set 120585These operations and definitions arethe basics for the following optimization method

(1) Initialization a given number of 119899 configurationsis randomly selected from the initial configuration-set Π This subset 120585

0must lead to a nonsingular

covariance-matrix Λ0to ensure a computation of

the observation index 119861(Λ0) Should this not be the

case for the chosen configurations then the randomselection process is simply repeated

(2) Remove and replace the configuration that leadsto the minimal decrease of the observation indexΔ119861(Λ

119894+1) is removed from the current configuration

set 120585119894Then the resulting subset 120585

119894+1is complemented

by exactly that configuration of Π that maximizesΔ119861(Λ

119894+2) For both operations the correct element

is found by an exhaustive search over the respectiveset Note that due to the simple way to calculateΔ119861 (see ((15)ndash(17))) the computational effort forthese searches is not as dramatic as it may soundThis remove-and-replace strategy effectively sortsout configurations that do not improve the overallconditioning of the covariance matrix and replacesthem with ones that do The step is repeated as longas one remove-and-replace operation still improvesthe observation index Otherwise the next step isexecuted

(3) Add additional configurations from the config-uration-set Π exactly the one configuration (again

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 5: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Journal of Industrial Engineering 5

neglecting higher order terms and demanding that the errorconverges towards zero yields

e = e (z119872 q p

119899 p(119899)

119890)

+

120597e (z119872 q p

119899 p

119890)

120597p119890

100381610038161003816100381610038161003816100381610038161003816p(119899)119890⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Δp119890= 0

(11)

For119898measurements (11) becomes

(

e (z1198721 q

1 p

119899 p(119899)

119890)

e (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q

+(

Θ (z1198721 q

1 p

119899 p(119899)

119890)

Θ (z

119872119898 q

119898 p

119899 p(119899)

119890)

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ

Δp119890

= 0

(12)

which is an overdetermined equation system solvable bystandard least-squares techniques The minimum of thequadratic error is found with

120597

120597Δp119890

[

(Q +ΘΔp119890)

119879(Q +ΘΔp

119890)

2

]

119879

= Θ119879ΘΔp

119890+Θ

119879Q = 0

(13)

yielding the update law for the error parameter vector

Δp119890= minus[Θ

119879Θ]

minus1

Θ119879Q with p(119899+1)

119890= p(119899)

119890+ Δp

119890 (14)

Initial values for p(0)

119890can be assumed to be zero because the

error parameters regarding length and so forth are con-siderably smaller than the nominal geometric parametersTo finally obtain good position accuracy the identifiedparameters p

119890must be considered in the inverse kinematics

algorithm Any suitable numerical solution is viable and canhandle the set of additional parameters

33 Optimal Configurations for Calibration It is obviousthat the geometric calibration only identifies parameters wellthat are excited accordingly To overcome this problem thewhole work- or joint-space could be discretized for takingthe necessary measurements While this approach is viablefor small systems it is heavily time and cost consuming forsystems with multiple degrees of freedom Such complexsystems are common in todayrsquos industrial applications Asa consequence an optimal set of configurations whichguarantees well-excited error parameters needs to be found

331 Observation Index and Algorithm In order to ensure awell-conditioned problem formulation and also well-excitedparameters p

119890 the minimum singular value of the covariance

matrix Λ = Θ119879Θ in (14) is used as observation index and

optimization criterion and further described by 119861 = 120590119898(Λ)

As for example [9ndash11] show there exist various choices for

valid observation indices with slightly different propertiesThe proposed algorithm which has been presented in [12]allows the use of arbitrary observation indices

Before introducing the optimization algorithm two basicoperations are defined

(i) Add a configuration adding a new configurationwiththe Jacobian Θ

119895to the current information matrixΘ

119894

yields

Θ119894+1= [

Θ119894

Θ119895

] and consequently Λ119894+1= Λ

119894+Θ

119879

119895Θ

119895

(15)

which directly influences the change of the chosenobservation index

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894) (16)

(ii) Remove a configuration similar to the previous caseremoving a configuration Θ

119895from the current infor-

mation matrixΘ119894is described by

Θ119894= [

Θ119894+1

Θ119895

] with Λ119894+1= Λ

119894minusΘ

119879

119895Θ

119895

Δ119861 = 120590119898(Λ

119894+1) minus 120590

119898(Λ

119894)

(17)

Additionally the complete set of 119873 measurable configura-tions is called the configuration-setΠ An arbitrary subset ofit is denoted by the set 120585These operations and definitions arethe basics for the following optimization method

(1) Initialization a given number of 119899 configurationsis randomly selected from the initial configuration-set Π This subset 120585

0must lead to a nonsingular

covariance-matrix Λ0to ensure a computation of

the observation index 119861(Λ0) Should this not be the

case for the chosen configurations then the randomselection process is simply repeated

(2) Remove and replace the configuration that leadsto the minimal decrease of the observation indexΔ119861(Λ

119894+1) is removed from the current configuration

set 120585119894Then the resulting subset 120585

119894+1is complemented

by exactly that configuration of Π that maximizesΔ119861(Λ

119894+2) For both operations the correct element

is found by an exhaustive search over the respectiveset Note that due to the simple way to calculateΔ119861 (see ((15)ndash(17))) the computational effort forthese searches is not as dramatic as it may soundThis remove-and-replace strategy effectively sortsout configurations that do not improve the overallconditioning of the covariance matrix and replacesthem with ones that do The step is repeated as longas one remove-and-replace operation still improvesthe observation index Otherwise the next step isexecuted

(3) Add additional configurations from the config-uration-set Π exactly the one configuration (again

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 6: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

6 Journal of Industrial Engineering

Figure 4 Some exemplary optimal configurations

found by exhaustive search) that by itself maximizesΔ119861(Λ

119894+119894) is added to the current subset 120585

119894 This

step is iterated until the observation index cannot befurther increased by such an operation or until a user-specifiedmaximumnumber of desired configurationsis reached Otherwise execute the final step

(4) Final remove and replace analogously to step 2 eachsingle configuration of the subset 120585

119894is evaluated If

any remove and replace operation as described abovestill increases the observation index this exchange isexecuted Otherwise the procedure is terminated

The algorithm may be applied multiple times to preventgetting stuck at a local minimum The solution with themaximum observation index is used for the experimentalanalysis Nevertheless finding these optimal configurationsis time consuming and lasts about five minutes on a standardPC Since these calculations are performed offline before anymeasurements are done this is not a critical issue

34 Experimental Results To evaluate the performance ofthe proposed algorithm detailed experimental results for theRX130L robot are presented First the robotrsquos joint-space isdiscretized by 13 equally large intervals per degree of freedomThis results in a set of 136 asymp 48 sdot 106 configurations Inreality the coordinates of the end-effector are measured bythe visual infrared tracker system 3D-Creator manufacturedby the Boulder Innovation Group A probe emitting infraredlight by 4 diodes is mounted on the end-effector of therobot This light is recorded by three CCD cameras and theposition and orientation in world coordinates are calculatedby stereovision Robot configurations that are not visibleby this system are removed The remaining set consists ofapproximately 4000 configurations Then the algorithm isused to compute 32 optimal configurations As Figure 4emphasizes the optimal configurations differ strongly fromeach other to keep the condition number of the covariancematrix low also leading to well-excited parameters Com-pared to a linear scan of the workspace the observation indexis reduced by the factor 185 while keeping the number ofnecessary measurements very small

For information on the position and orientation accuracybefore (uncal p

119890= 0) and after calibration (cal) see Table 2

The orientation errors are represented in Cardan angles

4 System Identification

In this section the identification of the dynamical parametersdescribing the robot behavior see (4) is covered This isclearly an essential task because it is the basis formodel-basedcontrol and optimal trajectory generation

41 Dynamic Parameter Identification An important prop-erty of the equations of motion is the linearity with respectto dynamic parameters p isin R119901 characterizing the robot linksand motors By introducing the information matrixΘ isin R119899119901

(119899 degrees of freedom) (4) can be restructured to

Θ (q q q) p = Q119872 (18)

The parameter vector p is the composition of the the jointparameters pjoint119894

p119879

joint119894 = (119898 r119879119888

J119879 119889119888119889

119907)

119894(19)

containing themass119898119894 the center ofmass r

119888119894 the elements of

the inertia tensor J119879119894= (119860 119861 119862 119863 119864)

119894 and Coulombviscous

friction coefficients 119889119888119894

and 119889119907119894

for the 119894th joint-arm unitSince the dynamical parameters are confidential manufac-turer data all these parameters have to be identified Usuallythe informationmatrixΘ and the parameter vector p containlinear dependencies which have to be removed before theidentification process A 119876119877 decomposition and reformula-tion leads to

Q119879Θ =

R (20)

where Q isin R119899119901 is an orthogonal matrix and R isin R119901119901 isan upper triangular matrix The nonidentifiable parametersare those whose corresponding elements on the diagonal ofthe matrix R are zero In contrast if |R

119894119894| gt 0 then the

corresponding column in Θ is independent Let the 119901 minus 119904independent columns be collected in the matrix Θ

1and the

corresponding parameters be collected in p1 The dependent

columns and parameters are represented by Θ2and p

2

respectively such that

Θp = [Θ1Θ

2] [

p1

p2

] = [Θ1Θ

1120581] [

p1

p2

] (21)

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 7: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Journal of Industrial Engineering 7

is fulfilled since Θ2is linearly dependent on Θ

1by a matrix

120581 isin R119901minus119904119904 In (21) 120581 can be shifted to the parameters leadingto

Θp = Θ1(p

1+ 120581p

2)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

p119887

(22)

with the base parameters p119887isin R119901minus119904 For the calculation of 120581

(20) is again evaluated with separated matrices [Θ1Θ

2] and

Q = [Q1Q

2] respectively yielding

Q119879

[Θ1Θ

2] = [R

1

R2] = [

R11

R12

R21

R22

] (23)

and therefore

Q119879

[Θ1Θ

1120581] = [R

1R

1120581] = [(

R11

R21

) (

R11

R21

) 120581] (24)

Combining (23) and (24) 120581 can be obtained as

120581 =R

minus1

11

R12

(25)

It contains geometric parameters like lengths lengthssquared gear ratios and so on see [13] for details The iden-tification process can be performed by sequentially arranging119896 ≫ 119901 minus 119904measurements in (18) and (22) leading to

e = [[[

Θ1(q

1 q

1 q

1)

Θ

1(q

119896 q

119896 q

119896)

]

]

]⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Θ119891

p119887minus(

Q1198721

Q

119872119896

)

⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟⏟

Q119891

= 0 (26)

The unknown base parameters p119887are calculated with the

least-squares method leading to

120597

120597p119887

[

e119879e2

]

119879

= Θ119879

119891Θ

119891p minusΘ119879

119891Q

119891= 0 (27)

and therefore the solution

p119887= [Θ

119879

119891Θ

119891]

minus1

Θ119879

119891Q (28)

is directly available since Rank(Θ119891) = 119901 minus 119904

42 Optimal Exciting Trajectories Similar to the problemof finding optimal configurations for the geometric calibra-tion the dynamic parameter identification requires excitingtrajectories In contrast to the steady-state configurationsfor the calibration the identification trajectories include anadditional dimension the continuous time Again the aim isto minimize the condition number (cond) of the covariancematrix Λ

119891= Θ

119879

119891Θ

119891by choosing suitable trajectories A

promising approach is introduced with [14] This sectionsummarizes these ideas presents solutions to the optimiza-tion problem and verifies the results on the RX130L robot

Table 2 Errors before (uncal p119890= 0) and after geometric

calibration (cal)

Position and orientation errorsMaximum Peak-to-peak

uncal cal uncal cal119890119909in mm 7779 0272 plusmn6171 plusmn0271

119890119910in mm 19026 0310 plusmn4267 plusmn0303

119890119911in mm 12614 0414 plusmn1402 plusmn0376

119890120572in ∘ 1140 0128 plusmn0272 plusmn0109

119890120573in ∘ 1817 0191 plusmn0335 plusmn0182

119890120574in ∘ 1160 0131 plusmn0514 plusmn0116

421 Trajectory Description and Optimization An adequatedescription for the identification trajectory for the 119894th joint isgiven with

119902119894 (119905) =

119873119894

sum

119897=1

119886119894119897

120596119891119897

sin (120596119891119897 119905) minus

119887119894119897

120596119891119897

cos (120596119891119897 119905) + 119902

1198940 (29)

This Fourier-series is parameterized by the finite order119873119894 the

coefficients 119886119894119897and 119887

119894119897 the base angular frequency120596

119891 and the

joint offset 1199021198940 To guarantee a periodic excitation of the robot

120596119891is a common parameter for all joints To speed up the

optimization time a discretization of (29) and derivatives forone period of the base frequency (119879

119891= 2120587120596

119891) is done The

signals are therefore evaluated at discrete time values 119894Δ119879 119894 =0 sdot sdot sdot 119896 Δ119879 = 119879

119891119896 where 119896 is the number of discretization

points This provides the following optimization problem

Minimizeab

cond (Λ119891(a b 120596

119891 119896))

subject to 10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

q (a b 120596119891 119896)

10038161003816100381610038161003816

le qmax

10038161003816100381610038161003816

Q119872(a b 120596

119891 119896)

10038161003816100381610038161003816

le Q119872max

r119864(a b 120596

119891 119896) sub R

3

allowed

(30)

The constraints include the mechanical joint limits qmaxthe permitted joint velocities qmax the expected maximumjoint accelerations qmax and a space of allowed end-effectorpositions R3

allowed which is used to avoid collisions withthe robot itself and its surroundings Due to the flatnessproperty of the system see Section 231 also the motortorques can be calculated dependent on the joint coordinatesand derivatives In contrast to [15] this motor torques arealso used in our formulation The optimization problem issolved with the Matlab-Optimization-Toolbox (fmincon)The parameters order 119873 = 5 angular frequency 120596

119891=

08 rads and 119896 = 80 turned out to work well to get adequatedynamical parameters see Figure 5(b) For numerical scalingpurposes the columns of Θ

119891should also be normalized

Solving the optimization problem yields the optimal jointtrajectories

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 8: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

8 Journal of Industrial Engineering

0

05

1

15

2

119911(m

)

105

0minus05minus1

minus050

051

15

119909 (m)119910 (m)

(a) End-effector path during identification process

0 5 10 15 20

0 5 10 15 20

0 5 10 15 20minus5

0

5

minus5

0

5

0minus2

minus41198761198723(N

m)1198761198722(N

m)1198761198721(N

m)

Time 119905 (s)

SimulationMeasurement

(b) Measured and simulated motor torques

Figure 5 Identification trajectory and verification

43 Experimental Results Themeasurements for the overde-termined equations system (28) are taken to estimate thedynamical base parameters p

119887 Figure 5(a) presents a plot of

the end-effector path Along the path velocities up to 5msand accelerations up to 12ms2 are achieved To verify thequality of the identified parameters the real robotrsquos motortorques are recorded and compared to the simulated ones ona reference trajectory which is defined in the EN ISO NORM9283 see [8] Figure 5(b) emphasizes by presenting themeasured and simulated motor torques the good parameteridentification for the RX130L robot Joints four five and sixshow an equivalent quality

5 Optimal Trajectory Generation

There are two types of trajectory generation problems thathave to be considered The first one is the continuous path(CP) trajectory and the second one is the point-to-point (PtP)trajectory planning problem For the first one the geometricpath in world coordinates is defined Typical maneuvers arestraight lines circles and splines For the PtP planningonly the coordinates for the start-point z

1198640and the end-

point z119864end of the trajectory are given These points can

directly be transformed to joint coordinates q0 qend and

the motion planning can be performed in this coordinatesFor both cases physical constraints like motor speeds andtorques have to be taken into account Additionally thecomputed trajectories have to result in continuous velocitiesaccelerations and jerks This helps that the gear elasticitiesare not overly excited leading to a soft vibration-less end-effector movement Again the equations of motion derivedin Section 22 and identified in Section 4 provide the basis forthis approach

51 Continuous Path Trajectory CP applications appear inmany robotic applications like arc welding deburring andlaser cutting Due to the nonlinear kinematic interrelationbetween Cartesian space and the robotrsquos joint space highmotor speeds and accelerations may occur especially nearkinematic singularities The CP motion planning can bedivided into two subproblems namely a geometric pathplanner describing a path z

119864(120590)

z119864= (

r119864 (120590)

120593119864(120590)

) = z119864 (120590) isin R

6 (31)

as a function of a (scalar) trajectory parameter 120590 isin [1205900 120590end]

and a dynamic path planner that solves the problemof findingan optimized time behavior 120590(119905) see also [16] For examplea straight line in space is characterized by (39) The vectorr119864contains the end-effector position while 120593

119864describes

the evolution of the orientation in Cardan angles both arefunctions of 120590 The trajectory parameter 120590 itself is a functionof time 120590 = 120590(119905) and the corresponding trajectory velocityand acceleration are

=

119889120590

119889119905

=

119889

119889119905

(32)

The trajectory parameter and its derivatives (trajectory speedand acceleration) represent the trajectory and its evolutionin a demonstrative and easily interpretable manner Figure 6shows an example for a straight line beginning at 120590

0and

ending at 120590end With six degrees of freedom and six worldcoordinates the analytical solution of the inverse kinematicproblem see for example [3] for the RX130 robot is obtained

q = f (z119864 (120590)) (33)

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 9: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Journal of Industrial Engineering 9

which can be differentiated with respect to time leading to

q = 119889119889119905

f (z119864 (120590)) =

f (120590 )

q = 1198892

1198891199052f (z

119864 (120590)) =

f (120590 )

(34)Inserting the kinematic relations (33) and (34) into theequations of motion (4) yields the following description ofthe robotrsquos dynamics

Q119872= M (120590) q (120590 ) + g (120590 ) (35)

This representation allows to compute the motor torques as afunction of the trajectory position velocity and accelerationFor additional details see [17] Please note that the inversekinematics does not necessarily have to be computed analyt-ically Also numerical calculations of the inverse kinematicscan be used

52 Optimization Strategy To find an optimal evolutionalong a desired trajectory the objective reads

119869 = minint119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905 (36)

where the motor torques Q119872

are calculated in (35) Thedesign parameters 119896

1and 119896

2are manipulated to weight

between time andor energy optimality However the upperlimit of the integral in (36) is unknown in advance merely aresult of optimization

Thus a transformation with = 119889120590119889119905 rArr 119889119905 = (1)119889120590leads to an objective function with constant integration limitsand 120590 as integration variable Equation (38) summarizesthe result The objective function is also subject to a set ofdifferential equations describing the evolution of time alongthe trajectory parameter 120590 The derivatives with respect to 120590are used to compute all trajectory variables which are foundin the constraints For instance the trajectory acceleration iscomputed with

=

119889

119889119905

=

119889

119889120590

=

1015840 (37)

where a prime indicates the differential operator (sdot)1015840 =

119889(sdot)119889120590 The input 119906 in the set of differential equations needsto be computed by a numerical solver in order to minimizethe objective function while satisfying all constraints

Finalizing the following complete description

Minimize120590

int

120590end

1205900

1

(1198961+ 119896

2Q119879

119872Q

119872) 119889120590

subject to 119889

119889120590

(

119905

1015840

) = (

1

1015840

119906

)

1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

|q| le qmax

|q| le qmax

(38)

119864

120590

1205900

120590end

119955119864

Figure 6 A sample trajectory

the motor torques motor velocities and accelerations areconstrained To compute an optimal solution 119906 for the opti-mization problem stated in (38) the MUSCOD-II softwarepackage is utilized Based on [18] it is developed by the Inter-disciplinaryCenter for ScientificComputing at theUniversityof Heidelberg Using the direct multiple-shooting methodsee [19 20] the original continuous optimal control problemis reformulated as a nonlinear programming (NLP) problemwhich is then solved by an iterative solution procedure aspecially tailored sequential quadratic programming (SQP)algorithm For further details on the used software packagesee [21]

53 Experimental ResultsmdashCP Trajectory For a straight toolcenter movement with constant end-effector orientation thetrajectory is given by

z119864= (

1199090+ (119909end minus 1199090

) 120590

1199100+ (119910end minus 1199100

) 120590

1199110+ (119911end minus 1199110) 120590

0

) 120590 isin [0 1] (39)

where index 0 indicates the start-point and index end the end-point respectively For a grid of 200 shooting intervals thetime optimal case 119896

1= 1 119896

2= 0 is computed Minimizing

energy would lead to not only smoother but also longertrajectories for 120590 and is therefore not considered in thisexample The resulting trajectory parameters 119905(120590) and 1015840

are retransformed into the time domain to compute the cor-responding reference joint angles q

119889(119905) and the constrained

feed-forward torques Q119872119891119891(119905) The corresponding velocity

profile is depicted in Figure 7 The velocity-drop occurs dueto passing closely to a singular configuration

The experiment with the Staubli robot is conductedanalogously to the previous section The reference anglesand torques are transferred to the servo drives where theoccurring torques and motor velocities are measured forverification Figure 8 shows the torques and velocities of the

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 10: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

10 Journal of Industrial Engineering

Figure 7 Velocity profile CP trajectory

axes that actively constrain the trajectory For readabilityreasons the signals are normalized to their maximum valuesThe figure also shows that at least one constraint is alwaysactive which is a necessary condition for the time-optimalsolution

54 Point-to-Point Trajectory As an extension to the previoussection the PtP optimization is not limited to geometricallydefined paths Consequently the one-dimensional variationof the trajectory parameter becomes a more complex two-point boundary value problem of the joint states with theadditional task of minimizing time andor energy summa-rized in (40) Analogously to (38) the available joint velocitiesand torques are limited Additionally the joint limits qmaxneed to be considered and the desired initial and finalconfigurations q

0 q

0 q

119890 and q

119890are introduced

A compromise between time and energy optimality isadjusted with the parameters 119896

1and 119896

2 Also note that

the highly nonlinear differential equations of motion areincluded in the set of constraints

55 Experimental ResultsmdashPtP Trajectory The optimizationformulation for the point-to-point trajectory

Minimizeq119905119890

int

119905119890

0

(1198961+ 119896

2Q119879

119872Q

119872) 119889119905

subject to 1003816100381610038161003816Q

119872

1003816100381610038161003816le Q

119872max

10038161003816100381610038161003816

Q119872

10038161003816100381610038161003816

leQ119872max

|q| le qmax

|q| le qmax

119889

119889119905

(

qq) = (

qMminus1

(q) (minusg (q q) +Q119872)

)

q (0) = q0

q (0) = q0

q (119905119890) = q

119890

q (119905119890) = q

119890

(40)

minus1

minus05

0

05

1

Nor

mal

ized

torq

ues a

nd v

eloc

ities

0 02 04 06 08 1

Figure 8 Active constraints recorded during experiment

is solved with MUSCOD-II setting 1198961= 1 and 119896

2= 0 (time

optimality) While the one-dimensional variation problemof the previous section is computed in one second thePtP trajectory takes about three minutes to be calculatedwith a standard workstation After solving the optimizationproblem the system states and torque inputs for the two-point boundary problem are known and may be utilized asreference values The initial conditions q

0 q

0 q

119890 and q

119890

are chosen equals to the start- and endpoint of the previoussectionrsquos straight-line trajectory This allows a comparisonbetween both methodsThe overall time of the trajectory wasreduced from 119905

119890= 104 s to 119905

119890= 067 s Figures 9(a) and

9(b) show the optimized torques and velocities Again themost interesting signals are selected for reasons of readabilityall normalized to their maximum values Experiments usingthese results on the RX130L robot verify validity of theoptimized trajectoryThemaximumend-effector velocity andacceleration that are reached along this trajectory are 52msand 486ms2 respectively To avoid high jerks in joint spacewhich would induce vibrations the torque rates are limited toQ119872max

6 Conclusions

This work summarizes various optimization strategies forrobotic systems to improve the overall performance Theindividual results of each section not only verify the chosenapproach but also offer values for expected accuracies ofmodern medium scale robotic systems The suggested ideasare also applicable to smaller or larger scale robots with anarbitrary amount of degrees of freedom

It is important to note that the quality of the control aswell as the trajectory optimization is only as good as theunderlying set of (kinematic or dynamical) parameters As aconsequence the optimal configurations for calibration andthe optimal-exciting trajectories for the identification processprovide the basis for control and trajectory generations Allproposed methods can be automated by designing accordingto algorithms and used during the commissioning of robotapplications

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 11: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

Journal of Industrial Engineering 11

Nor

mal

ized

torq

ues

minus1

minus08

minus06

minus04

minus02

0

02

04

06

08

1

0 01 02 03 04 05 06Time 119905 (s)

lowast1198721

lowast1198723lowast1198725

(a) Optimization results for the joint torques

Nor

mal

ized

vel

ociti

es

minus05

0

05

1

0 01 02 03 04 05 06Time 119905 (s)

(b) Optimization results for the joint velocities

Figure 9 Results PtP trajectories

Acknowledgments

Support of the current work within the framework of theAustrian Center of Competence in Mechatronics (ACCM) isgratefully acknowledgedThe support of the InterdisciplinaryCenter for Scientific Computing at the University of Heidel-berg is acknowledged especially toMoritzDiehl andAndreasPoschka who kindly gave support One of the basic ideasof this contribution is to review and present details usingindustrial not laboratory equipment However the authorsdo not have a direct relation to any mentioned hardware andsoftware products This information is consciously includedenabling the reader to review technical specifications forfurther comparisons

References

[1] R Riepl and H Gattringer ldquoAccurate high-speed robotics[Dissertation]rdquo Johannes Kepler University BampR IndustrialEthernet Award 2009

[2] W Khalil and E Dombre Modeling Identification and Controlof Robots Kogan Page Science London UK 2004

[3] B Siciliano L Sciavicco L Villani and G Oriolo RoboticsModelling Planning and Control Advanced Textbooks in Con-trol and Signal Processing Series Springer London UK 2009Edited by A J J Grimble

[4] H Bremer ElasticMultibody Dynamics A Direct Ritz ApproachSpringer New York NY USA 2008

[5] A Isidori Nonlinear Control Systems Springer New York NYUSA 1985

[6] A Kugi ldquoIntroduction to tracking control of finite- and infinite-dimensional systemsrdquo Stability Identification and Control inNonlinear Structural Dynamics (SICON) 2008

[7] H Gattringer and H Bremer ldquoA penalty shooting walkingmachinerdquo in IUTAM Symposium on Vibration Control of

NonlInear Mechanisms and Structures H Ulbrich and W GGunthner Eds Springer 2005

[8] ISO NORM 9283 ldquoManipulating industrial robotsmdashper-formance and criteriardquo Norm EN ISO 9283 1998

[9] CHMenq JH Borm and J Z Lai ldquoIdentification and observ-ability measure of a basis set of error parameters in robot cali-brationrdquo Journal ofMechanisms Transmissions andAutomationin Design vol 111 no 4 pp 513ndash518 1989

[10] M R Driels and U S Pathre ldquoSignificance of observationstrategy on the design of robot calibration experimentsrdquo Journalof Robotic Systems vol 7 no 2 pp 197ndash223 1990

[11] Y Sun and J M Hollerbach ldquoObservability index selectionfor robot calibrationrdquo in Proceedings of the IEEE InternationalConference onRobotics andAutomation (ICRA rsquo08) pp 831ndash836May 2008

[12] Y Sun and J M Hollerbach ldquoActive robot calibration algo-rithmrdquo in Proceedings of the IEEE International Conference onRobotics and Automation (ICRA rsquo08) pp 1276ndash1281 May 2008

[13] H Gattringer Starr-Elastische Robotersysteme Theorie und An-wendungen Springer Berlin Germany 2011

[14] J Swevers C Ganseman J De Schutter and H Van BrusselldquoExperimental robot identification using optimised periodictrajectoriesrdquo Mechanical Systems and Signal Processing vol 10no 5 pp 561ndash577 1996

[15] D Kostic B de Jager M Steinbuch and R Hensen ldquoModelingand identification for high-performance robot control an RRR-robotic arm case studyrdquo IEEE Transactions on Control SystemsTechnology vol 12 no 6 pp 904ndash919 2004

[16] R Johanni Optimale Bahnplanung bei Industrierobotern Tech-nische Universitat Munchen Munchen Germany 1988

[17] R Riepl and H Gattringer ldquoAn approach to optimal motionplanning for robotic applicationsrdquo in Proceedings of the 9thInternational Conference on Motion and Vibration Control2008

[18] D Leineweber I Bauer A Schafer H Bock and J SchloderldquoAn efficient multiple shooting based reduced SQP strategy

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 12: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

12 Journal of Industrial Engineering

for large-scale dynamic process optimization (Parts I and II)rdquoComputers and Chemical Engineering vol 27 pp 157ndash174 2003

[19] J Nocedal and S J Wright Numerical Optimization SpringerScience+Business Media LLC New York NY USA 2nd edi-tion 2006

[20] J T Betts Practical Methods for Optimal Control Using Nonlin-ear Programming Society for Industrial andAppliedMathemat-ics Philadelphia Pa USA 2001

[21] M Diehl D B Leineweber and A SchaferMUSCOD-II UsersrsquoManual Universitat Heidelberg Heidelberg Germany 2001

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of

Page 13: Research Article Optimizing Industrial Robots for Accurate High … · 2019. 7. 31. · trial PC, communicating via Powerlink with six ACOPOS servo drives, which power the synchronous

International Journal of

AerospaceEngineeringHindawi Publishing Corporationhttpwwwhindawicom Volume 2014

RoboticsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Active and Passive Electronic Components

Control Scienceand Engineering

Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

International Journal of

RotatingMachinery

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporation httpwwwhindawicom

Journal ofEngineeringVolume 2014

Submit your manuscripts athttpwwwhindawicom

VLSI Design

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Shock and Vibration

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Civil EngineeringAdvances in

Acoustics and VibrationAdvances in

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Electrical and Computer Engineering

Journal of

Advances inOptoElectronics

Hindawi Publishing Corporation httpwwwhindawicom

Volume 2014

The Scientific World JournalHindawi Publishing Corporation httpwwwhindawicom Volume 2014

SensorsJournal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Modelling amp Simulation in EngineeringHindawi Publishing Corporation httpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Chemical EngineeringInternational Journal of Antennas and

Propagation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

Navigation and Observation

International Journal of

Hindawi Publishing Corporationhttpwwwhindawicom Volume 2014

DistributedSensor Networks

International Journal of