Experimental kinematic calibration of parallel manipulators using a relative position error measurement system

Experimental kinematic calibration of parallel manipulators using a relative position error measurement system

Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804 Contents lists available at ScienceDirect Robotics and Computer-Integrated Manufact...

978KB Sizes 2 Downloads 70 Views

Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

Contents lists available at ScienceDirect

Robotics and Computer-Integrated Manufacturing journal homepage: www.elsevier.com/locate/rcim

Experimental kinematic calibration of parallel manipulators using a relative position error measurement system Mansour Abtahi, Hodjat Pendar, Aria Alasty n, Gholamreza Vossoughi Center of Excellence in Design, Robotics & Automation (CEDRA), Department of Mechanical Engineering, Sharif University of Technology, Azadi Ave, 1458889694 Tehran, Iran

a r t i c l e in fo

abstract

Article history: Received 20 January 2009 Received in revised form 27 September 2009 Accepted 15 May 2010

Because of errors in the geometric parameters of parallel robots, it is necessary to calibrate them to improve the positioning accuracy for accurate task performance. Traditionally, to perform system calibration, one needs to measure a number of robot poses using an external measuring device. However, this process is often time-consuming, expensive and difficult for robot on-line calibration. In this paper, a methodical way of calibration of parallel robots is introduced. This method is performable only by measuring joint variable vector and positioning differences relative to a constant position in some sets of configurations that the desired positions in each set are fixed, but the moving platform orientations are different. In this method, measurements are relative, so it can be performed by using a simple measurement device. Simulations and experimental studies on a Hexaglide parallel robot built in the Sharif University of Technology reveal the convenience and effectiveness of the proposed robot calibration method for parallel robots. & 2010 Elsevier Ltd. All rights reserved.

Keywords: Calibration Parallel robots Hexaglide manipulator Geometric parameters Optimization

1. Introduction Compared to serial manipulators, parallel mechanisms may exhibit a much better repeatability [1], but their large number of links and passive joints often limit their performance in terms of accuracy [2]. So calibration methods have to be implemented to compensate the geometric parameter errors. The algorithms proposed to conduct calibration for parallel manipulators can be classified into two categories: the external calibration methods and the self-calibration methods. The external calibration requires measurement of whole or local poses using some external measurement devices. Zhuang et al. [3] using commercial electronic theodolite, Nahvi et al. [4] using LVDT sensors, Vincze et al. [5] using laser tracking system and Renaud et al. [6] using camera system are some instances of this category. The second category is referred to as the self-calibration method, which was first proposed by Everett [7] on a closed-loop mechanism, and was first implemented on a serial manipulator by Bennet and Hollerbach [8]. The self-calibration methods may be performed by adding redundant sensors or by imposing mobility constraints to the system. Zhuang and Liu [9] showed that two or more redundant sensors are adequate to calibrate a Stewart platform. By using redundant sensors, extra information for the sampled configurations can be obtained, by installing rotary sensors on the passive universal joints of robot [10–13] or by

n

Corresponding author. Tel.: + 98 21 6616 5504; fax: + 98 21 6600 0021. E-mail address: [email protected] (A. Alasty).

0736-5845/$ - see front matter & 2010 Elsevier Ltd. All rights reserved. doi:10.1016/j.rcim.2010.05.007

installing displacement sensors between the base and the endeffector of the robot [14,15]. Mobility constraints on the endeffector or on the kinematic chains connecting the base and the moving platform also can be used to obtain extra information and achieve calibration [16–19]. Abtahi et al. [20] proposed a calibration method that applies to parallel kinematic manipulator (PKM) with non-backdrivable linear actuators. In this paper, a novel calibration method applicable to parallel robots is presented. In this method the platform is commanded to some sets of poses that in each set of poses, desired positions are same but orientations are different. Because of using nominal geometric parameters of the robot in controlling system instead of real geometric parameters, there exist some positioning differences. This method uses the input joint variables and these differences measured by a simple measurement system to calibrate the robot and obtain calibrated values of the geometric parameters. The paper is organized as follows: in Section 2, we present the calibration method, the description and the kinematic analysis of the Hexaglide parallel robot; after that the simulation and experimental results will be given in Section 3 and finally conclusion is drawn in Section 4.

