Abstract
This paper describes the implementation of extended pulley kinematics for parallel cable robots. An algorithm for the extended kinematics taking into account cable pulleys is discussed and implemented in real-time. This solution uses an iterative solver which can be computationally costly, depending on convergence. The convergence was tested for a specific geometry and successfully implemented on the cable robot IPAnema. Accuracy of both the standard and extended kinematics were tested according to the ISO 9283 standard. The Absolute accuracy was measured to be 22.32 mm for the standard and 17.50 mm for the extended kinematics which shows some improvement. A method for testing accuracy of orientations is also introduced.
Access provided by Autonomous University of Puebla. Download chapter PDF
Similar content being viewed by others
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
1 Introduction
The kinematics of cable robots and indeed all [14] parallel robots have been subject of research for a number of years. While inverse kinematics are trivial, forward kinematics are much more difficult to solve, especially within computational constraints such as real-time capability. In general, the forward kinematics of parallel robots can have 40 real solutions [1], which are numerically difficult to compute directly [2]. Other methods, more practical to implement, are thus consistent topics of research. Some rely on changing geometry [12], others on interval methods [7], and also on numerical optimization methods [3, 10].
With the increasing research on cable robots, and an ever increasing number of prototypes, precise information regarding achievable accuracy and methods of improvement have become more important. While accuracy and repeatability values achieved in the past are good, performance can still be improved. Methods include continuous calibration and inclinometers [4], general geometric calibration [8], and external sensors such as an expensive non-contact laser scanning system for Cartesian metrology used by the NIST Robocrane [13].
Robot kinematic models, both forward and inverse kinematics, have a direct impact on accuracy. Previous implementations [10] have usually assumed perfect points as base and platform connections. In practice cables are often guided along a pulley as shown in Fig. 1.
Taking into account of such pulleys in kinematics has been shown in existing models [9], but such models have yet to be implemented in real-time.
Real-time calculations pose a frequent challenge for forward kinematics especially when optimization methods are used whose convergence is not guaranteed. Hence research into convergence and computation time has been conducted [15].
In this paper an algorithm that takes winch pulleys into account is reviewed and implemented in a real-time environment. To evaluate this implementation experiments into the accuracy and repeatability of the IPAnema robot were performed. These lead to marginal improvements. An angular variation test which can be applied to any parallel machine is also introduced to evaluate the accuracy of the two kinematic models against each other.
2 Robot Architecture
The algorithms were tested on the cable robot IPAnema, constructed at the laboratories of the Fraunhofer IPA. Figure 2 shows the IPAnema cable robot, in the configuration during the experiment. The numbers indicate the winch positions, and the connecting cables are highlighted in red. In this exact configurations the dimensions (Table 1) were measured.
The dimensions were determined very accurately using a Leica LaserTracker. With this optical device the absolute position of a reflector can be determined with an accuracy of \(\pm 15\,\upmu \text{ m} + 6\,\upmu \text{ m/m}\).
3 Extended Kinematics for Cable Driven Robots
For reference, the basic kinematic algorithms are quickly introduced. On Fig. 3 the position of anchor points on the base and the robot platform are described by vector \(\mathbf a _{i}\) and \(\mathbf b _{i}\) respectively, and give the rope vector \(\mathbf l _i\) for a given pose. The platform vectors \(\mathbf b _{i}\) are in the coordinate system of the platform which is defined by the Cartesian vector \(\mathbf r \) and rotation matrix \(\mathbf R \). Since the length of the cables in the standard kinematic model is \(l_{i}=\Vert \mathbf l _{i}\Vert _{2}\) simple vector algebra yields
This suffices for the general computation of inverse kinematics under the assumption that all cable connections are ideal points. This is also the basis for the standard forward kinematics used in [10]. Here, \(m\) functions
are combined to give
which will minimize \(\mathbf r,R \) for a given length vector \(\mathbf l =\left[l_1,\dots ,l_m\right]^T\). In very simple terms, this is almost equivalent to considering the pre-tensed cables as linear springs and minimizing their potential energy. Further factors such as cable stiffness need to be taken into account for this to truly apply, but in principle the approach would be almost identical.
To solve the forward kinematic problem, a Levenberg-Marquardt (LM) optimization algorithm is used which can be found in [5]. This solver minimizes the objective function \(\phi \left(\mathbf l \right)\) from (4) by iterative procedure
Where \(\mu \) is a damping parameter, \(\mathbf J (\mathbf l )\) is the Jacobian of \(\phi (\mathbf l )\) in dimension \(x,y,z\) and rotation angles \(a,b,c\)
and \(\mathbf h \) is each consecutive step. This does not guarantee a solution, but has shown good results in practice at very fast computational speeds. The lack of guaranteed solution is a severe impact on real-time capability. For this reason a maximum number of iteration steps (currently 100 steps) is implemented. This does not guarantee a solution, but ensures that there exists a guaranteed maximum computation time. In practice this maximum has not been reached, and the algorithm runs robustly in real time.
The extended kinematics takes into account of the pulley mechanism illustrated in Fig. 1. Where the equation for the length of cable \(i\) now reads
Here the angle \(\theta _i\) and the direct length from pulley exit point \(C_i\) to the platform anchor point \(\mathbf B _i\) are used to determine total cable length. \(\mathbf B _i\) is needed in the global coordinate frame simply
There are many ways which can yield the parameters for (7) using basic trigonometry on the triangles formed by points: \(M_i\), \(B_i\), \(C_i\) and \(A_i\) (origin of coordinate system \(\mathcal K _A\) denoted by vector \(\mathbf a _i\)). The one derived in [11] is applied here.
This evaluation was used in the implementation of both forward and inverse kinematics, but deviates from the in [11] proposed method, in that it does not use transformation matrices to find the necessary lengths but only the vector \(\mathbf k _{Az}\) defined by the winch coordinate system. This is necessary to fulfill the real-time constraints, which need the equations to be evaluated as efficiently as possible. Eliminating evaluation of the angle of rotation of the pulley mechanism around axis \(k_{Az}\) and subsequent matrix evaluations is expected to give faster computations. This is done by evaluating the vector \(\mathbf m _i\) by
where \(\mathbf w \) is a vector from the origin of \(\mathcal K _A\) in the direction of \(M_i\) which is found by
Hence
and \(b_z\) is the distance from \(\mathbf m _i\) to \(\mathbf B _i\) along \(\mathbf k _{Az}\) given by
which helps to find
and finally
This gives us all the dimensions needed to evaluate the inverse kinematics for each cable using Eq. (7).
As the same method is used for the forward kinematics, the extended forward kinematics simply replacing \(\Vert \mathbf a _i-\mathbf r -\mathbf R \mathbf b _i\Vert _{2}\) in Eq. (4) with the evaluation in Eq. (7) to give \(\tilde{\varPsi _i}\) which yields
The initial guess for the LM optimizer is identical to the interval based method proposed in [10]. The full equation is implemented in the programming language c results in \(>\)50 lines of source code and the analytic Jacobian matrix \(>\)150, and is therefore not provided here (Fig. 4).
4 Validation
4.1 Computation and Convergence
To test real-time capability of this algorithm, it was first simulated on a desktop PC. This simulation used the geometric parameters measured for the accuracy evaluation, shown in Table 1.
The radius of the pulley was assumed to be identical for each winch and measured at \(r_p=21\) mm. The orientation of the winches can be seen in Fig. and was assumed to be aligned perfectly with the axes. This means winches 1 and 5 were pointing in the negative x direction, winches 2 and 6 in the positive x direction, and winches 3, 4, 7, and 8 in the negative y direction.
For three different magnitudes of noise (0.1, 0.5 and 1 mm) the simulation was conducted for 5,000 positions chosen at random in the presumed workspace of the robot.
The continuous re-evaluation of the Eq. (15) through the LM solver poses the greatest risk for real-time capability of the algorithm. Depending on the number of iterations this can involve very many computations. Hence, the number of iterations of the LM solver is evaluated. Figure 5 shows the number of iterations for each simulated position. These are slightly worse than the results for the standard kinematics shown in [10], but are generally very reasonable, rarely exceeding 20 iterations, even for 1 mm noise. A few times the maximum number of iterations of 100 was reached, but these were most likely poses at the edge or beyond the workspace.
For this comparison it is important to note that convergence is very dependent on geometry and individual poses. Especially poses with big orientation differences are often at the edge of the workspace and will increase the number of necessary iterations.
The average position error of the platform shown in Fig. 6 was almost identical to that seen for the standard model, and is in the same order of magnitude as the noise error applied to the cables.
When using the analytically derived Jacobian matrix, the calculations times on a desktop pc ranged between 80 and 130 \(\upmu \text{ s}\) per evaluation. While this does not guarantee real-time capability, it is a good indication that this algorithm can be run in real-time. The test in practice proved successful, and so accuracy and repeatability measurements could be made. In fact, so far the algorithm running on the actual robot experienced no missed steps, when poses and trajectories of the robot were within the workspace.
4.2 Accuracy and Repeatability
The same LaserTracker used to determine the robot dimensions, was used to measure the accuracy and repeatability. Both kinematic models were tested in the exact same environment. Neither LaserTracker or the robot was moved, after the dimensions \(\left(\mathbf a _i,\mathbf b _i\right)\) were established. The reflector denoting the origin of both the global (at the platform home position) and the platform coordinate system was not altered throughout the experiment. This significantly increases the precision of the results as any systematic errors will be the same for both sets of data. Any calibrating of the LaserTracker would cause inaccuracies, as the measurement of reference points can add many forms of error to the calculations.
Accuracy and Repeatability were measured according to the ISO 9283 standard. Hence each pose was measured with 30 repetitions and through the same approach trajectory. The standard also defines testing conditions, which were adhered to. The calculations for the can be found in [6]. All poses had the same orientation of \(a=b=c=0\).
As expected, the absolute accuracy was improved for the extended kinematic algorithm, but the repeatability stayed very much the same. Table 2 shows the results for the extended kinematic to be on average an improvement of roughly \(21\,\%\). Unfortunately this is lower than was hoped, and for some poses little to no improvement was seen. This indicates that other inaccuracies play an equally important role. The elasticity in the cables, or the inaccuracies in the drive chain of each winch would therefore provide an equal positioning error of the same magnitude \(\approx \)5 mm.
4.2.1 Angular Variation Test
Another test that was conducted was on the orientation accuracy. Since the platform origin was consistently measured, when the platform orientation is changed but the position \(x,y,z\) is not, this origin should not move. This concept is illustrated in Fig. 7 where the origin indicated by the thick dot is identical for four different orientations. This test can be implemented on any parallel kinematic machine, provided one can measure the origin about which the platform rotations are defined easily (Table 3).
Thirty different orientations were tested with angles ranging in the ranges \(-5^\circ < a,b,c < 5^\circ \). Then the same calculations as for repeatability, as in the previous section, was used to evaluate the discrepancy in position between the different orientations. Table 4 shows that although there is a slight improvement for the extended kinematics, this is only 0.5 mm and therefore very marginal.
5 Conclusion
This paper presented the successful implementation of extended forward kinematics taking into account winch pulleys in a real-time system. In addition to providing the basic algorithm which can be implemented for any given robot structure provided it is theoretically overconstrained and has a reasonable workspace.
The algorithm is based on a LM optimizer which uses the Jacobian of objective function \(\phi ()\) the to determine a solution. The successful operation of the IPAnema robot with this extended kinematic proves the applicability, and real-time capability.
Tests were conducted to investigate the improvement on accuracy through the use of extended kinematics. As expected absolute accuracy was improved while the relative accuracy remained similar. While there were measurable improvements, these were not as good as initially hoped. This means other imprecisions, inaccuracies, uncertainties in the robot have a similar impact, on the absolute accuracy, as the pulley mechanism. In addition a novel test was introduced and conducted to investigate orientational accuracy. This showed only marginal improvements when using extended kinematics.
To further improve the accuracy of the cable robot IPAnema, other factors need to be considered such as the elasticity of the cables. This can be the subject of ongoing research.
References
Dietmaier, P.: The stewart-gough platform of general geometry can have 40 real postures. In: ARK, pp. 7–16. Kluwer Academic Publishers, Salzburg (1998)
Husty, M.L.: An algorithm for solving the direct kinematic of stewart-gough-type platforms. Mech. Mach. Theory 31(4), 365–380 (1996)
Jeong, J.W., Soo, H.K., Yoon, K.K.: Design and kinematic analysis of the wire parallel mechanism for a robot pose measurement. In: Proceedings of IEEE International Conference on Robotics and Automation, vol. 4, pp. 2941–2946. (1998) doi:10.1109/ROBOT.1998.680740. http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=680740
Joshi, S.A., Surianarayan, A.: Calibration of a 6-dof cable robot using two inclinometers. In: Performance Metrics for Intelligent Systems, pp. 3660–3665. Gaithersburg, Taipei (2003)
Lourakis, M.: levmar: Levenberg-marquardt nonlinear least squares algorithms in C/C++. [web page] www.ics.forth.gr/ lourakis/levmar/ (Jul. 2004). Accessed on 10 Okt. 2011
ISO 9283 1998-04: Manipulating industrial robots—Performance criteria and related test methods (1998)
Merlet, J.P.: Solving the forward kinematics of a gough-type parallel manipulator with interval analysis. Int. J. Robot. Res. 23(3), 221–235 (2004)
Miermeister, P., Pott, A.: Auto calibration method for cable-driven parallel robots using force sensors. In: Lenarčič,J., Husty, M. (eds.) Procceedings of the 13th International Symposium Advances in Robot Kinematics. Springer, Berlin (2012)
Miermeister, P., Pott, A.: Modelling and real-time dynamic simulation of the cable-driven parallel robot ipanema. In: European Conference on Mechanism Science (EuCoMeS 2010), pp. 471–478. Cluj-Napoca (2010)
Pott, A.: An algorithm for real-time forward kinematics of cable-driven parallel robots. In: 12th International Symposium on Advances in Robot Kinematics. Springer, Verlag (2010)
Pott, A.: Influence of pulley kinematics on cable-driven parallel robots. In: Lenarčič, J., Husty, M. (eds.) Procceedings of the 13th International Symposium Advances in Robot Kinematics. Springer, Berlin (2012)
Thomas, F., Ottaviano, E., Ros, L., Ceccarelli, M. (eds.): Uncertainty model and singularities of 3–2-1 wire-based tracking systems. Kluwer Academic Publishers, Caldes de Malavalla (2002)
Williams II, R.L., Snyder, B.M., Albus, J.S., Bostelman, R.V.: Seven-dof cable-suspended robot with independent metrology (2004)
Williams II, R.L.: Planar cable-suspended haptic interface: Design for wrench exertion (1999)
Yang, C., Huang, Q., Ogbobe, P., Han, J.: Forward kinematics analysis of parallel robots using global newton-raphson method. In: Second International Conference on Intelligent Computation Technology and Automation, 2009. ICICTA’09, vol. 3, pp. 407–410. (2009) doi:10.1109/ICICTA.2009.564
Acknowledgments
The research leading to these results has received funding from the European Community’s Seventh Framework Programme under grant agreement No. NMP2-SL-2011-285404 (CABLEBOT) and by the Fraunhofer-Gesellschaft Internal Programs under Grant No. WISA 823.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Schmidt, V., Pott, A. (2013). Implementing Extended Kinematics of a Cable-Driven Parallel Robot in Real-Time. In: Bruckmann, T., Pott, A. (eds) Cable-Driven Parallel Robots. Mechanisms and Machine Science, vol 12. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31988-4_18
Download citation
DOI: https://doi.org/10.1007/978-3-642-31988-4_18
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-31987-7
Online ISBN: 978-3-642-31988-4
eBook Packages: EngineeringEngineering (R0)