<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en" article-type="review-article">
<front>
<journal-meta>
<journal-id journal-id-type="nlm-ta">Sensors</journal-id>
<journal-title>Sensors</journal-title>
<issn pub-type="epub">1424-8220</issn>
<publisher>
<publisher-name>Molecular Diversity Preservation International (MDPI)</publisher-name></publisher></journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3390/s101110256</article-id>
<article-id pub-id-type="publisher-id">sensors-10-10256</article-id>
<article-categories>
<subj-group>
<subject>Review</subject></subj-group></article-categories>
<title-group>
<article-title>An Overview of Kinematic and Calibration Models Using Internal/External Sensors or Constraints to Improve the Behavior of Spatial Parallel Mechanisms</article-title></title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Majarena</surname><given-names>Ana C.</given-names></name><xref ref-type="corresp" rid="c1-sensors-10-10256"><sup>*</sup></xref></contrib>
<contrib contrib-type="author">
<name><surname>Santolaria</surname><given-names>Jorge</given-names></name></contrib>
<contrib contrib-type="author">
<name><surname>Samper</surname><given-names>David</given-names></name></contrib>
<contrib contrib-type="author">
<name><surname>Aguilar</surname><given-names>Juan J.</given-names></name></contrib>
<aff id="af1-sensors-10-10256">Department of Design and Manufacturing Engineering, Centro Politécnico Superior, University of Zaragoza, c/ María de Luna, 3, 50018 Zaragoza, Spain; E-Mails: <email>jsmazo@unizar.es</email> (J.S.); <email>dsamper@unizar.es</email> (D.S.); <email>jaguilar@unizar.es</email> (J.J.A.)</aff></contrib-group>
<author-notes>
<corresp id="c1-sensors-10-10256">
<label>*</label>Author to whom correspondence should be addressed; E-Mail: <email>majarena@unizar.es</email> (A.C.M.); Tel.: +34-976-765453; Fax: +34-976-762235.</corresp></author-notes>
<pub-date pub-type="collection">
<year>2010</year></pub-date>
<pub-date pub-type="epub">
<day>16</day>
<month>11</month>
<year>2010</year></pub-date>
<volume>10</volume>
<issue>11</issue>
<fpage>10256</fpage>
<lpage>10297</lpage>
<history>
<date date-type="received">
<day>27</day>
<month>9</month>
<year>2010</year></date>
<date date-type="rev-recd">
<day>25</day>
<month>10</month>
<year>2010</year></date>
<date date-type="accepted">
<day>5</day>
<month>11</month>
<year>2010</year></date></history>
<permissions>
<copyright-statement>© 2010 by the authors; licensee MDPI, Basel, Switzerland.</copyright-statement>
<copyright-year>2010</copyright-year>
<license>
<p>This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/.)</p></license></permissions>
<abstract>
<p>This paper presents an overview of the literature on kinematic and calibration models of parallel mechanisms, the influence of sensors in the mechanism accuracy and parallel mechanisms used as sensors. The most relevant classifications to obtain and solve kinematic models and to identify geometric and non-geometric parameters in the calibration of parallel robots are discussed, examining the advantages and disadvantages of each method, presenting new trends and identifying unsolved problems. This overview tries to answer and show the solutions developed by the most up-to-date research to some of the most frequent questions that appear in the modelling of a parallel mechanism, such as how to measure, the number of sensors and necessary configurations, the type and influence of errors or the number of necessary parameters.</p></abstract>
<kwd-group>
<kwd>parallel mechanism</kwd>
<kwd>kinematic</kwd>
<kwd>internal sensor calibration</kwd>
<kwd>external sensor calibration</kwd>
<kwd>constraint calibration</kwd></kwd-group></article-meta></front>
<body>
<sec sec-type="intro">
<label>1.</label>
<title>Introduction</title>
<p>In recent years a number of specialized papers presenting the most relevant methods for modelling and calibrating serial robots have been published, but these methods are not always suitable for parallel robots. With this in mind, this paper is intended to be a guide for those researchers that are familiar with designing, modelling and calibrating parallel mechanisms.</p>
<p>Parallel kinematic systems are closed-chain mechanisms in which the moving platform is joined to the base by two or more independent kinematic chains. In recent years these mechanisms have developed extensively [<xref ref-type="bibr" rid="b1-sensors-10-10256">1</xref>] because of their advantages in terms of high loads, stiffness, speed and low moving inertia [<xref ref-type="bibr" rid="b1-sensors-10-10256">1</xref>,<xref ref-type="bibr" rid="b2-sensors-10-10256">2</xref>]. However, it is difficult to obtain [<xref ref-type="bibr" rid="b3-sensors-10-10256">3</xref>–<xref ref-type="bibr" rid="b5-sensors-10-10256">5</xref>] the forward kinematic model and the analysis of the singularities of the system [<xref ref-type="bibr" rid="b6-sensors-10-10256">6</xref>]. The workspace is limited and is difficult to calculate [<xref ref-type="bibr" rid="b1-sensors-10-10256">1</xref>,<xref ref-type="bibr" rid="b7-sensors-10-10256">7</xref>].</p>
<p>One of the first moving platforms was patented by Gwinnett in 1931 for the entertainment industry [<xref ref-type="bibr" rid="b8-sensors-10-10256">8</xref>], and in 1942 Pollard developed a five Degrees-Of-Freedom (5-DOF) robot for a spray painting machine, featuring three kinematic chains with universal joints [<xref ref-type="bibr" rid="b9-sensors-10-10256">9</xref>]. In 1947, Gough designed a parallel robot with six actuators to test tyres. This system had an octahedral hexapod structure [<xref ref-type="bibr" rid="b10-sensors-10-10256">10</xref>]. In 1965, Stewart presented a 6-DOF platform for a flight simulator, based on Gough’s platform. This mechanism consisted of six linear actuators joined to the base by universal or spherical ball joints and to the moving platform by spherical ball joints—this publication represented the beginning of parallel robot development. Hunt pointed out the advantages of parallel mechanisms and in 1993 designed a new 6-DOF prototype with rotary actuators [<xref ref-type="bibr" rid="b11-sensors-10-10256">11</xref>]. A number of systems have been developed based on this design, such as the manipulator presented by Clavel [<xref ref-type="bibr" rid="b12-sensors-10-10256">12</xref>] for pick-and-place operations.</p>
<p>On the basis of these designs, in recent years new families of manipulators have been developed with improved performances, obtaining multiple mechanisms of 3-, 4- and 6-DOF. However, few researchers have developed 2- and 5-DOF systems due to the fact that constraints have to be added for these two types of systems.</p>
<p>Once the design is developed, a calibration process must be carried out in order to evaluate and improve the accuracy of the moving platform. The first decision that the researcher has to make in the calibration process is the calibration method. Once the calibration model is defined, the number and type of internal or external sensors required, the data acquisition procedure, the necessary configurations and the calibration model are determined. The model will determine the nature and number of necessary parameters. Finally, the evaluation of the results and the correction model will allow the accuracy of the system to be improved.</p>
<p>The following sections present examples of manipulators with different number of DOFs, focusing mainly on prototypes developed in the last ten years. A summary of the most relevant methods is presented, with respect to the kinematic model and the calibration of parallel robots, and also new trends such as the methods based on matrix computation or computational intelligence.</p></sec>
<sec sec-type="methods">
<label>2.</label>
<title>Parallel Robot Design</title>
<p>A classification of the most well-known parallel robots depending on their number of DOF can be found in [<xref ref-type="bibr" rid="b13-sensors-10-10256">13</xref>,<xref ref-type="bibr" rid="b14-sensors-10-10256">14</xref>]. This section shows some examples of parallel robots, classified by the number of DOF, focusing mainly on the new prototypes developed in the last ten years. Most of them are based on the Stewart platform. <xref ref-type="table" rid="t1-sensors-10-10256">Table 1</xref> presents the symbols used for denominating the different joints:</p>
<sec sec-type="methods">
<label>2.1.</label>
<title>Two-DOF Designs</title>
<p>There are little literature focusing on 2-DOF spatial parallel mechanisms. An analysis of different alternatives of 2-DOF rotational parallel systems can be found in [<xref ref-type="bibr" rid="b15-sensors-10-10256">15</xref>]. The kinematic chains, joined to the fixed and moving platforms, result in mechanisms with from 3- to 6-DOF. To reduce the number of DOF to 2, constraints must be added.</p>
<p><xref ref-type="fig" rid="f1-sensors-10-10256">Figure 1(a)</xref> shows the Canterbury Tracker by Dunlop [<xref ref-type="bibr" rid="b16-sensors-10-10256">16</xref>], an antenna tracking mechanism, in which two kinematic chains are joined to the platform by revolute joints and the third chain is connected via spherical joints, thereby obtaining the azimuth and elevation movements. The Omni-Wrist of Rosheim [<xref ref-type="fig" rid="f1-sensors-10-10256">Figure 1(b)</xref>] in [<xref ref-type="bibr" rid="b17-sensors-10-10256">17</xref>], is a new 2-DOF system in which two actuators connecting two plates control a passive plate. This system is able to turn 90 degrees without singularities and it is used in applications such as positioning antennas or robotic surgery. Zeng [<xref ref-type="bibr" rid="b15-sensors-10-10256">15</xref>] developed a family of 2-DOF rotational parallel mechanisms and analyzed their mobility. All these systems have a four-bar linkage and contain a moving platform and a fixed base connected by three limbs. An example of parallel mechanism is presented in <xref ref-type="fig" rid="f1-sensors-10-10256">Figure 1(c)</xref>. This is a system with three chains U-PRU-SPS where the motion of the moving platform is decoupled. Computation is simple and the system allows us to perform a fast real-time control.</p>
<p>In [<xref ref-type="bibr" rid="b18-sensors-10-10256">18</xref>], Majarena designed a pan-tilt parallel platform for the positioning and orientation of two high-precision cameras. This mechanism has two actuators and two linear optical sensors joined to the base and to the platform by high-precision spherical ball joints. The mechanism incorporates a third chain, which is fixed to the base and joined to the platform by a universal joint to obtain the two rotations desired [see <xref ref-type="fig" rid="f1-sensors-10-10256">Figure 1(d)</xref>]. The sensor accuracy is ±1 μm. Given a measurement field of the 2-DOF structure and fixed sensors, a method to use these sensors to increase the angle resolution within this measurement field is presented. The aim of the study is to develop a methodology for improving the mechanism design. The algorithm obtains the anchorage spherical ball joint points and the inclination of the spherical ball supports to increase movement resolution, assuming a fixed feedback resolution on the linear sensor, and, at the same time, decreasing the dimensions of the system and allowing the desired workspace to be obtained. This work develops the kinematic model of a 2-DOF parallel kinematic platform by combining linear actuators with linear sensors for the external measurement of its position and orientation; the elongation of the linear actuators is obtained as a function of the movement of the platform. Linear sensors measure actuator elongations and provide these values as an input to the mathematical model.</p></sec>
<sec sec-type="methods">
<label>2.2.</label>
<title>Three-DOF Designs</title>
<p>There are multiple examples of 3-DOF parallel mechanisms, some of which are shown in <xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2</xref>. <xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(a)</xref> shows a manipulator designed by Gosselin [<xref ref-type="bibr" rid="b19-sensors-10-10256">19</xref>] where the active joints are revolution joints. The software developed to design the mechanism allows the interactive analysis of any spherical parallel 3-DOF actuated joint and the representation of the workspace, singularities and trajectories. Tsai [<xref ref-type="bibr" rid="b20-sensors-10-10256">20</xref>] analyzed a translational platform with three identical kinematic chains [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(b)</xref>]. Each chain consists of an upper and a lower arm. Each upper arm is a planar four-bar parallelogram, and the two platforms are joined using revolution joints only. The axes of these revolute joints are perpendicular to the axes of the four-bar parallelogram for each chain. The mechanism constrains the manipulator output to translational motion and mimics the motion of the Delta robot moving platform. Cecarrelli [<xref ref-type="bibr" rid="b21-sensors-10-10256">21</xref>] also designed a mechanism with three identical chains, but in this case, they contained a parallelogram. The connection of the chains was carried out by ball joints and prismatic guides to obtain suitable direct kinematics and easy actuation [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(c)</xref>]. Gallardo [<xref ref-type="bibr" rid="b22-sensors-10-10256">22</xref>] analyzed a simple structure, with two legs and a spherical ball joint, which simplifies the study of the kinematic model [see <xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(d)</xref>]. This mechanism is not an overconstrained system which simplifies the study of the kinematic model. The results from the mathematical model were verified by comparing them to the results from a simulated parallel manipulator. Carretero [<xref ref-type="bibr" rid="b23-sensors-10-10256">23</xref>] developed a manipulator with three identical PRS chains [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(e)</xref>].</p>
<p>The prismatic actuators lie on a common plane and have radial direction of action. The distal end of each actuator is joined to the lower end of a constant length leg by means of a passive revolute joint. The rotation axis of the revolute joint is perpendicular to the direction of the actuator and parallel to the horizontal base plane. The other end of each leg is attached to the moving platform by a passive spherical ball joint. The design variables minimize parasitic motion. This mechanism can be used in those applications that require elevation perpendicular to the base platform and pointing of a payload. Chablat [<xref ref-type="bibr" rid="b24-sensors-10-10256">24</xref>] presented the Orthoglide [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(f)</xref>], a 3-DOF translational parallel system for machining applications. This mechanism, in which three fixed parallel linear joints are mounted orthogonally, provides a regular Cartesian workspace shape. The linear joints can be actuated by linear or rotary motors with ball screws. The end-effector is joined to the linear joints by three parallelograms. The chains are three identical PRPPaR legs. Other advantages of this design are uniform performances in all directions, low inertia, intrinsic stiffness and good dynamic performances. Liu [<xref ref-type="bibr" rid="b25-sensors-10-10256">25</xref>] presented a manipulator with high rotational capability. This design utilizes a four-bar parallelogram which allows the output link to remain at a fixed orientation with respect to an input link. The moving platform is joined to the base by three non-identical chains. All joints that appear in the rotational DOF are with single DOF to obtain the high rotational capability [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(g)</xref>]. Moreover, the planar parallelogram, being as a leg, can improve the kinematic performance of the system, and this design allows us to obtain the desired number of DOF and to increase the system stiffness. In [<xref ref-type="bibr" rid="b26-sensors-10-10256">26</xref>], Gallardo analyzed a family of 3-DOF manipulators with three identical RPS chains [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(h)</xref>]. The prismatic joints were actuated independently to provide the required number of DOF. Tyapin [<xref ref-type="bibr" rid="b27-sensors-10-10256">27</xref>] proposed a new design optimization of the Gantry-Tau manipulator to avoid collisions between links and to maximize the reachable workspace [<xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(i)</xref>]. The mechanism consists of three-link arm, and two of them are mounted in a triangular constellation. Three linear actuators move the three arms independently. The developed algorithm allows us to obtain the internal link collisions. The author concluded that the design of the mechanism is crucial to avoid link collisions. The optimization step is based on the geometric descriptions of the workspace, unreachable area and the functional dependency of collisions.</p></sec>
<sec sec-type="methods">
<label>2.3.</label>
<title>Four-DOF Designs</title>
<p>Four-DOF manipulators are extensively used for pick-and place applications. These mechanisms are divided into two important groups—mechanisms based on the Delta robot [<xref ref-type="bibr" rid="b12-sensors-10-10256">12</xref>] and mechanisms based on the Scara robot [<xref ref-type="bibr" rid="b28-sensors-10-10256">28</xref>,<xref ref-type="bibr" rid="b29-sensors-10-10256">29</xref>]. Krut [<xref ref-type="bibr" rid="b29-sensors-10-10256">29</xref>] developed a new parallel mechanism for Scara motions which produces three translations and one rotation about a given axis [see <xref ref-type="fig" rid="f3-sensors-10-10256">Figure 3(a)</xref>]. In [<xref ref-type="bibr" rid="b30-sensors-10-10256">30</xref>], Nabat presented a parallel robot in which prismatic joints were replaced by revolute joints because of constraints caused by speed and acceleration, and it was considered that the dynamics can affect the design. The robot developed offers high speed while avoiding singularities [<xref ref-type="fig" rid="f3-sensors-10-10256">Figure 3(b)</xref>]. Wang [<xref ref-type="bibr" rid="b31-sensors-10-10256">31</xref>] analyzed the static balancing of four types of spatial 4-DOF parallel mechanisms using counterweights and springs [<xref ref-type="fig" rid="f3-sensors-10-10256">Figure 3(c)</xref>]. The static balancing using counterweights consists in redistributing the link masses to maintain the center of mass of the mechanism fixed. Therefore, the weight of the links does not produce any torque or force at the actuators and the mechanism is statically balanced for any direction of the gravity vector. This is a great advantage for those portable mechanisms which can be mounted in different orientations. The static balancing using springs consists in selecting spring stiffness and locations. This method assures that the total potential energy of the mechanism is always constant. Therefore, the actuators do not have to support the weight of the moving links.</p></sec>
<sec sec-type="methods">
<label>2.4.</label>
<title>Five-DOF Designs</title>
<p>Few researchers have focused on 5-DOF spatial parallel mechanisms. Gao [<xref ref-type="bibr" rid="b32-sensors-10-10256">32</xref>] proposed composite pairs and new sub-chains for the design of different mechanisms and presented a 5-DOF parallel manipulator utilizing composite limbs such as 4-PSS and a prismatic joint connected with a 3-UU chains. This 3-UU chain was connected to a spherical ball joint [<xref ref-type="fig" rid="f4-sensors-10-10256">Figure 4(a)</xref>]. In [<xref ref-type="bibr" rid="b33-sensors-10-10256">33</xref>], Maurin presented a prototype for medical applications. This manipulator is based on revolute joints, and consists of three serial chains joining the base to the platform. The third chain is added to obtain the desired number of DOF, and only five joints are actuated [<xref ref-type="fig" rid="f4-sensors-10-10256">Figure 4(b)</xref>]. This mechanism offers mobility, compactness and accuracy around a functional point.</p></sec>
<sec sec-type="methods">
<label>2.5.</label>
<title>Six-DOF Designs</title>
<p>There are numerous examples of 6-DOF mechanisms in the literature. Many of these designs are based on the Stewart platform and try to improve its performance. The design proposed by Shim [<xref ref-type="bibr" rid="b34-sensors-10-10256">34</xref>] is intended to be used as a wrist of a robot [see <xref ref-type="fig" rid="f5-sensors-10-10256">Figure 5(a)</xref>]. This mechanism consists of linear actuators and optical position sensors. The position of the actuator is measured by an optical sensor. This sensor consists of a laser diode, two mirrors and a position sensing device (PSD). The position sensing resolution of the device is approximately ±5 μm. A force sensor is installed at each actuating link, reading up to 10 N with a resolution of 2.22 × 10<sup>−4</sup> N, to reflect accurately the applied forces on the mechanism links. The manipulator is controlled by using the position sensor readings of the links. These readings are the inputs of the model. The system offers high precision and the capability of pure rotation generation, and it is easy to predict the moving platform motion. Yang [<xref ref-type="bibr" rid="b1-sensors-10-10256">1</xref>] designed a parallel mechanism with three identical RPRS chains. This mechanism has the joint axes, except the three spherical ball joints at the chain ends, parallel to each other and perpendicular to the base plane in order to decouple motion. This system offers high stiffness in the vertical direction [<xref ref-type="fig" rid="f5-sensors-10-10256">Figure 5(b)</xref>]. Ben-Horin [<xref ref-type="bibr" rid="b35-sensors-10-10256">35</xref>] obtained the 144 different structures of a 6-DOF mechanism having three identical kinematic chains. Considering different combinations of chains, this number is larger than 500,000 [<xref ref-type="fig" rid="f5-sensors-10-10256">Figure 5(c)</xref>]. <xref ref-type="fig" rid="f2-sensors-10-10256">Figure 2(d)</xref> shows a rotary 6-DOF mechanism designed by NASA to simulate vertical movements (VMS) [<xref ref-type="bibr" rid="b36-sensors-10-10256">36</xref>]. In [<xref ref-type="bibr" rid="b37-sensors-10-10256">37</xref>], Zanganeh studied a manipulator with six kinematic chains, connected to the base by means of universal joints and to the moving platform via spherical ball joints. Each chain consists of two links connected by a revolute joint and actuated by a motor at the base to reduce the leg masses and inertias [<xref ref-type="fig" rid="f5-sensors-10-10256">Figure 5(e)</xref>]. Wang [<xref ref-type="bibr" rid="b38-sensors-10-10256">38</xref>] developed a parallel manipulator with elastic joints to obtain high precision. The system consists of six chains, and each chain is made from four-bar linkages [<xref ref-type="fig" rid="f5-sensors-10-10256">Figure 5(f)</xref>]. The elastic joints provide the mechanism with highly precise operation.</p>
<p>Pritschow [<xref ref-type="bibr" rid="b39-sensors-10-10256">39</xref>] summarized, in <xref ref-type="fig" rid="f6-sensors-10-10256">Figure 6</xref>, some of the most famous hexapod designs, and developed a methodology for the design of parallel mechanisms.</p></sec>
<sec>
<label>2.6.</label>
<title>Sensor Application of Parallel Mechanisms</title>
<p>Parallel mechanisms are also used in the kinematic structure of several types of sensors. A Stewart platform can be used as a wrist force sensor, where six-axis units (multi-axis force-torque sensor) measure the three Cartesian coordinates: X, Y and Z. Gaillet and Reboulet [<xref ref-type="bibr" rid="b40-sensors-10-10256">40</xref>] developed an isostatic six component force-torque sensor based on the octahedral structure of the Stewart platform. A review of the first force-torque sensor designs based on parallel mechanisms can be found in [<xref ref-type="bibr" rid="b41-sensors-10-10256">41</xref>].</p>
<p>In recent years a number of specialized papers have presented new designs based on the Stewart platform. Dwarakanath [<xref ref-type="bibr" rid="b42-sensors-10-10256">42</xref>] designed a force-torque sensor to achieve well-conditioned transformation between the input and output forces. The legs acting as elastic elements were designed as a transducer to have resisting and restoring characteristics when dynamic load is applied. The design provides sensitivity, small sizing and manufacturing simplicity.</p>
<p>Yao [<xref ref-type="bibr" rid="b43-sensors-10-10256">43</xref>] analyzed a pre-stressed six-component force-torque sensor and determined the key structural parameters of the sensor to obtain high measurement sensitivity, good isotropy and least effect of frictional moment. The author concluded that the errors in the measurement, obtained from calibration data, can be due to machining or assembling errors and joint frictional moment.</p>
<p>Sui [<xref ref-type="bibr" rid="b44-sensors-10-10256">44</xref>] developed a static measuring model of a force-torque sensor in which the gravity of the links is considered. The sensor consists of a top and a base platform and six links. A link contains a single-axis bidirectional force transducer and two link rods, and finally, two spherical ball joints connect the links with the platforms. The developed model is a generalizable model where the link and top platform weight is compensated. To verify the model, the force is measured by applying loads to the sensor in different directions.</p>
<p>Chen [<xref ref-type="bibr" rid="b45-sensors-10-10256">45</xref>] presented a six-axis force-torque sensor and derived the analytical equations to obtain high sensitivity isotropy and sensitivity. These characteristics are determined by four parameters: the radius of the upper platform, the radius of the lower platform, the length of the link and the position angle difference of the two platforms. The experiments show that when the radius of the upper platform, the radius of the lower platform and the length of the link are simultaneously increased or reduced, the torques will be changed, but the sensitivity isotropy, sensitivity of force and the shape performance will remain constant.</p>
<p>Frigola [<xref ref-type="bibr" rid="b46-sensors-10-10256">46</xref>] designed and analyzed a touch pad based on a parallel platform. The developed model obtains force and torque feedback by means of sensor readings of the leg forces. This work demonstrated how the integrated effect of the dry friction, in the twelve spherical ball joints, degrades the static measurements and how the mechanical resonance degrades the dynamic ones. To use a structure with a self-stress could solve these problems.</p></sec></sec>
<sec>
<label>3.</label>
<title>Kinematic Model</title>
<p>The <italic>mathematical model</italic> of a mechanism can be divided into two phases: the kinematic model and the dynamic model. Some authors have called these phases the geometric and the dynamic model [<xref ref-type="bibr" rid="b47-sensors-10-10256">47</xref>,<xref ref-type="bibr" rid="b48-sensors-10-10256">48</xref>], although in this paper we will use the first nomenclature because it is widely used in the specialized literature.</p>
<p>The <italic>position kinematic model</italic> establishes mathematical relations between actuated joint coordinates of the mechanism and the end-effector pose. The end-effector position is defined by its spatial position and orientation with respect to a global reference system. The local relations between two successive reference systems are expressed in function of variables which allow us to describe every change in the end-effector position and orientation.</p>
<p>The <italic>differential kinematic model</italic>, or velocity kinematic model, obtains the relations between the velocities of the joint movements and the velocity of the end-effector, and it is expressed by means of the Jacobian matrix.</p>
<p>The <italic>dynamic model</italic> obtains the relations between the generalized accelerations, velocities, coordinates of the end-effector and the joint forces. This model analyzes the influence of forces, inertias, gravity, torques and non-geometric effects due to friction, gear transmission or backlash. Some authors [<xref ref-type="bibr" rid="b49-sensors-10-10256">49</xref>–<xref ref-type="bibr" rid="b57-sensors-10-10256">57</xref>] have considered the influences due to the mechanism dynamics in the kinematic model, absorbing dynamic errors of the mechanisms by means of the non-geometric parameter calibration.</p>
<p>The first known studies on parallel robot kinematics were performed by Fichter [<xref ref-type="bibr" rid="b58-sensors-10-10256">58</xref>] and Merlet [<xref ref-type="bibr" rid="b59-sensors-10-10256">59</xref>]. Fichter analyzed the Stewart platform, determined the equations to obtain the leg lengths, directions and moments of the legs and derived these equations. To obtain the force and the torque of the manipulator he developed the dynamic analysis, but he assumed that the legs are massless and exert pure forces. Merlet developed the Jacobian, derived the dynamic equations and determined the workspace.</p>
<p>The initial position problem has two different phases:
<list list-type="order">
<list-item>
<p>Obtaining the non-linear equations that relate the joint variables and the end-effector position and orientation, thereby arriving at the forward and inverse position kinematic model</p></list-item>
<list-item>
<p>Solving the non-linear equation system obtained in the previous step</p></list-item></list></p>
<p>Depending on the approach to the problem, there are three important groups:
<list list-type="simple">
<list-item>
<p>- Graphical methods</p></list-item>
<list-item>
<p>- Analytical methods</p></list-item>
<list-item>
<p>- Numerical methods</p></list-item></list></p>
<p>Graphical methods are especially used in simple mechanisms, and they can be divided into three subgroups. Dyadic decomposition methods [<xref ref-type="bibr" rid="b60-sensors-10-10256">60</xref>] allow us to obtain the mechanism position by means of a compass and a ruler. Interpolation procedures [<xref ref-type="bibr" rid="b60-sensors-10-10256">60</xref>] belong to the second group of graphical methods. And, finally, the modular approach methods [<xref ref-type="bibr" rid="b61-sensors-10-10256">61</xref>], which decompose the mechanism into modules that can be independently analyzed.</p>
<p>An analytic approach is used in the analytical methods, although the solution procedure is usually numerical. There are three methods to obtain all the solutions: polynomial continuation methods, elimination methods and polynomial Gröbner bases.</p>
<p>The polynomial continuation method [<xref ref-type="bibr" rid="b14-sensors-10-10256">14</xref>,<xref ref-type="bibr" rid="b62-sensors-10-10256">62</xref>,<xref ref-type="bibr" rid="b63-sensors-10-10256">63</xref>] is a numerical method that finds all isolated roots of a polynomial system from a known initial solution. The elimination method [<xref ref-type="bibr" rid="b14-sensors-10-10256">14</xref>,<xref ref-type="bibr" rid="b26-sensors-10-10256">26</xref>,<xref ref-type="bibr" rid="b62-sensors-10-10256">62</xref>,<xref ref-type="bibr" rid="b64-sensors-10-10256">64</xref>] is analytical, but usually the polynomial must be solved by a numerical method. In Gröbner bases [<xref ref-type="bibr" rid="b14-sensors-10-10256">14</xref>,<xref ref-type="bibr" rid="b65-sensors-10-10256">65</xref>,<xref ref-type="bibr" rid="b66-sensors-10-10256">66</xref>], an invariant polynomial is obtained. Each subsequent equation adds at most one variable. The invariant polynomial is solved to find all possible values of one known. The other equations obtain the values of the other variables for each solution. The methods described present a high computational cost, so the Newton-Raphson method is used to obtain only one solution.</p>
<p>Computation methods are based on systematic algorithms that allow us to automate the analysis of the kinematics of the mechanisms, independently of the number of DOF or complexity of the mechanism. For instance, programs based on multibody systems [<xref ref-type="bibr" rid="b67-sensors-10-10256">67</xref>,<xref ref-type="bibr" rid="b68-sensors-10-10256">68</xref>] are used to model the behaviour of interconnected rigid or flexible bodies. These bodies may suffer large translational and rotational displacements. Although this method is mainly used to solve the dynamics of a mechanism, it can also be used to solve the kinematics [<xref ref-type="bibr" rid="b69-sensors-10-10256">69</xref>]. A multibody system models a mechanism by means of coordinates that define the position of all their elements in a univocal way. Constraint equations from kinematic pairs are applied on the mechanism elements. To solve the problem, one of the initial pose problem solutions must be obtained first, and then the model has to be checked for redundant constraints. Secondly, the equations that derive from the redundant constraints are eliminated. Finally, finite elements analysis is performed, using for example the Newton-Raphson algorithm to solve the non-linear system.</p>
<p>The position kinematic model can be solved by the direct or inverse kinematics, depending on the input and output variables.</p>
<p>The <italic>direct position kinematic model</italic> (DPKM) is used to calculate the position and orientation of the platform, given the values for the joint variables of the mechanism, according to <xref ref-type="disp-formula" rid="FD1">Equation 1</xref>:
<disp-formula id="FD1">
<label>(1)</label>
<mml:math display="block">
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>β</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>γ</mml:mi></mml:mrow>
<mml:mo stretchy="false">]</mml:mo></mml:mrow>
<mml:mo>′</mml:mo></mml:msup>
<mml:mo>=</mml:mo>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mn>1</mml:mn></mml:msub>
<mml:mo>,</mml:mo>
<mml:mn>..</mml:mn>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>n</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>The <italic>inverse position kinematic model</italic> (IPKM) is used to calculate the mechanism’s joint variables, given by <italic>(q</italic><sub>1</sub>, .., <italic>q<sub>n</sub>)</italic>, for a position and orientation of the platform, <italic>(x</italic>, <italic>y</italic>, <italic>z</italic>, <italic>α</italic>, <italic>β</italic>, <italic>γ)</italic>, according to <xref ref-type="disp-formula" rid="FD2">Equation 2</xref>:
<disp-formula id="FD2">
<label>(2)</label>
<mml:math display="block">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>k</mml:mi></mml:msub>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi></mml:mrow>
<mml:mi>k</mml:mi></mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>α</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>β</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>γ</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>   </mml:mi>
<mml:mtext>with</mml:mtext>
<mml:mi>   </mml:mi>
<mml:mi>k</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1..</mml:mn>
<mml:mi>n</mml:mi></mml:mrow></mml:math></disp-formula></p>
<p>The differential kinematic model is usually used to determine singular configurations or to control the mechanism.</p>
<p>The <italic>direct differential kinematic model</italic> (DDKM) is used to obtain the velocity of the end-effector, <italic>given</italic> the joint velocities.</p>
<p>The <italic>inverse position kinematic model</italic> (IDKM) is used to obtain the joint velocities, given the velocity of the end-effector</p>
<p>The inverse kinematics of closed-chain mechanisms can be solved through geometric [<xref ref-type="bibr" rid="b13-sensors-10-10256">13</xref>], analytical [<xref ref-type="bibr" rid="b13-sensors-10-10256">13</xref>,<xref ref-type="bibr" rid="b70-sensors-10-10256">70</xref>–<xref ref-type="bibr" rid="b73-sensors-10-10256">73</xref>] or applying the Denavit-Hartenberg (D-H) model [<xref ref-type="bibr" rid="b74-sensors-10-10256">74</xref>,<xref ref-type="bibr" rid="b75-sensors-10-10256">75</xref>], where the solution is usually obtained by numerical methods such as the Newton-Raphson algorithm. Geometric methods can be used in simple systems. The Newton-Raphson method is very sensitive to the initial position introduced in the algorithm. Therefore, if this position does not draw near to the solution of the system, the algorithm cannot converge. Rao [<xref ref-type="bibr" rid="b76-sensors-10-10256">76</xref>] proposed the use of a hybrid optimization method starting with a combination of genetic algorithms and the simplex algorithm. This method carries out a global search of the initial solution with genetic algorithms and, subsequently, uses the simplex method for the local search.</p>
<p>To solve the direct kinematic problem, the use of analytical methods is complex, given that the chains share the same unknown factors; therefore, the most suitable resolution methods tend to be numerical [<xref ref-type="bibr" rid="b41-sensors-10-10256">41</xref>,<xref ref-type="bibr" rid="b71-sensors-10-10256">71</xref>]. However, for systems with 2-DOF a geometric or analytical solution may be easier to obtain and more efficient.</p>
<p>Many studies have developed methods to obtain a mathematical model which allow us to solve the direct kinematic of parallel mechanisms. In [<xref ref-type="bibr" rid="b77-sensors-10-10256">77</xref>], Innocenti solved the direct position analysis and found all the possible closure configurations of a 5-DOF parallel mechanism and in [<xref ref-type="bibr" rid="b78-sensors-10-10256">78</xref>], the author analyzed a 6-DOF fully parallel mechanism. The developed method finds out all the real solutions of the direct position problem of a 6-DOF fully parallel mechanism. This method determines the roots of one equation, representative of the direct position analysis, in only one unknown.</p>
<p>Merlet and Bonev [<xref ref-type="bibr" rid="b79-sensors-10-10256">79</xref>,<xref ref-type="bibr" rid="b80-sensors-10-10256">80</xref>] suggested using sensors to solve the direct model. Merlet demonstrated that the measurement of the link lengths is not usually sufficient to determine the unique posture of the platform, and that this posture can be obtained by adding sensors to the mechanism. Sensors can be added by locating rotary sensors in the existing passive joints or by adding passive links whose lengths are measured with linear sensors. Although the first solution offers less interference between the links, the mechanism motion may be reduced. Two sensors on each of these joints allow us to measure the direction of the link. The position of the other extremity of the link may be calculated with the link length. A unique solution is obtained by adding four sensors on the passive joints, for a general case. Three sensors are sufficient for a particular mechanical architecture.</p>
<p>Bonev solved the direct kinematic problem of parallel manipulators by adding three linear extra sensors. Linear Variable Differential Transformers (LVDTs) and Cable Extension Transducers (CETs) are linear extra sensors commonly used in parallel mechanisms. The LVDT sensor has a low measurement range (0.5 m), it requires support electronics, its installation requires universal joints and its price is high. The cable end of a CET is joined to the moving object and the CET is fixed. The cable extends or retracts when the object moves. The CET produces electrical signals proportional to the movement of their extension cables. And the linear displacement is converted to angular displacement with the cable being wound onto a cylindrical spool. A rotary sensor measures the spool rotation. The range provided by these sensors is from 0.04 to 40 m, the accuracy is about 0.02% of full scale for potentiometers and 0.02% for shaft encoders and the repeatability is 0.02% of full scale. The sensors selected to this design were the CETs, and they connect the planar base and the planar moving platform at distinct points. The linear extra sensors were implemented considering sensor misalignment range, link sensor interference and singularity of a matrix which depends on the geometry of the moving platform and the arrangement of the sensor base attachment points and base joints. To solve the model, three coordinates are obtained directly from the extra sensory data. In [<xref ref-type="bibr" rid="b75-sensors-10-10256">75</xref>,<xref ref-type="bibr" rid="b81-sensors-10-10256">81</xref>], the authors solved the kinematics of the system by considering each of the mechanism’s legs as an open chain. Some authors [<xref ref-type="bibr" rid="b82-sensors-10-10256">82</xref>,<xref ref-type="bibr" rid="b83-sensors-10-10256">83</xref>] have studied special configurations of the Stewart platform obtaining that the explicit expressions for these configurations can offer the geometric limitations to motion. Ball [<xref ref-type="bibr" rid="b84-sensors-10-10256">84</xref>] announced another methodology based on screw theory and developed by Hunt [<xref ref-type="bibr" rid="b11-sensors-10-10256">11</xref>]. The velocity fields of systems of interconnected bodies are described by systems of instantaneous screw axes, and the static force systems acting on the rigid bodies are described by systems of wrenches, which are vectorially homogenous to the screw systems. Utilizing Ball’s reciprocity relationship, it is possible to relate the two types of vectors, and an instantaneous screw axis can be represented by a vector pair [<xref ref-type="bibr" rid="b85-sensors-10-10256">85</xref>]. This theory allows us to obtain and analyze Jacobian matrices and is based on Kennedy–Aronhold centre theory and on Chasles theorem. Kennedy–Aronhold centre theory demonstrates that if the instant rotation center of a body is known, velocity can be obtained by multiplying its angular velocity by the distance between the instant rotation center and the body. Chasles theorem explains that any motion of a rigid body can be achieved as a rotation around a geometrical line together with a pure translation along this line, known as the screw axis of the motion. In [<xref ref-type="bibr" rid="b86-sensors-10-10256">86</xref>], the direct kinematics for a 3-DOF manipulator is solved by means of screw theory, obtaining four possible solutions for this mechanism. This methodology is very useful when solving velocities and accelerations, but classical methods are usually more convenient for obtaining only the position problem. In [<xref ref-type="bibr" rid="b26-sensors-10-10256">26</xref>], the position problem is solved by means of classical methods and screw theory is used to obtain the mechanism dynamics.</p>
<p>Subsequently new contributions appear, trying to search for all the direct kinematic solutions, based on a new concept, the multibody system [<xref ref-type="bibr" rid="b87-sensors-10-10256">87</xref>]. A multibody system is used to model the dynamic behaviour of interconnected rigid or flexible bodies that can move relatively to each other. This method can be applied in two different ways [<xref ref-type="bibr" rid="b68-sensors-10-10256">68</xref>]. The first way utilizes reference point (or Cartesian) coordinates. The derivatives of the position coordinates of the centre of mass of the link and the orientation parameters of the link are used. The velocity equation is determined through the constraints imposed by the joints. The second way uses fully Cartesian (or natural) coordinates. In this case, the position of the nodes on joints and unit vectors on joint axes are used. The kinematic parameters are nodal velocities and derivatives of unit vectors, and they are related through derivatives of length restrictions and joint constraints. In [<xref ref-type="bibr" rid="b88-sensors-10-10256">88</xref>], the author extended the kinematic manipulability to general constrained rigid multibody systems.</p>
<p>In recent years computational intelligence, such as artificial network, genetic algorithms or fuzzy logic, is becoming important in solving mechanisms.</p>
<p>Artificial intelligence is concerned with intelligent behaviour in machines, and it involves perception, learning, reasoning, communicating and acting in different environments.</p>
<p>An artificial neural network is a mathematical model that tries to simulate brain hardware structure and reproduce its low level capabilities, such as pattern recognition or data classification, through a learning process. It consists of an interconnected group of artificial neurons that process information. This method presents the capability to derive meaning from imprecise data or complicated systems, so it is used in complex mechanisms where there is not enough data or it is very difficult to obtain the kinematic equations by means of classical methods. Other advantages of these artificial systems are [<xref ref-type="bibr" rid="b89-sensors-10-10256">89</xref>,<xref ref-type="bibr" rid="b90-sensors-10-10256">90</xref>]:
<list list-type="simple">
<list-item>
<p>- <italic>Adaptive learning</italic>: The capability to learn to do tasks based on the data given for training or initial experience.</p></list-item>
<list-item>
<p>- <italic>Self-organization</italic>: The ability to create its own organization or representation of the information.</p></list-item>
<list-item>
<p>- <italic>Fault tolerance</italic>: The structure is degraded when a partial destruction of a network takes place. However, some network capabilities may be retained.</p></list-item>
<list-item>
<p>- <italic>Real time operation</italic>: Computations in a neural network can be carried out in parallel in a special device.</p></list-item></list></p>
<p>Fuzzy systems try to reproduce high level capabilities of the brain, such as approximate reasoning, because the capabilities are usually non precise or fuzzy in the real world [<xref ref-type="bibr" rid="b89-sensors-10-10256">89</xref>]. This method allows us to make decisions with imprecise and incomplete information. Some of these advantages are that computations are very simple and allow us the use of non precise terms in the rules. On the contrary, it is difficult to estimate the membership function and there are many ways of interpreting fuzzy rules. Thus, this method is used in unknown and complex environments.</p>
<p>Different systems that apply these methods can be found in literature. In [<xref ref-type="bibr" rid="b91-sensors-10-10256">91</xref>], a multiple neural network structure, called CMAC (Cerebella Model Arithmetic Computer), was developed to solve direct kinematic problem of the Stewart platform. This method offers a considerable time saving in comparison to the neural network models developed until then and allows us to easily obtain a model which provides an approximation to the solution problem. However, it can only be applied directly to those configurations for which it has been designed, since the model would have to be modified for each new design. Output variables can be obtained by means of input variables without knowing the other system variables as occurs in models based on neural networks. Although a priori represents a simplification, the system calibration usually requires the understanding of the mechanism behaviour.</p>
<p>In [<xref ref-type="bibr" rid="b92-sensors-10-10256">92</xref>], Sadjadian has compared the accuracy of three numerical methods (neural network, quasi-closed solution and 4th Taylor expansion) to solve the forward kinematic problem of a redundant parallel manipulator. The author has concluded that the 4th order Taylor series approximation offers the best prediction errors of the three. <xref ref-type="fig" rid="f7-sensors-10-10256">Figure 7</xref> shows a scheme with the different methods analyzed for modelling and solving equation systems of parallel kinematic mechanisms.</p>
<sec sec-type="methods">
<title>Classical methods or computational intelligence?</title>
<p>In this section it has been shown that neural networks and fuzzy systems have important advantages, and they have been applied in different areas such as robotics. These methods can be suitable for those systems where it is very complex or impossible to obtain the model by means of classical methods, for example, in very complex mechanisms, non well-defined problems, when the environment is unknown [<xref ref-type="bibr" rid="b89-sensors-10-10256">89</xref>] or in those mechanisms where there is a behaviour model for trajectory programming tasks [<xref ref-type="bibr" rid="b90-sensors-10-10256">90</xref>]. However, in those devices in which a complete performance knowledge requires a careful kinematic analysis, computational intelligence allows us to determine inputs and outputs, but it is not possible to know the value of the rest of the parameters due to their non-parametric nature. This fact makes it difficult to relate geometric and non-geometric parameters. In these situations, it is more suitable to solve the kinematic problem by means of the classical methods.</p></sec></sec>
<sec>
<label>4.</label>
<title>Calibration</title>
<sec>
<label>4.1.</label>
<title>Principles</title>
<p>Robot calibration consists of identifying the geometric parameters in order to improve the model accuracy. In parallel mechanisms, the objective is to reduce the end-effector position error by means of an accuracy identification of the kinematic parameters. This procedure allows us to obtain correction models to establish corrections in the measurement results. Moreover, the calibration procedure quantifies the effects of the influence variables in the final measurement. The steps to achieve this goal can be divided in five phases: determination of the kinematic model by means of non-linear equations, data acquisition, optimization or geometric parameter identification, model evaluation and, finally, identification of the error sources and implementation of correction models.</p>
<p>The first step, determination of the kinematic model, consists of obtaining the non-linear equations that relate the joint variables with the position and orientation of the end-effector and the initial values of nominal geometric parameters.</p>
<p>The second step is data acquisition. The home position is a position, within the robot working range, where all joint angles have a pre-defined value. The displacements of the end-effector are usually measured with respect to this defined position.</p>
<p>The following step, optimization or geometric parameter identification, is usually carried out by means of approximation procedures based on least-square fitting.</p>
<p>Once the optimization is applied, an evaluation of the model in different positions than those used in the identification process must be carried out to test the model obtained.</p>
<p>Finally, an identification of the error sources and a modelling and implementation of the correction models can be performed.</p>
<p>In [<xref ref-type="bibr" rid="b93-sensors-10-10256">93</xref>], Everett pointed out the differences that exist between the calibration methods for open-loop mechanisms and closed-loop mechanisms. Although in both cases, the objective of the calibration is to minimize the error between the measured pose of the end-effector and the calculated pose, in parallel mechanisms special care must be taken, since it is not possible to choose the model parameters arbitrarily. This is mainly due to the fact that some parameters are inter-related as they belong to a closed chain. This characteristic in parallel robots requires two types of equations in the calibration method. On one hand, those transformations that relate the end-effector location with the reference system of the base by means of open-loop kinematic chains, and on the other hand, those closed-loop transformations which contain the constraints imposed by the closed-loop chains.</p></sec>
<sec>
<label>4.2.</label>
<title>Calibration Procedure</title>
<p>As is known, the calibration procedures present three well differentiated levels, level one calibration or joint level calibration, level two or kinematic calibration and level three or dynamic calibration [<xref ref-type="bibr" rid="b94-sensors-10-10256">94</xref>,<xref ref-type="bibr" rid="b95-sensors-10-10256">95</xref>].</p>
<sec>
<label>4.2.1.</label>
<title>Joint Calibration</title>
<p>The joint calibration consists of determining the relations between the signal produced by the joint displacement transducer and the actual joint displacement. By means of this modelling, two more parameters are added for each joint in the mathematical model of the mechanism. For prismatic joints, d<sub>0i</sub> (joint displacement in the model initial pose, with respect to the sensor reference mark) and k<sub>i</sub>, (function curve of the sensor output). In case of rotary joints, these parameters are θ<sub>0i</sub> (joint rotation in the model initial pose, with respect to the sensor reference mark) and k<sub>i</sub>. At this level, data acquisition is performed by means of some external measurement devices to determine the actual joint angle accurately, or by moving the joint to any known configuration. Usually, easily measureable configurations are chosen. In open-loop mechanisms, configurations in which several elements are aligned are frequently used. In closed-loop mechanisms, due to their geometry, those configurations with a known joint angle are more suitable. In this case, the forward model is required, and in closed-loop mechanisms this problem presents more complexity. Another possibility is to place the end-effector in a known position and orientation belonging to the workspace, in order to solve the problem by means of the inverse kinematics. The equations developed in the modelling phase allow us to carry out the parameter identification process. The correction phase ensures that the parameter values are precise, using a controller to convert the signal that comes from the joint transducer into a representative value of the actual joint angle. In [<xref ref-type="bibr" rid="b96-sensors-10-10256">96</xref>], Sommer described how to model the behaviour of the joint sensor, according to prismatic or rotary joints, by introducing two more parameters for each joint in the mathematical model of the mechanism. The aim of this first calibration level is to split up the error sources and to maintain the relation between the physical and mathematical parameters during the calibration process.</p></sec>
<sec>
<label>4.2.2.</label>
<title>Kinematic Calibration</title>
<p>The kinematic calibration consists of determining the kinematic geometry of the mechanism and the correct joint angle relationship.</p>
<p>(a) Kinematic model</p>
<p>Just like in the joint calibration, in this level the first phase is to determine the kinematic model. This model allows us to obtain equations which relate the joint variables of the mechanism with the position and orientation of the end-effector.</p>
<p>It is not an easy task to obtain a suitable model that ensures the optimal accuracy of the system, and one of the unsolved problems in this working area is that it is very difficult to obtain a generalizable model – it is specific to the design under study.</p>
<p>In a parallel mechanism, the end-effector position is limited by certain restrictions. Calibration will obtain this position for several poses of the end-effector or configurations. Constraint equations are a function of m geometric parameters of the robot, of the measurements obtained at the position and of the n pose parameters of the process of calibration. For N calibration poses, there are (N × c) constraint equations with (m + N × n) unknowns, and the number of constraint equations must be greater or equal to the number of unknowns. The solution to this non-linear system is usually obtained by means of numerical methods, such as minimizing the sum of squares of the constraint equations.</p>
<p>Everett divided kinematic calibration models into two categories [<xref ref-type="bibr" rid="b97-sensors-10-10256">97</xref>]. Models belonging to the first category assume that all the joints in the mechanism can be modeled as revolute or prismatic joints. To be able to make this assumption, the kinematic model should fulfill three characteristics: complete, equivalent and proportional. In these models an objective function is usually minimized, and the characteristic of proportionality is very important to guarantee numerical stability.</p>
<p>The second category includes those models in which it is considered that some of the joints can contain higher pairs. In these models, besides revolute and prismatic joints, some additional movements can appear and must be expressed as a function of the variable joints. These models add an offset to each joint, adding three new parameters to each one. This fact originates a multitude of possible functions to model the joint, and the concepts of equivalent and complete model are not applied to this category.</p>
<sec>
<title>What type of errors can appear and how do they influence?</title>
<p>To attain a high level of accuracy, the model must consider the most significant geometric and non-geometric parameters for the mechanism designed.</p>
<p>Geometric errors</p>
<p>Geometric errors may appear from manufacturing errors or from the deviation of the offsets of the components. Joints in the links are not perfect, so the axes cannot be perpendicular between them, and they cannot intersect in the exact center of the joint. Errors when assembling actuators can cause the axis of each actuator not to pass through the center of the joint. Other errors can appear when measuring the offset of the components at the location of the mechanism’s joint.</p>
<p>One of the most widely used geometric methods for modelling an open-loop or a closed-loop mechanism is the well-known Denavit-Hartenberg method [<xref ref-type="bibr" rid="b98-sensors-10-10256">98</xref>]. This method allows us to model the joints with four parameters. One of the limitations of this method appears when it is applied to those mechanisms that present two consecutive parallel joint axes. In this case, an infinite number of common normals of the same length exist, and the location of the axis coordinate system may be made arbitrarily. In [<xref ref-type="bibr" rid="b97-sensors-10-10256">97</xref>], Everett mentioned the most relevant publications which propose some solutions for this limitation. In [<xref ref-type="bibr" rid="b99-sensors-10-10256">99</xref>–<xref ref-type="bibr" rid="b102-sensors-10-10256">102</xref>], the authors developed methods to obtain a complete, equivalence and proportional model. Some research has been carried out on obtaining an accuracy model [<xref ref-type="bibr" rid="b103-sensors-10-10256">103</xref>,<xref ref-type="bibr" rid="b104-sensors-10-10256">104</xref>], in which manufacturing tolerances, assembly errors and offsets are studied to develop an algorithm for the identification of the kinematic parameters of the Stewart platform. In each joint–link chain three types of parameters appear: measurable variables for describing the extension of the prismatic joints, un-measurable variables describing joint angles and geometric parameters describing the dimensions of the platform.</p>
<p>Once the kinematic model has been determined the number of parameters will be fixed, and will depend on the selected method. Wang [<xref ref-type="bibr" rid="b103-sensors-10-10256">103</xref>] determined that the number of geometric parameters to define a kinematic chain is 22 [<xref ref-type="bibr" rid="b103-sensors-10-10256">103</xref>], and this number can be reduced to 7 if passive joints are considered as perfect joints. Kinematic parameters usually correspond to the position of spherical, universal or revolute joints. Therefore, each spherical ball joint has three kinematic parameters, and each prismatic joint adds a new parameter, corresponding to its elongation [<xref ref-type="bibr" rid="b105-sensors-10-10256">105</xref>]. The method employed to calibrate the Stewart platform establishes the orientation constraint by maintaining two attitude angles of the end-effector constant.</p>
<p>Non-geometric errors</p>
<p>The non-geometric errors can appear from backlash, gear transmission, friction, gravity, temperature or compliance [<xref ref-type="bibr" rid="b106-sensors-10-10256">106</xref>]. The non-geometric models try to predict and compensate these errors.</p>
<p>Some authors [<xref ref-type="bibr" rid="b107-sensors-10-10256">107</xref>] have developed non-geometric models to achieve this. In [<xref ref-type="bibr" rid="b108-sensors-10-10256">108</xref>], Renders has gathered the influence of non-geometric errors. The errors that have the most significant effect on accuracy are joint flexibility, link flexibility, gear transmission error, backlash in gear transmission, and temperature effect. Flexibility in joints and in links causes 8% - 10% of the position and orientation errors of the end-effector, and link flexibility is usually 5%. Joint flexibility errors can be reduced by mounting the joint encoders directly on the joint after the transmission units, instead of mounting them on the motor shaft. Gear transmission errors are mainly due to runout and orientation errors. The contribution of backlash is from 0.5%–1%. The error due to temperature effects causes 0.1% of the total error. Calibration is usually performed in an environment where the temperature is controlled. Next, a correction model that considers the working temperature is applied. Judd [<xref ref-type="bibr" rid="b109-sensors-10-10256">109</xref>] developed a model to correct problems with robot accuracy resulting from imperfections in the main spur and encoder pinion gears, errors in the link and joint parameters and structural deformations. Hollerbach [<xref ref-type="bibr" rid="b110-sensors-10-10256">110</xref>] introduced a calibration index that considers sensed and un-sensed joints and single and multiple loops. In [<xref ref-type="bibr" rid="b111-sensors-10-10256">111</xref>], Gong developed an algorithm for non-geometric error identification and compensation by means of the inverse calibration of the system, analyzing the effect of geometric errors with temperature variation and compliance. These methods separated the influence of the errors due to geometric and non-geometric parameters, in order to optimize geometric parameters by means of a traditional static calibration, and to model and correct non-geometric errors by means of a dynamic calibration. However, they are not generalizable and they do not allow us to know the individual influence of each non-geometric component.</p></sec>
<sec>
<title>How many parameters are necessary in the kinematic model?</title>
<p>To consider all the possible errors in the same kinematic model is a laborious task that, due to the complexity of the model, does not always increase the accuracy of the result. Moreover, it can add errors in the resolution of the problem, for example in the case where the model adds discontinuous functions for backlash or gearing errors, or when parameters are a function of joint variables instead of being a function of constants.</p>
<p>It is not possible to know a priori what parameters must be used in the calibration process to obtain the desired accuracy, but the mechanism repeatability must be considered in order to predict the order of magnitude of the accuracy that can be reached.</p>
<p>Everett [<xref ref-type="bibr" rid="b112-sensors-10-10256">112</xref>] analyzed models based on forward kinematics and explained that there are a maximum number of parameters that must be identified, and that the model accuracy cannot be improved by adding extra parameters. The author explained that unless all joints are moved, not all parameters can be identified, because if one or more joints do not move, some unknowns can be decomposed, shifted and absorbed into others. He determined that four parameters must be considered for each revolute joint, two of which must be orientational. And for a prismatic joint two orientational parameters are necessary, applied about the non-colinear axes before and perpendicular to the translational joint axes. Thus, it is more frequent to add parameters to compensate non-geometric errors in the geometric model [<xref ref-type="bibr" rid="b113-sensors-10-10256">113</xref>].</p>
<p>Regardless of the method selected, calibration can be solved by means of inverse or forward kinematics. The calibration problem can be formulated in terms of residual measurements. For example differences between the joint variable measurements and the values obtained by the inverse kinematic model. This model offers significant advantages compared to the one based on forward kinematics, since calculations in the latter case are more complex and require more time to be solved. Besides, the solution in the inverse model is unique, unlike the forward one in which several possible solutions can appear. The inverse model allows us to decouple the calibration problem for every kinematic chain, and the constraints can be expressed by analytical equations. This method gives numerical efficiency but that measurement of the positions has to be very precise.</p>
<p>Another possibility is to perform partial measurements of the position, posing the problem in terms of errors between measured values and computed values via forward kinematics. In [<xref ref-type="bibr" rid="b114-sensors-10-10256">114</xref>], the kinematic model was solved using this method.</p>
<p>In [<xref ref-type="bibr" rid="b103-sensors-10-10256">103</xref>], Wang presented a method for the calibration of a 6-UPS robot that uses parallel kinematics according to the lengths of kinematic chains and positioning parameters of the platform. Zhuang [<xref ref-type="bibr" rid="b115-sensors-10-10256">115</xref>] developed a model in terms of residual measurements of the difference between the measurement length of the kinematic chain and the one obtained from the model without using forward kinematics. The author solved the problem by means of minimizing the sum of squares of the constraint equations. Parameter errors are mainly due to errors in the assembly of spherical and universal joints, and solutions obtained for some parameters are out of the range provided by the method, which means that some constraint equations are not satisfied. In [<xref ref-type="bibr" rid="b116-sensors-10-10256">116</xref>], Daney developed an algorithm to perform the calibration by means of partial measurements of the position, thanks to the elimination of the rotation parameters. This algorithm endeavours to obtain the advantages of the two models, inverse and forward, combining the elimination of symbolic variables through numerical optimization, which allows us to obtain numerical stability. The method is applied for three different cases in which the number of restrictions and equations to perform the calibration varies. The conclusions are that methods that obtain better results do not match those which have a higher algebraic computational cost, and that the elimination of the rotation parameters improves the accuracy of initial estimations. In [<xref ref-type="bibr" rid="b117-sensors-10-10256">117</xref>], the kinematic problem was solved by equalizing constraint equations to a value, <italic>ɛ<sub>i</sub></italic>, to obtain a solution.</p>
<sec>
<title>Data acquisition</title>
<p>This is probably one of the steps with more unresolved questions, mainly due to the difficulty in finding a general methodology. Therefore researchers try to find the best procedure, usually applied to a specific mechanism. This subsection shows how different authors have dealt with these unsolved problems.</p>
<p>Any measurement error of the external instrument is propagated to the results of the identified parameters. Therefore, it is recommended to use an instrument for data acquisition that is, at least, one magnitude order more accurate than the mechanism whose parameters are going to be identified.</p>
<p>The ability to measure the global reference system of the mechanism which is going to be calibrated usually determines the different options of data acquisition and the sensors that are going to be used at this step.</p>
<p>If the global reference system can be measured by means of an external measurement instrument (for example a laser tracker or a coordinate measuring machine), a direct geometric transformation can be established. This transformation obtains the coordinates of the measured points in the global reference system of the mechanism. In this case, direct comparisons in the objective function, between measured data (or their geometric composition) and mechanism model nominal data, can be made providing both are expressed in the same reference system.</p>
<p>Unfortunately this relation is not usually easy to obtain through a direct measure. In these cases, least-square methods can be used with a finite set of data. These methods allow us to obtain an approximation of this transformation, which depends on the mechanism error in the points and configurations used in data acquisition. Moreover, this approximation is absorbed by the objective function. For that reason, it has direct influence on the value of the identified parameters. This method is therefore not suitable for parameter identification procedures in which positioning accuracy is mandatory or when it is necessary to generalize the positioning accuracy obtained in the identification process to other areas of the workspace.</p>
<p>For all these reasons, the geometric relation between the reference system of the measurement instrument and the mechanism global reference system must be established accurately. Otherwise, the objective function should be obtained starting from a reference position and evaluating Euclidean distances between datasets.</p></sec></sec>
<sec>
<title>How can we measure?</title>
<p>Classical robot calibration methods use additional sensors to measure the position and orientation of the end-effector and the joint variables of the ball joints, where the calibration process optimizes the error between the measured and computed variables.</p>
<p>The type of sensors used in a parallel mechanism affects not only the design process but also the calibration procedure. Sensors can be used to measure the variables of the mechanism, usually the active ones, in order to obtain the necessary data to solve the kinematic problem. In the calibration procedure, mechanism internal sensors are used to obtain information of the system. These data will be the input to the mathematical model. The output of the forward model will be the calculated position and orientation of the end-effector. In the calibration procedure, the nominal and the calculated position and orientation of the end-effector are compared and the mechanism geometric parameters are obtained. On the other side, external devices having measurement systems allow us to measure the nominal position and orientation of the end-effector. It is important to note that every measurement error of the measurement device will be propagated to the calibration results. Therefore, measurement devices must be more accurate than the desired accuracy of the mechanism that is going to be calibrated.</p>
<p>In parallel mechanisms, the most used internal sensors are lineal optical sensors (for measuring the elongation of the actuator), rotary optical sensors (for measuring the motor rotation of the actuator), linear variable differential transformer (LVDT) and force-torque sensors (for the dynamic calibration).</p>
<p>Accuracy of linear and rotary optical sensors is highly dependent on the method used to couple the encoder to a shaft. This value can commonly reach ±0.5 μm and ±1 arcsecond, respectively, and resolution 1 nm and 0.02 arcseconds, respectively. LVDTs present a very high reliability. Accuracy and resolution are limited only by the signal conditioning electronics and the analog-to-digital converters. Resolution can reach the nanometer range. These types of sensors are used to measure relative motion between objects whose surfaces only move a little bit with respect to each other. Besides, their measurement range is low (about 0.5 m). On the contrary, linear optical sensor measurement range is up to 30 m and rotary sensors offer not rotation limit for incremental encoders and several turns for absolute encoders. Force-torque sensors are commonly used to measure the applied forces on the mechanism links. These devices frequently present a force sensor accuracy of 6 mN and a torque sensor accuracy of 30 mN·mm</p>
<p>External devices typically used in the calibration procedure to improve the mechanism accuracy are cameras, laser trackers, coordinate measuring machines (CMM) or autocollimators. Cameras and autocollimators are non-contact measurement instruments. These devices are therefore more suitable when the influence of measurement forces can affect the results. Cameras and 3D imaging sensors present compactness, robustness and flexibility [<xref ref-type="bibr" rid="b118-sensors-10-10256">118</xref>]. The rapid development of these devices in the last decades has significantly improved their accuracy. Another advantage of these sensors is their portability. Moreover, the recent development in this technology allows us to perform a massive data acquisition. CMMs offer high resolution and accuracy (about a few micrometers). The laser tracker volumetric accuracy is about tens of micrometers. A typical measurement range is about 900 mm × 1,200 mm × 700 mm in a CMM and up to 40 m radius range in a laser tracker. Therefore, these last devices are suitable for large parallel mechanisms. Although autocollimator resolution (0.1 arcsecond) and accuracy (0.2 arcseconds) is very high too, the measurement range is very low (from arcseconds to a few degrees). By contrast, measurements with a CMM take a lot of time. In order to obtain a high accuracy and efficiency, optical and contact sensors are used in combination. A visual sensor provides global information of the object surface. On the contrary, force and tactile sensors obtain local information. In recent years, several studies have focused on the combination of visual and force/tactile sensors to obtain a high knowledge of the mechanism behavior [<xref ref-type="bibr" rid="b119-sensors-10-10256">119</xref>].</p>
<p>Everett [<xref ref-type="bibr" rid="b120-sensors-10-10256">120</xref>] designed a sensor for measurements in the calibration of mechanisms. This sensor did not apply external constraint forces on the mechanism. The sensor used three LED/phototransistor pairs as optical switches. Each switch used a LED that shone through an optical fiber. The light left the fiber and passed through a gap. On the other side, another fiber received the beam, and a phototransistor received the light. This work described the sensor construction, the sensor performance and calibration. The sensor was installed in the gripper of a robot as a tool. Precision spheres, having a diameter of 12.7 mm, were mounted in the workspace of the robot. The spheres were located within an area of 1,600 cm<sup>2</sup>. Firstly, the relative positions of the spheres were measured with a coordinate measuring machine. Secondly, the sensor was positioned over these spheres automatically. Three light beams defined position with respect to the sensor. Two beams were separated 10 mm and the third beam was mounted 30° away from them. The robot was programmed to find the trip point of the sensor. This point defined the origin of the sensor coordinate frame. Then, the sensor input was examined to determine which light beams were broken. The test obtained 100 trip points and the measurement error was calculated as the standard deviation of the position errors. The measurement error was 0.06 mm and the repeatability was between 0.06 and 0.08 mm. To calibrate the mechanism by means of the developed sensor, the phases are the following:
<list list-type="simple">
<list-item>
<p>- To develop a model that relates measurable joint positions to mechanism pose</p></list-item>
<list-item>
<p>- To measure a sufficient set of joints positions and their corresponding mechanism poses</p></list-item>
<list-item>
<p>- To identify the parameters of the model</p></list-item>
<list-item>
<p>- To determine the spheres centre relative to the fixture datum (for example by the coordinate measuring machine)</p></list-item>
<list-item>
<p>- To collect calibration data by the sensor.</p></list-item></list></p>
<p>A widespread classification in the kinematic calibration of parallel robots is the one presented by Merlet in [<xref ref-type="bibr" rid="b13-sensors-10-10256">13</xref>]. Calibration models are classified into three types: external calibration, constrained calibration and auto-calibration or self-calibration.</p>
<p>Although the simplest way of obtaining the necessary data is by using internal sensors, their assembly is difficult in most of the systems. In external measurement systems, it is usually necessary to establish, in an approximate way, the relation between the measurement system and the reference system of the end-effector. And this procedure has the problems described above.</p></sec>
<sec>
<title>Self-calibration</title>
<p>In self-calibration methods, additional sensors are added to passive joints and each pose of the mechanism can be used as a calibration pose. These methods require that the number of internal sensors is greater than the number of DOF of the mechanism. Self-calibration methods are usually low-cost and can be performed on-line. They can be divided into two groups: (a) the mechanism has more internal sensors than necessary; (b) a passive chain is added to the mechanism.</p>
<p>In [<xref ref-type="bibr" rid="b121-sensors-10-10256">121</xref>], Yang used built-in sensors in the passive joints and the parameter errors were identified by the least-square algorithm. In [<xref ref-type="bibr" rid="b122-sensors-10-10256">122</xref>], Hesselbach developed algorithms to determine the resolution of the required sensors to reach the desired accuracy. These algorithms can be easily adapted to any 6-DOF parallel mechanisms that consist of kinematic chains with 6-DOF. Chains must include at least one ball joint. The author designed an absolute angle measuring micro sensor system. This sensor is added into passive joints of parallel mechanisms. One of the objectives is therefore to obtain a robust compact sensor. The use of passive joint sensors usually simplifies the optimization procedure. In self-calibration, the measured passive joint angles and the calculated joint angles, by means of the model, can be compared. Hollerbach [<xref ref-type="bibr" rid="b123-sensors-10-10256">123</xref>] used nine precision potentiometers to calibrate a 6-DOF parallel mechanism. The joint angle offsets and the joint angle gains were the identified kinematic parameters. These parameters related the raw analog input data from the potentiometers to the joint angles. The mechanism was placed into a number of poses, and the joint angles were read. The obtained potentiometer readings were converted to predicted joint angles and to predicted poses by solving the forward kinematics. In the following step, these values were compared with the theoretical joint angles obtained by means of the inverse kinematics.</p></sec>
<sec sec-type="methods">
<title>Constrained calibration methods</title>
<p>Developments based on constraining the mobility do not require extra sensors [<xref ref-type="bibr" rid="b124-sensors-10-10256">124</xref>,<xref ref-type="bibr" rid="b125-sensors-10-10256">125</xref>]. In [<xref ref-type="bibr" rid="b124-sensors-10-10256">124</xref>], Ryu analyzed a design which consisted of a link of fixed length with spherical ball joints in its ends. The measurement data is obtained by the internal measurement system of six actuators which measure the 5-DOF moving platform motion. This information is used in the calibration procedure without using any extra sensing device. The results show that the position and orientation error and the measurement noise and the link inaccuracy have the same order. Therefore, the calibration accuracy depends on the sensor accuracy and on the constraint link.</p>
<p>Constrained calibration methods decrease the number of DOF of the mechanism restricting the movement of the end-effector or the mobility of any joint. In these methods, the mechanism mobility is constrained during the calibration, thus some geometric parameters will remain constant in this process.</p>
<p>In [<xref ref-type="bibr" rid="b126-sensors-10-10256">126</xref>], the mechanism was constrained in such a way that only platform rotations around a fixed point were allowed, and constraint equations were solved by means of the forward model. Chiu [<xref ref-type="bibr" rid="b127-sensors-10-10256">127</xref>] limited the movement of a 6-UPS mechanism by adding a seventh leg, connected to the base through a universal joint linked to the end-effector. However, this design considerably restricts the working range and causes interferences between links. Besides, some parameter errors related to immobilize joints can occur unseen. In [<xref ref-type="bibr" rid="b128-sensors-10-10256">128</xref>], Ren kept two attitude angles of the end-effector constant at different measurement configurations using a biaxial inclinometer.</p>
<p>These methods have lower costs than external calibration, but on the other hand they are more complex than self-calibration. Another problem is that not all the workspace is available due to constraints, and it is usually a less accurate method than external and self-calibration.</p></sec>
<sec sec-type="methods">
<title>External calibration methods</title>
<p>However, in practice it is not easy to add extra redundant sensors or restrictions, so the most frequently used method is external calibration in which the necessary information is obtained by means of external devices such as theodolite [<xref ref-type="bibr" rid="b129-sensors-10-10256">129</xref>], inclinometers [<xref ref-type="bibr" rid="b130-sensors-10-10256">130</xref>,<xref ref-type="bibr" rid="b131-sensors-10-10256">131</xref>], vision devices [<xref ref-type="bibr" rid="b117-sensors-10-10256">117</xref>,<xref ref-type="bibr" rid="b132-sensors-10-10256">132</xref>], the laser tracker [<xref ref-type="bibr" rid="b133-sensors-10-10256">133</xref>,<xref ref-type="bibr" rid="b134-sensors-10-10256">134</xref>] or the coordinate measuring machine [<xref ref-type="bibr" rid="b135-sensors-10-10256">135</xref>–<xref ref-type="bibr" rid="b137-sensors-10-10256">137</xref>].</p>
<p>Whitney [<xref ref-type="bibr" rid="b129-sensors-10-10256">129</xref>] developed a forward calibration method. The method defined link lengths and joint sensor offsets as parameters. The theodolite measurements of tool position and the readings of the robot joint sensors were introduced in the model to perform the calibration procedure. The results show that the calibration model predicts theodolite readings with an error of 0.13 mm. Daney [<xref ref-type="bibr" rid="b117-sensors-10-10256">117</xref>] developed a vision-based measurement method. Although the measurement data, for example the measured poses of the mechanism, are given by the sensor, it is necessary to consider the noise of this device. The mechanism poses were measured and sensors measured the six leg lengths for every pose.</p>
<p>Besnard [<xref ref-type="bibr" rid="b130-sensors-10-10256">130</xref>] developed a method for the kinematic calibration of a 6-DOF parallel mechanism where the calibration model considered the error on the angle between the inclinometer axes. The two inclinometers were fixed to the platform. These sensors were used to measure the prismatic joint variables and the platform orientation. Each inclinometer measured its orientation from terrestrial horizontal, and both inclinometers had a null value when the platform was horizontal. The prismatic joint values and the inclinometer values were used to calibrate the geometric parameters for a number of configurations. The calibration procedure minimized the residual between the inclinometer measured values and the calculated values. The results show that inclinometers with a precision of 1e-3° and motorized joint sensors with a precision of 0.02 mm are necessary to obtain a position accuracy of about 0.4 mm. Rauf [<xref ref-type="bibr" rid="b131-sensors-10-10256">131</xref>] developed a calibration method of parallel mechanism with partial pose measurements, by measuring the rotation of the end-effector along with its position. The device consists of a linear variable differential transformer and a biaxial inclinometer, to measure the position, and an optical encoder to measure the rotation. In [<xref ref-type="bibr" rid="b105-sensors-10-10256">105</xref>], inclinometers were not used to measure precise values, rather to indicate if the values measured in one configuration were equal to the ones measured in a different configuration, thereby making the calibration method independent of the range of the measurements carried out and the positioning accuracy of the inclinometer. Although is not easy to obtain high accuracy and great workspace with conventional inclinometers, results obtained in calibration are usually satisfactory. The inclinometers were installed on the end-effector. The calibration was performed by keeping two attitude angles of the end-effector constant. The results show that the position and orientation accuracy, after calibration, can be 0.1 mm and 0.01°, when the inclinometer repeatability is 0.001°. And the precision of the leg length measurements is 0.002 mm. The results show that, before calibration, the errors were from 4 to 8 mm, and after calibration they were from −2 to 2 mm.</p>
<p>Renaud [<xref ref-type="bibr" rid="b132-sensors-10-10256">132</xref>] developed a monocular high precision measuring device based on a vision sensor. A calibration target was placed in different positions and some images were taken with the vision sensor. The mathematical model obtained the pose of the target with respect to the vision sensor. The measuring device, based on a vision sensor, presents an accuracy on the order of 10 μm in position and 5e-4° in orientation; and, in [<xref ref-type="bibr" rid="b138-sensors-10-10256">138</xref>], the author performed a calibration for a mechanism having linear actuators on the base. The forward model offers more stability, although it cannot converge if there are noise problems, and it is possible to perform the calibration by means of partial measurements of the end-effector pose.</p>
<p>In [<xref ref-type="bibr" rid="b133-sensors-10-10256">133</xref>], Koseki used a laser tracking coordinate measuring machine. This device consisted of 4 laser stations and a wide-angle retro-reflector. When the laser beam was incident upon the retro-reflector, the reflected beams returned parallel to the incident beam. The retro-reflector had a lens whose focus coincided with its spherical surface and the surface mirrors incident beam. The interferometer measured the change in distance from the intersection of two axes of pan and tilt to the retro-reflector incrementally. Some advantages of this device are non-contact measurement, wide measuring range and ability to measure a high speed object. The results show that the accuracy obtained as the distance between measured position and calculated position presents an average error of 1.63 mm, before calibration, and 0.30 mm after calibration.</p>
<p>In [<xref ref-type="bibr" rid="b135-sensors-10-10256">135</xref>] three methods were compared: a method using external measurement, a method using additional redundant sensors and a method using both. The author affirms that by using the implicit calibration, the basic system of equations may be obtained by using only the sensor information. The implicit calibration considers the basic system of equations obtained by the closed loop nature of parallel robots, and the system is specified by a function of the available data. The kinematic parameters can be identified by solving this system. The results show that the kinematic parameters were well identified as a function of the dimension of the redundant information on the state of the robot, and that the accuracy was higher for the method that used both: external measurements and additional redundant sensors.</p>
<p>In [<xref ref-type="bibr" rid="b139-sensors-10-10256">139</xref>], Last classified the calibration techniques following the criteria of degree of automation and data-acquisition method. Thus, calibration techniques can be divided in four groups:
<list list-type="simple">
<list-item>
<p>- Type 1: Non-autonomous methods by additional sensors from data acquisition, such as calibration by means of a laser tracker, camera systems or an extensible ball bar</p></list-item>
<list-item>
<p>- Type 2: Non-autonomous methods by kinematic constraints from data acquisition, such as calibration by contour tracking or by passive joint clamping</p></list-item>
<list-item>
<p>- Type 3: Autonomous methods by additional sensors from data acquisition, such as calibration by passive joint sensors or with actuation redundancy</p></list-item>
<list-item>
<p>- Type 4: Autonomous methods by kinematic constraints from data acquisition</p></list-item></list></p></sec>
<sec>
<title>How many sensors are necessary?</title>
<p>To assure that the number of equations is not smaller than the number of unknowns the minimum number of measurements, <italic>m</italic>, is given by <xref ref-type="disp-formula" rid="FD3">Equation 3</xref>:
<disp-formula id="FD3">
<label>(3)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mo>≥</mml:mo>
<mml:mi>ρ</mml:mi>
<mml:mo>+</mml:mo>
<mml:mi>ζ</mml:mi></mml:mrow></mml:math></disp-formula></p>
<p>Defining <italic>η</italic> as the coefficients that relate the transducer signal (corresponding to the joint) to the real displacement of the joint and <italic>a</italic> as the coefficients in the kinematic model, <italic>ρ</italic> is the number of elements in the vector <italic>η</italic> and <italic>ζ</italic> is the number of elements in the vector <italic>a</italic> [<xref ref-type="bibr" rid="b94-sensors-10-10256">94</xref>]. Besides, the positions chosen for data acquisition of the optimization process should guarantee the influence of all the parameters that are going to be identified, guaranteeing the generality of the parameters obtained for all the workspace [<xref ref-type="bibr" rid="b110-sensors-10-10256">110</xref>]. In [<xref ref-type="bibr" rid="b140-sensors-10-10256">140</xref>], Driels analyzed the optimum positions for data acquisition, and concluded that all the possible variation range of the joints in the mechanism should be covered. Nahvi [<xref ref-type="bibr" rid="b141-sensors-10-10256">141</xref>] concluded that for performing a calibration, the number of joint sensors must be higher than the mobility of the mechanism. The author defined the noise amplification index and demonstrated that this index is an indicator of the amplification of the sensor noise and unmodeled errors. Moreover, the results show that the effects of sensor noise and unmodeled sources of error dominate the effect of length and other kinematic parameter variations of the mechanism. Merlet [<xref ref-type="bibr" rid="b13-sensors-10-10256">13</xref>] explained that the number of constraint equations must be greater or equal than the number of unknowns. In practice the number of equations is usually greater, reducing the sensitivity of calibration to the uncertainty associated with measurements. This uncertainty is usually caused by measurement device noise. Thus, it is usual to develop an over-constrained system [<xref ref-type="bibr" rid="b142-sensors-10-10256">142</xref>]. Huang [<xref ref-type="bibr" rid="b143-sensors-10-10256">143</xref>] identified the parameter errors with an endpoint sensor and a dial indicator by measuring the flatness of a fictitious plane, the straightness and squareness of two orthogonal axes and the orientation error of the end-effector. These methods are usually based on data acquisition for fixed positions similar to work positions. Besides, it should be possible to generalize the parameter identification to positions different from those used for the identification process.</p></sec>
<sec>
<title>How many configurations must be measured?</title>
<p>The determination of the optimal number of configurations to the data acquisition, in order to perform a successful calibration, is still one of the unsolved problems, and in the specialized literature different criteria and opinions can be found. Therefore decisions are made without a specific methodology to obtain the configurations for a calibration process. According to Zhuang [<xref ref-type="bibr" rid="b144-sensors-10-10256">144</xref>], the number of necessary configurations is given by n+1, n being the number of DOF of the mechanism. In [<xref ref-type="bibr" rid="b145-sensors-10-10256">145</xref>], Borm defined the index of observability based on the non-zero singular values of the Jacobian matrix, and represented the data scatter. By maximizing this index, the errors of the parameters can be better observed. In [<xref ref-type="bibr" rid="b146-sensors-10-10256">146</xref>], Sun related five observability indexes and analyzed how to minimize the variance of the parameters and minimize the uncertainty of the end-effector position. Agheli [<xref ref-type="bibr" rid="b147-sensors-10-10256">147</xref>] showed that the boundaries of the workspace should be examined for the maximum observability errors. In [<xref ref-type="bibr" rid="b121-sensors-10-10256">121</xref>], Yang illustrated the effect of the measurement noise and robot repeatability on the calibration results. If the measurement noise exists, more measured end-effector poses must be considered. The author simulated 100 end-effector poses (50 poses to calibrate the robot and 50 to verify the results), and he concluded that the quantified orientation and position deviations and the calibrated initial poses of the modules frames become stable when the number of poses used for calibration is greater than 20. The results show that the quantified orientation deviation becomes stable in 0.004 radians, and the quantified position deviation becomes stable in 0.09 mm. Bai [<xref ref-type="bibr" rid="b148-sensors-10-10256">148</xref>] recommended that the calibration should consider more than 10 measured poses to improve the calibration accuracy. Moreover, in [<xref ref-type="bibr" rid="b105-sensors-10-10256">105</xref>] Ren concluded that selecting an optimal set of configurations is more efficient in decreasing the influence of measurement noise. Also, increasing the number of measurement configurations will decrease the pose error but only in a limited way, as when the number of measurement configurations is increased over a certain amount the improvement is not clear but the runtime is increased considerably. The number of configurations needs to be adjusted to reach a balance between accuracy and efficiency. On the contrary, Horne [<xref ref-type="bibr" rid="b149-sensors-10-10256">149</xref>] studied the effectiveness of five pose selection criteria: the geometric mean of the singular values, the inverse condition number, the minimum singular value, the noise amplification index and the inverse of the sum of the reciprocals of all of the singular values, and the results show that the pose selection criteria did not significantly improve the calibration process for the 4-DOF parallel mechanism studied, and moreover some of the results using the criteria are worse than those results where no criteria had been used.</p>
<p>(b) Optimization procedure</p>
<p>The calibration process can be solved by two ways [<xref ref-type="bibr" rid="b93-sensors-10-10256">93</xref>]: (a) by multiplying the constraints by Lagrange multipliers and using a modified objective; (b) by solving the constraint equations and substituting into the objective functions.</p>
<p>In [<xref ref-type="bibr" rid="b93-sensors-10-10256">93</xref>,<xref ref-type="bibr" rid="b114-sensors-10-10256">114</xref>] authors applied Lagrange multipliers to perform the calibration. The model can be solved by means of Newton method.</p>
<p>The second method presents non-linear equations and the inverse matrix is not easy to obtain, however nowadays there are powerful computers that allow us to perform this type of procedure.</p></sec>
<sec>
<title>Define the objective function</title>
<p>The objective of the parameter identification or optimization is to search for the optimum values of all parameters included in the model that minimize the position error of the platform.</p>
<p>The objective function to minimize can be formulated in terms of a linear least-square problem. This function is usually defined as the quadratic difference of the error (obtained between the measured value of the end-effector position and the value computed by the kinematic model). The increment established for parameters must be defined for each iteration, and its value will depend on the optimization method chosen. In most of the cases numerical optimization techniques are used to minimize the end-effector error.</p></sec>
<sec>
<title>Objective function defined in terms of position and orientation of the end-effector (DKM)</title>
<p>The equation that relates joint variables with the final position of the end-effector by means of the forward method is given by the <xref ref-type="disp-formula" rid="FD4">Equation 4</xref>:
<disp-formula id="FD4">
<label>(4)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>y</mml:mi>
<mml:mo>=</mml:mo>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>θ</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:math></disp-formula>where <italic>y</italic> is the vector that expresses the position and orientation of the end-effector according to the Euler angles, <italic>y=[x</italic>, <italic>y</italic>, <italic>z</italic>, <italic>α</italic>, <italic>β</italic>, <italic>γ]</italic>, <italic>θ<sub>i</sub></italic>, are the joint variables, with <italic>i</italic> from 1 to the number of DOF of the mechanism, and <italic>p=[p</italic><sub>1</sub>, <italic>p</italic><sub>2</sub>,<italic>…</italic>, <italic>p<sub>j</sub>]<sup>T</sup></italic> is the vector of the model parameters. The number of parameters <italic>j</italic> will depend on the model chosen. Thus, it is possible to identify the geometric parameters from vector <italic>p</italic> by iterative optimization methods. These methods minimize the difference between the coordinates obtained by the model and the nominal values measured in the same position. These differences are denominated residues (see <xref ref-type="disp-formula" rid="FD5">Equation 5</xref>):
<disp-formula id="FD5">
<label>(5)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>θ</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow>
<mml:mi>T</mml:mi></mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>f</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>θ</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula></p>
<p>In this equation, <italic>y<sub>i</sub></italic> is given by the vector of the nominal position and orientation values for the <italic>n</italic> configurations utilized in the parameter identification. In each configuration, the position and orientation of the end-effector will be obtained by means of the mechanism model given by <italic>f</italic>, for the joint variables <italic>θ<sub>i</sub></italic>, corresponding to this configuration. This equation represents the objective function to minimize, whose value will be obtained as the sum of squares of the <italic>n</italic> poses, used in the parameter identification of the mechanism. A common way to express this equation is the one shown in <xref ref-type="disp-formula" rid="FD6">Equation 6</xref>:
<disp-formula id="FD6">
<label>(6)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi mathvariant="italic">ii</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>α</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>β</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>β</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>γ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>m</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>γ</mml:mi></mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow>
<mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>where the values with <italic>m<sub>i</sub></italic> sub-index are the external measured values and the <italic>p<sub>i</sub></italic> sub-index values are the computed values by means of the mathematical model, for the <italic>n</italic> identification poses. The optimum values will be given by the minimum of the objective function <italic>ϕ</italic>.</p>
<p>Traditionally, this equation has been widely used for open chain mechanisms [<xref ref-type="bibr" rid="b150-sensors-10-10256">150</xref>], since in these systems is easier to obtain the forward kinematics, but in recent years it has also been widely used in parallel mechanisms such as in [<xref ref-type="bibr" rid="b93-sensors-10-10256">93</xref>,<xref ref-type="bibr" rid="b95-sensors-10-10256">95</xref>,<xref ref-type="bibr" rid="b104-sensors-10-10256">104</xref>,<xref ref-type="bibr" rid="b105-sensors-10-10256">105</xref>,<xref ref-type="bibr" rid="b136-sensors-10-10256">136</xref>,<xref ref-type="bibr" rid="b143-sensors-10-10256">143</xref>,<xref ref-type="bibr" rid="b147-sensors-10-10256">147</xref>,<xref ref-type="bibr" rid="b148-sensors-10-10256">148</xref>], where the position and orientation of the end-effector is measured and compared with the value given by applying the forward kinematic model, in function of model parameters and joint variables.</p></sec>
<sec>
<title>Objective function defined in terms of distances (IKM)</title>
<p>Another method to perform the calibration is by comparing the joint variables, which are given by the inverse kinematic model [<xref ref-type="bibr" rid="b115-sensors-10-10256">115</xref>,<xref ref-type="bibr" rid="b117-sensors-10-10256">117</xref>,<xref ref-type="bibr" rid="b123-sensors-10-10256">123</xref>,<xref ref-type="bibr" rid="b138-sensors-10-10256">138</xref>,<xref ref-type="bibr" rid="b141-sensors-10-10256">141</xref>,<xref ref-type="bibr" rid="b151-sensors-10-10256">151</xref>,<xref ref-type="bibr" rid="b152-sensors-10-10256">152</xref>], by means of <xref ref-type="disp-formula" rid="FD7">Equation 7</xref>:
<disp-formula id="FD7">
<label>(7)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mi>T</mml:mi></mml:msup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>q</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>−</mml:mo>
<mml:mi>g</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>X</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow></mml:math></disp-formula>where <italic>q<sub>i</sub></italic> are the joint variables, which are externally measured and <italic>g(X<sub>i</sub></italic>, <italic>p)</italic> are the joint variables obtained by means of the inverse model, in function of the position and orientation of the platform and the model parameters.</p>
<p>Another widely used equation for obtaining the error is the representation as differences between the measured and the computed distances, <italic>d<sub>mi</sub></italic> and <italic>d<sub>i</sub></italic> respectively, obtained by the kinematic model, between two points, as it is shown in <xref ref-type="disp-formula" rid="FD8">Equation 8</xref>:
<disp-formula id="FD8">
<label>(8)</label>
<mml:math display="block">
<mml:mrow>
<mml:mi>ϕ</mml:mi>
<mml:mo>=</mml:mo>
<mml:munderover>
<mml:mo>∑</mml:mo>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn></mml:mrow>
<mml:mi>n</mml:mi></mml:munderover>
<mml:mrow>
<mml:msup>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
<mml:mi>i</mml:mi></mml:mrow></mml:msub>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>d</mml:mi></mml:mrow>
<mml:mi>i</mml:mi></mml:msub></mml:mrow>
<mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mrow>
<mml:mn>2</mml:mn></mml:msup></mml:mrow></mml:mrow></mml:math></disp-formula>where the sub-index mi indicates the values externally measured, and the values with sub-index i correspond to the values obtained by the kinematic model.</p>
<p>Once the most suitable calibration model has been selected for the mechanism, and the objective function is defined, the next step will be to solve the system. These systems are non-linear, thus it is not possible to obtain an analytical solution to the parameter identification problem. Non-linear optimization iterative techniques are usually used to obtain the optimum parameters that minimize the error in the identification poses. For these systems, the most suitable resolution techniques are those based on least squares, specially used to adjust a parametric model to a set of data. A usual approach to the optimization problem consists of linearizing the equations of the model in an environment of the parameter to identify by means of a development in Taylor series. A suitable formulation to the optimization problem and a good approach to the function are achieved in a small interval in relation to its current value. In parallel kinematics it is usual to use developments in Taylor series for every parameter pi. This approach can be first or second order. The optimization problem can be solved through several methods:</p>
<p><italic>(1) Gradient optimization methods</italic></p>
<p>The simplest ones are those methods based on the gradient, also known as line search. These methods are usually used when the objective function to be minimized is approximated through a first-order Taylor series development. The following step will be to consider a stop criterion based on the convergence of the method or on small increments of parameters between iterations to obtain the set of parameters that minimizes the function.</p>
<p><italic>(2) Least-square optimization methods</italic></p>
<p>In the second group we can find those methods that consider second-order approaches in the Taylor series development. In this second term the Hessian matrix appears, with components that are the second derivatives of the objective function with respect to the vector of parameters. This matrix should be invertible. Problems derived from the singularity of this matrix in numerical optimization procedures must be solved by choosing a suitable mathematical model and a set of data for the optimization, or by employing optimization methods that avoid this singularity.</p>
<p>Optimization methods based on least-square are different from the previous ones when obtaining the direction of search and when defining the increment that parameters should have in this direction. One of the most frequently used least-square methods that take into account second order terms is the Gauss-Newton method. In this method the Hessian matrix should be positive or semi-defined positive, that is all its own values are positive or positives and zero, which will not always be produced for any mathematical model and for any set of values of the objective function. Moreover, convergence is not always guaranteed.</p>
<p><italic>(3) Levenberg-Marquardt optimization method</italic></p>
<p>The methods studied can present problems when processing the objective function, and are therefore not always suitable for the parameter identification process. The gradient method ensures that a local minimum of the function is found and usually requires more iterations to find it. It also needs the objective function to be continuous in every parameter, which not is always the case.</p>
<p>Numerical problems that appear in the two methods studied are solved by the algorithm developed by Levenberg and Marquardt [<xref ref-type="bibr" rid="b153-sensors-10-10256">153</xref>,<xref ref-type="bibr" rid="b154-sensors-10-10256">154</xref>]. The method adds a positive value <italic>λ</italic> to the Hessian main diagonal elements, obtaining a non-singular and therefore invertible matrix. The main problem of the Newton Gauss-Newton method with the processing of the second order components is therefore solved. To choose <italic>λ</italic>, a compromise between the speed of convergence of the method and the invertibility of the matrix must be reached in every iteration. This is why the Levenberg-Marquardt algorithm results in a combination of the two methods presented above. When parameters are far from the optimum solution, the value of <italic>λ</italic> increases and the algorithm behaves similarly to the gradient method; when the parameters approach their optimum value, the value of <italic>λ</italic> decreases, behaving in a similar way to the Gauss-Newton method in both search direction and parameter increment. This method is widely used in the calibration of parallel mechanisms by authors such as in [<xref ref-type="bibr" rid="b105-sensors-10-10256">105</xref>,<xref ref-type="bibr" rid="b110-sensors-10-10256">110</xref>,<xref ref-type="bibr" rid="b115-sensors-10-10256">115</xref>, <xref ref-type="bibr" rid="b123-sensors-10-10256">123</xref>–<xref ref-type="bibr" rid="b126-sensors-10-10256">126</xref>,<xref ref-type="bibr" rid="b130-sensors-10-10256">130</xref>,<xref ref-type="bibr" rid="b132-sensors-10-10256">132</xref>,<xref ref-type="bibr" rid="b135-sensors-10-10256">135</xref>,<xref ref-type="bibr" rid="b143-sensors-10-10256">143</xref>,<xref ref-type="bibr" rid="b151-sensors-10-10256">151</xref>,<xref ref-type="bibr" rid="b155-sensors-10-10256">155</xref>–<xref ref-type="bibr" rid="b158-sensors-10-10256">158</xref>].</p>
<p>In the specialized literature we can find other alternatives to the Gauss-Newton method problem. For example, the singular value decomposition (SVD) [<xref ref-type="bibr" rid="b114-sensors-10-10256">114</xref>,<xref ref-type="bibr" rid="b116-sensors-10-10256">116</xref>,<xref ref-type="bibr" rid="b147-sensors-10-10256">147</xref>,<xref ref-type="bibr" rid="b148-sensors-10-10256">148</xref>,<xref ref-type="bibr" rid="b156-sensors-10-10256">156</xref>,<xref ref-type="bibr" rid="b159-sensors-10-10256">159</xref>].</p>
<p>Another alternative is the use of the decomposition QR for parameter identification [<xref ref-type="bibr" rid="b125-sensors-10-10256">125</xref>]. In [<xref ref-type="bibr" rid="b160-sensors-10-10256">160</xref>] an algorithm allows us to introduce range limits of the joints in a configuration selection process and avoids the problem of local minimum, although it is a high-cost computational method. In [<xref ref-type="bibr" rid="b161-sensors-10-10256">161</xref>,<xref ref-type="bibr" rid="b162-sensors-10-10256">162</xref>] the problem is solved by means of genetic algorithms. Yu applies the inverse kinematics model and improves the accuracy in the parallel robot position by means of an artificial neural network. In [<xref ref-type="bibr" rid="b163-sensors-10-10256">163</xref>], Stan performs the optimization of a 2-DOF parallel robot using genetic algorithms. The author considers transmission quality index, manipulability, stiffness and workspace. In [<xref ref-type="bibr" rid="b164-sensors-10-10256">164</xref>] Liu obtains residual measures through inverse kinematics and develops a calibration method using genetic algorithms.</p>
<p>Techniques based on least-square usually present lower computational cost, providing we consider as an initial value a solution close to the optimum solution for the set of parameters. However, in methods based on genetic and neural networks algorithms this premise is not usually so significant. These algorithms are usually used for parameter optimization and identification when it is not known whether the initial values are close to the optimum solution. Furthermore, the combinatorial nature of these methods is purely stochastic, which avoids problems in the definition of the search direction in traditional least-square methods.</p>
<p>(c) Evaluation of the identified parameters</p>
<p>The evaluation of the identified parameters consists of evaluating the mechanism behaviour with the set of the identified parameters obtained in the previous step. This procedure is performed in configurations different from those utilized in the optimization process. This phase must evaluate the degree of compliance of the error values obtained in other positions of the workspace. In [<xref ref-type="bibr" rid="b133-sensors-10-10256">133</xref>], Koseki utilized a laser tracking coordinate measuring system to evaluate the accuracy of a parallel mechanism. Cheng [<xref ref-type="bibr" rid="b165-sensors-10-10256">165</xref>] analyzed the relationship between original errors and position-stance error of a moving platform by means of the complete differential-coefficient theory and evaluates the error model. The conclusion is that improving manufacturing and assembly techniques allows us to reduce the moving platform error, and that a small change in position-stance error in different kinematic positions proves that the error-compensation of software can considerably improve the precision of parallel mechanisms.</p>
<p>(d) Correction model</p>
<p>To end the calibration process, a correction model can be obtained to improve the accuracy of the mechanism. Huang [<xref ref-type="bibr" rid="b166-sensors-10-10256">166</xref>] performed the calibration of a parallel mechanism and compensated geometrical and position errors in <italic>x</italic> and <italic>y</italic> coordinates. Gong [<xref ref-type="bibr" rid="b111-sensors-10-10256">111</xref>] identifies non-geometric errors and developed a method to compensate these errors with a laser tracker by means of the inverse calibration model. An extensive guide of error compensation methods can be found in [<xref ref-type="bibr" rid="b167-sensors-10-10256">167</xref>]. In this paper, Oiwa explained in detail how to compensate joints errors, link length, forces in a measurement loop and frame deformation using a coordinate measuring machine. This method considers thermal effect and external forces. The results show that the deflection of measured Z-coordinates is not completely eliminated with the compensation system, but compensation using displacement sensors built in spherical joints improves moving accuracy of parallel kinematic mechanisms when the mechanism moves in a large working space. The thermal and elastic deformations of the limb can be compensated by connecting the scale unit with the joints through low expansion material rods. Bringing the rod end into contact with the ball of the spherical joint enables the scale unit to measure the joint error and the limb deformations. And, the measured position and the orientation of the base platform compensate the thermal and elastic deformations of the frame.</p></sec></sec></sec></sec>
<sec sec-type="conclusions">
<label>5.</label>
<title>Conclusions</title>
<p>This paper presents an overview of the solutions developed on kinematic and calibration models of parallel mechanisms and the influence of sensors in the mechanism accuracy in recent years. The most relevant classifications to obtain and solve kinematic models and to identify geometric and non-geometric parameters in the calibration of parallel robots are presented. And the advantages and disadvantages of these methods, applications of parallel mechanisms as sensors, new trends and the identification of unsolved problems are discussed. This overview is intended to be a guide for researchers working on parallel mechanisms, in the design, modelling and calibration of these systems. In the document, some common questions are answered and the most up-to-date research carried out is summarized. The document describes the different phases required to perform a calibration process, putting special emphasis on the fact that the first decision made, the calibration method, will determine the number and type of necessary sensors, internal or external, from data acquisition, the required configurations and the calibration model. The model will determine the nature and number of necessary parameters. There are different methods to perform the calibration process, and the choice of one or the other must consider the characteristics of the mechanism. Methods based on computational intelligence are able to scan a vast solution set and are not as sensitive to bad initial values as classical methods. These methods can be suitable for those systems where it is very complex or impossible to obtain the model by means of classical methods. On the contrary, in those devices in which a careful kinematic analysis is necessary to obtain complete performance knowledge, classical methods are more suitable. Depending on the type and number of selected sensors, the cost function will be formulated. This function is established in terms of position and orientation of the moving platform (DKM) or in terms of distances (IKM). And, finally, the evaluation of the results and the correction model will allow us to improve the accuracy of the system.</p></sec></body>
<back>
<ref-list>
<title>References and Notes</title>
<ref id="b1-sensors-10-10256"><label>1.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname><given-names>GL</given-names></name><name><surname>Chen</surname><given-names>IM</given-names></name><name><surname>Chen</surname><given-names>WH</given-names></name><name><surname>Lin</surname><given-names>W</given-names></name></person-group><article-title>Kinematic Design of a Six-DOF Parallel-Kinematics Machine with Decoupled-Motion Architecture</article-title><source>IEEE Trans. Rob. Autom</source><year>2004</year><volume>20</volume><fpage>876</fpage><lpage>884</lpage><pub-id pub-id-type="doi">10.1109/TRO.2004.829485</pub-id></citation></ref>
<ref id="b2-sensors-10-10256"><label>2.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>XJ</given-names></name><name><surname>Wang</surname><given-names>JS</given-names></name></person-group><article-title>A New Methodology for Optimal Kinematic Design of Parallel Mechanisms</article-title><source>Mech. Mach. Theor</source><year>2007</year><volume>42</volume><fpage>1210</fpage><lpage>1224</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2006.08.002</pub-id></citation></ref>
<ref id="b3-sensors-10-10256"><label>3.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Merlet</surname><given-names>JP</given-names></name></person-group><article-title>Determination of the Orientation Workspace of Parallel Manipulators</article-title><source>J. Intell. Rob. Syst</source><year>1995</year><volume>13</volume><fpage>143</fpage><lpage>160</lpage><pub-id pub-id-type="doi">10.1007/BF01254849</pub-id></citation></ref>
<ref id="b4-sensors-10-10256"><label>4.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gosselin</surname><given-names>C</given-names></name><name><surname>Angeles</surname><given-names>J</given-names></name></person-group><article-title>Singularity Analysis of Closed-Loop Kinematic Chains</article-title><source>IEEE Trans. Rob. Autom</source><year>1990</year><volume>6</volume><fpage>281</fpage><lpage>290</lpage><pub-id pub-id-type="doi">10.1109/70.56660</pub-id></citation></ref>
<ref id="b5-sensors-10-10256"><label>5.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gosselin</surname><given-names>C</given-names></name></person-group><article-title>Determination of the Workspace of 6-Dof Parallel Manipulators</article-title><source>J. Mech. Des</source><year>1990</year><volume>112</volume><fpage>331</fpage><lpage>336</lpage><pub-id pub-id-type="doi">10.1115/1.2912612</pub-id></citation></ref>
<ref id="b6-sensors-10-10256"><label>6.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Saglia</surname><given-names>JA</given-names></name><name><surname>Dai</surname><given-names>JS</given-names></name><name><surname>Caldwell</surname><given-names>DG</given-names></name></person-group><article-title>Geometry and Kinematic Analysis of a Redundantly Actuated Parallel Mechanism that Eliminates Singularities and Improves Dexterity</article-title><source>J Mech Des</source><year>2008</year><volume>130</volume><fpage>124501:1</fpage><lpage>124501:5</lpage></citation></ref>
<ref id="b7-sensors-10-10256"><label>7.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Stan</surname><given-names>SD</given-names></name><name><surname>Maties</surname><given-names>V</given-names></name><name><surname>Balan</surname><given-names>R</given-names></name></person-group><article-title>Workspace Optimal Design of a 2 DOF Micro Parallel Robot using Genetic Algorithms and Simulated Annealing Optimization Methods</article-title><conf-name>Proceedings of the IEEE International Conference on Mechatronics and Automation</conf-name><conf-loc>Harbin, China</conf-loc><conf-date>5–8 August 2007</conf-date><fpage>1108</fpage><lpage>1113</lpage></citation></ref>
<ref id="b8-sensors-10-10256"><label>8.</label><citation citation-type="other"><person-group person-group-type="author"><name><surname>Gwinnett</surname><given-names>J</given-names></name></person-group><comment>Amusement Device. US Patent n° 1,789,680</comment><month>January</month><year>1931</year></citation></ref>
<ref id="b9-sensors-10-10256"><label>9.</label><citation citation-type="other"><person-group person-group-type="author"><name><surname>Pollard</surname><given-names>WLV</given-names></name></person-group><comment>Position-Controlling Apparatus. US Patent n° 2,286,571</comment><month>June</month><year>1942</year></citation></ref>
<ref id="b10-sensors-10-10256"><label>10.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gough</surname><given-names>VE</given-names></name></person-group><article-title>Contribution to Discussion of Papers on Research in Automobile Stability, Control and Tyre Performance</article-title><source>Proc. Auto Div. Inst. Mech. Eng</source><year>1956</year><volume>171</volume><fpage>392</fpage><lpage>394</lpage></citation></ref>
<ref id="b11-sensors-10-10256"><label>11.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hunt</surname><given-names>KH</given-names></name></person-group><article-title>Structural Kinematics of in-Parallel-Actuated Robot-Arms</article-title><source>J. Mech. Transm. T ASME</source><year>1983</year><volume>105</volume><fpage>705</fpage><lpage>712</lpage><pub-id pub-id-type="doi">10.1115/1.3258540</pub-id></citation></ref>
<ref id="b12-sensors-10-10256"><label>12.</label><citation citation-type="other"><person-group person-group-type="author"><name><surname>Clavel</surname><given-names>R</given-names></name></person-group><comment>Device for the Movement and Positioning of an Element in Space. Patent n° US 4,976,582</comment><month>December</month><year>1990</year></citation></ref>
<ref id="b13-sensors-10-10256"><label>13.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Merlet</surname><given-names>JPP</given-names></name></person-group><source>Parallel Robots</source><edition>1st ed</edition><publisher-name>Kluwer Academic Publishers</publisher-name><publisher-loc>Norwell, MA, USA</publisher-loc><year>2000</year></citation></ref>
<ref id="b14-sensors-10-10256"><label>14.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Nielsen</surname><given-names>J</given-names></name><name><surname>Roth</surname><given-names>B</given-names></name></person-group><article-title>On the Kinematic Analysis of Robotic Mechanisms</article-title><source>Int. J. Rob. Res</source><year>1999</year><volume>18</volume><fpage>1147</fpage><lpage>1160</lpage><pub-id pub-id-type="doi">10.1177/02783649922067771</pub-id></citation></ref>
<ref id="b15-sensors-10-10256"><label>15.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zeng</surname><given-names>DX</given-names></name><name><surname>Huang</surname><given-names>Z</given-names></name><name><surname>Lu</surname><given-names>WJ</given-names></name></person-group><article-title>A Family of Novel 2 DOF Rotational Decoupled Parallel Mechanisms</article-title><conf-name>Proceedings of the IEEE International Conference on Mechatronics and Automation</conf-name><conf-loc>Harbin, China</conf-loc><conf-date>5–8 August 2007</conf-date><fpage>2478</fpage><lpage>2483</lpage></citation></ref>
<ref id="b16-sensors-10-10256"><label>16.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dunlop</surname><given-names>GR</given-names></name><name><surname>Jones</surname><given-names>TP</given-names></name></person-group><article-title>Position Analysis of a Two DOF Parallel Mechanism—The Canterbury Tracker</article-title><source>Mech. Mach. Theor</source><year>1999</year><volume>34</volume><fpage>599</fpage><lpage>614</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(98)00020-2</pub-id></citation></ref>
<ref id="b17-sensors-10-10256"><label>17.</label><citation citation-type="web"><person-group person-group-type="author"><name><surname>Rosheim</surname><given-names>ME</given-names></name></person-group><article-title>This data can be obtained from Ross-Hime Designs</article-title><comment>Available online <italic>Inc via</italic> <ext-link xlink:href="http://www.anthrobot.com/omni_III/" ext-link-type="uri">http://www.anthrobot.com/omni_III/</ext-link> (accessed on 1 November 2010).</comment></citation></ref>
<ref id="b18-sensors-10-10256"><label>18.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Majarena</surname><given-names>AC</given-names></name><name><surname>Santolaria</surname><given-names>J</given-names></name><name><surname>Samper</surname><given-names>D</given-names></name><name><surname>Aguilar</surname><given-names>JJ</given-names></name></person-group><article-title>Spatial Resolution-Based Kinematic Design of a Parallel Positioning Platform</article-title><source>Int J Adv Manuf Technol</source><year>2010</year><pub-id pub-id-type="doi">10.1007/s00170-010-2878-x</pub-id></citation></ref>
<ref id="b19-sensors-10-10256"><label>19.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Gosselin</surname><given-names>CM</given-names></name><name><surname>Perreault</surname><given-names>L</given-names></name><name><surname>Vaillancourt</surname><given-names>C</given-names></name></person-group><article-title>Simulation and Computer-Aided Design of Spherical Parallel Manipulators</article-title><conf-name>Proceedings of the Engineering in Harmony with the Ocean</conf-name><conf-loc>Victoria, BC, Canada</conf-loc><conf-date>18–21 October 1993</conf-date><comment>B301</comment><lpage>306</lpage></citation></ref>
<ref id="b20-sensors-10-10256"><label>20.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Tsai</surname><given-names>LW</given-names></name><name><surname>Walsh</surname><given-names>GC</given-names></name><name><surname>Stamper</surname><given-names>RE</given-names></name></person-group><article-title>Kinematics and Workspace of a Novel Three Dof Translational Platform</article-title><year>1996</year><volume>74</volume><fpage>1</fpage><lpage>18</lpage></citation></ref>
<ref id="b21-sensors-10-10256"><label>21.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ceccarelli</surname><given-names>M</given-names></name></person-group><article-title>A New 3 DOF Spatial Parallel Mechanism</article-title><source>Mech. Mach. Theor</source><year>1997</year><volume>32</volume><fpage>895</fpage><lpage>902</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(97)00019-0</pub-id></citation></ref>
<ref id="b22-sensors-10-10256"><label>22.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gallardo</surname><given-names>J</given-names></name><name><surname>Rodríguez</surname><given-names>R</given-names></name><name><surname>Caudillo</surname><given-names>M</given-names></name><name><surname>Rico</surname><given-names>JM</given-names></name></person-group><article-title>A Family of Spherical Parallel Manipulators with Two Legs</article-title><source>Mech. Mach. Theor</source><year>2008</year><volume>43</volume><fpage>201</fpage><lpage>216</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2007.02.001</pub-id></citation></ref>
<ref id="b23-sensors-10-10256"><label>23.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Carretero</surname><given-names>JA</given-names></name><name><surname>Podhorodeski</surname><given-names>RP</given-names></name><name><surname>Nahon</surname><given-names>MA</given-names></name><name><surname>Gosselin</surname><given-names>CM</given-names></name></person-group><article-title>Kinematic Analysis and Optimization of a New Three Degree-of-Freedom Spatial Parallel Manipulator</article-title><source>J. Mech. Des</source><year>2000</year><volume>122</volume><fpage>17</fpage><lpage>24</lpage><pub-id pub-id-type="doi">10.1115/1.533542</pub-id></citation></ref>
<ref id="b24-sensors-10-10256"><label>24.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chablat</surname><given-names>D</given-names></name><name><surname>Wenger</surname><given-names>P</given-names></name></person-group><article-title>Architecture Optimization of a 3-DOF Translational Parallel Mechanism for Machining Applications, the Orthoglide</article-title><source>IEEE Trans. Rob. Autom</source><year>2003</year><volume>19</volume><fpage>403</fpage><lpage>410</lpage><pub-id pub-id-type="doi">10.1109/TRA.2003.810242</pub-id></citation></ref>
<ref id="b25-sensors-10-10256"><label>25.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>XJ</given-names></name><name><surname>Wang</surname><given-names>JS</given-names></name><name><surname>Pritschow</surname><given-names>G</given-names></name></person-group><article-title>A New Family of Spatial 3-DoF Fully-Parallel Manipulators with High Rotational Capability</article-title><source>Mech. Mach. Theor</source><year>2005</year><volume>40</volume><fpage>475</fpage><lpage>494</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2004.10.001</pub-id></citation></ref>
<ref id="b26-sensors-10-10256"><label>26.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gallardo</surname><given-names>J</given-names></name><name><surname>Orozco</surname><given-names>H</given-names></name><name><surname>Rico</surname><given-names>JM</given-names></name></person-group><article-title>Kinematics of 3-RPS Parallel Manipulators by Means of Screw Theory</article-title><source>Int. J. Adv. Manuf. Technol</source><year>2008</year><volume>36</volume><fpage>598</fpage><lpage>605</lpage><pub-id pub-id-type="doi">10.1007/s00170-006-0851-5</pub-id></citation></ref>
<ref id="b27-sensors-10-10256"><label>27.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Tyapin</surname><given-names>I</given-names></name><name><surname>Hovland</surname><given-names>G</given-names></name><name><surname>Brogardh</surname><given-names>T</given-names></name></person-group><article-title>Workspace Optimisation of a Reconfigurable Parallel Kinematic Manipulator</article-title><conf-name>Proceedings of the IEEE/ASME International Conference on Advanced Intelligent Mechatronics</conf-name><conf-loc>Zurich, Switzerland</conf-loc><conf-date>4–7 September 2007</conf-date><fpage>1</fpage><lpage>6</lpage></citation></ref>
<ref id="b28-sensors-10-10256"><label>28.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bhatia</surname><given-names>P</given-names></name><name><surname>Thirunarayanan</surname><given-names>J</given-names></name><name><surname>Dave</surname><given-names>N</given-names></name></person-group><article-title>An Expert System-Based Design of SCARA Robot</article-title><source>Expert Syst. Appl</source><year>1998</year><volume>15</volume><fpage>99</fpage><lpage>109</lpage><pub-id pub-id-type="doi">10.1016/S0957-4174(98)00015-3</pub-id></citation></ref>
<ref id="b29-sensors-10-10256"><label>29.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Krut</surname><given-names>S</given-names></name><name><surname>Company</surname><given-names>O</given-names></name><name><surname>Benoit</surname><given-names>M</given-names></name><name><surname>Ota</surname><given-names>H</given-names></name><name><surname>Pierrot</surname><given-names>F</given-names></name></person-group><article-title>I4: A New Parallel Mechanism for Scara Motions</article-title><conf-name>Proceedings of the 20th IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Taipei, Taiwan</conf-loc><conf-date>14–19 September 2003</conf-date><fpage>1875</fpage><lpage>1880</lpage></citation></ref>
<ref id="b30-sensors-10-10256"><label>30.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Nabat</surname><given-names>V</given-names></name><name><surname>Krut</surname><given-names>S</given-names></name><name><surname>Company</surname><given-names>O</given-names></name><name><surname>Poignet</surname><given-names>P</given-names></name><name><surname>Pierrot</surname><given-names>F</given-names></name></person-group><article-title>On the Design of a Fast Parallel Robot Based on its Dynamic Model</article-title><source>Exp. Rob</source><year>2008</year><volume>39</volume><fpage>409</fpage><lpage>419</lpage></citation></ref>
<ref id="b31-sensors-10-10256"><label>31.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>JG</given-names></name><name><surname>Gosselin</surname><given-names>CM</given-names></name></person-group><article-title>Static Balancing of Spatial Four-Degree-of-Freedom Parallel Mechanisms</article-title><source>Mech. Mach. Theor</source><year>2000</year><volume>35</volume><fpage>563</fpage><lpage>592</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(99)00029-4</pub-id></citation></ref>
<ref id="b32-sensors-10-10256"><label>32.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gao</surname><given-names>F</given-names></name><name><surname>Li</surname><given-names>WM</given-names></name><name><surname>Zhao</surname><given-names>XC</given-names></name><name><surname>Jin</surname><given-names>ZL</given-names></name><name><surname>Zhao</surname><given-names>H</given-names></name></person-group><article-title>New Kinematic Structures for 2-, 3-, 4-, and 5-DOF Parallel Manipulator Designs</article-title><source>Mech. Mach. Theor</source><year>2002</year><volume>37</volume><fpage>1395</fpage><lpage>1411</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(02)00044-7</pub-id></citation></ref>
<ref id="b33-sensors-10-10256"><label>33.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Maurin</surname><given-names>B</given-names></name><name><surname>Piccin</surname><given-names>O</given-names></name><name><surname>Bayle</surname><given-names>B</given-names></name><name><surname>Gangloff</surname><given-names>J</given-names></name><name><surname>de Mathelin</surname><given-names>M</given-names></name></person-group><article-title>A Parallel 5 Dof Positioner for Semi-Spherical Workspaces</article-title><conf-name>Proceedings of the ASME Design Engineering Technical Conferences</conf-name><conf-loc>Salt Lake, UT, USA</conf-loc><conf-date>28 September–2 October 2004</conf-date><fpage>57406:1</fpage><lpage>57406:2</lpage></citation></ref>
<ref id="b34-sensors-10-10256"><label>34.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shim</surname><given-names>JH</given-names></name><name><surname>Kwon</surname><given-names>DS</given-names></name><name><surname>Cho</surname><given-names>HS</given-names></name></person-group><article-title>Kinematic Analysis and Design of a Six DOF 3-PRPS in Parallel Manipulator</article-title><source>Robotica</source><year>1999</year><volume>17</volume><fpage>269</fpage><lpage>281</lpage><pub-id pub-id-type="doi">10.1017/S0263574799001368</pub-id></citation></ref>
<ref id="b35-sensors-10-10256"><label>35.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ben-Horin</surname><given-names>P</given-names></name><name><surname>Shoham</surname><given-names>M</given-names></name></person-group><article-title>Singularity Condition of Six-Degree-of-Freedom Three-Legged Parallel Robots Based on Grassmann-Cayley Algebra</article-title><source>IEEE Trans. Robot</source><year>2006</year><volume>22</volume><fpage>577</fpage><lpage>590</lpage><pub-id pub-id-type="doi">10.1109/TRO.2006.878958</pub-id></citation></ref>
<ref id="b36-sensors-10-10256"><label>36.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Aponso</surname><given-names>BL</given-names></name><name><surname>Beard</surname><given-names>SD</given-names></name><name><surname>Schroeder</surname><given-names>JA</given-names></name></person-group><publisher-loc>The</publisher-loc><publisher-name>NASA</publisher-name><article-title>Ames Vertical Motion Simulator–A Facility Engineered for Realism</article-title><conf-name>Proceedings of the Royal Aeronautical Society Spring Flight Simulation Conference</conf-name><conf-loc>London, UK</conf-loc><conf-date>3–4 June 2009</conf-date><fpage>4</fpage></citation></ref>
<ref id="b37-sensors-10-10256"><label>37.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zanganeh</surname><given-names>KE</given-names></name><name><surname>Sinatra</surname><given-names>R</given-names></name><name><surname>Angeles</surname><given-names>J</given-names></name></person-group><article-title>Kinematics and Dynamics of a Six-Degree-of-Freedom Parallel Manipulator with Revolute Legs</article-title><source>Robotica</source><year>1997</year><volume>15</volume><fpage>385</fpage><lpage>394</lpage><pub-id pub-id-type="doi">10.1017/S0263574797000477</pub-id></citation></ref>
<ref id="b38-sensors-10-10256"><label>38.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>SC</given-names></name><name><surname>Hikita</surname><given-names>H</given-names></name><name><surname>Kubo</surname><given-names>H</given-names></name><name><surname>Zhao</surname><given-names>YS</given-names></name><name><surname>Huang</surname><given-names>Z</given-names></name><name><surname>Ifukube</surname><given-names>T</given-names></name></person-group><article-title>Kinematics and Dynamics of a 6 Degree-of-Freedom Fully Parallel Manipulator with Elastic Joints</article-title><source>Mech. Mach. Theor</source><year>2003</year><volume>38</volume><fpage>439</fpage><lpage>461</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(02)00132-5</pub-id></citation></ref>
<ref id="b39-sensors-10-10256"><label>39.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Pritschow</surname><given-names>G</given-names></name><name><surname>Wurst</surname><given-names>KH</given-names></name></person-group><article-title>Systematic Design of Hexapods and Other Parallel Link Systems</article-title><source>Cirp Ann. Manuf. Technol</source><year>1997</year><volume>46</volume><fpage>291</fpage><lpage>295</lpage><pub-id pub-id-type="doi">10.1016/S0007-8506(07)60828-2</pub-id></citation></ref>
<ref id="b40-sensors-10-10256"><label>40.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Gaillet</surname><given-names>A</given-names></name><name><surname>Reboulet</surname><given-names>C</given-names></name></person-group><article-title>An Isostatic Six Component Force and Torque Sensor</article-title><conf-name>Proceedings of the 13th International Symposium on Industrial Robotics</conf-name><conf-loc>Chicago, IL, USA</conf-loc><conf-date>April 1983</conf-date><fpage>102</fpage><lpage>111</lpage></citation></ref>
<ref id="b41-sensors-10-10256"><label>41.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dasgupta</surname><given-names>B</given-names></name><name><surname>Mruthyunjaya</surname><given-names>TS</given-names></name></person-group><article-title>The Stewart Platform Manipulator: A Review</article-title><source>Mech. Mach. Theor</source><year>2000</year><volume>35</volume><fpage>15</fpage><lpage>40</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(99)00006-3</pub-id></citation></ref>
<ref id="b42-sensors-10-10256"><label>42.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dwarakanath</surname><given-names>TA</given-names></name><name><surname>Dasgupta</surname><given-names>B</given-names></name><name><surname>Mruthyunjaya</surname><given-names>TS</given-names></name></person-group><article-title>Design and Development of a Stewart Platform Based Force-Torque Sensor</article-title><source>Mechatronics</source><year>2001</year><volume>11</volume><fpage>793</fpage><lpage>809</lpage><pub-id pub-id-type="doi">10.1016/S0957-4158(00)00048-9</pub-id></citation></ref>
<ref id="b43-sensors-10-10256"><label>43.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Yao</surname><given-names>J</given-names></name><name><surname>Hou</surname><given-names>Y</given-names></name><name><surname>Lu</surname><given-names>L</given-names></name><name><surname>Zhao</surname><given-names>Y</given-names></name></person-group><article-title>Analysis of a Pre-Stressed Six-Component Force/Torque Sensor Based on Stewart Platform</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Biomimetics</conf-name><conf-loc>Kunming, China</conf-loc><conf-date>17–20 December 2006</conf-date><fpage>346</fpage><lpage>350</lpage></citation></ref>
<ref id="b44-sensors-10-10256"><label>44.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Sui</surname><given-names>C</given-names></name><name><surname>Wang</surname><given-names>H</given-names></name><name><surname>Fang</surname><given-names>L</given-names></name><name><surname>Zhao</surname><given-names>M</given-names></name></person-group><article-title>Static Measuring Model and Deadweight Compensation of a Stewart Platform Based force/torque Sensor</article-title><conf-name>Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems</conf-name><conf-loc>Beijing, China</conf-loc><conf-date>October 2006</conf-date><fpage>484</fpage><lpage>489</lpage></citation></ref>
<ref id="b45-sensors-10-10256"><label>45.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Chen</surname><given-names>GL</given-names></name><name><surname>Wang</surname><given-names>S</given-names></name><name><surname>Jin</surname><given-names>Z</given-names></name><name><surname>Guan</surname><given-names>X</given-names></name></person-group><article-title>Analysis of Sensitivity for Six-Axis Force/Torque Sensor Based on Stewart Platform Sensor Based on Stewart</article-title><conf-name>Proceedings of the International Conference on Mechatronics and Automation</conf-name><conf-loc>Harbin, China</conf-loc><conf-date>5–8 August 2007</conf-date><fpage>2668</fpage><lpage>2672</lpage></citation></ref>
<ref id="b46-sensors-10-10256"><label>46.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Frigola</surname><given-names>R</given-names></name><name><surname>Ros</surname><given-names>L</given-names></name><name><surname>Roure</surname><given-names>F</given-names></name><name><surname>Thomas</surname><given-names>F</given-names></name></person-group><article-title>A Wrench-Sensitive Touch Pad Based on a Parallel Structure</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Pasadena, CA, USA</conf-loc><conf-date>19–23 May 2008</conf-date><fpage>3449</fpage><lpage>3454</lpage></citation></ref>
<ref id="b47-sensors-10-10256"><label>47.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dafaoui</surname><given-names>EM</given-names></name><name><surname>Amirat</surname><given-names>Y</given-names></name><name><surname>Pontnau</surname><given-names>J</given-names></name><name><surname>Francois</surname><given-names>C</given-names></name></person-group><article-title>Analysis and Design of a Six-DOF Parallel Manipulator, Modeling, Singular Configurations, and Workspace</article-title><source>IEEE Trans. Rob. Autom</source><year>1998</year><volume>14</volume><fpage>78</fpage><lpage>92</lpage><pub-id pub-id-type="doi">10.1109/70.660846</pub-id></citation></ref>
<ref id="b48-sensors-10-10256"><label>48.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Gogu</surname><given-names>G</given-names></name></person-group><source>Structural Synthesis of Parallel Robots: Part 1: Methodology</source><publisher-name>Springer Verlag</publisher-name><publisher-loc>The Netherlands</publisher-loc><year>2008</year></citation></ref>
<ref id="b49-sensors-10-10256"><label>49.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hollerbach</surname><given-names>JM</given-names></name></person-group><article-title>A Recursive Lagrangian Formulation of Maniputator Dynamics and a Comparative Study of Dynamics Formulation Complexity</article-title><source>IEEE Trans Sys Man Cybern</source><year>1980</year><volume>10</volume><fpage>730</fpage><lpage>736</lpage><pub-id pub-id-type="doi">10.1109/TSMC.1980.4308393</pub-id></citation></ref>
<ref id="b50-sensors-10-10256"><label>50.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rodriguez</surname><given-names>G</given-names></name></person-group><article-title>Kalman Filtering, Smoothing, and Recursive Robot Arm Forward and Inverse Dynamics</article-title><source>IEEE J. Rob. Autom</source><year>1987</year><volume>3</volume><fpage>624</fpage><lpage>639</lpage><pub-id pub-id-type="doi">10.1109/JRA.1987.1087147</pub-id></citation></ref>
<ref id="b51-sensors-10-10256"><label>51.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Featherstone</surname><given-names>R</given-names></name><name><surname>Orin</surname><given-names>D</given-names></name></person-group><article-title>Robot Dynamics: Equations and Algorithms</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>San Francisco, CA, USA</conf-loc><conf-date>24–28 April 2000</conf-date><fpage>826</fpage><lpage>834</lpage></citation></ref>
<ref id="b52-sensors-10-10256"><label>52.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Caccavale</surname><given-names>F</given-names></name><name><surname>Siciliano</surname><given-names>B</given-names></name><name><surname>Villani</surname><given-names>L</given-names></name></person-group><article-title>The Tricept Robot: Dynamics and Impedance Control</article-title><source>IEEE-ASME Trans. Mech</source><year>2003</year><volume>8</volume><fpage>263</fpage><lpage>268</lpage><pub-id pub-id-type="doi">10.1109/TMECH.2003.812839</pub-id></citation></ref>
<ref id="b53-sensors-10-10256"><label>53.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Staicu</surname><given-names>S</given-names></name><name><surname>Zhang</surname><given-names>D</given-names></name></person-group><article-title>A Novel Dynamic Modelling Approach for Parallel Mechanisms Analysis</article-title><source>Rob. Comput. Integr. Manuf</source><year>2008</year><volume>24</volume><fpage>167</fpage><lpage>172</lpage><pub-id pub-id-type="doi">10.1016/j.rcim.2006.09.001</pub-id></citation></ref>
<ref id="b54-sensors-10-10256"><label>54.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Khoukhi</surname><given-names>A</given-names></name><name><surname>Baron</surname><given-names>L</given-names></name><name><surname>Balazinski</surname><given-names>M</given-names></name></person-group><article-title>Constrained Multi-Objective Trajectory Planning of Parallel Kinematic Machines</article-title><source>Robot. Comput. Integr. Manuf</source><year>2009</year><volume>25</volume><fpage>756</fpage><lpage>769</lpage><pub-id pub-id-type="doi">10.1016/j.rcim.2008.09.002</pub-id></citation></ref>
<ref id="b55-sensors-10-10256"><label>55.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Li</surname><given-names>YM</given-names></name><name><surname>Xu</surname><given-names>QS</given-names></name></person-group><article-title>Dynamic Modeling and Robust Control of a 3-PRC Translational Parallel Kinematic Machine</article-title><source>Robot. Comput. Integr. Manuf</source><year>2009</year><volume>25</volume><fpage>630</fpage><lpage>640</lpage><pub-id pub-id-type="doi">10.1016/j.rcim.2008.05.006</pub-id></citation></ref>
<ref id="b56-sensors-10-10256"><label>56.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lopes</surname><given-names>AM</given-names></name></person-group><article-title>Dynamic Modeling of a Stewart Platform using the Generalized Momentum Approach</article-title><source>Commun. Nonlinear Sci. Numer. Simul</source><year>2009</year><volume>14</volume><fpage>3389</fpage><lpage>3401</lpage><pub-id pub-id-type="doi">10.1016/j.cnsns.2009.01.001</pub-id></citation></ref>
<ref id="b57-sensors-10-10256"><label>57.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhu</surname><given-names>XC</given-names></name><name><surname>Tao</surname><given-names>GL</given-names></name><name><surname>Yao</surname><given-names>B</given-names></name><name><surname>Cao</surname><given-names>J</given-names></name></person-group><article-title>Integrated Direct/Indirect Adaptive Robust Posture Trajectory Tracking Control of a Parallel Manipulator Driven by Pneumatic Muscles</article-title><source>IEEE Trans. Control Syst. Technol</source><year>2009</year><volume>17</volume><fpage>576</fpage><lpage>588</lpage><pub-id pub-id-type="doi">10.1109/TCST.2008.2001715</pub-id></citation></ref>
<ref id="b58-sensors-10-10256"><label>58.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Fichter</surname><given-names>EF</given-names></name></person-group><article-title>A Stewart Platform-Based Manipulator: General Theory and Practical Construction</article-title><source>Int. J. Rob. Res</source><year>1986</year><volume>5</volume><fpage>157</fpage><lpage>182</lpage><pub-id pub-id-type="doi">10.1177/027836498600500216</pub-id></citation></ref>
<ref id="b59-sensors-10-10256"><label>59.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Merlet</surname><given-names>JP</given-names></name></person-group><article-title>An Algorithm for the Forward Kinematics of General 6 DOF Parallel Manipulators</article-title><source>Rapports de recherche-INRIA</source><year>1990</year><volume>1331</volume><fpage>1</fpage><lpage>27</lpage></citation></ref>
<ref id="b60-sensors-10-10256"><label>60.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Paul</surname><given-names>B</given-names></name><name><surname>Huston</surname><given-names>RL</given-names></name></person-group><article-title>Kinematics and Dynamics of Planar Machinery</article-title><source>J. Appl. Mech</source><year>1980</year><volume>47</volume><fpage>459</fpage></citation></ref>
<ref id="b61-sensors-10-10256"><label>61.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Innocenti</surname><given-names>C</given-names></name></person-group><article-title>Position Analysis in Analytical Form of the 7-Link Assur Kinematic Chain Featuring One Ternary Link Connected to Ternary Links Only</article-title><source>Mech. Mach. Theor</source><year>1997</year><volume>32</volume><fpage>501</fpage><lpage>509</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(96)00063-8</pub-id></citation></ref>
<ref id="b62-sensors-10-10256"><label>62.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wampler</surname><given-names>CW</given-names></name><name><surname>Morgan</surname><given-names>AP</given-names></name><name><surname>Sommese</surname><given-names>AJ</given-names></name></person-group><article-title>Numerical Continuation Methods for Solving Polynomial Systems Arising in Kinematics</article-title><source>J. Mech. Des</source><year>1990</year><volume>112</volume><fpage>1</fpage><lpage>10</lpage><pub-id pub-id-type="doi">10.1115/1.2912573</pub-id></citation></ref>
<ref id="b63-sensors-10-10256"><label>63.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Raghavan</surname><given-names>M</given-names></name></person-group><article-title>The Stewart Platform of General Geometry has 40 Configurations</article-title><source>J. Mech. Des</source><year>1993</year><volume>115</volume><fpage>1</fpage><lpage>6</lpage><pub-id pub-id-type="doi">10.1115/1.2919318</pub-id></citation></ref>
<ref id="b64-sensors-10-10256"><label>64.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lee</surname><given-names>TY</given-names></name><name><surname>Shim</surname><given-names>JK</given-names></name></person-group><article-title>Forward Kinematics of the General 6–6 Stewart Platform using Algebraic Elimination</article-title><source>Mech. Mach. Theor</source><year>2001</year><volume>36</volume><fpage>1073</fpage><lpage>1085</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(01)00034-9</pub-id></citation></ref>
<ref id="b65-sensors-10-10256"><label>65.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Nielsen</surname><given-names>J</given-names></name><name><surname>Roth</surname><given-names>B</given-names></name></person-group><article-title>Solving the input/output Problem for Planar Mechanisms</article-title><source>J. Mech. Des</source><year>1999</year><volume>121</volume><fpage>1</fpage><lpage>6</lpage><pub-id pub-id-type="doi">10.1115/1.2829422</pub-id></citation></ref>
<ref id="b66-sensors-10-10256"><label>66.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dhingra</surname><given-names>AK</given-names></name><name><surname>Almadi</surname><given-names>AN</given-names></name><name><surname>Kohli</surname><given-names>D</given-names></name></person-group><article-title>A Gröbner-Sylvester Hybrid Method for Closed-Form Displacement Analysis of Mechanisms</article-title><source>J. Mech. Des</source><year>2000</year><volume>122</volume><fpage>1</fpage><lpage>8</lpage><pub-id pub-id-type="doi">10.1115/1.533539</pub-id></citation></ref>
<ref id="b67-sensors-10-10256"><label>67.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>De Jalon</surname><given-names>JG</given-names></name><name><surname>Bayo</surname><given-names>E</given-names></name></person-group><source>Kinematic and Dynamic Simulation of Multibody System</source><publisher-name>Springer Verlag</publisher-name><publisher-loc>New York, NY, USA</publisher-loc><year>1994</year></citation></ref>
<ref id="b68-sensors-10-10256"><label>68.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Altuzarra</surname><given-names>O</given-names></name><name><surname>Salgado</surname><given-names>O</given-names></name><name><surname>Petuya</surname><given-names>V</given-names></name><name><surname>Hernández</surname><given-names>A</given-names></name></person-group><article-title>Point-Based Jacobian Formulation for Computational Kinematics of Manipulators</article-title><source>Mech. Mach. Theor</source><year>2006</year><volume>41</volume><fpage>1407</fpage><lpage>1423</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2006.01.011</pub-id></citation></ref>
<ref id="b69-sensors-10-10256"><label>69.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lipson</surname><given-names>H</given-names></name></person-group><article-title>A Relaxation Method for Simulating the Kinematics of Compound Nonlinear Mechanisms</article-title><source>J. Mech. Des</source><year>2006</year><volume>128</volume><fpage>1</fpage><lpage>10</lpage><pub-id pub-id-type="doi">10.1115/1.2158149</pub-id></citation></ref>
<ref id="b70-sensors-10-10256"><label>70.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bamberger</surname><given-names>H</given-names></name><name><surname>Shoham</surname><given-names>M</given-names></name></person-group><article-title>A Novel Six Degrees-of-Freedom Parallel Robot for MEMS Fabrication</article-title><source>IEEE Trans. Rob</source><year>2007</year><volume>23</volume><fpage>189</fpage><lpage>195</lpage><pub-id pub-id-type="doi">10.1109/TRO.2006.889493</pub-id></citation></ref>
<ref id="b71-sensors-10-10256"><label>71.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Taghirad</surname><given-names>HD</given-names></name><name><surname>Nahon</surname><given-names>MA</given-names></name></person-group><article-title>Forward Kinematics of a Macro-Micro Parallel Manipulator</article-title><conf-name>Proceedings of the IEEE/ASME International Conference on Advanced Intelligent Mechatronics</conf-name><conf-loc>Zurich, Switzerland</conf-loc><conf-date>4–7 September 2007</conf-date><fpage>84</fpage><lpage>89</lpage></citation></ref>
<ref id="b72-sensors-10-10256"><label>72.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Shimizu</surname><given-names>M</given-names></name><name><surname>Kakuya</surname><given-names>H</given-names></name><name><surname>Yoon</surname><given-names>WK</given-names></name><name><surname>Kitagaki</surname><given-names>K</given-names></name><name><surname>Kosuge</surname><given-names>K</given-names></name></person-group><article-title>Analytical Inverse Kinematic Computation for 7-DOF Redundant Manipulators with Joint Limits and its Application to Redundancy Resolution</article-title><source>IEEE Trans. Rob</source><year>2008</year><volume>24</volume><fpage>1131</fpage><lpage>1142</lpage><pub-id pub-id-type="doi">10.1109/TRO.2008.2003266</pub-id></citation></ref>
<ref id="b73-sensors-10-10256"><label>73.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Lu</surname><given-names>Y</given-names></name><name><surname>Shi</surname><given-names>Y</given-names></name><name><surname>Hu</surname><given-names>B</given-names></name></person-group><article-title>Kinematic Analysis of Two Novel 3UPU I and 3UPU II PKMs</article-title><source>Rob. Auton. Syst</source><year>2008</year><volume>56</volume><fpage>296</fpage><lpage>305</lpage><pub-id pub-id-type="doi">10.1016/j.robot.2007.09.005</pub-id></citation></ref>
<ref id="b74-sensors-10-10256"><label>74.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cheng</surname><given-names>HH</given-names></name><name><surname>Lee</surname><given-names>JJ</given-names></name><name><surname>Penkar</surname><given-names>R</given-names></name></person-group><article-title>Kinematic Analysis of a Hybrid Serial-and-Parallel-Driven Redundant Industrial Manipulator</article-title><source>Int. J. Robot. Autom</source><year>1995</year><volume>10</volume><fpage>159</fpage><lpage>166</lpage></citation></ref>
<ref id="b75-sensors-10-10256"><label>75.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kim</surname><given-names>WK</given-names></name><name><surname>Byun</surname><given-names>YK</given-names></name><name><surname>Cho</surname><given-names>HS</given-names></name></person-group><article-title>Closed-Form Forward-Position Solution for a 6-DoF 3-PPSP Parallel Mechanism and its Implementation</article-title><source>Int. J. Rob. Res</source><year>2001</year><volume>20</volume><fpage>85</fpage><lpage>99</lpage><pub-id pub-id-type="doi">10.1177/02783640122067282</pub-id></citation></ref>
<ref id="b76-sensors-10-10256"><label>76.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rao</surname><given-names>NM</given-names></name><name><surname>Rao</surname><given-names>KM</given-names></name></person-group><article-title>Dimensional Synthesis of a Spatial 3-RPS Parallel Manipulator for a Prescribed Range of Motion of Spherical Joints</article-title><source>Mech. Mach. Theor</source><year>2009</year><volume>44</volume><fpage>477</fpage><lpage>486</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2008.03.001</pub-id></citation></ref>
<ref id="b77-sensors-10-10256"><label>77.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Innocenti</surname><given-names>C</given-names></name><name><surname>Parenti-Castelli</surname><given-names>V</given-names></name></person-group><article-title>Closed-Form Direct Position Analysis of A 5–5 Parallel Mechanism</article-title><source>J. Mech. Des</source><year>1993</year><volume>115</volume><fpage>515</fpage><pub-id pub-id-type="doi">10.1115/1.2919220</pub-id></citation></ref>
<ref id="b78-sensors-10-10256"><label>78.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Innocenti</surname><given-names>C</given-names></name><name><surname>Parenti-Castelli</surname><given-names>V</given-names></name></person-group><article-title>Forward Kinematics of the General 6–6 Fully Parallel Mechanism: An Exhaustive Numerical Approach Via a Mono-Dimensional-Search Algorithm</article-title><source>J. Mech. Des</source><year>1993</year><volume>115</volume><fpage>932</fpage><pub-id pub-id-type="doi">10.1115/1.2919289</pub-id></citation></ref>
<ref id="b79-sensors-10-10256"><label>79.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Merlet</surname><given-names>JP</given-names></name></person-group><article-title>Closed-Form Resolution of the Direct Kinematics of Parallel Manipulators using Extra Sensors Data</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Atlanta, GA, USA</conf-loc><conf-date>2–6 May 1993</conf-date><fpage>200</fpage><lpage>204</lpage></citation></ref>
<ref id="b80-sensors-10-10256"><label>80.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Bonev</surname><given-names>IA</given-names></name><name><surname>Ryu</surname><given-names>J</given-names></name></person-group><article-title>A Simple New Closed-Form Solution of the Direct Kinematics using Three Linear Extra Sensors</article-title><conf-name>Proceedings of the IEEE/ASME International Conference on Advanced Intelligent Mechanisms</conf-name><conf-loc>Atlanta, GA, USA</conf-loc><year>1999</year><fpage>526</fpage><lpage>530</lpage></citation></ref>
<ref id="b81-sensors-10-10256"><label>81.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zou</surname><given-names>H</given-names></name><name><surname>Wang</surname><given-names>QY</given-names></name><name><surname>Li</surname><given-names>QM</given-names></name><name><surname>Zhang</surname><given-names>B</given-names></name></person-group><article-title>The Kinematics and Workspace Analyses of a Parallel Manipulator for Manufacturing</article-title><conf-name>Proceedings of the IEEE International Conference on Industrial Technology</conf-name><conf-loc>Shangai, China</conf-loc><conf-date>2–6 December 1996</conf-date><fpage>647</fpage><lpage>650</lpage></citation></ref>
<ref id="b82-sensors-10-10256"><label>82.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>K</given-names></name><name><surname>Fitzgerald</surname><given-names>JM</given-names></name><name><surname>Lewis</surname><given-names>FL</given-names></name></person-group><article-title>Kinematic Analysis of a Stewart Platform Manipulator</article-title><source>IEEE Trans. Ind. Electron</source><year>1993</year><volume>40</volume><fpage>282</fpage><lpage>293</lpage><pub-id pub-id-type="doi">10.1109/41.222651</pub-id></citation></ref>
<ref id="b83-sensors-10-10256"><label>83.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dasgupta</surname><given-names>B</given-names></name><name><surname>Mruthyunjaya</surname><given-names>TS</given-names></name></person-group><article-title>A Constructive Predictor-Corrector Algorithm for the Direct Position Kinematics Problem for a General 6-6 Stewart Platform</article-title><source>Mech. Mach. Theor</source><year>1996</year><volume>31</volume><fpage>799</fpage><lpage>811</lpage><pub-id pub-id-type="doi">10.1016/0094-114X(95)00106-9</pub-id></citation></ref>
<ref id="b84-sensors-10-10256"><label>84.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Ball</surname><given-names>RS</given-names></name></person-group><source>A Treatise on the Theory of Screws</source><publisher-name>Cambridge University Press</publisher-name><publisher-loc>Cambridge, UK</publisher-loc><year>1900</year></citation></ref>
<ref id="b85-sensors-10-10256"><label>85.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Hunt</surname><given-names>KH</given-names></name></person-group><source>Kinematic Geometry of Mechanisms</source><publisher-name>Oxford University Press</publisher-name><publisher-loc>Cambridge, UK</publisher-loc><year>1978</year></citation></ref>
<ref id="b86-sensors-10-10256"><label>86.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gallardo</surname><given-names>J</given-names></name><name><surname>Rico</surname><given-names>JM</given-names></name><name><surname>Caudillo</surname><given-names>M</given-names></name></person-group><article-title>Análisis Cinemático Directo De Un Manipulador Paralelo Esférico Asimétrico</article-title><source>Ing. Invest. Tecnol</source><year>2006</year><volume>7</volume><fpage>205</fpage><lpage>215</lpage></citation></ref>
<ref id="b87-sensors-10-10256"><label>87.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Husty</surname><given-names>ML</given-names></name></person-group><article-title>An Algorithm for Solving the Direct Kinematics of General Stewart-Gough Platforms</article-title><source>Mech. Mach. Theor</source><year>1996</year><volume>31</volume><fpage>365</fpage><lpage>379</lpage><pub-id pub-id-type="doi">10.1016/0094-114X(95)00091-C</pub-id></citation></ref>
<ref id="b88-sensors-10-10256"><label>88.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wen</surname><given-names>JTY</given-names></name><name><surname>Wilfinger</surname><given-names>LS</given-names></name></person-group><article-title>Kinematic Manipulability of General Constrained Rigid Multibody Systems</article-title><source>IEEE Trans. Rob. Autom</source><year>1999</year><volume>15</volume><fpage>558</fpage><lpage>567</lpage><pub-id pub-id-type="doi">10.1109/70.768187</pub-id></citation></ref>
<ref id="b89-sensors-10-10256"><label>89.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Martín del Brío</surname><given-names>B</given-names></name><name><surname>Sanz Molina</surname><given-names>A</given-names></name></person-group><source>Redes Neuronales y Sistemas Borrosos</source><edition>3rd ed</edition><publisher-name>Ra-Ma</publisher-name><publisher-loc>Madrid, Spain</publisher-loc><year>2006</year></citation></ref>
<ref id="b90-sensors-10-10256"><label>90.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Hilera</surname><given-names>JR</given-names></name><name><surname>Martínez</surname><given-names>VJ</given-names></name></person-group><source>Redes Neuronales Artificiales: Fundamentos, Modelos y Aplicaciones</source><publisher-name>Ra-ma</publisher-name><publisher-loc>Madrid, Spain</publisher-loc><year>1995</year></citation></ref>
<ref id="b91-sensors-10-10256"><label>91.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Geng</surname><given-names>Z</given-names></name><name><surname>Haynes</surname><given-names>L</given-names></name><name><surname>Inc</surname><given-names>IA</given-names></name><name><surname>Rockville</surname><given-names>MD</given-names></name></person-group><article-title>Neural Network Solution for the Forward Kinematics Problem of a Stewart Platform</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Sacramento, CA, USA</conf-loc><conf-date>9–11 April 1991</conf-date><fpage>2650</fpage><lpage>2655</lpage></citation></ref>
<ref id="b92-sensors-10-10256"><label>92.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Sadjadian</surname><given-names>H</given-names></name><name><surname>Taghirad</surname><given-names>HD</given-names></name></person-group><article-title>Numerical Methods for Computing the Forward Kinematics of a Redundant Parallel Manipulator</article-title><conf-name>Proceedings of the IEEE Conference on Mechatronics and Robotics</conf-name><conf-loc>Aachen, Germany</conf-loc><conf-date>September 2004</conf-date><fpage>557</fpage><lpage>562</lpage></citation></ref>
<ref id="b93-sensors-10-10256"><label>93.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Everett</surname><given-names>LJ</given-names></name><name><surname>Lin</surname><given-names>CY</given-names></name></person-group><article-title>Kinematic Calibration of Manipulators with Closed Loop Actuated Joints</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Philadelphia, PA, USA</conf-loc><conf-date>24–29 April 1988</conf-date><fpage>792</fpage><lpage>797</lpage></citation></ref>
<ref id="b94-sensors-10-10256"><label>94.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Roth</surname><given-names>ZS</given-names></name><name><surname>Mooring</surname><given-names>BW</given-names></name><name><surname>Ravani</surname><given-names>B</given-names></name></person-group><article-title>An Overview of Robot Calibration</article-title><source>IEEE J. Rob. Autom</source><year>1987</year><volume>3</volume><fpage>377</fpage><lpage>385</lpage><pub-id pub-id-type="doi">10.1109/JRA.1987.1087124</pub-id></citation></ref>
<ref id="b95-sensors-10-10256"><label>95.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Notash</surname><given-names>L</given-names></name><name><surname>Podhorodeski</surname><given-names>RP</given-names></name></person-group><article-title>Kinematic Calibration of Parallel Manipulators</article-title><conf-name>Proceedings of the IEEE International Conference on Systems, Man and Cybernetics</conf-name><comment>Intelligent Systems for the 21st Century</comment><conf-loc>Vancouver, BC, Canada</conf-loc><conf-date>22–25 October 1995</conf-date><fpage>3310</fpage><lpage>3315</lpage></citation></ref>
<ref id="b96-sensors-10-10256"><label>96.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sommer</surname><given-names>HJ</given-names></name><name><surname>Miller</surname><given-names>NR</given-names></name></person-group><article-title>A Technique for the Calibration of Instrumented Spatial Linkages used for Biomechanical Kinematic Measurements</article-title><source>J. Biomech</source><year>1981</year><volume>14</volume><fpage>91</fpage><lpage>98</lpage><pub-id pub-id-type="doi">10.1016/0021-9290(81)90168-8</pub-id><pub-id pub-id-type="pmid">7240271</pub-id></citation></ref>
<ref id="b97-sensors-10-10256"><label>97.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Everett</surname><given-names>L</given-names></name><name><surname>Driels</surname><given-names>M</given-names></name><name><surname>Mooring</surname><given-names>B</given-names></name></person-group><article-title>Kinematic Modelling for Robot Calibration</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Raleigh, NC, USA</conf-loc><conf-date>April 1987</conf-date><fpage>183</fpage><lpage>189</lpage></citation></ref>
<ref id="b98-sensors-10-10256"><label>98.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Denavit</surname><given-names>J</given-names></name><name><surname>Hartenberg</surname><given-names>RS</given-names></name></person-group><article-title>A Kinematic Notation for Lower-Pair Mechanisms Based on Matrices</article-title><source>Trans. ASME J. Appl. Mech</source><year>1955</year><volume>22</volume><fpage>215</fpage><lpage>221</lpage></citation></ref>
<ref id="b99-sensors-10-10256"><label>99.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Hayati</surname><given-names>SA</given-names></name><name><surname>Mirmirani</surname><given-names>M</given-names></name></person-group><article-title>A Software for Robot Geometry Parameter Estimation</article-title><conf-name>Presented at the Robots West Conference</conf-name><conf-loc>Anaheim, CA, USA</conf-loc><conf-date>November 1984</conf-date></citation></ref>
<ref id="b100-sensors-10-10256"><label>100.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Hsu</surname><given-names>TW</given-names></name><name><surname>Everett</surname><given-names>LJ</given-names></name></person-group><article-title>Identification of the Kinematic Parameters of a Robot Manipulator for Positional Accuracy Improvement</article-title><conf-name>Proceedings of the Computation in Engineering Conference</conf-name><conf-loc>Boston, MA, USA</conf-loc><conf-date>August 1985</conf-date><fpage>263</fpage><lpage>267</lpage></citation></ref>
<ref id="b101-sensors-10-10256"><label>101.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Mooring</surname><given-names>BW</given-names></name></person-group><article-title>The Effect of Joint Axis Misalignment on Robot Positioning Accuracy</article-title><conf-name>Proceedings of the International Computers in Engineering Conference and Exhibit</conf-name><conf-loc>Chicago, IL, USA</conf-loc><conf-date>August 1983</conf-date><fpage>151</fpage><lpage>155</lpage></citation></ref>
<ref id="b102-sensors-10-10256"><label>102.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Stone</surname><given-names>H</given-names></name><name><surname>Sanderson</surname><given-names>A</given-names></name><name><surname>Neuman</surname><given-names>C</given-names></name></person-group><article-title>Arm Signature Identification</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>San Francisco, CA, USA</conf-loc><conf-date>7–10 April 1986</conf-date><fpage>41</fpage><lpage>48</lpage></citation></ref>
<ref id="b103-sensors-10-10256"><label>103.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Wang</surname><given-names>J</given-names></name><name><surname>Masory</surname><given-names>O</given-names></name></person-group><article-title>On the Accuracy of a Stewart Platform—Part I: The Effect of Manufacturing Tolerances</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Atlanta, GA, USA</conf-loc><conf-date>2–6 May 1993</conf-date><fpage>114</fpage><lpage>120</lpage></citation></ref>
<ref id="b104-sensors-10-10256"><label>104.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Masory</surname><given-names>O</given-names></name><name><surname>Wang</surname><given-names>J</given-names></name><name><surname>Zhuang</surname><given-names>HQ</given-names></name></person-group><article-title>On the Accuracy of a Stewart Platform—Part II: Kinematic Calibration and Compensation</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Atlanta, GA, USA</conf-loc><conf-date>2–6 May 1993</conf-date><fpage>725</fpage><lpage>731</lpage></citation></ref>
<ref id="b105-sensors-10-10256"><label>105.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ren</surname><given-names>XD</given-names></name><name><surname>Feng</surname><given-names>ZR</given-names></name><name><surname>Su</surname><given-names>CP</given-names></name></person-group><article-title>A New Calibration Method for Parallel Kinematics Machine Tools using Orientation Constraint</article-title><source>Int. J. Mach. Tools Manuf</source><year>2009</year><volume>49</volume><fpage>708</fpage><lpage>721</lpage><pub-id pub-id-type="doi">10.1016/j.ijmachtools.2009.03.004</pub-id></citation></ref>
<ref id="b106-sensors-10-10256"><label>106.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Caenen</surname><given-names>JL</given-names></name><name><surname>Angue</surname><given-names>JC</given-names></name><name><surname>de Douai</surname><given-names>EM</given-names></name></person-group><article-title>Identification of Geometric and Non Geometric Parameters of Robots</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Cincinnati, OH, USA</conf-loc><conf-date>13–18 May 1990</conf-date><fpage>1032</fpage><lpage>1037</lpage></citation></ref>
<ref id="b107-sensors-10-10256"><label>107.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ahmad</surname><given-names>S</given-names></name></person-group><article-title>Analysis of Robot Drive Train Errors, their Static Effects, and their Compensations</article-title><source>IEEE J. Rob. Autom</source><year>1988</year><volume>4</volume><fpage>117</fpage><lpage>128</lpage><pub-id pub-id-type="doi">10.1109/56.2075</pub-id></citation></ref>
<ref id="b108-sensors-10-10256"><label>108.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Renders</surname><given-names>JM</given-names></name><name><surname>Rossignol</surname><given-names>E</given-names></name><name><surname>Becquet</surname><given-names>M</given-names></name><name><surname>Hanus</surname><given-names>R</given-names></name></person-group><article-title>Kinematic Calibration and Geometrical Parameter Identification for Robots</article-title><source>IEEE Trans. Rob. Autom</source><year>1991</year><volume>7</volume><fpage>721</fpage><lpage>732</lpage><pub-id pub-id-type="doi">10.1109/70.105381</pub-id></citation></ref>
<ref id="b109-sensors-10-10256"><label>109.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Judd</surname><given-names>RP</given-names></name><name><surname>Knasinski</surname><given-names>AB</given-names></name></person-group><article-title>A Technique to Calibrate Industrial Robots with Experimental Verification</article-title><source>IEEE Trans. Rob. Autom</source><year>1990</year><volume>6</volume><fpage>20</fpage><lpage>30</lpage><pub-id pub-id-type="doi">10.1109/70.88114</pub-id></citation></ref>
<ref id="b110-sensors-10-10256"><label>110.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hollerbach</surname><given-names>JM</given-names></name><name><surname>Wampler</surname><given-names>CW</given-names></name></person-group><article-title>The Calibration Index and Taxonomy for Robot Kinematic Calibration Methods</article-title><source>Int. J. Robotics Res</source><year>1996</year><volume>15</volume><fpage>573</fpage><lpage>591</lpage><pub-id pub-id-type="doi">10.1177/027836499601500604</pub-id></citation></ref>
<ref id="b111-sensors-10-10256"><label>111.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Gong</surname><given-names>C</given-names></name><name><surname>Yuan</surname><given-names>J</given-names></name><name><surname>Ni</surname><given-names>J</given-names></name></person-group><article-title>Non Geometric Error Identification and Compensation for Robotic System by Inverse Calibration</article-title><source>Int. J. Mach. Tools Manuf</source><year>2000</year><volume>40</volume><fpage>2119</fpage><lpage>2137</lpage><pub-id pub-id-type="doi">10.1016/S0890-6955(00)00023-7</pub-id></citation></ref>
<ref id="b112-sensors-10-10256"><label>112.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Everett</surname><given-names>LJ</given-names></name><name><surname>Suryohadiprojo</surname><given-names>AH</given-names></name></person-group><article-title>A Study of Kinematic Models for Forward Calibration of Manipulators</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Philadelphia, PA, USA</conf-loc><conf-date>24–29 April 1988</conf-date><fpage>798</fpage><lpage>800</lpage></citation></ref>
<ref id="b113-sensors-10-10256"><label>113.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chen</surname><given-names>J</given-names></name><name><surname>Chao</surname><given-names>LM</given-names></name></person-group><article-title>Positioning Error Analysis for Robot Manipulators with all Rotary Joints</article-title><source>IEEE J. Rob. Autom</source><year>1987</year><volume>3</volume><fpage>539</fpage><lpage>545</lpage><pub-id pub-id-type="doi">10.1109/JRA.1987.1087144</pub-id></citation></ref>
<ref id="b114-sensors-10-10256"><label>114.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Wampler</surname><given-names>CW</given-names></name><name><surname>Hollerbach</surname><given-names>JM</given-names></name><name><surname>Arai</surname><given-names>T</given-names></name></person-group><article-title>An Implicit Loop Method for Kinematic Calibration and its Application to Closed-Chain Mechanisms</article-title><source>IEEE Trans. Rob. Autom</source><year>1995</year><volume>11</volume><fpage>710</fpage><lpage>724</lpage><pub-id pub-id-type="doi">10.1109/70.466613</pub-id></citation></ref>
<ref id="b115-sensors-10-10256"><label>115.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhuang</surname><given-names>H</given-names></name><name><surname>Yan</surname><given-names>J</given-names></name><name><surname>Masory</surname><given-names>O</given-names></name></person-group><article-title>Calibration of Stewart Platforms and Other Parallel Manipulators by Minimizing Inverse Kinematic Residuals</article-title><source>J. Robot. Syst</source><year>1998</year><volume>15</volume><fpage>395</fpage><lpage>405</lpage><pub-id pub-id-type="doi">10.1002/(SICI)1097-4563(199807)15:7&lt;395::AID-ROB2&gt;3.0.CO;2-H</pub-id></citation></ref>
<ref id="b116-sensors-10-10256"><label>116.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Daney</surname><given-names>D</given-names></name><name><surname>Emiris</surname><given-names>IZ</given-names></name></person-group><article-title>Robust Parallel Robot Calibration with Partial Information</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics</conf-name><conf-loc>Seoul, South Korea</conf-loc><conf-date>23–25 May 2001</conf-date><fpage>3262</fpage><lpage>3267</lpage></citation></ref>
<ref id="b117-sensors-10-10256"><label>117.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Daney</surname><given-names>D</given-names></name><name><surname>Papegay</surname><given-names>Y</given-names></name><name><surname>Neumaier</surname><given-names>A</given-names></name></person-group><article-title>Interval Methods for Certification of the Kinematic Calibration of Parallel Robots</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>New Orleans, LA, USA</conf-loc><conf-date>28–30 April 2004</conf-date><fpage>1913</fpage><lpage>1918</lpage></citation></ref>
<ref id="b118-sensors-10-10256"><label>118.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sansoni</surname><given-names>G</given-names></name><name><surname>Trebeschi</surname><given-names>M</given-names></name><name><surname>Docchio</surname><given-names>F</given-names></name></person-group><article-title>State-of-the-Art and Applications of 3D Imaging Sensors in Industry, Cultural Heritage, Medicine, and Criminal Investigation</article-title><source>Sensors</source><year>2009</year><volume>9</volume><fpage>568</fpage><lpage>601</lpage><pub-id pub-id-type="doi">10.3390/s90100568</pub-id><pub-id pub-id-type="pmid">22389618</pub-id></citation></ref>
<ref id="b119-sensors-10-10256"><label>119.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>García</surname><given-names>GJ</given-names></name><name><surname>Corrales</surname><given-names>JA</given-names></name><name><surname>Pomares</surname><given-names>J</given-names></name><name><surname>Torres</surname><given-names>F</given-names></name></person-group><article-title>Survey of Visual and force/tactile Control of Robots for Physical Interaction in Spain</article-title><source>Sensors</source><year>2009</year><volume>9</volume><fpage>9689</fpage><lpage>9733</lpage><pub-id pub-id-type="doi">10.3390/s91209689</pub-id><pub-id pub-id-type="pmid">22303146</pub-id></citation></ref>
<ref id="b120-sensors-10-10256"><label>120.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Everett</surname><given-names>LJ</given-names></name><name><surname>Ives</surname><given-names>TW</given-names></name></person-group><article-title>A Sensor used for Measurements in the Calibration of Production Robots</article-title><source>IEEE Trans. Rob. Autom</source><year>2002</year><volume>12</volume><fpage>121</fpage><lpage>125</lpage></citation></ref>
<ref id="b121-sensors-10-10256"><label>121.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname><given-names>G</given-names></name><name><surname>Chen</surname><given-names>IM</given-names></name><name><surname>Yeo</surname><given-names>SH</given-names></name><name><surname>Lim</surname><given-names>WK</given-names></name></person-group><article-title>Simultaneous Base and Tool Calibration for Self-Calibrated Parallel Robots</article-title><source>Robotica</source><year>2002</year><volume>20</volume><fpage>367</fpage><lpage>374</lpage></citation></ref>
<ref id="b122-sensors-10-10256"><label>122.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hesselbach</surname><given-names>J</given-names></name><name><surname>Bier</surname><given-names>C</given-names></name><name><surname>Pietsch</surname><given-names>I</given-names></name><name><surname>Plitea</surname><given-names>N</given-names></name><name><surname>Büttgenbach</surname><given-names>S</given-names></name><name><surname>Wogersien</surname><given-names>A</given-names></name><name><surname>Güttler</surname><given-names>J</given-names></name></person-group><article-title>Passive-Joint Sensors for Parallel Robots</article-title><source>Mechatronics</source><year>2005</year><volume>15</volume><fpage>43</fpage><lpage>65</lpage><pub-id pub-id-type="doi">10.1016/j.mechatronics.2004.07.004</pub-id></citation></ref>
<ref id="b123-sensors-10-10256"><label>123.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hollerbach</surname><given-names>JM</given-names></name><name><surname>Lokhorst</surname><given-names>DM</given-names></name></person-group><article-title>Closed-Loop Kinematic Calibration of the Rsi 6-Dof Hand Controller</article-title><source>IEEE Trans. Rob. Autom</source><year>1995</year><volume>11</volume><fpage>352</fpage><lpage>359</lpage><pub-id pub-id-type="doi">10.1109/70.388777</pub-id></citation></ref>
<ref id="b124-sensors-10-10256"><label>124.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Ryu</surname><given-names>J</given-names></name><name><surname>Rauf</surname><given-names>A</given-names></name></person-group><article-title>A New Method for Fully Autonomous Calibration of Parallel Manipulators using a Constraint Link</article-title><conf-name>Proceedings of the IEEE/ASME International Conference on Advanced Intelligent Mechatronics</conf-name><conf-loc>Como, Italy</conf-loc><conf-date>8–12 July 2001</conf-date><fpage>141</fpage><lpage>146</lpage></citation></ref>
<ref id="b125-sensors-10-10256"><label>125.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Besnard</surname><given-names>S</given-names></name><name><surname>Khalil</surname><given-names>W</given-names></name></person-group><article-title>Identifiable Parameters for Parallel Robots Kinematic Calibration</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Seoul, South Korea</conf-loc><conf-date>23–25 May 2001</conf-date><fpage>2859</fpage><lpage>2866</lpage></citation></ref>
<ref id="b126-sensors-10-10256"><label>126.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Rauf</surname><given-names>A</given-names></name><name><surname>Ryu</surname><given-names>J</given-names></name></person-group><article-title>Fully Autonomous Calibration of Parallel Manipulators by Imposing Position Constraint</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Seoul, South Korea</conf-loc><conf-date>21–26 May 2001</conf-date><fpage>2389</fpage><lpage>2394</lpage></citation></ref>
<ref id="b127-sensors-10-10256"><label>127.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chiu</surname><given-names>YJ</given-names></name><name><surname>Perng</surname><given-names>MH</given-names></name></person-group><article-title>Self-Calibration of a General Hexapod Manipulator with Enhanced Precision in 5-DOF Motions</article-title><source>Mech. Mach. Theor</source><year>2004</year><volume>39</volume><fpage>1</fpage><lpage>23</lpage><pub-id pub-id-type="doi">10.1016/S0094-114X(03)00101-0</pub-id></citation></ref>
<ref id="b128-sensors-10-10256"><label>128.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Ren</surname><given-names>X</given-names></name><name><surname>Feng</surname><given-names>Z</given-names></name><name><surname>Su</surname><given-names>C</given-names></name></person-group><article-title>Kinematic Calibration of Parallel Robots using Orientation Constraint</article-title><conf-name>Proceedings of the IEEE International Symposium on Industrial Electronics</conf-name><conf-loc>Cambridge, UK</conf-loc><conf-date>30 June–2 July 2008</conf-date><fpage>1435</fpage><lpage>1440</lpage></citation></ref>
<ref id="b129-sensors-10-10256"><label>129.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Whitney</surname><given-names>DE</given-names></name><name><surname>Lozinski</surname><given-names>CA</given-names></name><name><surname>Rourke</surname><given-names>JM</given-names></name></person-group><article-title>Industrial Robot Forward Calibration Method and Results</article-title><source>J. Dyn. Syst. Meas. Control</source><year>1986</year><volume>108</volume><fpage>1</fpage><lpage>8</lpage><pub-id pub-id-type="doi">10.1115/1.3143737</pub-id></citation></ref>
<ref id="b130-sensors-10-10256"><label>130.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Besnard</surname><given-names>S</given-names></name><name><surname>Khalil</surname><given-names>W</given-names></name><name><surname>de Nantes</surname><given-names>EC</given-names></name></person-group><article-title>Calibration of Parallel Robots using Two Inclinometers</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Detroit, MI, USA</conf-loc><conf-date>10–15 May 1999</conf-date><fpage>1758</fpage><lpage>1763</lpage></citation></ref>
<ref id="b131-sensors-10-10256"><label>131.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rauf</surname><given-names>A</given-names></name><name><surname>Pervez</surname><given-names>A</given-names></name><name><surname>Ryu</surname><given-names>J</given-names></name><name><surname>Complex</surname><given-names>I</given-names></name><name><surname>Islamabad</surname><given-names>P</given-names></name></person-group><article-title>Experimental Results on Kinematic Calibration of Parallel Manipulators Using a Partial Pose Measurement Device</article-title><source>IEEE Trans. Rob</source><year>2006</year><volume>22</volume><fpage>379</fpage><lpage>384</lpage><pub-id pub-id-type="doi">10.1109/TRO.2006.862493</pub-id></citation></ref>
<ref id="b132-sensors-10-10256"><label>132.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Renaud</surname><given-names>P</given-names></name><name><surname>Andreff</surname><given-names>N</given-names></name><name><surname>Lavest</surname><given-names>JM</given-names></name><name><surname>Dhome</surname><given-names>M</given-names></name></person-group><article-title>Simplifying the Kinematic Calibration of Parallel Mechanisms using Vision-Based Metrology</article-title><source>IEEE Trans. Rob</source><year>2006</year><volume>22</volume><fpage>12</fpage><lpage>22</lpage><pub-id pub-id-type="doi">10.1109/TRO.2005.861482</pub-id></citation></ref>
<ref id="b133-sensors-10-10256"><label>133.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Koseki</surname><given-names>Y</given-names></name><name><surname>Arai</surname><given-names>T</given-names></name><name><surname>Sugimoto</surname><given-names>K</given-names></name><name><surname>Takatuji</surname><given-names>T</given-names></name><name><surname>Goto</surname><given-names>M</given-names></name></person-group><article-title>Design and Accuracy Evaluation of High-Speed and High Precision Parallel Mechanism</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Leuven, Belgium</conf-loc><conf-date>16–20 May 1998</conf-date><fpage>1340</fpage><lpage>1345</lpage></citation></ref>
<ref id="b134-sensors-10-10256"><label>134.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Meng</surname><given-names>G</given-names></name><name><surname>Tiemin</surname><given-names>L</given-names></name><name><surname>Wensheng</surname><given-names>Y</given-names></name></person-group><article-title>Calibration Method and Experiment of Stewart Platform using a Laser Tracker</article-title><conf-name>Proceedings of the IEEE International Conference on Systems, Man and Cybernetics</conf-name><conf-loc>Virginia, USA</conf-loc><conf-date>5–8 October 2003</conf-date><fpage>2797</fpage><lpage>2802</lpage></citation></ref>
<ref id="b135-sensors-10-10256"><label>135.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Daney</surname><given-names>D</given-names></name></person-group><article-title>Kinematic Calibration of the Gough Platform</article-title><source>Robotica</source><year>2003</year><volume>21</volume><fpage>677</fpage><lpage>690</lpage><pub-id pub-id-type="doi">10.1017/S0263574703005083</pub-id></citation></ref>
<ref id="b136-sensors-10-10256"><label>136.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Cong</surname><given-names>D</given-names></name><name><surname>Yu</surname><given-names>D</given-names></name><name><surname>Han</surname><given-names>J</given-names></name></person-group><article-title>Kinematic Calibration of Parallel Robots using CMM</article-title><conf-name>Proceedings of the the Sixth World Congress on Intelligent Control and Automation</conf-name><conf-loc>Dalian, China</conf-loc><conf-date>21–23 June 2006</conf-date><fpage>8514</fpage><lpage>8518</lpage></citation></ref>
<ref id="b137-sensors-10-10256"><label>137.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Yu</surname><given-names>D</given-names></name><name><surname>Han</surname><given-names>J</given-names></name></person-group><article-title>Kinematic Calibration of Parallel Robots</article-title><conf-name>Proceedings of the IEEE International Conference Mechatronics and Automation</conf-name><conf-loc>Niagara Falls, ON, Canada</conf-loc><conf-date>29 July–1 August 2005</conf-date><fpage>521</fpage><lpage>525</lpage></citation></ref>
<ref id="b138-sensors-10-10256"><label>138.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Renaud</surname><given-names>P</given-names></name><name><surname>Andreff</surname><given-names>N</given-names></name><name><surname>Martinet</surname><given-names>P</given-names></name><name><surname>Gogu</surname><given-names>G</given-names></name></person-group><article-title>Kinematic Calibration of Parallel Mechanisms: A Novel Approach using Legs Observation</article-title><source>IEEE Trans. Rob</source><year>2005</year><volume>21</volume><fpage>529</fpage><lpage>538</lpage><pub-id pub-id-type="doi">10.1109/TRO.2005.847606</pub-id></citation></ref>
<ref id="b139-sensors-10-10256"><label>139.</label><citation citation-type="book"><person-group person-group-type="author"><name><surname>Last</surname><given-names>P</given-names></name><name><surname>Raatz</surname><given-names>A</given-names></name><name><surname>Hesselbach</surname><given-names>J</given-names></name></person-group><article-title>Singularity-Based Calibration—A Novel Approach for Absolute-Accuracy Enhancement of Parallel Robots</article-title><source>Robot Manipulators New Achievements</source><person-group person-group-type="editor"><name><surname>Lazinica</surname><given-names>A</given-names></name><name><surname>Kawai</surname><given-names>H</given-names></name></person-group><publisher-name>Intech</publisher-name><year>2010</year><fpage>93</fpage><lpage>106</lpage></citation></ref>
<ref id="b140-sensors-10-10256"><label>140.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Driels</surname><given-names>MR</given-names></name><name><surname>Pathre</surname><given-names>US</given-names></name></person-group><article-title>Significance of Observation Strategy on the Design of Robot Calibration Experiments</article-title><source>J. Robot. Syst</source><year>1990</year><volume>7</volume><fpage>197</fpage><lpage>223</lpage><pub-id pub-id-type="doi">10.1002/rob.4620070206</pub-id></citation></ref>
<ref id="b141-sensors-10-10256"><label>141.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Nahvi</surname><given-names>A</given-names></name><name><surname>Hollerbach</surname><given-names>JM</given-names></name><name><surname>Hayward</surname><given-names>V</given-names></name></person-group><article-title>Calibration of a Parallel Robot using Multiple Kinematic Closed Loops</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>San Diego, CA, USA</conf-loc><conf-date>8–13 May 1994</conf-date><fpage>407</fpage><lpage>412</lpage></citation></ref>
<ref id="b142-sensors-10-10256"><label>142.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Daney</surname><given-names>D</given-names></name><name><surname>Emiris</surname><given-names>IZ</given-names></name></person-group><article-title>Algebraic Elimination for Parallel Robot Calibration</article-title><conf-name>Proceedings of the 11 World Congress in Mechanism and Machine Science</conf-name><conf-loc>Tianjin, China</conf-loc><conf-date>1–4 April 2004</conf-date><fpage>1</fpage><lpage>5</lpage></citation></ref>
<ref id="b143-sensors-10-10256"><label>143.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname><given-names>TA</given-names></name><name><surname>Chetwynd</surname><given-names>DG</given-names></name><name><surname>Whitehouse</surname><given-names>DJ</given-names></name><name><surname>Wang</surname><given-names>JS</given-names></name></person-group><article-title>A General and Novel Approach for Parameter Identification of 6-DOF Parallel Kinematic Machines</article-title><source>Mech. Mach. Theor</source><year>2005</year><volume>40</volume><fpage>219</fpage><lpage>239</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2004.06.009</pub-id></citation></ref>
<ref id="b144-sensors-10-10256"><label>144.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhuang</surname><given-names>H</given-names></name><name><surname>Roth</surname><given-names>ZS</given-names></name></person-group><article-title>A Linear Solution to the Kinematic Parameter-Identification of Robot Manipulators</article-title><source>IEEE Trans. Rob. Autom</source><year>1993</year><volume>9</volume><fpage>174</fpage><lpage>185</lpage><pub-id pub-id-type="doi">10.1109/70.238281</pub-id></citation></ref>
<ref id="b145-sensors-10-10256"><label>145.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Borm</surname><given-names>JH</given-names></name><name><surname>Meng</surname><given-names>CH</given-names></name></person-group><article-title>Determination of Optimal Measurement Configurations for Robot Calibration Based on Observability Measure</article-title><source>Int. J. Rob. Res</source><year>1991</year><volume>10</volume><fpage>51</fpage><lpage>63</lpage><pub-id pub-id-type="doi">10.1177/027836499101000106</pub-id></citation></ref>
<ref id="b146-sensors-10-10256"><label>146.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Sun</surname><given-names>Y</given-names></name><name><surname>Hollerbach</surname><given-names>J</given-names></name></person-group><article-title>Observability Index Selection for Robot Calibration</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Pasadena, CA, USA</conf-loc><conf-date>19–23 May 2008</conf-date><fpage>831</fpage><lpage>836</lpage></citation></ref>
<ref id="b147-sensors-10-10256"><label>147.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Agheli</surname><given-names>MM</given-names></name><name><surname>Nategh</surname><given-names>MJ</given-names></name></person-group><article-title>Identifying the Kinematic Parameters of Hexapod Machine Tool</article-title><source>Int. J. Mech. Syst. Sci. Eng</source><year>2009</year><volume>1</volume><fpage>380</fpage><lpage>385</lpage></citation></ref>
<ref id="b148-sensors-10-10256"><label>148.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Bai</surname><given-names>S</given-names></name><name><surname>Teo</surname><given-names>MY</given-names></name></person-group><article-title>Kinematic Calibration and Pose Measurement of a Medical Parallel Manipulator by Optical Position Sensors</article-title><source>J. Robot. Syst</source><year>2003</year><volume>20</volume><fpage>201</fpage><lpage>209</lpage><pub-id pub-id-type="doi">10.1002/rob.10081</pub-id></citation></ref>
<ref id="b149-sensors-10-10256"><label>149.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Horne</surname><given-names>A</given-names></name><name><surname>Notash</surname><given-names>L</given-names></name></person-group><article-title>Pose Selection for the Kinematic Calibration of a Prototyped 4 Degrees of Freedom Manipulator</article-title><source>Trans. Can. Soc. Mech. Eng</source><year>2009</year><volume>33</volume><fpage>619</fpage><lpage>632</lpage></citation></ref>
<ref id="b150-sensors-10-10256"><label>150.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Santolaria</surname><given-names>J</given-names></name><name><surname>Guillomía</surname><given-names>D</given-names></name><name><surname>Cajal</surname><given-names>C</given-names></name><name><surname>Albajez</surname><given-names>JA</given-names></name><name><surname>Aguilar</surname><given-names>JJ</given-names></name></person-group><article-title>Modelling and Calibration Technique of Laser Triangulation Sensors for Integration in Robot Arms and Articulated Arm Coordinate Measuring Machines</article-title><source>Sensors</source><year>2009</year><volume>9</volume><fpage>7374</fpage><lpage>7396</lpage><pub-id pub-id-type="doi">10.3390/s90907374</pub-id><pub-id pub-id-type="pmid">22400001</pub-id></citation></ref>
<ref id="b151-sensors-10-10256"><label>151.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Goswami</surname><given-names>A</given-names></name><name><surname>Quaid</surname><given-names>A</given-names></name><name><surname>Peshkin</surname><given-names>M</given-names></name></person-group><article-title>Complete Parameter-Identification of a Robot from Partial Pose Information</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Atlanta, CA, USA</conf-loc><conf-date>2–6 May 1993</conf-date><fpage>168</fpage><lpage>173</lpage></citation></ref>
<ref id="b152-sensors-10-10256"><label>152.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Zhuang</surname><given-names>HQ</given-names></name></person-group><article-title>Self-Calibration of Parallel Mechanisms with a Case Study on Stewart Platforms</article-title><source>IEEE Trans. Rob. Autom</source><year>1997</year><volume>13</volume><fpage>387</fpage><lpage>397</lpage><pub-id pub-id-type="doi">10.1109/70.585901</pub-id></citation></ref>
<ref id="b153-sensors-10-10256"><label>153.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Levenberg</surname><given-names>K</given-names></name></person-group><article-title>A Method for the Solution of Certain Non-Linear Problems in Least Squares</article-title><source>Quart. Appl. Math</source><year>1944</year><volume>2</volume><fpage>164</fpage><lpage>168</lpage></citation></ref>
<ref id="b154-sensors-10-10256"><label>154.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Marquardt</surname><given-names>DW</given-names></name></person-group><article-title>An Algorithm for Least-Squares Estimation of Non Linear Parameters</article-title><source>J. Soc. Ind. Appl. Math</source><year>1963</year><volume>11</volume><fpage>431</fpage><lpage>441</lpage><pub-id pub-id-type="doi">10.1137/0111030</pub-id></citation></ref>
<ref id="b155-sensors-10-10256"><label>155.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Khalil</surname><given-names>W</given-names></name><name><surname>Besnard</surname><given-names>S</given-names></name></person-group><article-title>Self Calibration of Stewart-Gough Parallel Robots without Extra Sensors</article-title><source>IEEE Trans. Rob. Autom</source><year>1999</year><volume>15</volume><fpage>1116</fpage><lpage>1121</lpage><pub-id pub-id-type="doi">10.1109/70.817674</pub-id></citation></ref>
<ref id="b156-sensors-10-10256"><label>156.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Patel</surname><given-names>AJ</given-names></name><name><surname>Ehmann</surname><given-names>KF</given-names></name></person-group><article-title>Calibration of a Hexapod Machine Tool using a Redundant Leg</article-title><source>Int. J. Mach. Tools Manuf</source><year>2000</year><volume>40</volume><fpage>489</fpage><lpage>512</lpage><pub-id pub-id-type="doi">10.1016/S0890-6955(99)00081-4</pub-id></citation></ref>
<ref id="b157-sensors-10-10256"><label>157.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Daney</surname><given-names>D</given-names></name><name><surname>Lorraine</surname><given-names>I</given-names></name><name><surname>Loria</surname><given-names>VLN</given-names></name></person-group><article-title>Optimal Measurement Configurations for Gough Platform Calibration</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Washington, DC, USA</conf-loc><conf-date>11–15 May 2002</conf-date><fpage>147</fpage><lpage>152</lpage></citation></ref>
<ref id="b158-sensors-10-10256"><label>158.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kim</surname><given-names>TS</given-names></name><name><surname>Park</surname><given-names>KW</given-names></name><name><surname>Lee</surname><given-names>MK</given-names></name></person-group><article-title>Study on Observability of a Parallel-Typed Machining Center using a Single Planar Table and Digital Indicators</article-title><source>Mech. Mach. Theor</source><year>2006</year><volume>41</volume><fpage>1147</fpage><lpage>1156</lpage><pub-id pub-id-type="doi">10.1016/j.mechmachtheory.2005.12.005</pub-id></citation></ref>
<ref id="b159-sensors-10-10256"><label>159.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cui</surname><given-names>HL</given-names></name><name><surname>Zhu</surname><given-names>ZQ</given-names></name><name><surname>Gan</surname><given-names>ZX</given-names></name><name><surname>Brogardh</surname><given-names>T</given-names></name></person-group><article-title>Kinematic Analysis and Error Modeling of TAU Parallel Robot</article-title><source>Robot. Comput. Integr. Manuf</source><year>2005</year><volume>21</volume><fpage>497</fpage><lpage>505</lpage><pub-id pub-id-type="doi">10.1016/j.rcim.2004.07.018</pub-id></citation></ref>
<ref id="b160-sensors-10-10256"><label>160.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zhuang</surname><given-names>H</given-names></name><name><surname>Wang</surname><given-names>K</given-names></name><name><surname>Roth</surname><given-names>ZS</given-names></name></person-group><article-title>Optimal Selection of Measurement Configurations for Robot Calibration using Simulated Annealing</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>San Diego, CA, USA</conf-loc><conf-date>8–13 May 1994</conf-date><fpage>393</fpage><lpage>393</lpage></citation></ref>
<ref id="b161-sensors-10-10256"><label>161.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Zhuang</surname><given-names>H</given-names></name><name><surname>Wu</surname><given-names>J</given-names></name><name><surname>Huang</surname><given-names>W</given-names></name></person-group><article-title>Optimal Planning of Robot Calibration Experiments by Genetic Algorithms</article-title><conf-name>Proceedings of the IEEE International Conference on Robotics and Automation</conf-name><conf-loc>Minneapolis, MN, USA</conf-loc><conf-date>22–28 April 1996</conf-date><fpage>981</fpage><lpage>986</lpage></citation></ref>
<ref id="b162-sensors-10-10256"><label>162.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Yu</surname><given-names>DY</given-names></name><name><surname>Cong</surname><given-names>DC</given-names></name><name><surname>Han</surname><given-names>JW</given-names></name></person-group><article-title>Parallel Robots Pose Accuracy Compensation using Artificial Neural Networks</article-title><conf-name>Proceedings of the Fourth International Conference on Machine Learning and Cybernetics</conf-name><conf-loc>Guangzhou, China</conf-loc><conf-date>18–21 August 2005</conf-date><fpage>3194</fpage><lpage>3198</lpage></citation></ref>
<ref id="b163-sensors-10-10256"><label>163.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Stan</surname><given-names>SD</given-names></name><name><surname>Maties</surname><given-names>V</given-names></name><name><surname>Balan</surname><given-names>R</given-names></name></person-group><article-title>Genetic Algorithms Multiobjective Optimization of a 2 DOF Micro Parallel Robot</article-title><conf-name>Proceedings of the International Symposium on Computational Intelligence in Robotics and Automation</conf-name><conf-loc>Jacksonville, FL, USA</conf-loc><conf-date>20–23 June 2007</conf-date><fpage>522</fpage><lpage>527</lpage></citation></ref>
<ref id="b164-sensors-10-10256"><label>164.</label><citation citation-type="confproc"><person-group person-group-type="author"><name><surname>Liu</surname><given-names>Y</given-names></name><name><surname>Liang</surname><given-names>B</given-names></name><name><surname>Li</surname><given-names>C</given-names></name><name><surname>Xue</surname><given-names>L</given-names></name><name><surname>Hu</surname><given-names>S</given-names></name><name><surname>Jiang</surname><given-names>Y</given-names></name></person-group><article-title>Calibration of a Stewart Parallel Robot Using Genetic Algorithm</article-title><conf-name>Proceedings of the International Conference on Mechatronics and Automation</conf-name><conf-loc>Harbin, China</conf-loc><conf-date>5–8 August 2007</conf-date><fpage>2495</fpage><lpage>2500</lpage></citation></ref>
<ref id="b165-sensors-10-10256"><label>165.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Cheng</surname><given-names>G</given-names></name></person-group><article-title>Error Analysis of Three Degree-of-Freedom Changeable Parallel Measuring Mechanism</article-title><source>J. China Univ. Mining Tech</source><year>2007</year><volume>17</volume><fpage>101</fpage><lpage>104</lpage><pub-id pub-id-type="doi">10.1016/S1006-1266(07)60022-4</pub-id></citation></ref>
<ref id="b166-sensors-10-10256"><label>166.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Huang</surname><given-names>T</given-names></name><name><surname>Whitehouse</surname><given-names>DJ</given-names></name></person-group><article-title>A Simple Yet Effective Approach for Error Compensation of a Tripod-Based Parallel Kinematic Machine</article-title><source>CIRP Annals-Manuf. Technol</source><year>2000</year><volume>49</volume><fpage>285</fpage><lpage>288</lpage><pub-id pub-id-type="doi">10.1016/S0007-8506(07)62947-3</pub-id></citation></ref>
<ref id="b167-sensors-10-10256"><label>167.</label><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Oiwa</surname><given-names>T</given-names></name></person-group><article-title>Error Compensation System for Joints, Links and Machine Frame of Parallel Kinematics Machines</article-title><source>Int. J. Rob. Res</source><year>2005</year><volume>24</volume><fpage>1087</fpage><lpage>1102</lpage><pub-id pub-id-type="doi">10.1177/0278364905060149</pub-id></citation></ref></ref-list>
<sec sec-type="display-objects">
<title>Figures and Table</title>
<fig id="f1-sensors-10-10256" position="float">
<label>Figure 1.</label>
<caption>
<p>Two-DOF parallel robots: <bold>(a)</bold> Dunlop design (reprinted from [<xref ref-type="bibr" rid="b16-sensors-10-10256">16</xref>] with permission from Elsevier). <bold>(b)</bold> Omni-wrist from Rosheim [<xref ref-type="bibr" rid="b17-sensors-10-10256">17</xref>] (reprinted with permission from Rosheim). <bold>(c)</bold> Zeng design (reprinted from [<xref ref-type="bibr" rid="b15-sensors-10-10256">15</xref>] with permission from IEEE). <bold>(d)</bold> Majarena design [<xref ref-type="bibr" rid="b18-sensors-10-10256">18</xref>].</p></caption>
<graphic xlink:href="sensors-10-10256f1.gif"/></fig>
<fig id="f2-sensors-10-10256" position="float">
<label>Figure 2.</label>
<caption>
<p>Three-DOF parallel robots: <bold>(a)</bold> Gosselin design (reprinted from [<xref ref-type="bibr" rid="b19-sensors-10-10256">19</xref>] with permission from IEEE). <bold>(b)</bold> Tsai design [<xref ref-type="bibr" rid="b20-sensors-10-10256">20</xref>]. <bold>(c)</bold> Ceccarelli design (reprinted from [<xref ref-type="bibr" rid="b21-sensors-10-10256">21</xref>] with permission from Elsevier). <bold>(d)</bold> Gallardo design (reprinted from [<xref ref-type="bibr" rid="b22-sensors-10-10256">22</xref>] with permission from Elsevier). <bold>(e)</bold> Carretero design [<xref ref-type="bibr" rid="b23-sensors-10-10256">23</xref>]. <bold>(f)</bold> Ortoglide from Chablat (reprinted from [<xref ref-type="bibr" rid="b24-sensors-10-10256">24</xref>] with permission from IEEE). <bold>(g)</bold> HALF-II from Liu (reprinted from [<xref ref-type="bibr" rid="b25-sensors-10-10256">25</xref>] with permission from Elsevier). <bold>(h)</bold> Gallardo design [<xref ref-type="bibr" rid="b26-sensors-10-10256">26</xref>]. <bold>(i)</bold> Tyapin design (reprinted from [<xref ref-type="bibr" rid="b27-sensors-10-10256">27</xref>] with permission from IEEE).</p></caption>
<graphic xlink:href="sensors-10-10256f2.gif"/></fig>
<fig id="f3-sensors-10-10256" position="float">
<label>Figure 3.</label>
<caption>
<p>Four-DOF mechanisms: <bold>(a)</bold> Krut design (reprinted from [<xref ref-type="bibr" rid="b29-sensors-10-10256">29</xref>] with permission from IEEE). <bold>(b)</bold> Nabat design [<xref ref-type="bibr" rid="b30-sensors-10-10256">30</xref>] (reprinted with permission from Krut). <bold>(c)</bold> Wang analysis (reprinted from [<xref ref-type="bibr" rid="b31-sensors-10-10256">31</xref>] with permission from Elsevier).</p></caption>
<graphic xlink:href="sensors-10-10256f3.gif"/></fig>
<fig id="f4-sensors-10-10256" position="float">
<label>Figure 4.</label>
<caption>
<p>Five-DOF mechanisms: <bold>(a)</bold> Gao design (reprinted from [<xref ref-type="bibr" rid="b32-sensors-10-10256">32</xref>] with permission from Elsevier). <bold>(b)</bold> Maurin design [<xref ref-type="bibr" rid="b33-sensors-10-10256">33</xref>].</p></caption>
<graphic xlink:href="sensors-10-10256f4.gif"/></fig>
<fig id="f5-sensors-10-10256" position="float">
<label>Figure 5.</label>
<caption>
<p>Six-DOF mechanisms: <bold>(a)</bold> Shim design (reproduced from [<xref ref-type="bibr" rid="b34-sensors-10-10256">34</xref>] with permission from Cambridge Journals). <bold>(b)</bold> Yang design (reprinted from [<xref ref-type="bibr" rid="b1-sensors-10-10256">1</xref>] with permission from IEEE). <bold>(c)</bold> Ben-Horin design (reprinted from [<xref ref-type="bibr" rid="b35-sensors-10-10256">35</xref>] with permission from IEEE). <bold>(d)</bold> VMS (reprinted from [<xref ref-type="bibr" rid="b36-sensors-10-10256">36</xref>] with permission from NASA. <bold>(e)</bold> Zanganeh design (reproduced from [<xref ref-type="bibr" rid="b37-sensors-10-10256">37</xref>] with permission from Cambridge Journals). <bold>(f)</bold> Wang design (reprinted from [<xref ref-type="bibr" rid="b38-sensors-10-10256">38</xref>] with permission from Elsevier).</p></caption>
<graphic xlink:href="sensors-10-10256f5.gif"/></fig>
<fig id="f6-sensors-10-10256" position="float">
<label>Figure 6.</label>
<caption>
<p>Known hexapod systems (reprinted from [<xref ref-type="bibr" rid="b39-sensors-10-10256">39</xref>] with permission from Elsevier).</p></caption>
<graphic xlink:href="sensors-10-10256f6.gif"/></fig>
<fig id="f7-sensors-10-10256" position="float">
<label>Figure 7.</label>
<caption>
<p>Scheme of different methods to modeling and solving parallel kinematic mechanisms.</p></caption>
<graphic xlink:href="sensors-10-10256f7.gif"/></fig>
<table-wrap id="t1-sensors-10-10256" position="float">
<label>Table 1.</label>
<caption>
<p>Joint symbols.</p></caption>
<table frame="hsides" rules="groups">
<thead>
<tr>
<th align="center" valign="bottom"><bold>Symbol Joint</bold></th>
<th align="left" valign="bottom"><bold>Type of joint</bold></th></tr></thead>
<tbody>
<tr>
<td align="center" valign="middle"><bold>U</bold></td>
<td align="left" valign="middle">Universal joint</td></tr>
<tr>
<td align="center" valign="middle"><bold>P</bold></td>
<td align="left" valign="middle">Prismatic joint</td></tr>
<tr>
<td align="center" valign="middle"><bold>R</bold></td>
<td align="left" valign="middle">Revolute joint</td></tr>
<tr>
<td align="center" valign="middle"><bold>S</bold></td>
<td align="left" valign="middle">Spherical joint</td></tr>
<tr>
<td align="center" valign="middle"><bold>Pa</bold></td>
<td align="left" valign="middle">Parallelogram joint</td></tr></tbody></table></table-wrap></sec></back></article>