2. The calibration method Consider a 6-DOF parallel manipulator. Obviously, it can approach a given point in different directions. So, for any given

800

M. Abtahi et al. / Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

position of the end-effector, there are many sets of input joint variables where their configurations and orientations are different. Because of using nominal geometric parameters in controlling system of the robot instead of real geometric parameters, its performance is not accurate. So positions of these sets of configurations are not precisely same and there exist some position differences between them. In this method, these differences can be measured with respect to one of them by using a simple relative position measurement system. By using these differences and input joint variables as input data for calibration procedure, real geometric parameters can be obtained and the robot can be calibrated. It is not necessary to know the position or orientations of the end-effector with respect to the base. The input data for calibration are only vectors of joint variables measured by sensors installed on the actuated joints and position differences measured by a measurement device that is composed of three distance gauges as shown in Fig. 1. These distance gauges that have a flat plate as probe are located in three perpendicular directions around an accurate ball installed on the center of the end-effector. The following measurement sequences can be proposed for the measurement process:

h

w ¼ Px Py

Pz

The position and pose vectors of the end-effector are denoted by P and w, respectively, which are defined as h i P ¼ Px Py Pz

iT

ð2Þ

where a, b and g are the rotation angles of the end-effector. The geometric parameter vector that has N parameters is shown by d and the position difference vector is denoted by d, which is defined as h iT ð3Þ d ¼ dx dy dz The number of sets or commanded points is denoted by m and the number of poses or orientations in each set is denoted by k. The end-effector position vector for each joint variable vector can be calculated by the forward kinematic of the desired robot as j

P rc ¼ Fðj q r , dÞ

ð4Þ

where j q r is the measured joint variable vector in the jth point and in the rth orientation and j P rc is the calculated end-effector position vector with j q r . Since the position difference vector is measured relative to a constant point for all the configurations in the jth point, it can be written as j

1. At first, command the robot to a suitable pose with a definite desired point. Install dial gauges around the ball. These gauges must be parallel to principal directions and aligned with center of the ball, as shown in Fig. 1. Zero out distance gauges and write down the input joint variables and errors in dial gauges that are zero. 2. Command the robot to the next configuration so that its orientation is different. There will probably be some deviations in the distance gauges from zero. Write down these deviations and input joint variables. 3. If any other orientation is considered, then go to step 2; else go to step 1 with a different desired point. According to this measurement process, in each set of pose, the position differences are measured with regard to the first position of each set. For implementing these sequences, other measurement devices can be used instead of dial gauges, e.g. laser interferometers or linear variable differential transformers (LVDTs). Now, in order to formulate this method, the joint variable vector is denoted by q, where h iT q ¼ q1 q2 q3 q4 q5 q6 ð1Þ

a b g

j

j n r r n 99ðj P c  d Þð P c  d Þ99 ¼ 0 ðr a nÞ r ¼ 1,. . .,k n ¼ 1,. . .,k

ð5Þ

j

where d r is the measured position difference vector in the jth point and in the rth orientation. Now the error vector can be defined as 21 3 E 62 7 6 E 7 7 E¼6 ð6Þ 6 7 4^ 5 m E where 2

3  j j 1 j 1 p c  d Þðj p 2c  d 2 6 7  6 7 6 j p 1 j d 1 ðj p 3 j d 3 7 6 7 c c 6 7 6^ 7 6 7  6 7 j j 6 7 j 1 1 j k k j E ¼ 6 p c  d Þð p c  d 7 6 7  6 j 2 j 1 7 6 p c  d Þðj p 3c j d 3 7 6 7 6 7 6^ 7 6 7  4 j k1 j k1 5 j p c  d Þðj p kc  d k

ð7Þ

