Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions Anatol Pashkevich a,b, Damien Chablat b, Philippe Wenger b aÉcole des Mines de Nantes 4, rue Alfred-Kastler, 44307 Nantes Cedex 03, France e-mail: anatol.pashkevich@emn.fr bInstitut de Recherche en Communications et Cybernétique de Nantes 1, rue de la Noë B.P. 6597, 44321 Nantes Cedex 3, France e-mals: {Damien.Chablat, Philippe.Wenger }@irccyn.ec-nantes.fr Abstract The paper proposes a new calibration method for parallel manipulators that allows efficient identification of the joint offsets using observations of the manipulator leg parallelism with respect to the base surface. The method employs a simple and low-cost measuring system, which evaluates deviation of the leg location during motions that are assumed to preserve the leg parallelism for the nominal values of the manipulator parameters. Using the measured deviations, the developed algorithm estimates the joint offsets that are treated as the most essential parameters to be identified. The validity of the proposed calibration method and efficiency of the developed numerical algorithms are confirmed by experimental results. The sensitivity of the measurement methods and the calibration accuracy are also studied. Keywords: parallel robots, kinematic calibration, model identification, joint offsets, error compensation. *Corresponding author: Prof. A.Pashkevich Department of Automatics and Production Systems École des Mines de Nantes 4, rue Alfred-Kastler BP 20722 tel.: + 33 (0)251 85 83 00 fax: + 33 (0)251 85 83 49 e-mail: anatol.pashkevich@emn.fr, Pashkevich A, Chablat D. et Wenger P., “Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions”, Mechatronics, Vol. 19(4), June 2009, pp. 478-488 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 2 1. Introduction Parallel kinematic machines (PKM) are commonly claimed to offer several advantages over serial manipulators, such as high structural rigidity, better payload-to-weight ratio, high dynamic capacities and high accuracy (Tlusty et al., 1999; Merlet, 2000; Wenger et al., 2001). At present, the conventional serial kinematic structures have already achieved their performance limits, which are bounded by high component stiffness required to support sequential joints, links and actuators (Tsai, 1999). Thus, the PKM are prudently considered as promising alternatives to their serial counterparts that offer faster, more flexible, less costly and more accurate solutions. However, while the PKM usually exhibit a much better repeatability as compared to serial mechanisms, they may not necessarily posses a better accuracy, which is limited by manufacturing/assembling errors in numerous links and passive joints (Wang and Masory, 1993; Daney, 2003; Renaud et al., 2006; Fassi et al., 2007; Legnani et al., 2007). Besides, for non-Cartesian parallel architectures, some kinematic parameters (such as the encoder offsets) cannot be determined by direct measurement. These motivate intensive research on PKM calibration, which recently attracted attention of both academic and industrial experts. Similar to the serial manipulators (Schröer et al., 1995), the PKM calibration procedures are based on the minimization of a parameter-dependent error function, which incorporates residuals of the kinematic equations (i.e. differences between the measured and computed values of the sensor readings). For the parallel manipulators, the inverse kinematic equations are considered computationally more efficient, since most PKMs admit a closed-form solution of their inverse kinematics (contrary to the direct kinematics, which is analytically solvable for the serial machines but is usually unsolvable in a closed-form for the PKM) (Innocenti, 1995; Iurascu & Park, 2003; Jeong et al., 2004; Huang et al., 2005). But the main difficulty with the inverse-kinematics-based calibration is the full-pose measurement requirement (position and orientation of the end-effector), which is very hard to implement accurately (Thomas et al., 2005). Hence, a number of studies have been directed at using the subset of the pose measurement data (Daney & Emiris, 2001), which, however, creates another problem: the identifiability of the model parameters (Besnard & Khalil, 2001). Popular approaches in the parallel robot calibration deal with one-dimensional pose errors using a double-ball- bar system or other measuring devices (Rauf et al., 2004, 2006; Williams, 2006) as well as imposing mechanical constraints on some elements of the manipulator (Daney, 1999). However, in spite of hypothetical simplicity (joint measurements are needed only), it is hard to implement in practice since an accurate extra mechanism is required to impose these constraints. Additionally, such methods reduce the workspace size and consequently the identification efficiency (Zhuang et al., 1999). A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 3 Another category of the methods, the self- or autonomous calibration (Khalil & Besnard, 1999; Wampler et al., 1995; Zhuang, 1997; Hesselbach, 2005), is implemented by minimizing the residuals between the computed and measured values of the active and/or redundant joint sensors. Adding extra sensors at the usually unmeasured joints is very attractive from a computational point of view, since it allows getting the data in the whole workspace and potentially reduces impact of the measurement noise. However, only a partial set of the parameters may be identified in this way since the internal sensing is unable to provide sufficient information for the robot end-effector absolute location. Besides, in practice, these methods are not always economically and technologically feasible because usually it is hard to add these extra sensors to an existing mechanism. More recently, several hybrid calibration methods were proposed that utilize intrinsic properties of a particular parallel machine allowing one to extract the full set of the model parameters (or the most essential of them) from a minimum set of measurements. An innovative approach was developed by Renaud et al. (2004, 2005) who applied the vision-based measurement system for the parallel manipulators calibration from the leg observations. In this technique, the primary data (manipulator leg poses) are extracted from the image, without any strict assumptions on the leg locations or on the corresponding end-effector poses (only leg observability is needed). While defining advantages of this method, the authors stress that the legs can be observed more easily than the end-effector and the use of a camera does not imply any modification of the mechanism. The only assumption is related to the manipulator architecture (the mechanism is actuated by linear drives located on the base). However, current accuracy of the camera-based measurements is not high enough yet to widely apply this method in industrial environment. This paper focuses on the identification of the most essential subset of geometrical parameters (joints offsets) for the Orthoglide-type mechanisms. These mechanisms are actuated by linear drives located on the manipulator base and therefore admits technique of Renaud et al. (2004, 2005) for calibration from the leg observations. But, in contrast to the known works, our approach assumes that the leg location is observed for specific manipulator postures, when the tool-center-point moves along the Cartesian axes. For these postures and the nominal geometrical parameters, the legs are strictly parallel to the corresponding Cartesian planes. So, the deviation of the manipulator parameters influences on the leg parallelism that gives the source data for the parameter identification. The main advantage of this approach is the simplicity and low cost of the measuring system that can avoid using computer vision. It is composed of standard comparator indicators attached to the universal magnetic stands. It is obvious that such hardware perfectly suits industrial requirements. The remainder of the paper is organized as follows. Section 2 describes the manipulator geometry, its inverse and direct kinematics, and also contains the sensitivity analysis of the leg parallelism at the examined postures with respect to the joint encoder offsets. Section 3 focuses on the parameter identification, with particular emphasis on A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 4 the calibration accuracy under the measurement noise and selection the best set of the calibration equations. Section 4 contains experimental results that validate the proposed technique, while Section 5 summarizes the main results and contribution of the paper. 2. Kinematic modelling 2.1. Manipulator geometry The Orthoglide is a three degrees-of-freedom parallel manipulator actuated by linear drives with mutually orthogonal axes. Its kinematic architecture is presented in Fig. 1 and includes three identical parallel chains, which will be further referred as “legs”. Kinematically, each leg is formally described as PRPaR - chain, where P, R and Pa denote the prismatic, revolute, and parallelogram joints respectively (Fig.2). The output machinery (with a tool mounting flange) is connected to the legs in such a manner that the tool moves in the Cartesian x-y-z space with fixed orientation (translational motions). (a) (b) Fig. 1. The Orthoglide mechanism - kinematic architecture (a) and general view (b). P Ai i Bi Ci L d r ii ji Fig 2. Kinematics of the Orthoglide leg. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 5 In Figs. 1, 2, the base points A1, A2 and A3 are fixed on the ith linear axis such that A1A2 = A1A3 = A1A2 , the point Bi is at the intersection of the first revolute axis ii and the second revolute axis ji of the ith parallelogram, and the point Ci is at the intersection of the last two revolute joints of the ith parallelogram. When each BiCi is aligned with the linear joint axis AiBi , the Orthoglide is in an isotropic configuration and the tool centre point P is located at the intersection of the linear joint axes. In this posture, the base points A1, A2 and A3 are equally distant from P. The symmetric design and the simplicity of the kinematic chains (all joints have only one degree of freedom) contribute to lower the Orthoglide manufacturing cost. The Orthoglide is free of singularities and self-collisions. Its workspace has a regular, quasi-cubic shape. The input/output equations are simple and the velocity transmission factors are equal to one along the x, y and z direction at the isotropic configuration, like in a serial PPP machine (Wenger et al., 2000). The latter is an essential advantage of the Orthoglide architecture with respect to the machining applications. Another specific feature of the Orthoglide mechanism, which will be further used for calibration, is displayed during the end-effector motions along the Cartesian axes. For example, for the x-axis motion in the Cartesian space, the sides of the x-leg parallelogram must also retain strictly parallel to the x-axis. Hence, the observed deviation of the mentioned parallelism may be used as the data source for the calibration algorithms. For a small-scale Orthoglide prototype used in for the experimental part of the paper, the workspace size is approximately equal to 200200200 mm3 with the velocity transmission factors bounded between 1/2 and 2 (Chablat & Wenger, 2003). The legs nominal geometry is defined by the following parameters: L = 310.25 mm, d = 80 mm, r = 31 mm where L, d are the parallelogram length and width, and r is the distance between the points Ci and the tool centre point P (see Fig. 2). Within the workspace, the manipulator is able to reach the Cartesian velocity of 1.2 m/s and the acceleration of 17 m/s2 while carrying a payload of 4 kg. 2.2. Modelling assumptions Following previous studies on the parallel mechanism accuracy (Wang & Massory, 1993; Renaud et al., 2004, Caro et al., 2006), the influence of the joint/link defects is assumed relatively small compared to the joint positioning errors that are mainly caused by the encoder offsets. The latter is also justified by the authors experience with the Orthoglide prototype, where manufacturing tolerances 0.01 mm for the links and joints were achieved relatively easily, using common commercially available equipment. However, usual assembling techniques produced the joint offset errors about 0.5 mm and motivated development of dedicated calibration method that are presented in this paper. These methods are based on the following modelling assumptions that are partially validated during the experimental study (see Section 4): A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 6 (i) the manipulator parts are supposed to be rigid-bodies connected by perfect joints, without clearances; (ii) the articulated parallelograms are assumed to be identical and perfect, which insure that their sides stay parallel in pares for any motions; (iii) the manipulator legs (composed of one prismatic joint, one parallelogram, and two revolute joints) are identical and generate a four degree-of-freedom motion each; (iv) the linear actuator axes are mutually orthogonal and intersected in a single point to insure a translational three degree-of-freedom movement of the end-effector; (v) The actuator encoders are assumed to be perfect but their location (zero position) is defined with some errors that are treated as the offsets to be estimated. Using these assumptions, an efficient calibration technique will be developed based on the observation of the parallel motions of the manipulator legs. 2.3. Kinematic model Let us first briefly present the Orthoglide kinematic model, which is described in details in the previous papers (Chablat & Wenger, 2003; Pashkevich et al., 2006). Under the adopted assumptions, the articulated parallelograms may be replaced by kinematically equivalent single rods of the same length. Besides, a simple transformation of the Cartesian coordinates (the shift by the vector (r, r, r)T ) allows to eliminate the tool offset. Hence, the Orthoglide geometry can be described by a simplified model, which consists of three rigid links connected by spherical joints to the tool centre point (TCP) at one side and to the allied prismatic joints at another side (Fig. 3). Corresponding formal definition of each leg can be presented as PSS, where P and S denote the actuated prismatic joint and the passive spherical joint respectively. x y z (x, 0, 0) (0, y, 0) (0, 0, z) (px, py, pz) O (a) x y z x = L O p=0 y = L z = L (b) Fig. 3. Orthoglide simplified model (a) and its isotropic configuration (b). Thus, if the origin of the reference frame is located at the intersection of the prismatic joint axes and the x, y, z- axes are directed along them, the manipulator geometry may be described by the following equations A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 7   2 2 2 2 ( ) x x x y y p p p L        2 2 2 2 ( ) x y y y z p p p L            (1)   2 2 2 2 ( ) x y z z z p p p L        where p = (px, py, pz) is the output position vector,  = (x, y, z) is the input vector of the prismatic joints variables,  = (x, y, z) is the encoder offset vector, and L is the length of the parallelogram principal links. Besides, we assume that the joint variables satisfy the following prescribed joint limits   min max; , , i i x y z       (2) defined in the control software (for the Orthoglide prototype studied here, they were set as min=-100 mm and min=+60 mm). It should be noted that, for this convention and for the case  = (0, 0, 0), the nominal isotropic posture of the manipulator corresponds to the Cartesian coordinates p0 = (0, 0, 0) and to the joints variables 0 = (L, L, L), see Fig. 3b. In this posture, moreover, the x-, and y-legs are oriented strictly parallel to the Cartesian plane XY. But the joint offsets cause the deviation of the TCP location and corresponding deviation of the parallelism, which may be computed applying the direct kinematic algorithm for the joint variables  = (L+x, L+y, L+z). On the other hand, in the calibration experiments, this deviation can be detected by evaluating the parallelism of the x- and y-legs with respect to the manipulator base surface (xy-plane). This can be easily done by measuring distances from the leg ends to the base surface and computing the difference. However, the capability of this technique is limited by evaluating the offset of the z-axis encoder only, since the Orthoglide mechanical design does not allow making similar measurements for the remaining pairs of the legs, with respect to the xz- and yz-planes. Hence, within the adopted model, four parameters (x, y, z, L) define the manipulator geometry, but because of the rather tough manufacturing tolerances used for the prototype, the leg link is assumed to be known and only the joint offsets (x, y, z) are in the focus of the proposed calibration technique. 2.4. Inverse and direct kinematics To derive calibration equations, first let us expand some previous results on the Orthoglide kinematics (Pashkevich et al., 2006) taking into account the encoder offsets. The inverse kinematic relations are derived from the equations (1) in a straightforward way and only slightly differ from the “nominal” case 2 2 2 x x x y z x p s L p p        2 2 2 y y y x y y p s L p p        (3) 2 2 2 z z z x y z p s L p p        A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 8 where sx, sy, sz  { ±1} are the configuration indices defined for the “nominal” manipulator as signs of x – px , y – py, z – pz, respectively. It is obvious that expressions (3) define eight different solutions to the inverse kinematics, however the Orthoglide assembling and joint limits reduce this set for a single case corresponding to the sx= sy= sz= 1. For the direct kinematics, the equations (1) can be subtracted pair-to-pair that gives the following expression for the unknowns px, py, pz (for details, see Pashkevich et al., 2005)   ; , , 2 i i i i i t p i x y z          (4) where t is an auxiliary scalar variable. This reduces the direct kinematics to the solution of a quadratic equation At2 + Bt + BC = 0 with coefficients ( )( ) ( )( ) ( )( ) x x y y x x z z y y z z A                      ; 2 2 2 ( ) ( ) ( ) x x y y z z B           ;   2 2 2 2 ( ) ( ) ( ) 4 4 x x y z z z C L              . Of the two possible solutions 2 ( 4 ) (2 ) t B m B ABC A    , 1 m  of the quadratic formula, only the one corresponding to m=+1 is admitted by the orthoglide prototype (because of the selected assembly mode). 2.5. Sensitivity analysis To evaluate the encoder offset influence on the legs parallelism with respect to the Cartesian planes XY, YZ, and YZ, let us derive first the differential relations for the TCP deviation for three types of the Orthoglide postures: (i) “maximum displacement” postures for the directions x, y, z (Fig. 4a); (ii) isotropic posture in the middle of the workspace (Fig. 4b); (iii) “minimum displacement” postures for the directions x, y, z (Fig. 4c); XMax posture Isotropic posture XMin posture x y z x = L + L sin O p y = L cos z = L cos   x y z x = L O p y = L z = L x y z x = L - L sin O p y = L cos z = L cos   Fig. 4. Specific postures of the Orthoglide manipulator (corresponding to the x-leg leg motion along the Cartesian axis X ) A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 9 These postures are of particular interest for the calibration since in the “nominal” case (zero encoder offsets) the corresponding leg is parallel to the relevant pair of the Cartesian planes. On the other hand, the considered parallelism can be perturbed by the deviation of the TCP that defines location of points Ci (see Fig. 2), while the opposite sides of the legs are mechanically constrained by the actuator joint axes (points Bi in Fig.2). The differential kinematical model may be derived from the Orthoglide Jacobian, the inverse of which is obtained from (1) in a straightforward way (see Pashkevich et al., 2006 for details): 1 1 ( , ) 1 1 y z x x x x x z y y y y y x z z z z p p p p p p p p p p p p                                      ρ J p ρ p (5) It should be noted that, for computing convenience, the above expression includes both the Cartesian coordinates , , x y z p p p and the joint coordinates , , x y z   , but only one of these sets may be treated as independent because of the inverse/direct kinematic relations. For the isotropic posture, the differential relations are computed in the neighbourhood of the point p0 = (0, 0, 0) and 0 = (L, L, L), which after substitution to (5) gives the identity Jacobian matrix 0 0 3 3 ( , )   J p ρ I (6) It means that in this case the TCP displacement is related to the joint offsets by trivial equations   , , , i i p i x y z     , (7) and each joint offset influences on the TCP deviation independently and with the scaling factor of 1.0 . Taking into account the Orthoglide geometry, this deviation may be estimated by evaluating parallelism of the legs with respect to the Cartesian planes (i.e. measuring difference of distances from the leg ends to the relevant plane). However, as mentioned in subsection 2.3, this technique is feasible for the z-direction only, hence it may produce an estimation of z merely. For the “maximum displacement” posture in the x-direction (see Fig. 4a), the differential relations are derived in the neighbourhood of the point ( sin , 0, 0) L   p ; ( sin , cos , cos ) L L L L      ρ where  is the angle between the y-, z-legs and corresponding Cartesian axes: max asin( / ) L    . After the substitution into (5), this gives the inverse Jacobian as a lower triangle matrix, which admits analytical inverse yielding A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 10   1 0 0 ( ), ( ) 1 0 0 1 T T               J p ρ , (8) where tan( ) T   . Hence, the differential equations for the TCP displacement may be written as ; ; x x y x y z x z p p T p T                  (9) and the joint offset influences on the TCP deviation is estimated by factors 1.0 and T. It is also worth mentioning that measurement of the x-leg parallelism with respect to the XY-plane gives an equation for estimating the offset x (provided that the offset z has been obtained from the isotropic posture). Similar results are valid for the “maximum displacement” postures in the y- and z-directions (differing by the indices only), and also for the “minimum displacement” postures. In the latter case, the angle  should be computed from an equation min asin( / ) L    . Table 1. Sensitivity of the TCP location for the representative Orthoglide postures Posture Leg Plane Deviation Typical value* Isotropic X XY z 1.00 XZ y 1.00 Y XY z 1.00 YZ x 1.00 Z XZ y 1.00 YZ x 1.00 Max / Min X-displacement X XY T x + z 1.000.34 XZ T x + y 1.000.34 Max / Min Y-displacement Y XY T y + z 1.000.34 YZ T y + x 1.000.34 Max / Min Z-displacement Z XZ T z + y 1.000.34 YZ T z + x 1.000.34 The results on the TCP sensitivity with respect to the joint offsets are summarized in Table 1 that gives also numerical values corresponding to the hypothetical joint offset  = (1 mm, 1 mm, 1 mm) and to the angle  = 20° that are typical for the Orthoglide prototype studied in the experimental part of the paper. Analysis of these values allows concluding that the leg parallelism is rather sensitive to the joint offsets. Thus, relevant deviations px, py, pz, may be used for the offset identification. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 11 3. Calibration methods 3.1 Measurement techniques To identify the Orthoglide kinematic parameters specified in the previous section, we propose two calibration methods, which employ different measurement techniques for the leg/surface parallelism. The first of them (Fig. 5a) assumes two measurements for the same leg posture (to assess distances from both leg ends to the base surface). The second technique assumes a fixed location of the measuring device but two distinct leg postures, which ensure positioning of the leg ends in the neighbourhood of the device. It is obvious that, for the perfectly calibrated manipulator, both methods give zero differences for each measurement pair. Conversely, the non-zero differences contain source information for the joint offset identification. The following sub-sections contain detailed descriptions of these measurement techniques and relevant identification procedures. In particular, sub-sections 3.2 and 3.3 introduce respectively the single- and double-pose methods along with corresponding literalised calibration equations. Sub-section 3.4 describes a non-linear calibration routine that is based on the minimisation of the residual-square sum. Finally, sub-section 3.5 focuses on the calibration accuracy and sensitivity to the measurement noise. (a) absolute measurements (b) relative measurements Manipulator legs d1 d2 zx + = d2 - d1 Base plane Manipulator legs d1 Manipulator legs d2 Base plane Base plane Posture #1 Posture #2 zx + = d2 - d1 Fig. 5. Measuring the leg/surface parallelism using single-posture-double-sensor (a) and double-posture-single-sensor (b) methods. 3.2. Calibration using single-posture measurements Using the single-posture measurements and taking into account the Orthoglide design limitations allowing locating gauges on the XY surface only (i.e. for the z-direction measurements), the calibration experiment may be arranged in the following way. Step 1. Locate the manipulator in the isotropic posture and measure parallelism of the X- and Y-legs with respect to the XY-surface: 0 xz  , 0 yz  A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 12 Step 2. Locate sequentially the manipulator in the “X-maximum” and “X-minimum” postures and measure parallelism of the X- legs with respect to the XY-surface: + xz  , xz  Step 3. Locate sequentially the manipulator in the “Y-maximum” and “Y-minimum” postures and measure parallelism of the Y- legs with respect to the XY-surface: + yz  , yz  In the above description, the variable following the -symbol denotes the measurement direction (z in all cases), the subscript defines the manipulator leg, and the superscript indicates the manipulator posture for this leg. For example, + xz  denotes the z-direction deviation of the X-leg for the “X-maximum” posture. Using expressions from sub-section 2.5 presented in Table 1, the system of the calibration equations may be written as follows 0 0 1 2 1 2 0 0 1 0 0 1 0 1 0 1 0 1 0 1 x y x x y x z y y z z a z a z a z a z                                                                 (10) where 1 1 a T  and 2 2 a T  , which may be also computed as 2 2 1 max max a L     and 2 2 2 min min a L     . For instance, for the Orthoglide prototype (see subsection 2.1) a10.20 and a2-0.34. This overdetermined system of six linear equations in three unknowns may be solved in a straightforward way, using the Moore-Penrose pseudoinverse. However, from the application point of view, it is worth to separate the equations for three pairs and sequentially solve them for x, y, z : this approach yields the following expressions for the joint offsets 0 0 1 2 2 2 1 2 1 2 2 2 1 2 2 ( ) ( ) ( ) ( ) x y z x z x z x y z y z y z z a z a z a a a z a z a a                                (11) which are computationally convenient but may produce slightly higher residuals than the standard pseudoinverse. However, the measurement procedure for this method is rather complicated in comparison with an alternative one, described in the following subsection. It should be stressed that the single-posture method requires separate measurements of 1d and 2 d (see Fig. 5a) that are further used for computing the difference 2 1 d d  , while the alternative technique directly evaluates this difference using a single measuring device. It is obvious that the first A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 13 method is based on the absolute measurements that are very sensitive to the gauge calibration, while the second approach (based on the relative measurements) does not require any calibration of the gauges. 3.3. Calibration using double-posture measurements Since in this case a single gauge is used only, it is possible to assess the leg parallelism with respect to both relevant planes (XY and XZ for the X-leg, for instance). This advantage is charged however by using two legs postures, allowing sequentially locating both leg ends close to the gauge. For this measuring technique, the calibration experiment may be arranged in the following way: Step 1. Locate the manipulator in the isotropic posture and place two gauges in the middle of the X-leg ensuring required measurement directions (orthogonal to the leg and parallel to the Cartesian axes Y and Z); get the gauge readings. Step 2. Locate sequentially the manipulator in the “X-maximum” and “X-minimum” postures, get the gauge readings, and compute differences + xy  , + xz  , xy  , xz  Step 3+. Repeat steps 1, 2 for the Y- and Z-legs and compute differences + yx  , + yz  , yx  , yz  , and + zx  , + zy  , zx  , zy  . The system of calibration equations can be also derived using expressions from Table 1, but in two steps. First, it is required to define the gauge location that is assumed to be positioned at the leg middle point in the isotropic posture.* Hence, for the X-leg for instance, it is the midpoint of the line segment bounded by the TCP (x, y, z) and the centre of the X-axis prismatic joint (L+x, 0, 0). This yields the following differential expressions for the leg midpoints: 2 ; 2 ; 2 2 ; 2 ; 2 2 ; 2 ; 2 ( ) ( ) ( ) x y z x x z x y z L L L                   X - leg Gauges : Y - leg Gauges : Y - leg Gauges : Afterwards, in the “X-maximum” posture, the X-leg location is also defined by two points, namely, (i) the TCP, and (ii) the centre of the X-axis prismatic joint. Their coordinates are defined as follows (see Fig. 4a and Table 1) ; ; ; 0 ; 0 ( ) ( ) x x y x z x LS T T L LS                  Tool centre point : X - joint centre : Then, the equations of a straight-line passing along the X-leg may be written as ( ) (1 ) ( ) ( ); ( ) x x x y x z x LS L LS y T z T                           (12) *This assumption is not critical here because, as follows from relevant analysis, potential errors in the initial location of the gauge produce identification errors that are negligible as compared to the measurement noise. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 14 where sin( ); tan( ) S T       , and  is a scalar parameter, [0, 1]. Since the gauge x-coordinate remains the same independently of the current posture, the parameter  may be obtained from the equation 2 x x L    , which gives the following solution: 0.5 S   . (13) Hence, the Y- and Z-gauge readings for the X-leg in the “X-maximum” posture are (0.5 ) (0.5 ) (0.5 ) (0.5 ) x y x z y S T S z S T S                       (14) and, finally, the deviations of the X-leg measurements while it changes its posture from the “X-maximum” to the isotropic one are (0.5 ) (0.5 ) x x y x x z y S T S z S T S                         (15) A similar approach may be applied to the “X-minimum” posture, as well as to the equivalent postures for the Y- and Z-legs. This gives the following system of twelve linear equations in three unknowns 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 y x y x z x y y z z y z x z x b c x c b y b c x c b y b c y c b z b c y c b z b c x c b z b c x c b z                                                                                                                   (16) where sin ; (0.5 sin ) tan i i i i i b c       and 1 max asin( ) 0; L     2 min asin( ) 0 L     . For instance, for the Orthoglide prototype (see subsection 2.1) b1  0.19, c1  0.14 and b2  -0.32, c2  0.06. The reduced version of this system may be obtained if one assesses the leg/plane parallelism by the difference between the “maximum” and “minimum” postures. The latter leads to the system of six linear equations in three unknowns A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 15 0 0 0 0 0 0 y x x z y y z z x x b c y c b y b c z c b x b c z c b                                                            (17) where 1 2 1 2 ; b b b c c c     and y y y x x x      ; x x x y y y      , etc. For the Orthoglide prototype this values are as follows: b  0.52, c  0.20. Both systems (16) and (17) may be solved using the pseudoinverse of Moore-Penrose, which ensures minimizing the residual square sum. But as follows from the simulation study, for rather essential joint offsets (about 5 mm and more) the differential equations may produce non-accurate results. For this reason, the next subsection focuses on the non-linear calibration equations and their solution through the straightforward minimization of the square sum of the residuals. 3.4. Non-linear calibration equations From a general point of view, the considered calibration problem may be presented as the fitting of the experimental data to the Orthoglide kinematic model incorporating the joint offsets. Hence, it is necessary to obtain numerical algorithms that allow computing all the examined deviations for any given offsets. To present relevant results in a concise form, let us introduce special notations for the direct and inverse kinematic models of the “nominal” Orthoglide (with zero offsets): 1 0 0 ( ); ( ) f f if     p ρ ρ p ρ 0 (18) Then, in the isotropic posture, the TCP position may be expressed as   0 0 0 0 , , , , x y z x y z p p p f L L L           , (19) while expressions for the position of the prismatic joints remain the same: 0 0 0 0 0 0 ( ) ( ) ( ) x y z L L L       sma X - leg Prismatic Joint : Y - leg Pri tic Joint : Y - leg Prismatic Joint : Hence, the leg midpoints defining the gauge locations may be computed as follows: 0 0 0 2 ( ) 2; 2; 2; g g g x x x x y x z x L p y p z p       0 0 0 2; 2 ( ) 2; 2; g g g y x y y y y z x p y L p z p       (20) 0 0 0 2; 2; 2 ( ) 2; g g g z x z y z z z x p y p z L p       where the subscripts ‘x, y, z’ define the leg and the subscript ‘g’ refers to the gauge. For the “X-maximum” posture, the TCP position is computed as A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 16   0 , , , , x x x x y z x y z p p p f L LS LC LC                  , (21) where cos( ); sin( ) C S       , while the position of the X-link prismatic joints is described by the expression ( ; 0; 0) x L LS    . Hence, the equations of a straight-line passing along the X-leg may be written as (1 ) ( ) ; x x x x x y z x p L LS y p z p                 (22) where  is a scalar parameter, as above, which is determined by the x-coordinate of the gauge g x x x  . Solution of this equation yields 0 2 2 2 x x x x x x L LS p L LS p               (23) that allows one to compute the Y- and Z-gauge readings for the X-leg as x x y p    and x x zp    respectively and to get the final expression for the desired deviations of the X-leg: 0 0 ( ) 2 ( ) 2 x x x y y x x x z z y p p z p p                   ρ ρ (24) where symbol (.) is used to distinguish functions of the joint offsets  and the experimental values, which are denoted by . A similar approach may be applied to the “X-minimum” posture, as well as to the equivalent postures for the Y- and Z-legs. Relevant expressions are summarized in Table 2 where symbol ‘’ stands for both the “maximum” and “minimum” postures and angle  is defined by the joint limits: 1 max asin( ) 0; L     2 min asin( ) 0 L     . The obtained expressions allow posing the following optimisation problem for the joint offset identification     2 2 ( ) ( ) min y y z z F x x x x                ρ ρ ρ K , (25) which gives the desired values of x, y, z. It may be also presented in the reduced form by replacing the pairs of the deviations ( , ) y y x x     , ( , ) x x y y     , etc. by their differences y y y x x x      ; x x x y y y      , etc. Both problems may be solved numerically by means of the standard gradient search technique using the Jacobians from Eqs. 16 and 17. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 17 Table 2 Expressions for the non-linear calibration model Content Expressions TCP locations   0 0 0 0 , , , , x y z x y z p p p f L L L               z y x x z x y x x LC LC LS L f p p p                  , , , , 0     z y x y z y y y x LC LS L LC f p p p                  , , , , 0     z y x z z z y z x LS L LC LC f p p p                  , , , , 0 Scaling factors x x x x x x p LS L p LS L                 2 / 2 / 2 / 0 y y y y y y p LS L p LS L                 2 / 2 / 2 / 0 z z x z z z p LS L p LS L                 2 / 2 / 2 / 0 Leg deviations 0 0 ( ) 2; ( ) 2; x x x x x y y x z z y p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; y y y y y x x y z z x p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; z z z z z x x z y y x p p y p p                   ρ ρ 3.5. Calibration accuracy Because of the measurement noise, the developed technique may produce the biased estimates of the model parameters. Thus, for practical application, it is worth to evaluate the statistical properties of the calibration errors. Within the linear calibration equations, the impact of the measurement noise may be evaluated using general techniques from the identification theory, under the standard assumptions concerning the measurement errors i : zero-mean independent and identically distributed Gaussian random variables with the standard deviation . Let us consider separately two cases corresponding to the six-equation and twelve-equation systems (7), (8), since they differ in residual covariance. For both linear systems (16) and (17), the variance-covariance matrix of the identification parameters is written as (Ljung, 1999) 1 1 ( ) ( ) ( ) ( ) T T T T         V ρ J J J E s s J J J (26) where E(.) denotes the mathematical expectation, J is the Jacobian, and s is the vector of the measurement errors. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 18 In the six-equation case, the vector s consists of the statistically independent components corresponding to the deviations , , y x z x y y    K and is expressed through differences of the measurement errors at the min/max leg postures: (6) , , , T y y x x x x x x y y z z                      s K . (27) where the subscripts and the superscripts are defined similar to subsection 3.4. Hence, the covariance is the 66 identity matrix   2 (6) (6) 6 6 2 T I       E s s (28) and the expression (26) is reduced to 1 2 (6) (6) ( ) 2( ) T      V ρ J J (29) However, in the twelve-equation case, the vector s includes some dependent components 0 0 0 0 0 (6) , , , , T y x x x y x x x x z x x y y x x y y z z                           s K , (30) corresponding to the pairs ( , ) y y x x     , ( , ) x x y y     …( , ) x x z z     , since each leg deviations are measured twice (for the Max/Min postures) but with respect to the same isotropic location. So, the covariance is the 1212 non- identity matrix   2 (12) (12) 12 12 T       E s s G (31) expressed as 4 4 12 12 4 4 4 4 4 4 2 0 1 0 0 2 0 1 ; 1 0 2 0 0 1 0 2                              G 0 0 G 0 G 0 G 0 0 G . Consequently, the covariance (26) is presented as 1 1 2 (12) (12) (12) (12) (12) (12) ( ) ( ) ( ) T T T         V ρ J J J G J J J (32) These expressions allow us to compute a scalar performance measure for the calibration accuracy   that may be defined as the square-averaged standard deviation of the calibration errors for the joint offsets x, y, z   1 ( ) 3trace     V ρ (33) where the subscript ‘’ is used for distinguishing with the standard deviation of the measurement noise . For the Orthoglide prototype described in subsection 2.1, the latter expression yields 2.06      in the case of twelve equations and 1.98      in the six-equation case. This justifies using the six-equation method because of simplicity and slightly higher identification accuracy in comparison with the twelve-equation technique. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 19 While confirming this conclusion theoretically, it is worth mentioning that reduction of the equation number from 12 to 6 usually increases the calibration error by the factor 2 . However, using the deviations , , y x z x y y    K (measured between the Max and Min postures) instead of , , y y z x x y       K (measured between the isotropic and Max/Min postures) increases the deviation measurement sensitivity that gives reduction of   1 ( ) T trace  J J . In particular, for the case study, max 0.19 L   and min 0.32 L   while max min ( ) 0.52 L     . It means that the sensitivity increase compensates reduction of the equation number. For the non-linear calibration equations (see subsection 3.4), the impact of the measurement errors was investigated using the Monte-Carlo method. The simulation results (obtained for 20 replications with 10000 runs for  = 0.01 mm and two values of ) are presented in Table 3. They coincide with the above linear-approximation expressions and also justify advantages of the six-equation method for the practical applications. Table 3 Simulation results on impact of the measurement errors for  = 0.01 mm Calibration technique std() (offset 0.1 mm) std() (offset 1.0 mm) Six-equation method 0.0198 mm (0.0003) 0.0199 mm (0.0002) Twelve-equation method 0.0207 mm (0.0003) 0.0207 mm (0.0004) 4. Experimental results 4.1. Experimental setup The measuring system is composed of standard comparator indicators attached to the universal magnetic stands allowing fixing them on the manipulator bases. The indicators have a resolution of 10 m and are sequentially used for measuring the X-, Y-, and Z-leg parallelism while the manipulator moves between the Max, Min and isotropic postures (it is obvious that for industrial applications, it is better to use more sophisticated, high precision digital indicators with the resolution of 1 m or less, which yield more accurate calibration results). For each measurement, the indicators are located on the mechanism base in such a manner that a corresponding leg is admissible for the gauge contact for all intermediate posters (Fig. 6). The Min and Max postures are A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 20 constrained by the software joint limits and defined as min=-100 mm and max= 60 mm respectively. The initial position of the indicator corresponds to the leg middle for the manipulator isotropic posture. Fig. 6. Experimental Setup. During experiments, the legs were moved sequentially via the following postures: Isotropic  Max  Min  Isotropic  … . To reduce the measurement errors, the measurements were repeated three times for each leg. Then, the results were averaged and used for the parameter identification. It should be noted that the measurements demonstrated very high repeatability compared to the encoder resolution (dissimilarity was less than 0.02 mm). 4.2. Calibration results and their analysis To validate the developed calibration technique and the adopted modelling assumptions, we carried out three experiments targeted to the following objectives: Experiment #1: validation of modelling assumptions (it lead to the mechanical retuning ) Experiment #2: collecting experimental data used for the parameter identification; Experiment #3: validation of calibration results using the identified model parameters. Experiment #1. The first calibration experiment produced rather high parallelism deviation, up to 2.37 mm as shown in Table 4. It was unexpected since the Orthoglide demonstrated quite good quality and accuracy of milling in previous tests. However, the milling tests were perfect just because of the high uniformity of the Orhoglide workspace due to the advantages of the manipulator architecture. The straightforward application of the proposed calibration algorithm to this data set was not optimistic: in the frames of the adopted kinematic model, the root-mean-square (r.m.s.) deviation for the legs can be reduced down from 1.19 mm to 1.07 mm only (see Table 4). On the other hand, the statistical estimation of the measurement noise parameter  (based on the residual analysis) also yielded an unrealistic result:   1.0 mm. It impels to conclude that the manipulator mechanics requires more careful tuning, especially location of the linear actuator axes that are A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 21 assumed to be mutually orthogonal and intersected in a single point (see subsection 2.2). Thus, the manipulator mechanics was retuned, in particular the locations of the actuator axes were adjusted mechanically using the single- pose measurement technique described in subsection 3.2. Experiment #2. The second calibration experiment (after mechanical tuning) yielded lower parallelism deviations, less than 0.70 mm (see Table 4), which is on average twice better than in the first experiment. For these data, the developed calibration algorithm yielded the joint offsets that are expected to reduce the root-mean-square deviation down from 0.62 mm to 0.28 mm, i.e. by three times. Besides, the estimated value of   0.28 mm is more realistic taking into account both the measurement accuracy and the manufacturing/assembling tolerances. Accordingly, the identified values of the joint offsets x = -0.53 mm, y = 0.59 mm, y = -1.76 mm were incorporated in the Orthoglide control software. Experiment #3. The third experiment was targeted to the validation of the calibration results, i.e. assessing the leg parallelism while using the model parameters identified from the second data set. It demonstrated very good agreement with the expected values of xy, xz, …zy. In particular, the maximum deviation reduced down to 0.34 mm (expected 0.28 mm), and the root-mean-square value decreased down to 0.21 mm (expected 0.20 mm). On the other hand, further adjusting of the kinematic model to the third data set gives both negligible improvement of the deviations and very small alteration of the model parameters (see Tables 4 and 5). It is evident that further reduction of the parallelism deviation is bounded by the manufacturing and assembling errors or, probably, the non-geometric errors. Discussion. As follows from the above analysis, the calibration experiments confirm validity of the proposed identification technique and its ability to tune the joint offsets from observations of the leg parallelism. The achieved accuracy coincides with the quality of the Orthoglide prototype manufacturing and assembling. Another related conclusion deals with the comparison of the six-equation and twelve-equation identification methods (see subsections 3.4 and 3.5) using real data sets, which do not necessary follow the classical assumptions on the measurement errors (Gaussian zero-mean random variables). As follows from Table 5, both methods produced roughly the same values of the model parameters, however the six-equation method is more computationally attractive and, thus, more suitable for the practice. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 22 Table 4 Experimental data and expected improvements of accuracy Data Source xy xz yx yz zx zy r.m.s. mm mm mm mm mm mm mm Initial settings (before mechanical tuning and calibration) Experiment #1 +0.52 +1.58 +2.37 -0.25 -0.57 -0.04 1.19 Expected improvement -0.94 +0.63 +1.07 -0.84 -0.27 +0.35 0.74 After mechanical tuning (before calibration) Experiment #2 -0.43 -0.37 +0.42 -0.18 -1.14 -0.70 0.62 Expected improvement -0.28 +0.25 +0.21 -0.14 -0.13 +0.09 0.20 After calibration Experiment #3 -0.23 +0.27 +0.34 -0.10 -0.09 +0.11 0.21 Expected improvement -0.29 +0.23 +0.25 -0.17 -0.10 +0.08 0.20 Table 5 Model parameters obtained using the six- and twelve equation methods Experiment Calibration method Model parameters Residual r.m.s. mm x mm x mm x mm Experiment #1 Six-equation 2.17 1.69 -1.42 0.74 Twelve-equation 2.07 1.66 -1.30 0.75 Experiment #2 Six-equation -0.53 0.59 -1.76 0.20 Twelve-equation -0.52 0.55 -1.69 0.21 Experiment #3 Six-equation 0.07 0.14 0.00 0.20 Twelve-equation 0.12 0.00 0.10 0.21 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 23 5. Conclusions Recent advances in parallel robot architectures encourage related research on kinematic calibration of parallel mechanisms. This paper proposes a new calibration method for parallel manipulators, which allows efficient identification of the joint offsets using observations of the manipulator leg parallelism with respect to the base surface. Presented for the Orthoglide-type mechanisms, this approach may be also applied to other manipulator architectures that admit parallel leg motions (along the Cartesian axes) or, in more general cases, that allow locating the leg in several postures with a common intersection point. The proposed calibration technique employs a simple and low-cost measuring system composed of standard comparator indicators attached to the universal magnetic stands. They are sequentially used for measuring the deviation of the relevant leg location while the manipulator moves the tool-centre-point in the directions x, y and z. From the measured differences, the calibration algorithm estimates the joint offsets that are treated as the most essential parameters that are difficult to identify by other methods. The presented theoretical derivations deal with the sensitivity analysis of the proposed measurement method, selecting the best set of the calibration equation, and also with the calibration accuracy. It has been proved that the highest accuracy is achieved for the measuring the leg parallelism at the extreme leg postures, while additional measurements at the isotropic posture does not reduce the identification error. The validity of the proposed approach and the efficiency of the developed numerical algorithm were confirmed by the calibration experiments with the Orthoglide prototype, which allowed reducing the residual root-mean-square by three times. To increase the calibration precision, future work will focus on the development of the specific assembling fixture ensuring proper location of the linear actuators and also on the expanding the set of the identified model parameters and compensation of the non-geometric errors that are not compensated within the frames of the adopted model. References Besnard, S., Khalil, W. (2001). Identifiable parameters for parallel robots kinematic calibration. In IEEE International Conference on Robotics and Automation (pp. 2859-2866), Seoul, Korea. Caro, S., Wenger, Ph., Bennis, F. & Chablat, D. (2006). Sensitivity Analysis of the Orthoglide, a 3-DOF Translational Parallel Kinematic Machine. ASME Journal of Mechanical Design, 128 (2), 392-402. Chablat, D., Wenger, Ph. (2003). Architecture Optimization of a 3-DOF Parallel Mechanism for Machining Applications, the Orthoglide. IEEE Transactions on Robotics and Automation, 19(3), 403-410. Daney, D. (1999). Self calibration of Gough platform using leg mobility constraints. In World Congress on the Theory of Machine and Mechanisms (pp. 104–109), Oulu, Finland. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 24 Daney, D. (2003). Kinematic Calibration of the Gough platform. Robotica, 21(6), 677-690. Daney, D., Emiris I.Z. (2001). Robust parallel robot calibration with partial information. In IEEE International Conference on Robotics and Automation (pp. 3262-3267), Seoul, Korea. Fassi I., Legnani G., Tosi D. & Omodei A. (2007). Calibration of Serial Manipulators: Theory and Applications. In: Industrial Robotics: Programming, Simulation and Applications, Proliteratur Verlag, Mammendorf, Germany, (pp. 147 – 170). Hesselbach, J., Bier, C., Pietsch, I., Plitea, N., Büttgenbach, S., Wogersien, A. & Güttler, J. (2005). Passive-joint sensors for parallel robots. Mechatronics, 15(1), 43-65. Huang, T., Chetwynd, D. G., Whitehouse, D. J., & Wang, J. (2005). A general and novel approach for parameter identification of 6-dof parallel kinematic machines. Mechanism and Machine Theory, 40(2), 219-239. Innocenti, C. (1995). In Computational Kinematics’95, J-P. Merlet and B. Ravani (eds.), Algorithms for kinematic calibration of fully-parallel manipulators (pp. 241-250), Dordrecht: Kluwer Academic Publishers. Iurascu, C.C. & Park, F.C. (2003). Geometric algorithm for kinematic calibration of robots containing closed loops. ASME Journal of Mechanical Design, 125(1), 23-32. Jeong, J., Kang, D., Cho, Y.M., & Kim, J. (2004). Kinematic calibration of redundantly actuated parallel mechanisms. ASME Journal of Mechanical Design, 126(2), 307-318. Khalil, W. & Besnard, S. (1999). Self calibration of Stewart–Gough parallel robots without extra sensors. IEEE Transactions on Robotics and Automation, 15(6), 1116–1112. Legnani, G., Tosi; D., Adamini, R. & Fassi, I.. (2007). Calibration of Parallel Kinematic Machines: theory and applications. In: Industrial Robotics: Programming, Simulation and Applications, Proliteratur Verlag, Mammendorf, Germany, (pp. 171 – 194). Ljung, L. (1999). System identification : theory for the user (2nd ed), New Jersey : Prentice Hall. Merlet, J.-P. (2000). Parallel Robots. Dordrecht: Kluwer Academic Publishers. Pashkevich A., Chablat D. & Wenger P. (2006). Kinematics and workspace analysis of a three-axis parallel manipulator: the Orthoglide. Robotica, 24(1), 39-49. Pashkevich A., Wenger P. & Chablat D. (2005). Design strategies for the geometric synthesis of Orthoglide-type mechanisms. Journal of Mechanism and Machine Theory, 40(8), 907-930. Rauf, A., Kim, S.-G. & Ryu, J. (2004). Complete parameter identification of parallel manipulators with partial pose information using a new measurements device. Robotica, 22(6), 689-695. Rauf, A., Pervez A. & Ryu, J. (2006). Experimental results on kinematic calibration of parallel manipulators using a partial pose measurement device. IEEE Transactions on Robotics, 22 (2), 379-384. Renaud, P., Andreff, N., Gogu, G. & Martinet, P. (2005). Kinematic calibration of parallel mechanisms: a novel approach using legs observation. IEEE Transactions on Robotics, 21(4), 529-538. Renaud, P., Andreff, N., Pierrot, F., & Martinet, P. (2004). Combining end-effector and legs observation for kinematic calibration of parallel mechanisms. In IEEE International Conference on Robotics and Automation (pp. 4116-4121), New-Orleans, USA. Renaud, P., Vivas, A., Andreff, N., Poignet, P., Martinet, P., Pierrot, F. & Company, O. (2006). Kinematic and dynamic identification of parallel mechanisms. Control Engineering Practice, 14(9), 1099-1109 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 25 Schröer, K., Bernhardt, R., Albright, S., Wörn, H., Kyle, S., van Albada, D., Smyth, J. & Meyer, R. (1995). Calibration applied to quality control in robot production. Control Engineering Practice, 3(4), 575-580. Thomas, F., Ottaviano, E., Ros, L., & Ceccarelli, M. (2005). Performance analysis of a 3–2–1 pose estimation device. IEEE Transactions on Robotics, 21(3), 288- 297. Tlusty, J., Ziegert, J.C. & Ridgeway, S. . (1999). Fundamental comparison of the use of serial and parallel kinematics for machine tools, CIRP Annals, 48(1), 351-356. Tsai, L.W. (1999). Robot analysis: the mechanics of serial and parallel manipulators. New York:John Wiley & Sons. Wampler, C.W., Hollerbach, T.M. & Arai, T. (1995). An implicit loop method for kinematic calibration and its application to closed chain mechanisms. IEEE Transactions on Robotics and Automation, 11(5), 710–724. Wang, J. & Masory, O. (1993). On the accuracy of a Stewart platform - Part I: The effect of manufacturing tolerances. In IEEE International Conference on Robotics and Automation (pp. 114–120), Atlanta, USA. Wenger, P. & Chablat, D. (2000). Kinematic analysis of a new parallel machine-tool : the orthoglide. In 7th International Symposium on Advances in Robot Kinematics (pp. 305-314), Portoroz, Slovenie. Wenger, P., Gosselin, C. & Chablat, D. (2001). Comparative study of parallel kinematic architectures for machining applications. In Workshop on Computational Kinematics (pp. 249-258.), Seoul, Korea. Williams, I., Hovland, G. & Brogardh, T. (2006). Kinematic error calibration of the gantry-tau parallel manipulator. In IEEE International Conference on Robotics and Automation (pp. 4199-4204), Orlando, USA. Zhuang, H. (1997). Self-calibration of parallel mechanisms with a case study on Stewart platforms. IEEE Transactions on Robotics and Automation, 13(3), 387–397. Zhuang, H., Motaghedi, S.H. & Roth, Z.S. (1999). Robot calibration with planar constraints. In IEEE International Conference of Robotics and Automation (pp. 805-810), Detroit, USA. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 26 Figure captions Fig. 1. The Orthoglide mechanism - kinematic architecture (a) and general view (b). Fig 2. Kinematics of the Orthoglide leg. Fig. 3. Orthoglide simplified model (a) and its isotropic configuration (b). Fig. 4. Specific postures of the Orthoglide manipulator corresponding to the x-leg leg motion along the Cartesian axis X Fig. 5. Measuring the leg/surface parallelism using single-posture-double-sensor (a) and double-posture- single-sensor (b) methods. Fig. 6. Experimental Setup. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 27 Table 1 Sensitivity of the TCP location for the representative Orthoglide postures Posture Leg Plane Deviation Typical value* Isotropic X XY z 1.00 XZ y 1.00 Y XY z 1.00 YZ x 1.00 Z XZ y 1.00 YZ x 1.00 Max / Min X-displacement X XY T x + z 1.000.34 XZ T x + y 1.000.34 Max / Min Y-displacement Y XY T y + z 1.000.34 YZ T y + x 1.000.34 Max / Min Z-displacement Z XZ T z + y 1.000.34 YZ T z + x 1.000.34 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 28 Table 2 Expressions for the non-linear calibration model Content Expressions TCP locations   0 0 0 0 , , , , x y z x y z p p p f L L L               z y x x z x y x x LC LC LS L f p p p                  , , , , 0     z y x y z y y y x LC LS L LC f p p p                  , , , , 0     z y x z z z y z x LS L LC LC f p p p                  , , , , 0 Scaling factors x x x x x x p LS L p LS L                 2 / 2 / 2 / 0 y y y y y y p LS L p LS L                 2 / 2 / 2 / 0 z z x z z z p LS L p LS L                 2 / 2 / 2 / 0 Leg deviations 0 0 ( ) 2; ( ) 2; x x x x x y y x z z y p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; y y y y y x x y z z x p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; z z z z z x x z y y x p p y p p                   ρ ρ A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 29 Table 3 Simulation results on impact of the measurement errors for  = 0.01 mm Calibration technique std() (offset 0.1 mm) std() (offset 1.0 mm) Six-equation method 0.0198 mm (0.0003) 0.0199 mm (0.0002) Twelve-equation method 0.0207 mm (0.0003) 0.0207 mm (0.0004) A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 30 Table 4 Experimental data and expected improvements of accuracy Data Source xy xz yx yz zx zy r.m.s. mm mm mm mm mm mm mm Initial settings (before mechanical tuning and calibration) Experiment #1 +0.52 +1.58 +2.37 -0.25 -0.57 -0.04 1.19 Expected improvement -0.94 +0.63 +1.07 -0.84 -0.27 +0.35 0.74 After mechanical tuning (before calibration) Experiment #2 -0.43 -0.37 +0.42 -0.18 -1.14 -0.70 0.62 Expected improvement -0.28 +0.25 +0.21 -0.14 -0.13 +0.09 0.20 After calibration Experiment #3 -0.23 +0.27 +0.34 -0.10 -0.09 +0.11 0.21 Expected improvement -0.29 +0.23 +0.25 -0.17 -0.10 +0.08 0.20 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 31 Table 5 Model parameters obtained using the six- and twelve equation methods Experiment Calibration method Model parameters Residual r.m.s. mm x mm x mm x mm Experiment #1 Six-equation 2.17 1.69 -1.42 0.74 Twelve-equation 2.07 1.66 -1.30 0.75 Experiment #2 Six-equation -0.53 0.59 -1.76 0.20 Twelve-equation -0.52 0.55 -1.69 0.21 Experiment #3 Six-equation 0.07 0.14 0.00 0.20 Twelve-equation 0.12 0.00 0.10 0.21 Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions Anatol Pashkevich a,b, Damien Chablat b, Philippe Wenger b aÉcole des Mines de Nantes 4, rue Alfred-Kastler, 44307 Nantes Cedex 03, France e-mail: anatol.pashkevich@emn.fr bInstitut de Recherche en Communications et Cybernétique de Nantes 1, rue de la Noë B.P. 6597, 44321 Nantes Cedex 3, France e-mals: {Damien.Chablat, Philippe.Wenger }@irccyn.ec-nantes.fr Abstract The paper proposes a new calibration method for parallel manipulators that allows efficient identification of the joint offsets using observations of the manipulator leg parallelism with respect to the base surface. The method employs a simple and low-cost measuring system, which evaluates deviation of the leg location during motions that are assumed to preserve the leg parallelism for the nominal values of the manipulator parameters. Using the measured deviations, the developed algorithm estimates the joint offsets that are treated as the most essential parameters to be identified. The validity of the proposed calibration method and efficiency of the developed numerical algorithms are confirmed by experimental results. The sensitivity of the measurement methods and the calibration accuracy are also studied. Keywords: parallel robots, kinematic calibration, model identification, joint offsets, error compensation. *Corresponding author: Prof. A.Pashkevich Department of Automatics and Production Systems École des Mines de Nantes 4, rue Alfred-Kastler BP 20722 tel.: + 33 (0)251 85 83 00 fax: + 33 (0)251 85 83 49 e-mail: anatol.pashkevich@emn.fr, Pashkevich A, Chablat D. et Wenger P., “Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions”, Mechatronics, Vol. 19(4), June 2009, pp. 478-488 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 2 1. Introduction Parallel kinematic machines (PKM) are commonly claimed to offer several advantages over serial manipulators, such as high structural rigidity, better payload-to-weight ratio, high dynamic capacities and high accuracy (Tlusty et al., 1999; Merlet, 2000; Wenger et al., 2001). At present, the conventional serial kinematic structures have already achieved their performance limits, which are bounded by high component stiffness required to support sequential joints, links and actuators (Tsai, 1999). Thus, the PKM are prudently considered as promising alternatives to their serial counterparts that offer faster, more flexible, less costly and more accurate solutions. However, while the PKM usually exhibit a much better repeatability as compared to serial mechanisms, they may not necessarily posses a better accuracy, which is limited by manufacturing/assembling errors in numerous links and passive joints (Wang and Masory, 1993; Daney, 2003; Renaud et al., 2006; Fassi et al., 2007; Legnani et al., 2007). Besides, for non-Cartesian parallel architectures, some kinematic parameters (such as the encoder offsets) cannot be determined by direct measurement. These motivate intensive research on PKM calibration, which recently attracted attention of both academic and industrial experts. Similar to the serial manipulators (Schröer et al., 1995), the PKM calibration procedures are based on the minimization of a parameter-dependent error function, which incorporates residuals of the kinematic equations (i.e. differences between the measured and computed values of the sensor readings). For the parallel manipulators, the inverse kinematic equations are considered computationally more efficient, since most PKMs admit a closed-form solution of their inverse kinematics (contrary to the direct kinematics, which is analytically solvable for the serial machines but is usually unsolvable in a closed-form for the PKM) (Innocenti, 1995; Iurascu & Park, 2003; Jeong et al., 2004; Huang et al., 2005). But the main difficulty with the inverse-kinematics-based calibration is the full-pose measurement requirement (position and orientation of the end-effector), which is very hard to implement accurately (Thomas et al., 2005). Hence, a number of studies have been directed at using the subset of the pose measurement data (Daney & Emiris, 2001), which, however, creates another problem: the identifiability of the model parameters (Besnard & Khalil, 2001). Popular approaches in the parallel robot calibration deal with one-dimensional pose errors using a double-ball- bar system or other measuring devices (Rauf et al., 2004, 2006; Williams, 2006) as well as imposing mechanical constraints on some elements of the manipulator (Daney, 1999). However, in spite of hypothetical simplicity (joint measurements are needed only), it is hard to implement in practice since an accurate extra mechanism is required to impose these constraints. Additionally, such methods reduce the workspace size and consequently the identification efficiency (Zhuang et al., 1999). A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 3 Another category of the methods, the self- or autonomous calibration (Khalil & Besnard, 1999; Wampler et al., 1995; Zhuang, 1997; Hesselbach, 2005), is implemented by minimizing the residuals between the computed and measured values of the active and/or redundant joint sensors. Adding extra sensors at the usually unmeasured joints is very attractive from a computational point of view, since it allows getting the data in the whole workspace and potentially reduces impact of the measurement noise. However, only a partial set of the parameters may be identified in this way since the internal sensing is unable to provide sufficient information for the robot end-effector absolute location. Besides, in practice, these methods are not always economically and technologically feasible because usually it is hard to add these extra sensors to an existing mechanism. More recently, several hybrid calibration methods were proposed that utilize intrinsic properties of a particular parallel machine allowing one to extract the full set of the model parameters (or the most essential of them) from a minimum set of measurements. An innovative approach was developed by Renaud et al. (2004, 2005) who applied the vision-based measurement system for the parallel manipulators calibration from the leg observations. In this technique, the primary data (manipulator leg poses) are extracted from the image, without any strict assumptions on the leg locations or on the corresponding end-effector poses (only leg observability is needed). While defining advantages of this method, the authors stress that the legs can be observed more easily than the end-effector and the use of a camera does not imply any modification of the mechanism. The only assumption is related to the manipulator architecture (the mechanism is actuated by linear drives located on the base). However, current accuracy of the camera-based measurements is not high enough yet to widely apply this method in industrial environment. This paper focuses on the identification of the most essential subset of geometrical parameters (joints offsets) for the Orthoglide-type mechanisms. These mechanisms are actuated by linear drives located on the manipulator base and therefore admits technique of Renaud et al. (2004, 2005) for calibration from the leg observations. But, in contrast to the known works, our approach assumes that the leg location is observed for specific manipulator postures, when the tool-center-point moves along the Cartesian axes. For these postures and the nominal geometrical parameters, the legs are strictly parallel to the corresponding Cartesian planes. So, the deviation of the manipulator parameters influences on the leg parallelism that gives the source data for the parameter identification. The main advantage of this approach is the simplicity and low cost of the measuring system that can avoid using computer vision. It is composed of standard comparator indicators attached to the universal magnetic stands. It is obvious that such hardware perfectly suits industrial requirements. The remainder of the paper is organized as follows. Section 2 describes the manipulator geometry, its inverse and direct kinematics, and also contains the sensitivity analysis of the leg parallelism at the examined postures with respect to the joint encoder offsets. Section 3 focuses on the parameter identification, with particular emphasis on A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 4 the calibration accuracy under the measurement noise and selection the best set of the calibration equations. Section 4 contains experimental results that validate the proposed technique, while Section 5 summarizes the main results and contribution of the paper. 2. Kinematic modelling 2.1. Manipulator geometry The Orthoglide is a three degrees-of-freedom parallel manipulator actuated by linear drives with mutually orthogonal axes. Its kinematic architecture is presented in Fig. 1 and includes three identical parallel chains, which will be further referred as “legs”. Kinematically, each leg is formally described as PRPaR - chain, where P, R and Pa denote the prismatic, revolute, and parallelogram joints respectively (Fig.2). The output machinery (with a tool mounting flange) is connected to the legs in such a manner that the tool moves in the Cartesian x-y-z space with fixed orientation (translational motions). (a) (b) Fig. 1. The Orthoglide mechanism - kinematic architecture (a) and general view (b). P Ai i Bi Ci L d r ii ji Fig 2. Kinematics of the Orthoglide leg. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 5 In Figs. 1, 2, the base points A1, A2 and A3 are fixed on the ith linear axis such that A1A2 = A1A3 = A1A2 , the point Bi is at the intersection of the first revolute axis ii and the second revolute axis ji of the ith parallelogram, and the point Ci is at the intersection of the last two revolute joints of the ith parallelogram. When each BiCi is aligned with the linear joint axis AiBi , the Orthoglide is in an isotropic configuration and the tool centre point P is located at the intersection of the linear joint axes. In this posture, the base points A1, A2 and A3 are equally distant from P. The symmetric design and the simplicity of the kinematic chains (all joints have only one degree of freedom) contribute to lower the Orthoglide manufacturing cost. The Orthoglide is free of singularities and self-collisions. Its workspace has a regular, quasi-cubic shape. The input/output equations are simple and the velocity transmission factors are equal to one along the x, y and z direction at the isotropic configuration, like in a serial PPP machine (Wenger et al., 2000). The latter is an essential advantage of the Orthoglide architecture with respect to the machining applications. Another specific feature of the Orthoglide mechanism, which will be further used for calibration, is displayed during the end-effector motions along the Cartesian axes. For example, for the x-axis motion in the Cartesian space, the sides of the x-leg parallelogram must also retain strictly parallel to the x-axis. Hence, the observed deviation of the mentioned parallelism may be used as the data source for the calibration algorithms. For a small-scale Orthoglide prototype used in for the experimental part of the paper, the workspace size is approximately equal to 200200200 mm3 with the velocity transmission factors bounded between 1/2 and 2 (Chablat & Wenger, 2003). The legs nominal geometry is defined by the following parameters: L = 310.25 mm, d = 80 mm, r = 31 mm where L, d are the parallelogram length and width, and r is the distance between the points Ci and the tool centre point P (see Fig. 2). Within the workspace, the manipulator is able to reach the Cartesian velocity of 1.2 m/s and the acceleration of 17 m/s2 while carrying a payload of 4 kg. 2.2. Modelling assumptions Following previous studies on the parallel mechanism accuracy (Wang & Massory, 1993; Renaud et al., 2004, Caro et al., 2006), the influence of the joint/link defects is assumed relatively small compared to the joint positioning errors that are mainly caused by the encoder offsets. The latter is also justified by the authors experience with the Orthoglide prototype, where manufacturing tolerances 0.01 mm for the links and joints were achieved relatively easily, using common commercially available equipment. However, usual assembling techniques produced the joint offset errors about 0.5 mm and motivated development of dedicated calibration method that are presented in this paper. These methods are based on the following modelling assumptions that are partially validated during the experimental study (see Section 4): A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 6 (i) the manipulator parts are supposed to be rigid-bodies connected by perfect joints, without clearances; (ii) the articulated parallelograms are assumed to be identical and perfect, which insure that their sides stay parallel in pares for any motions; (iii) the manipulator legs (composed of one prismatic joint, one parallelogram, and two revolute joints) are identical and generate a four degree-of-freedom motion each; (iv) the linear actuator axes are mutually orthogonal and intersected in a single point to insure a translational three degree-of-freedom movement of the end-effector; (v) The actuator encoders are assumed to be perfect but their location (zero position) is defined with some errors that are treated as the offsets to be estimated. Using these assumptions, an efficient calibration technique will be developed based on the observation of the parallel motions of the manipulator legs. 2.3. Kinematic model Let us first briefly present the Orthoglide kinematic model, which is described in details in the previous papers (Chablat & Wenger, 2003; Pashkevich et al., 2006). Under the adopted assumptions, the articulated parallelograms may be replaced by kinematically equivalent single rods of the same length. Besides, a simple transformation of the Cartesian coordinates (the shift by the vector (r, r, r)T ) allows to eliminate the tool offset. Hence, the Orthoglide geometry can be described by a simplified model, which consists of three rigid links connected by spherical joints to the tool centre point (TCP) at one side and to the allied prismatic joints at another side (Fig. 3). Corresponding formal definition of each leg can be presented as PSS, where P and S denote the actuated prismatic joint and the passive spherical joint respectively. x y z (x, 0, 0) (0, y, 0) (0, 0, z) (px, py, pz) O (a) x y z x = L O p=0 y = L z = L (b) Fig. 3. Orthoglide simplified model (a) and its isotropic configuration (b). Thus, if the origin of the reference frame is located at the intersection of the prismatic joint axes and the x, y, z- axes are directed along them, the manipulator geometry may be described by the following equations A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 7   2 2 2 2 ( ) x x x y y p p p L        2 2 2 2 ( ) x y y y z p p p L            (1)   2 2 2 2 ( ) x y z z z p p p L        where p = (px, py, pz) is the output position vector,  = (x, y, z) is the input vector of the prismatic joints variables,  = (x, y, z) is the encoder offset vector, and L is the length of the parallelogram principal links. Besides, we assume that the joint variables satisfy the following prescribed joint limits   min max; , , i i x y z       (2) defined in the control software (for the Orthoglide prototype studied here, they were set as min=-100 mm and min=+60 mm). It should be noted that, for this convention and for the case  = (0, 0, 0), the nominal isotropic posture of the manipulator corresponds to the Cartesian coordinates p0 = (0, 0, 0) and to the joints variables 0 = (L, L, L), see Fig. 3b. In this posture, moreover, the x-, and y-legs are oriented strictly parallel to the Cartesian plane XY. But the joint offsets cause the deviation of the TCP location and corresponding deviation of the parallelism, which may be computed applying the direct kinematic algorithm for the joint variables  = (L+x, L+y, L+z). On the other hand, in the calibration experiments, this deviation can be detected by evaluating the parallelism of the x- and y-legs with respect to the manipulator base surface (xy-plane). This can be easily done by measuring distances from the leg ends to the base surface and computing the difference. However, the capability of this technique is limited by evaluating the offset of the z-axis encoder only, since the Orthoglide mechanical design does not allow making similar measurements for the remaining pairs of the legs, with respect to the xz- and yz-planes. Hence, within the adopted model, four parameters (x, y, z, L) define the manipulator geometry, but because of the rather tough manufacturing tolerances used for the prototype, the leg link is assumed to be known and only the joint offsets (x, y, z) are in the focus of the proposed calibration technique. 2.4. Inverse and direct kinematics To derive calibration equations, first let us expand some previous results on the Orthoglide kinematics (Pashkevich et al., 2006) taking into account the encoder offsets. The inverse kinematic relations are derived from the equations (1) in a straightforward way and only slightly differ from the “nominal” case 2 2 2 x x x y z x p s L p p        2 2 2 y y y x y y p s L p p        (3) 2 2 2 z z z x y z p s L p p        A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 8 where sx, sy, sz  { ±1} are the configuration indices defined for the “nominal” manipulator as signs of x – px , y – py, z – pz, respectively. It is obvious that expressions (3) define eight different solutions to the inverse kinematics, however the Orthoglide assembling and joint limits reduce this set for a single case corresponding to the sx= sy= sz= 1. For the direct kinematics, the equations (1) can be subtracted pair-to-pair that gives the following expression for the unknowns px, py, pz (for details, see Pashkevich et al., 2005)   ; , , 2 i i i i i t p i x y z          (4) where t is an auxiliary scalar variable. This reduces the direct kinematics to the solution of a quadratic equation At2 + Bt + BC = 0 with coefficients ( )( ) ( )( ) ( )( ) x x y y x x z z y y z z A                      ; 2 2 2 ( ) ( ) ( ) x x y y z z B           ;   2 2 2 2 ( ) ( ) ( ) 4 4 x x y z z z C L              . Of the two possible solutions 2 ( 4 ) (2 ) t B m B ABC A    , 1 m  of the quadratic formula, only the one corresponding to m=+1 is admitted by the orthoglide prototype (because of the selected assembly mode). 2.5. Sensitivity analysis To evaluate the encoder offset influence on the legs parallelism with respect to the Cartesian planes XY, YZ, and YZ, let us derive first the differential relations for the TCP deviation for three types of the Orthoglide postures: (i) “maximum displacement” postures for the directions x, y, z (Fig. 4a); (ii) isotropic posture in the middle of the workspace (Fig. 4b); (iii) “minimum displacement” postures for the directions x, y, z (Fig. 4c); XMax posture Isotropic posture XMin posture x y z x = L + L sin O p y = L cos z = L cos   x y z x = L O p y = L z = L x y z x = L - L sin O p y = L cos z = L cos   Fig. 4. Specific postures of the Orthoglide manipulator (corresponding to the x-leg leg motion along the Cartesian axis X ) A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 9 These postures are of particular interest for the calibration since in the “nominal” case (zero encoder offsets) the corresponding leg is parallel to the relevant pair of the Cartesian planes. On the other hand, the considered parallelism can be perturbed by the deviation of the TCP that defines location of points Ci (see Fig. 2), while the opposite sides of the legs are mechanically constrained by the actuator joint axes (points Bi in Fig.2). The differential kinematical model may be derived from the Orthoglide Jacobian, the inverse of which is obtained from (1) in a straightforward way (see Pashkevich et al., 2006 for details): 1 1 ( , ) 1 1 y z x x x x x z y y y y y x z z z z p p p p p p p p p p p p                                      ρ J p ρ p (5) It should be noted that, for computing convenience, the above expression includes both the Cartesian coordinates , , x y z p p p and the joint coordinates , , x y z   , but only one of these sets may be treated as independent because of the inverse/direct kinematic relations. For the isotropic posture, the differential relations are computed in the neighbourhood of the point p0 = (0, 0, 0) and 0 = (L, L, L), which after substitution to (5) gives the identity Jacobian matrix 0 0 3 3 ( , )   J p ρ I (6) It means that in this case the TCP displacement is related to the joint offsets by trivial equations   , , , i i p i x y z     , (7) and each joint offset influences on the TCP deviation independently and with the scaling factor of 1.0 . Taking into account the Orthoglide geometry, this deviation may be estimated by evaluating parallelism of the legs with respect to the Cartesian planes (i.e. measuring difference of distances from the leg ends to the relevant plane). However, as mentioned in subsection 2.3, this technique is feasible for the z-direction only, hence it may produce an estimation of z merely. For the “maximum displacement” posture in the x-direction (see Fig. 4a), the differential relations are derived in the neighbourhood of the point ( sin , 0, 0) L   p ; ( sin , cos , cos ) L L L L      ρ where  is the angle between the y-, z-legs and corresponding Cartesian axes: max asin( / ) L    . After the substitution into (5), this gives the inverse Jacobian as a lower triangle matrix, which admits analytical inverse yielding A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 10   1 0 0 ( ), ( ) 1 0 0 1 T T               J p ρ , (8) where tan( ) T   . Hence, the differential equations for the TCP displacement may be written as ; ; x x y x y z x z p p T p T                  (9) and the joint offset influences on the TCP deviation is estimated by factors 1.0 and T. It is also worth mentioning that measurement of the x-leg parallelism with respect to the XY-plane gives an equation for estimating the offset x (provided that the offset z has been obtained from the isotropic posture). Similar results are valid for the “maximum displacement” postures in the y- and z-directions (differing by the indices only), and also for the “minimum displacement” postures. In the latter case, the angle  should be computed from an equation min asin( / ) L    . Table 1. Sensitivity of the TCP location for the representative Orthoglide postures Posture Leg Plane Deviation Typical value* Isotropic X XY z 1.00 XZ y 1.00 Y XY z 1.00 YZ x 1.00 Z XZ y 1.00 YZ x 1.00 Max / Min X-displacement X XY T x + z 1.000.34 XZ T x + y 1.000.34 Max / Min Y-displacement Y XY T y + z 1.000.34 YZ T y + x 1.000.34 Max / Min Z-displacement Z XZ T z + y 1.000.34 YZ T z + x 1.000.34 The results on the TCP sensitivity with respect to the joint offsets are summarized in Table 1 that gives also numerical values corresponding to the hypothetical joint offset  = (1 mm, 1 mm, 1 mm) and to the angle  = 20° that are typical for the Orthoglide prototype studied in the experimental part of the paper. Analysis of these values allows concluding that the leg parallelism is rather sensitive to the joint offsets. Thus, relevant deviations px, py, pz, may be used for the offset identification. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 11 3. Calibration methods 3.1 Measurement techniques To identify the Orthoglide kinematic parameters specified in the previous section, we propose two calibration methods, which employ different measurement techniques for the leg/surface parallelism. The first of them (Fig. 5a) assumes two measurements for the same leg posture (to assess distances from both leg ends to the base surface). The second technique assumes a fixed location of the measuring device but two distinct leg postures, which ensure positioning of the leg ends in the neighbourhood of the device. It is obvious that, for the perfectly calibrated manipulator, both methods give zero differences for each measurement pair. Conversely, the non-zero differences contain source information for the joint offset identification. The following sub-sections contain detailed descriptions of these measurement techniques and relevant identification procedures. In particular, sub-sections 3.2 and 3.3 introduce respectively the single- and double-pose methods along with corresponding literalised calibration equations. Sub-section 3.4 describes a non-linear calibration routine that is based on the minimisation of the residual-square sum. Finally, sub-section 3.5 focuses on the calibration accuracy and sensitivity to the measurement noise. (a) absolute measurements (b) relative measurements Manipulator legs d1 d2 zx + = d2 - d1 Base plane Manipulator legs d1 Manipulator legs d2 Base plane Base plane Posture #1 Posture #2 zx + = d2 - d1 Fig. 5. Measuring the leg/surface parallelism using single-posture-double-sensor (a) and double-posture-single-sensor (b) methods. 3.2. Calibration using single-posture measurements Using the single-posture measurements and taking into account the Orthoglide design limitations allowing locating gauges on the XY surface only (i.e. for the z-direction measurements), the calibration experiment may be arranged in the following way. Step 1. Locate the manipulator in the isotropic posture and measure parallelism of the X- and Y-legs with respect to the XY-surface: 0 xz  , 0 yz  A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 12 Step 2. Locate sequentially the manipulator in the “X-maximum” and “X-minimum” postures and measure parallelism of the X- legs with respect to the XY-surface: + xz  , xz  Step 3. Locate sequentially the manipulator in the “Y-maximum” and “Y-minimum” postures and measure parallelism of the Y- legs with respect to the XY-surface: + yz  , yz  In the above description, the variable following the -symbol denotes the measurement direction (z in all cases), the subscript defines the manipulator leg, and the superscript indicates the manipulator posture for this leg. For example, + xz  denotes the z-direction deviation of the X-leg for the “X-maximum” posture. Using expressions from sub-section 2.5 presented in Table 1, the system of the calibration equations may be written as follows 0 0 1 2 1 2 0 0 1 0 0 1 0 1 0 1 0 1 0 1 x y x x y x z y y z z a z a z a z a z                                                                 (10) where 1 1 a T  and 2 2 a T  , which may be also computed as 2 2 1 max max a L     and 2 2 2 min min a L     . For instance, for the Orthoglide prototype (see subsection 2.1) a10.20 and a2-0.34. This overdetermined system of six linear equations in three unknowns may be solved in a straightforward way, using the Moore-Penrose pseudoinverse. However, from the application point of view, it is worth to separate the equations for three pairs and sequentially solve them for x, y, z : this approach yields the following expressions for the joint offsets 0 0 1 2 2 2 1 2 1 2 2 2 1 2 2 ( ) ( ) ( ) ( ) x y z x z x z x y z y z y z z a z a z a a a z a z a a                                (11) which are computationally convenient but may produce slightly higher residuals than the standard pseudoinverse. However, the measurement procedure for this method is rather complicated in comparison with an alternative one, described in the following subsection. It should be stressed that the single-posture method requires separate measurements of 1d and 2 d (see Fig. 5a) that are further used for computing the difference 2 1 d d  , while the alternative technique directly evaluates this difference using a single measuring device. It is obvious that the first A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 13 method is based on the absolute measurements that are very sensitive to the gauge calibration, while the second approach (based on the relative measurements) does not require any calibration of the gauges. 3.3. Calibration using double-posture measurements Since in this case a single gauge is used only, it is possible to assess the leg parallelism with respect to both relevant planes (XY and XZ for the X-leg, for instance). This advantage is charged however by using two legs postures, allowing sequentially locating both leg ends close to the gauge. For this measuring technique, the calibration experiment may be arranged in the following way: Step 1. Locate the manipulator in the isotropic posture and place two gauges in the middle of the X-leg ensuring required measurement directions (orthogonal to the leg and parallel to the Cartesian axes Y and Z); get the gauge readings. Step 2. Locate sequentially the manipulator in the “X-maximum” and “X-minimum” postures, get the gauge readings, and compute differences + xy  , + xz  , xy  , xz  Step 3+. Repeat steps 1, 2 for the Y- and Z-legs and compute differences + yx  , + yz  , yx  , yz  , and + zx  , + zy  , zx  , zy  . The system of calibration equations can be also derived using expressions from Table 1, but in two steps. First, it is required to define the gauge location that is assumed to be positioned at the leg middle point in the isotropic posture.* Hence, for the X-leg for instance, it is the midpoint of the line segment bounded by the TCP (x, y, z) and the centre of the X-axis prismatic joint (L+x, 0, 0). This yields the following differential expressions for the leg midpoints: 2 ; 2 ; 2 2 ; 2 ; 2 2 ; 2 ; 2 ( ) ( ) ( ) x y z x x z x y z L L L                   X - leg Gauges : Y - leg Gauges : Y - leg Gauges : Afterwards, in the “X-maximum” posture, the X-leg location is also defined by two points, namely, (i) the TCP, and (ii) the centre of the X-axis prismatic joint. Their coordinates are defined as follows (see Fig. 4a and Table 1) ; ; ; 0 ; 0 ( ) ( ) x x y x z x LS T T L LS                  Tool centre point : X - joint centre : Then, the equations of a straight-line passing along the X-leg may be written as ( ) (1 ) ( ) ( ); ( ) x x x y x z x LS L LS y T z T                           (12) *This assumption is not critical here because, as follows from relevant analysis, potential errors in the initial location of the gauge produce identification errors that are negligible as compared to the measurement noise. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 14 where sin( ); tan( ) S T       , and  is a scalar parameter, [0, 1]. Since the gauge x-coordinate remains the same independently of the current posture, the parameter  may be obtained from the equation 2 x x L    , which gives the following solution: 0.5 S   . (13) Hence, the Y- and Z-gauge readings for the X-leg in the “X-maximum” posture are (0.5 ) (0.5 ) (0.5 ) (0.5 ) x y x z y S T S z S T S                       (14) and, finally, the deviations of the X-leg measurements while it changes its posture from the “X-maximum” to the isotropic one are (0.5 ) (0.5 ) x x y x x z y S T S z S T S                         (15) A similar approach may be applied to the “X-minimum” posture, as well as to the equivalent postures for the Y- and Z-legs. This gives the following system of twelve linear equations in three unknowns 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2 2 1 1 1 1 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 0 y x y x z x y y z z y z x z x b c x c b y b c x c b y b c y c b z b c y c b z b c x c b z b c x c b z                                                                                                                   (16) where sin ; (0.5 sin ) tan i i i i i b c       and 1 max asin( ) 0; L     2 min asin( ) 0 L     . For instance, for the Orthoglide prototype (see subsection 2.1) b1  0.19, c1  0.14 and b2  -0.32, c2  0.06. The reduced version of this system may be obtained if one assesses the leg/plane parallelism by the difference between the “maximum” and “minimum” postures. The latter leads to the system of six linear equations in three unknowns A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 15 0 0 0 0 0 0 y x x z y y z z x x b c y c b y b c z c b x b c z c b                                                            (17) where 1 2 1 2 ; b b b c c c     and y y y x x x      ; x x x y y y      , etc. For the Orthoglide prototype this values are as follows: b  0.52, c  0.20. Both systems (16) and (17) may be solved using the pseudoinverse of Moore-Penrose, which ensures minimizing the residual square sum. But as follows from the simulation study, for rather essential joint offsets (about 5 mm and more) the differential equations may produce non-accurate results. For this reason, the next subsection focuses on the non-linear calibration equations and their solution through the straightforward minimization of the square sum of the residuals. 3.4. Non-linear calibration equations From a general point of view, the considered calibration problem may be presented as the fitting of the experimental data to the Orthoglide kinematic model incorporating the joint offsets. Hence, it is necessary to obtain numerical algorithms that allow computing all the examined deviations for any given offsets. To present relevant results in a concise form, let us introduce special notations for the direct and inverse kinematic models of the “nominal” Orthoglide (with zero offsets): 1 0 0 ( ); ( ) f f if     p ρ ρ p ρ 0 (18) Then, in the isotropic posture, the TCP position may be expressed as   0 0 0 0 , , , , x y z x y z p p p f L L L           , (19) while expressions for the position of the prismatic joints remain the same: 0 0 0 0 0 0 ( ) ( ) ( ) x y z L L L       sma X - leg Prismatic Joint : Y - leg Pri tic Joint : Y - leg Prismatic Joint : Hence, the leg midpoints defining the gauge locations may be computed as follows: 0 0 0 2 ( ) 2; 2; 2; g g g x x x x y x z x L p y p z p       0 0 0 2; 2 ( ) 2; 2; g g g y x y y y y z x p y L p z p       (20) 0 0 0 2; 2; 2 ( ) 2; g g g z x z y z z z x p y p z L p       where the subscripts ‘x, y, z’ define the leg and the subscript ‘g’ refers to the gauge. For the “X-maximum” posture, the TCP position is computed as A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 16   0 , , , , x x x x y z x y z p p p f L LS LC LC                  , (21) where cos( ); sin( ) C S       , while the position of the X-link prismatic joints is described by the expression ( ; 0; 0) x L LS    . Hence, the equations of a straight-line passing along the X-leg may be written as (1 ) ( ) ; x x x x x y z x p L LS y p z p                 (22) where  is a scalar parameter, as above, which is determined by the x-coordinate of the gauge g x x x  . Solution of this equation yields 0 2 2 2 x x x x x x L LS p L LS p               (23) that allows one to compute the Y- and Z-gauge readings for the X-leg as x x y p    and x x zp    respectively and to get the final expression for the desired deviations of the X-leg: 0 0 ( ) 2 ( ) 2 x x x y y x x x z z y p p z p p                   ρ ρ (24) where symbol (.) is used to distinguish functions of the joint offsets  and the experimental values, which are denoted by . A similar approach may be applied to the “X-minimum” posture, as well as to the equivalent postures for the Y- and Z-legs. Relevant expressions are summarized in Table 2 where symbol ‘’ stands for both the “maximum” and “minimum” postures and angle  is defined by the joint limits: 1 max asin( ) 0; L     2 min asin( ) 0 L     . The obtained expressions allow posing the following optimisation problem for the joint offset identification     2 2 ( ) ( ) min y y z z F x x x x                ρ ρ ρ K , (25) which gives the desired values of x, y, z. It may be also presented in the reduced form by replacing the pairs of the deviations ( , ) y y x x     , ( , ) x x y y     , etc. by their differences y y y x x x      ; x x x y y y      , etc. Both problems may be solved numerically by means of the standard gradient search technique using the Jacobians from Eqs. 16 and 17. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 17 Table 2 Expressions for the non-linear calibration model Content Expressions TCP locations   0 0 0 0 , , , , x y z x y z p p p f L L L               z y x x z x y x x LC LC LS L f p p p                  , , , , 0     z y x y z y y y x LC LS L LC f p p p                  , , , , 0     z y x z z z y z x LS L LC LC f p p p                  , , , , 0 Scaling factors x x x x x x p LS L p LS L                 2 / 2 / 2 / 0 y y y y y y p LS L p LS L                 2 / 2 / 2 / 0 z z x z z z p LS L p LS L                 2 / 2 / 2 / 0 Leg deviations 0 0 ( ) 2; ( ) 2; x x x x x y y x z z y p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; y y y y y x x y z z x p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; z z z z z x x z y y x p p y p p                   ρ ρ 3.5. Calibration accuracy Because of the measurement noise, the developed technique may produce the biased estimates of the model parameters. Thus, for practical application, it is worth to evaluate the statistical properties of the calibration errors. Within the linear calibration equations, the impact of the measurement noise may be evaluated using general techniques from the identification theory, under the standard assumptions concerning the measurement errors i : zero-mean independent and identically distributed Gaussian random variables with the standard deviation . Let us consider separately two cases corresponding to the six-equation and twelve-equation systems (7), (8), since they differ in residual covariance. For both linear systems (16) and (17), the variance-covariance matrix of the identification parameters is written as (Ljung, 1999) 1 1 ( ) ( ) ( ) ( ) T T T T         V ρ J J J E s s J J J (26) where E(.) denotes the mathematical expectation, J is the Jacobian, and s is the vector of the measurement errors. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 18 In the six-equation case, the vector s consists of the statistically independent components corresponding to the deviations , , y x z x y y    K and is expressed through differences of the measurement errors at the min/max leg postures: (6) , , , T y y x x x x x x y y z z                      s K . (27) where the subscripts and the superscripts are defined similar to subsection 3.4. Hence, the covariance is the 66 identity matrix   2 (6) (6) 6 6 2 T I       E s s (28) and the expression (26) is reduced to 1 2 (6) (6) ( ) 2( ) T      V ρ J J (29) However, in the twelve-equation case, the vector s includes some dependent components 0 0 0 0 0 (6) , , , , T y x x x y x x x x z x x y y x x y y z z                           s K , (30) corresponding to the pairs ( , ) y y x x     , ( , ) x x y y     …( , ) x x z z     , since each leg deviations are measured twice (for the Max/Min postures) but with respect to the same isotropic location. So, the covariance is the 1212 non- identity matrix   2 (12) (12) 12 12 T       E s s G (31) expressed as 4 4 12 12 4 4 4 4 4 4 2 0 1 0 0 2 0 1 ; 1 0 2 0 0 1 0 2                              G 0 0 G 0 G 0 G 0 0 G . Consequently, the covariance (26) is presented as 1 1 2 (12) (12) (12) (12) (12) (12) ( ) ( ) ( ) T T T         V ρ J J J G J J J (32) These expressions allow us to compute a scalar performance measure for the calibration accuracy   that may be defined as the square-averaged standard deviation of the calibration errors for the joint offsets x, y, z   1 ( ) 3trace     V ρ (33) where the subscript ‘’ is used for distinguishing with the standard deviation of the measurement noise . For the Orthoglide prototype described in subsection 2.1, the latter expression yields 2.06      in the case of twelve equations and 1.98      in the six-equation case. This justifies using the six-equation method because of simplicity and slightly higher identification accuracy in comparison with the twelve-equation technique. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 19 While confirming this conclusion theoretically, it is worth mentioning that reduction of the equation number from 12 to 6 usually increases the calibration error by the factor 2 . However, using the deviations , , y x z x y y    K (measured between the Max and Min postures) instead of , , y y z x x y       K (measured between the isotropic and Max/Min postures) increases the deviation measurement sensitivity that gives reduction of   1 ( ) T trace  J J . In particular, for the case study, max 0.19 L   and min 0.32 L   while max min ( ) 0.52 L     . It means that the sensitivity increase compensates reduction of the equation number. For the non-linear calibration equations (see subsection 3.4), the impact of the measurement errors was investigated using the Monte-Carlo method. The simulation results (obtained for 20 replications with 10000 runs for  = 0.01 mm and two values of ) are presented in Table 3. They coincide with the above linear-approximation expressions and also justify advantages of the six-equation method for the practical applications. Table 3 Simulation results on impact of the measurement errors for  = 0.01 mm Calibration technique std() (offset 0.1 mm) std() (offset 1.0 mm) Six-equation method 0.0198 mm (0.0003) 0.0199 mm (0.0002) Twelve-equation method 0.0207 mm (0.0003) 0.0207 mm (0.0004) 4. Experimental results 4.1. Experimental setup The measuring system is composed of standard comparator indicators attached to the universal magnetic stands allowing fixing them on the manipulator bases. The indicators have a resolution of 10 m and are sequentially used for measuring the X-, Y-, and Z-leg parallelism while the manipulator moves between the Max, Min and isotropic postures (it is obvious that for industrial applications, it is better to use more sophisticated, high precision digital indicators with the resolution of 1 m or less, which yield more accurate calibration results). For each measurement, the indicators are located on the mechanism base in such a manner that a corresponding leg is admissible for the gauge contact for all intermediate posters (Fig. 6). The Min and Max postures are A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 20 constrained by the software joint limits and defined as min=-100 mm and max= 60 mm respectively. The initial position of the indicator corresponds to the leg middle for the manipulator isotropic posture. Fig. 6. Experimental Setup. During experiments, the legs were moved sequentially via the following postures: Isotropic  Max  Min  Isotropic  … . To reduce the measurement errors, the measurements were repeated three times for each leg. Then, the results were averaged and used for the parameter identification. It should be noted that the measurements demonstrated very high repeatability compared to the encoder resolution (dissimilarity was less than 0.02 mm). 4.2. Calibration results and their analysis To validate the developed calibration technique and the adopted modelling assumptions, we carried out three experiments targeted to the following objectives: Experiment #1: validation of modelling assumptions (it lead to the mechanical retuning ) Experiment #2: collecting experimental data used for the parameter identification; Experiment #3: validation of calibration results using the identified model parameters. Experiment #1. The first calibration experiment produced rather high parallelism deviation, up to 2.37 mm as shown in Table 4. It was unexpected since the Orthoglide demonstrated quite good quality and accuracy of milling in previous tests. However, the milling tests were perfect just because of the high uniformity of the Orhoglide workspace due to the advantages of the manipulator architecture. The straightforward application of the proposed calibration algorithm to this data set was not optimistic: in the frames of the adopted kinematic model, the root-mean-square (r.m.s.) deviation for the legs can be reduced down from 1.19 mm to 1.07 mm only (see Table 4). On the other hand, the statistical estimation of the measurement noise parameter  (based on the residual analysis) also yielded an unrealistic result:   1.0 mm. It impels to conclude that the manipulator mechanics requires more careful tuning, especially location of the linear actuator axes that are A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 21 assumed to be mutually orthogonal and intersected in a single point (see subsection 2.2). Thus, the manipulator mechanics was retuned, in particular the locations of the actuator axes were adjusted mechanically using the single- pose measurement technique described in subsection 3.2. Experiment #2. The second calibration experiment (after mechanical tuning) yielded lower parallelism deviations, less than 0.70 mm (see Table 4), which is on average twice better than in the first experiment. For these data, the developed calibration algorithm yielded the joint offsets that are expected to reduce the root-mean-square deviation down from 0.62 mm to 0.28 mm, i.e. by three times. Besides, the estimated value of   0.28 mm is more realistic taking into account both the measurement accuracy and the manufacturing/assembling tolerances. Accordingly, the identified values of the joint offsets x = -0.53 mm, y = 0.59 mm, y = -1.76 mm were incorporated in the Orthoglide control software. Experiment #3. The third experiment was targeted to the validation of the calibration results, i.e. assessing the leg parallelism while using the model parameters identified from the second data set. It demonstrated very good agreement with the expected values of xy, xz, …zy. In particular, the maximum deviation reduced down to 0.34 mm (expected 0.28 mm), and the root-mean-square value decreased down to 0.21 mm (expected 0.20 mm). On the other hand, further adjusting of the kinematic model to the third data set gives both negligible improvement of the deviations and very small alteration of the model parameters (see Tables 4 and 5). It is evident that further reduction of the parallelism deviation is bounded by the manufacturing and assembling errors or, probably, the non-geometric errors. Discussion. As follows from the above analysis, the calibration experiments confirm validity of the proposed identification technique and its ability to tune the joint offsets from observations of the leg parallelism. The achieved accuracy coincides with the quality of the Orthoglide prototype manufacturing and assembling. Another related conclusion deals with the comparison of the six-equation and twelve-equation identification methods (see subsections 3.4 and 3.5) using real data sets, which do not necessary follow the classical assumptions on the measurement errors (Gaussian zero-mean random variables). As follows from Table 5, both methods produced roughly the same values of the model parameters, however the six-equation method is more computationally attractive and, thus, more suitable for the practice. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 22 Table 4 Experimental data and expected improvements of accuracy Data Source xy xz yx yz zx zy r.m.s. mm mm mm mm mm mm mm Initial settings (before mechanical tuning and calibration) Experiment #1 +0.52 +1.58 +2.37 -0.25 -0.57 -0.04 1.19 Expected improvement -0.94 +0.63 +1.07 -0.84 -0.27 +0.35 0.74 After mechanical tuning (before calibration) Experiment #2 -0.43 -0.37 +0.42 -0.18 -1.14 -0.70 0.62 Expected improvement -0.28 +0.25 +0.21 -0.14 -0.13 +0.09 0.20 After calibration Experiment #3 -0.23 +0.27 +0.34 -0.10 -0.09 +0.11 0.21 Expected improvement -0.29 +0.23 +0.25 -0.17 -0.10 +0.08 0.20 Table 5 Model parameters obtained using the six- and twelve equation methods Experiment Calibration method Model parameters Residual r.m.s. mm x mm x mm x mm Experiment #1 Six-equation 2.17 1.69 -1.42 0.74 Twelve-equation 2.07 1.66 -1.30 0.75 Experiment #2 Six-equation -0.53 0.59 -1.76 0.20 Twelve-equation -0.52 0.55 -1.69 0.21 Experiment #3 Six-equation 0.07 0.14 0.00 0.20 Twelve-equation 0.12 0.00 0.10 0.21 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 23 5. Conclusions Recent advances in parallel robot architectures encourage related research on kinematic calibration of parallel mechanisms. This paper proposes a new calibration method for parallel manipulators, which allows efficient identification of the joint offsets using observations of the manipulator leg parallelism with respect to the base surface. Presented for the Orthoglide-type mechanisms, this approach may be also applied to other manipulator architectures that admit parallel leg motions (along the Cartesian axes) or, in more general cases, that allow locating the leg in several postures with a common intersection point. The proposed calibration technique employs a simple and low-cost measuring system composed of standard comparator indicators attached to the universal magnetic stands. They are sequentially used for measuring the deviation of the relevant leg location while the manipulator moves the tool-centre-point in the directions x, y and z. From the measured differences, the calibration algorithm estimates the joint offsets that are treated as the most essential parameters that are difficult to identify by other methods. The presented theoretical derivations deal with the sensitivity analysis of the proposed measurement method, selecting the best set of the calibration equation, and also with the calibration accuracy. It has been proved that the highest accuracy is achieved for the measuring the leg parallelism at the extreme leg postures, while additional measurements at the isotropic posture does not reduce the identification error. The validity of the proposed approach and the efficiency of the developed numerical algorithm were confirmed by the calibration experiments with the Orthoglide prototype, which allowed reducing the residual root-mean-square by three times. To increase the calibration precision, future work will focus on the development of the specific assembling fixture ensuring proper location of the linear actuators and also on the expanding the set of the identified model parameters and compensation of the non-geometric errors that are not compensated within the frames of the adopted model. References Besnard, S., Khalil, W. (2001). Identifiable parameters for parallel robots kinematic calibration. In IEEE International Conference on Robotics and Automation (pp. 2859-2866), Seoul, Korea. Caro, S., Wenger, Ph., Bennis, F. & Chablat, D. (2006). Sensitivity Analysis of the Orthoglide, a 3-DOF Translational Parallel Kinematic Machine. ASME Journal of Mechanical Design, 128 (2), 392-402. Chablat, D., Wenger, Ph. (2003). Architecture Optimization of a 3-DOF Parallel Mechanism for Machining Applications, the Orthoglide. IEEE Transactions on Robotics and Automation, 19(3), 403-410. Daney, D. (1999). Self calibration of Gough platform using leg mobility constraints. In World Congress on the Theory of Machine and Mechanisms (pp. 104–109), Oulu, Finland. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 24 Daney, D. (2003). Kinematic Calibration of the Gough platform. Robotica, 21(6), 677-690. Daney, D., Emiris I.Z. (2001). Robust parallel robot calibration with partial information. In IEEE International Conference on Robotics and Automation (pp. 3262-3267), Seoul, Korea. Fassi I., Legnani G., Tosi D. & Omodei A. (2007). Calibration of Serial Manipulators: Theory and Applications. In: Industrial Robotics: Programming, Simulation and Applications, Proliteratur Verlag, Mammendorf, Germany, (pp. 147 – 170). Hesselbach, J., Bier, C., Pietsch, I., Plitea, N., Büttgenbach, S., Wogersien, A. & Güttler, J. (2005). Passive-joint sensors for parallel robots. Mechatronics, 15(1), 43-65. Huang, T., Chetwynd, D. G., Whitehouse, D. J., & Wang, J. (2005). A general and novel approach for parameter identification of 6-dof parallel kinematic machines. Mechanism and Machine Theory, 40(2), 219-239. Innocenti, C. (1995). In Computational Kinematics’95, J-P. Merlet and B. Ravani (eds.), Algorithms for kinematic calibration of fully-parallel manipulators (pp. 241-250), Dordrecht: Kluwer Academic Publishers. Iurascu, C.C. & Park, F.C. (2003). Geometric algorithm for kinematic calibration of robots containing closed loops. ASME Journal of Mechanical Design, 125(1), 23-32. Jeong, J., Kang, D., Cho, Y.M., & Kim, J. (2004). Kinematic calibration of redundantly actuated parallel mechanisms. ASME Journal of Mechanical Design, 126(2), 307-318. Khalil, W. & Besnard, S. (1999). Self calibration of Stewart–Gough parallel robots without extra sensors. IEEE Transactions on Robotics and Automation, 15(6), 1116–1112. Legnani, G., Tosi; D., Adamini, R. & Fassi, I.. (2007). Calibration of Parallel Kinematic Machines: theory and applications. In: Industrial Robotics: Programming, Simulation and Applications, Proliteratur Verlag, Mammendorf, Germany, (pp. 171 – 194). Ljung, L. (1999). System identification : theory for the user (2nd ed), New Jersey : Prentice Hall. Merlet, J.-P. (2000). Parallel Robots. Dordrecht: Kluwer Academic Publishers. Pashkevich A., Chablat D. & Wenger P. (2006). Kinematics and workspace analysis of a three-axis parallel manipulator: the Orthoglide. Robotica, 24(1), 39-49. Pashkevich A., Wenger P. & Chablat D. (2005). Design strategies for the geometric synthesis of Orthoglide-type mechanisms. Journal of Mechanism and Machine Theory, 40(8), 907-930. Rauf, A., Kim, S.-G. & Ryu, J. (2004). Complete parameter identification of parallel manipulators with partial pose information using a new measurements device. Robotica, 22(6), 689-695. Rauf, A., Pervez A. & Ryu, J. (2006). Experimental results on kinematic calibration of parallel manipulators using a partial pose measurement device. IEEE Transactions on Robotics, 22 (2), 379-384. Renaud, P., Andreff, N., Gogu, G. & Martinet, P. (2005). Kinematic calibration of parallel mechanisms: a novel approach using legs observation. IEEE Transactions on Robotics, 21(4), 529-538. Renaud, P., Andreff, N., Pierrot, F., & Martinet, P. (2004). Combining end-effector and legs observation for kinematic calibration of parallel mechanisms. In IEEE International Conference on Robotics and Automation (pp. 4116-4121), New-Orleans, USA. Renaud, P., Vivas, A., Andreff, N., Poignet, P., Martinet, P., Pierrot, F. & Company, O. (2006). Kinematic and dynamic identification of parallel mechanisms. Control Engineering Practice, 14(9), 1099-1109 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 25 Schröer, K., Bernhardt, R., Albright, S., Wörn, H., Kyle, S., van Albada, D., Smyth, J. & Meyer, R. (1995). Calibration applied to quality control in robot production. Control Engineering Practice, 3(4), 575-580. Thomas, F., Ottaviano, E., Ros, L., & Ceccarelli, M. (2005). Performance analysis of a 3–2–1 pose estimation device. IEEE Transactions on Robotics, 21(3), 288- 297. Tlusty, J., Ziegert, J.C. & Ridgeway, S. . (1999). Fundamental comparison of the use of serial and parallel kinematics for machine tools, CIRP Annals, 48(1), 351-356. Tsai, L.W. (1999). Robot analysis: the mechanics of serial and parallel manipulators. New York:John Wiley & Sons. Wampler, C.W., Hollerbach, T.M. & Arai, T. (1995). An implicit loop method for kinematic calibration and its application to closed chain mechanisms. IEEE Transactions on Robotics and Automation, 11(5), 710–724. Wang, J. & Masory, O. (1993). On the accuracy of a Stewart platform - Part I: The effect of manufacturing tolerances. In IEEE International Conference on Robotics and Automation (pp. 114–120), Atlanta, USA. Wenger, P. & Chablat, D. (2000). Kinematic analysis of a new parallel machine-tool : the orthoglide. In 7th International Symposium on Advances in Robot Kinematics (pp. 305-314), Portoroz, Slovenie. Wenger, P., Gosselin, C. & Chablat, D. (2001). Comparative study of parallel kinematic architectures for machining applications. In Workshop on Computational Kinematics (pp. 249-258.), Seoul, Korea. Williams, I., Hovland, G. & Brogardh, T. (2006). Kinematic error calibration of the gantry-tau parallel manipulator. In IEEE International Conference on Robotics and Automation (pp. 4199-4204), Orlando, USA. Zhuang, H. (1997). Self-calibration of parallel mechanisms with a case study on Stewart platforms. IEEE Transactions on Robotics and Automation, 13(3), 387–397. Zhuang, H., Motaghedi, S.H. & Roth, Z.S. (1999). Robot calibration with planar constraints. In IEEE International Conference of Robotics and Automation (pp. 805-810), Detroit, USA. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 26 Figure captions Fig. 1. The Orthoglide mechanism - kinematic architecture (a) and general view (b). Fig 2. Kinematics of the Orthoglide leg. Fig. 3. Orthoglide simplified model (a) and its isotropic configuration (b). Fig. 4. Specific postures of the Orthoglide manipulator corresponding to the x-leg leg motion along the Cartesian axis X Fig. 5. Measuring the leg/surface parallelism using single-posture-double-sensor (a) and double-posture- single-sensor (b) methods. Fig. 6. Experimental Setup. A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 27 Table 1 Sensitivity of the TCP location for the representative Orthoglide postures Posture Leg Plane Deviation Typical value* Isotropic X XY z 1.00 XZ y 1.00 Y XY z 1.00 YZ x 1.00 Z XZ y 1.00 YZ x 1.00 Max / Min X-displacement X XY T x + z 1.000.34 XZ T x + y 1.000.34 Max / Min Y-displacement Y XY T y + z 1.000.34 YZ T y + x 1.000.34 Max / Min Z-displacement Z XZ T z + y 1.000.34 YZ T z + x 1.000.34 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 28 Table 2 Expressions for the non-linear calibration model Content Expressions TCP locations   0 0 0 0 , , , , x y z x y z p p p f L L L               z y x x z x y x x LC LC LS L f p p p                  , , , , 0     z y x y z y y y x LC LS L LC f p p p                  , , , , 0     z y x z z z y z x LS L LC LC f p p p                  , , , , 0 Scaling factors x x x x x x p LS L p LS L                 2 / 2 / 2 / 0 y y y y y y p LS L p LS L                 2 / 2 / 2 / 0 z z x z z z p LS L p LS L                 2 / 2 / 2 / 0 Leg deviations 0 0 ( ) 2; ( ) 2; x x x x x y y x z z y p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; y y y y y x x y z z x p p z p p                   ρ ρ 0 0 ( ) 2; ( ) 2; z z z z z x x z y y x p p y p p                   ρ ρ A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 29 Table 3 Simulation results on impact of the measurement errors for  = 0.01 mm Calibration technique std() (offset 0.1 mm) std() (offset 1.0 mm) Six-equation method 0.0198 mm (0.0003) 0.0199 mm (0.0002) Twelve-equation method 0.0207 mm (0.0003) 0.0207 mm (0.0004) A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 30 Table 4 Experimental data and expected improvements of accuracy Data Source xy xz yx yz zx zy r.m.s. mm mm mm mm mm mm mm Initial settings (before mechanical tuning and calibration) Experiment #1 +0.52 +1.58 +2.37 -0.25 -0.57 -0.04 1.19 Expected improvement -0.94 +0.63 +1.07 -0.84 -0.27 +0.35 0.74 After mechanical tuning (before calibration) Experiment #2 -0.43 -0.37 +0.42 -0.18 -1.14 -0.70 0.62 Expected improvement -0.28 +0.25 +0.21 -0.14 -0.13 +0.09 0.20 After calibration Experiment #3 -0.23 +0.27 +0.34 -0.10 -0.09 +0.11 0.21 Expected improvement -0.29 +0.23 +0.25 -0.17 -0.10 +0.08 0.20 A.Pashkevich et al. Kinematic calibration of Orthoglide-type mechanisms from observation of parallel leg motions 31 Table 5 Model parameters obtained using the six- and twelve equation methods Experiment Calibration method Model parameters Residual r.m.s. mm x mm x mm x mm Experiment #1 Six-equation 2.17 1.69 -1.42 0.74 Twelve-equation 2.07 1.66 -1.30 0.75 Experiment #2 Six-equation -0.53 0.59 -1.76 0.20 Twelve-equation -0.52 0.55 -1.69 0.21 Experiment #3 Six-equation 0.07 0.14 0.00 0.20 Twelve-equation 0.12 0.00 0.10 0.21