While j E have 3k(k 1)/2 elements, E have 3mk(k  1)/2 elements. The error vector is a nonlinear function of the geometric parameter vector d and the input data of calibration. So we have EM1 ¼ EðdN1 ,Q ,DÞ M ¼ 3mkðk1Þ=2

ð8Þ

where Q and D are, respectively, the set of measured joint variable vectors and the set of measured position difference vectors that are defined as Q ¼ f1 q 1 ,. . ., 1 q k , 2 q 1 ,. . ., m q k g 1

1

2

m

D ¼ f d 1 ,. . ., d k , d 1 ,. . ., d k g

ð9Þ

E is ideally equal to the zero vector for the real values of the geometric parameter vector dr: E ¼ Eðdr ,Q ,DÞ ¼ 0M1

Fig. 1. Three distance gauges used as a measurement system.

ð10Þ

Because of nonlinearity of E, the Gauss–Newton method [21] is typically employed to estimate this nonlinear function. First, consider input data Q and D as constant numbers and absorb

M. Abtahi et al. / Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

them into the nonlinear function E. The model is linearized l through a Taylor series expansion at a current estimate d of the parameter vector at iteration l l

Ec ¼ Eðd þ DdÞ l

¼ Eðd Þ þ

@EðdÞ  l  l Dd þ h:o:t  Eðd Þ þ ADd @d d ¼ d

ð11Þ

where Ec is the computed value of the vector E and A ¼ @E=@d is a l Jacobian matrix evaluated at d . Higher-order terms in the Taylor series are ignored, yielding the linearized form of (11). By defining DE ¼ Ec Eðdl Þ as the error between the desired value Ec ¼E¼ 0 and l the predicted value with the current parameter vector d , the linearized Equation (11) becomes

DE ¼ Ec Eðdl Þ ¼ Eðdl Þ ¼ ADd

ð12Þ

Now by using ordinary least squares, we have lþ1

d

l

l

¼ d ðAT AÞ1 AT Eðd Þ

ð13Þ

This process has to be iterated until the error Dd becomes sufficiently small. The Gauss–Newton method is very fast, provided that there is a good initial estimate d0 of the geometric parameter vector. Nominal geometric parameter vector dn can be used as the initial estimate. As another approach for solving this nonlinear optimization problem, nonlinear least-square function (lsqnonlin) of MATLAB can be used. This method is not as fast as the Gauss–Newton method but does not need obtaining jacobian matrix A.

3. Simulation and experimental results 3.1. Simulation results With the calibration method proposed above, we would like to calibrate a Hexaglide parallel robot. The first Hexaglide parallel robot has been developed at ETH Zurich [22]. As shown in Fig. 2, Hexaglide is composed of a moving platform that is connected to the six legs through universal joints and these legs are connected to six linear actuators or sliders through spherical joints. These sliders that are distributed on three parallel rails are actuated by ball screws and servo motors. Movements of the sliders or the spherical joints guide the platform in 6 DOF.

Fig. 2. Hexaglide parallel robot.

801

As shown in Fig. 3, two coordinate systems are used for modeling of this robot. Global coordinate system is fixed to the base frame and local coordinate system is fixed to the moving platform whereas its origin is the end-effector center point. The geometric parameter vector of this robot can be defined as [20] h i ð14Þ d ¼ BT1 BT2 . . . BT6 ST1 ST2 . . . ST6 l1 l2 . . . l6 where Bi is the universal joint position vector defined in the local coordinate system, Si is the spherical joint position vector defined in the global coordinate system when the corresponding joint variable, qi, is zero and li is length of the ith leg. Thus there are 42 geometric parameters (18 coordinates of points Si, 18 coordinates of points Bi with respect to the local coordinate system and 6 lengths of legs) that must be calculated through the calibration method but by selecting the coordinate systems in an appropriate position and directions, the number of unknown geometric parameters can be reduced to 35 [20]. The kinematic and singularity analysis of the Hexaglide parallel robot has been studied in [23]. A Hexaglide robot’s actual and nominal parameters given in Table 1 have been considered for the simulation and this calibration method has been implemented on it. The errors on the geometric parameters have been randomly distributed while these are between  7 and 7 mm. This method has been simulated with different numbers of points (m ¼1, 2,y, 5) and different numbers of orientations in each point (k¼5, 11) to show the effect of these conditions on calibration accuracy. If a sufficient number of iteration steps are considered then the calibration error will be zero up to the numerical calculation precision. To compare the speed and precision of convergence with different numbers of points and orientations, the number of iteration steps is considered limited. Also to simulate real conditions of calibration, we have considered random noises of 0.01 mm on the input data for calibration that are joint variable vectors that are measured by the encoders installed on the servo motors and the position differences measured by a relative position error measurement device. This noise is much greater than the error on commercial encoders that have a precision of about 2.4 mm. After simulating and obtaining the results, maximum errors on the geometric parameters with regard to the number of points have been shown in Fig. 4 while the number of orientation was 11, with noise and without noise on measurement system. This diagram shows that the real value of geometric parameters cannot be obtained by using measurement data of one point, so measurement data of at least two different points are needed. If noise has not been considered, using two or more sets of data, including about 11 orientations for each point, will lead to identification of the real value of the geometric parameters with a precision of 5  10  2 mm. In noisy conditions, the real value of

Fig. 3. Hexaglide parallel robot with notation.

802

M. Abtahi et al. / Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

Table 1 Actual and nominal values of the geometric parameters (mm). Nominal x

Actual y

z

x

y

z

S1 S2 S3 S4 S5 S6

0 0 0 0 0 0

 155 0 155 155 0  155

0 0 0 0 0 0

0.861 0  0.292  2.822 5.006  1.645

 160.815 0 152.940 154.699  3.088  156.057

1.501 0 0 1.649  1.913 3.185

B1 B2 B3 B4 B5 B6

 90  100  39 39 100 90

 67 56 110 110 56  67

 125  120  120  120  120  125

 87.446  102.404  33.782 44.446 103.096 86.346

 63.909 54.881 113.953 109.800 54.881  67.912

 123.485  118.309  118.309  118.300  118.309  130.613

l1 l2 l3 l4 l5 l6

590 580 615 615 580 590

583.941 578.279 610.563 614.068 585.272 593.461

Fig. 5. The maximum error on the geometric parameters with five orientations in each point.

Table 2 Errors of nominal and calibrated parameters (mm). Nominal

Fig. 4. The maximum error on the geometric parameters with 11 orientations in each point.

the geometric parameters can be obtained by using data of five points, with a precision of 6  10  1 mm. Similarly Fig. 5 gives the maximum error on the geometric parameters with regard to the number of points while the number of orientations is five. This shows that this robot cannot be calibrated by using data of two or three points while there are five orientations in each point. From Figs. 4 and 5, it can be deduced that when the number of points increases, the maximum error will decrease. In practice two or more points with over ten orientations in each point can be used to calibrate the robot. Errors of the geometric parameters before (nominal values) and after (calibrated values) the calibration by using measurement data of 5 points and 11 orientations in each point are given in Table 2. 3.2. Experimental results For validating the efficiency and generality of the calibration method for industrial applications, a calibration experiment is also conducted. This calibration method has been tested on a

Actual

x

y

z

x

y

z

S1 S2 S3 S4 S5 S6

0.861 0  0.292  2.822 5.006  1.645

 5.815 0  2.060  0.301  3.088  1.057

1.501 0 0 1.649  1.913 3.185

 0.023  0.087  0.050  0.025 0.062 0.170

 0.096  0.024 0.031  0.022  0.024  0.087

 0.018  0.172  0.172  0.170  0.172  0.088

B1 B2 B3 B4 B5 B6

2.554  2.404 5.218 5.446 3.096  3.654

3.091  1.119 3.953  0.200  1.119  0.912

1.515 1.691 1.691 1.700 1.691  5.613

0.177 0.000 0.091 0.226 0.437 0.572

 0.121 0.000 0.082  0.021  0.115  0.254

0.378 0.000 0.000  0.359  0.453  0.376

l1 l2 l3 l4 l5 l6

 6.059  1.721  4.437  0.932 5.272 3.461

 0.176 0.091 0.060 0.310 0.456 0.475

Hexaglide parallel robot built in the Sharif University of Technology, shown in Fig. 6. As shown in Fig. 7, the proposed measurement device with 0.01 mm accuracy for measuring position differences in this calibration method is implemented. Three flat probes with 10 mm diameter have been installed on the tip of the dial gauges. For measurement process, six different points listed in Table 3 have been considered while there are 20 configurations in each point. Measurements from the first three points were employed to calibrate the Hexaglide parallel robot and the last three points were utilized to verify the calibration method. The nominal and calibrated parameters of the Hexaglide parallel robot are shown in Table 4. After the calibrating kinematic parameters of the Hexaglide parallel robot, a verification measurement was performed. The purpose of the calibration is to increase the accuracy of the robot. Position differences of different orientations to reach a given point can show the accuracy of the robot. So results of measurement process before and after calibrating can be adopted as a

M. Abtahi et al. / Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

803

Table 4 Nominal and calibrated parameters of Hexaglide robot (mm). Nominal x

Actual y

z

x

y

z

S1 S2 S3 S4 S5 S6

0 0 0 0 0 0

155 0 155 155 0 155

0 0 0 0 0 0

1.01 0.00  3.80 1.08  2.34  1.45

 152.19 0.00 155.29 155.85  2.49  155.70

 0.80 0.00 0.00  0.26 2.71 0.10

B1 B2 B3 B4 B5 B6

 90  100  39 39 100 90

67 56 110 110 56 67

125 120 120 120 120 125

 90.04  101.49  40.43 40.18 102.26 87.99

 67.09 56.85 107.98 112.60 56.85  68.93

 151.27  148.25  148.25  148.96  148.25  149.97

l1 l2 l3 l4 l5 l6

590 580 615 615 580 590

590.58 579.58 615.75 619.33 578.71 592.50

Fig. 6. The Hexaglide parallel robot.

Fig. 7. The measurement system.

Table 3 Positions considered for measurement (mm). P1 P2 P3 P4 P5 P6

(0, 0, 550) (0,  200, 550) (100,  100, 500) (100, 0, 600) (  100, 100, 500) (  100,  50, 450)

verification method. Figs. 8 and 9 show the absolute position differences between the end-effector position with different orientations and the position of the first orientation, before and after calibration, for the first three points and last three points, respectively.

Fig. 8. The absolute differences between commanded positions and desired position for the first three points.

It can be seen that the average difference was reduced by more than 60 percent after the calibration process. Better results can be attained if the repeatability of the Hexaglide robot can be improved. At this time, the repeatability of the robot is about 2 mm.

4. Conclusion This paper presented a calibration method for parallel robots where the platform is commanded to some sets of poses and in

804

M. Abtahi et al. / Robotics and Computer-Integrated Manufacturing 26 (2010) 799–804

Fig. 9. The absolute differences between commanded positions and desired position for the last three points.

each set of poses, desired positions are same but orientations are different. This method uses only data of the input joint variables and position differences measured by a simple measurement device. Simulations showed that measurement data of one point cannot calibrate the robot. Simulations show that by increasing the number of points and number of orientations, better calibration results can be obtained and the validity of the calibration method is verified by real experiments conducted on the Hexaglide parallel robot. The following benefits can be described for this technique: applicable to over 4 DOF parallel robots, easy installation of devices for calibration and no need of internal sensors or external measurement devices to measure the orientation of the moving platform with respect to the base platform. References [1] Merlet JP. Les Robots Paralleles, 2nd ed. Paris: Hermes; 1997.

[2] Wang J, Masory O. On the accuracy of a Stewart platform-Part I, the effect of manufacturing tolerances. In: Proceedings of the IEEE international conference on robotics and automation, Atlanta, USA, 1993. p. 114–20. [3] Zhuang H, Yan J, Masory O. Calibration of Stewart platforms and other parallel manipulator by minimizing inverse kinematics residuals. J Robot Syst 1998;15(7):395–405. [4] Nahvi A, Hollerbach JM, Hayward V, Calibration of parallel robot using multiple kinematic closed loops. In: Proceedings of the IEEE international conference on robotics and automation, San Diego, CA, 8–13 May, 1994. p. 407–12. [5] Vincze M, Prenninger JP, Gander H. A laser tracking system to measure position and orientation of robot end-effectors under motion. Int J Rob Res 1994;13(4):305–14. [6] Renaud P, Andreff N, Lavest JM, Dhome M. Simplifying the kinematic calibration of parallel mechanisms using vision-based metrology. IEEE Trans Rob 2006;22(1):12–22. [7] Everett LJ. Forward calibration of closed-loop jointed manipulators. Int J Robot Res 1989;8(4):85–91. [8] Bennett DJ, Hollerbach JM. Autonomous calibration of single-loop closed kinematic chains formed by manipulators with passive endpoint constraints. IEEE Trans Rob Autom 1991;7(3):597–606. [9] Zhuang H, Liu L, 1996, Self-calibration of a class of parallel manipulators. In: Proceedings of the IEEE international conference on robotics and automation, p. 994–9. [10] Baron L, Angeles J, The on-line direct kinematics of parallel manipulators under joint-sensor redundancy. In: Proceedings of international symposium on advances in robot kinematics, Strobl, Austria, 1998. p. 126–37. [11] Zhuang H. Self-calibration of parallel mechanisms with a case study on Stewart platforms. IEEE Trans Rob Autom 1997;13(3):387–97. [12] Wampler CW, Hollerbach JM, Arai T. An implicit loop method for kinematic calibration and its application to closed chain mechanisms. IEEE Trans Rob Autom 1995;11(5):710–24. [13] Yiu YK, Meng J, Li ZX, Auto-calibration for a parallel manipulator with sensor redundancy. In: Proceedings of the IEEE international conference on robotics and automation, Taipei, Taiwan, 2003. p. 3660–5. [14] Patel AJ, Ehmann KF. Calibration of a hexapod machine tool using a redundant leg. Int J Mach Tools Manu 2000;40(4):489–512. [15] Pritschow G. Parallel kinematic machines (PKM)–limitations and new solutions. Ann CIRP 2000;49(1):275–80. [16] Khalil W, Besnard S. Self-calibration of Stewart–Gough parallel robots without extra sensors. IEEE Trans Rob Autom 1999;15(6):1116–21. [17] Daney D, Self calibration of Gough platform using leg mobility constraints. In: 10th international federation for the theory of machines and mechanisms (IFToMM), Oulu, Finland, 20–24 June, 1999. p. 104–9. [18] Rauf A, Ryu J. Fully autonomous calibration of parallel manipulators by imposing position constraint. In: Proceedings of the IEEE international conference on robotics and automation, 2001. p. 2389–94. [19] Khalil W, Murareci D. Autonomous calibration of parallel robots, in Proceedings of the 5th IFAC symposium on robot control, Nantes, France, 1997. p. 425–8. [20] Abtahi M, Pendar H, Alasty A, Vossoughi Gh. Calibration of Parallel Kinematic Machine Tools Using Mobility Constraint on the Tool Center Point. International Journal of Advanced Manufacturing Technology, Springer 2009. Published online: 21 March 2009. (Doi: 10.1007/s00170-0091994-y). [21] Norton JP. An introduction to identification. London: Academic; 1986. [22] Honegger M, Codourey A, Burdet E, Adaptive control of the hexaglide, a 6 dof parallel manipulator. Proceedings of IEEE international conference on robotics and automation, Albuquerque, 1997. p. 543–8. [23] Abtahi M, Pendar H, Alasty A, Vossoughi Gh. Kinematics and singularity analysis of the hexaglide parallel robot. In: Proceeding of the 2008 ASME international mechanical engineering congress & exposition (IMECE2008), October 31–November 6, Boston, MA, USA, 2008.