Abstract
This paper investigates the dynamic behaviour of serial chains with degrees-of-freedom (DOF) as large as 100,000. A recursive solver called Recursive Dynamic Simulator (ReDySim), based on the Newton–Euler formulation and the Decoupled Natural Orthogonal Complement (DeNOC) matrices, was used to simulate the dynamics of these systems. Planar, as well as spatial motions of chains with moderate- (DOF≤1,000), large- (1,000<DOF≤10,000), and huge- (DOF>10,000) DOF were simulated. The results were validated by several means, such as comparisons with reported results wherever available, results obtained from commercial software, energy checks, etc. The study shows that ReDySim is capable of analysing serial chains of huge-DOF with acceptable numerical accuracy. The scheme is found to be numerically stable as well as computationally efficient, owing to the linear-time computation of the joint accelerations. Numerical studies were conducted to establish the theoretical basis for better performance of the proposed ReDySim solver. With the demonstrated capabilities of ReDySim, it may be found suitable for a large number of applications involving serial systems with huge-DOF.
Similar content being viewed by others
References
Spong, M.W., Vidyasagar, M.: Robot Dynamics and Control. Wiley, New York (1989)
Nakamura, Y.: Advanced Robotics: Redundancy and Optimization. Addison Wesley, Reading (1991)
Vold, H.I., Karlen, J.P., Thompson, J.M., Farrell, J.D., Eismann, P.H.: A 17 degree of freedom anthropomorphic manipulator. In: Proceedings of NASA Conference on Space Telerobotics, vol. 1, pp. 19–28 (1989)
Geradin, M., Cardona, A.: Flexible Multibody Dynamics—A Finite Element Approach. Wiley, New York (2001)
Gerstmayr, J., Schoberl, J.: A 3D finite element method for flexible multibody systems. Multibody Syst. Dyn. 15, 309–324 (2006)
Fritzkowski, P., Kamiński, H.: Dynamics of a rope as a rigid multibody system. J. Mech. Mater. Struct. 3(6), 1059–1075 (2008)
Featherstone, R.: An empirical study of the joint space inertia matrix. Int. J. Robot. Res. 23(9), 859–871 (2005)
Featherstone, R.: A divide-and-conquer articulated body algorithm for parallel O(log(n)) calculation of rigid body dynamics. Part 2: Trees, loops, and accuracy. Int. J. Robot. Res. 18, 876–892 (1999)
Yamane, K., Nakamura, Y.: Parallel O(logN) algorithm for dynamics simulation of humanoid robots. In: 6th IEEE-RAS International Conference on Humanoid Robots (2006)
Malczyk, P., Fraczek, J.: Cluster computing of mechanisms dynamics using recursive formulation. Multibody Syst. Dyn. 20(2), 177–196 (2008)
Ascher, U.M., Pai, D.K., Cloutier, B.P.: Forward dynamics elimination methods, and formulation stiffness in robot simulation. Int. J. Robot. Res. 16(6), 749–758 (1997)
Tomaszewski, W., Pieranski, P., Geminard, J.: The motion of a freely falling chain tip. Am. J. Phys. 74(9), 776–783 (2006)
Aglietti, G.: Dynamic response of a high-altitude tethered balloon system. J. Aircr. 46(6), 2032–2040 (2009)
Calkin, M.G., March, R.H.: The dynamics of a falling chain: I. Am. J. Phys. 57, 154–157 (1989)
Fritzkowski, P., Kamiński, H.: Dynamics of a rope modelled as a discrete system with extensible members. Comput. Mech. 44, 473–480 (2009)
Fritzkowski, P., Kamiński, H.: Dynamics of a rope modelled as a multi-body system with elastic joints. Comput. Mech. 46(6), 901–909 (2010)
Gatti, C., Perkins, N.: Physical and numerical modeling of the dynamic behaviour of a fly line. J. Sound Vib. 255(3), 555–577 (2002)
Hembree, B., Slegers, N.: Efficient tether dynamic model formulation using recursive rigid-body dynamics. Proc. Inst. Mech. Eng., Proc., Part K, J. Multi-Body Dyn. 224, 353–363 (2010)
Kamman, J., Huston, R.: Multibody dynamics modeling of variable length cable systems. Multibody Syst. Dyn. 5, 211–221 (2001)
Robson, J.M.: The physics of fly casting. Am. J. Phys. 58, 234–240 (1990)
Schagerl, M., Steindl, A., Steiner, W., Troger, H.: On the paradox of the free falling folded chain. Acta Mech. 125, 155–168 (1997)
Wong, C., Yasu, K.: Falling chains. Phys. Rev. Lett. 74(6), 490–496 (2006)
Shah, S.V., Saha, S.K., Dutt, J.K.: Dynamic of Tree-Type Robotic Systems. Springer, Dordrecht (2013)
Function Bay Inc.: RecurDyn, Version 7.4 (2009)
Strang, G.: Linear Algebra and Its Applications. Harcourt Brace Jovanovich, San Diego (1998)
Saha, S.K.: A decomposition of the manipulator inertia matrix. IEEE Trans. Robot. Autom. 13(2), 301–304 (1997)
Saha, S.K.: Analytical expression for the inverted inertia matrix of serial robots. Int. J. Robot. Res. 18(1), 116–124 (1999)
MathWorks Inc.: MATLAB, Version 7.4, Release 2009a (2009)
Saha, S.K.: Dynamics of serial multibody systems using the decoupled natural orthogonal complement matrices. J. Appl. Mech. 66, 986–996 (1999)
Shah, S.V., Saha, S.K., Dutt, J.K.: Denavit–Hartenberg (DH) parametrization of Euler angles. J. Comput. Nonlinear Dyn. 7(2), 1–10 (2012)
Mohan, A., Saha, S.K.: A recursive, numerically stable, and efficient algorithm for serial robots. Multibody Syst. Dyn. 17(4), 291–319 (2007)
Weisstein, E.W.: Catenary. MathWorld—a Wolfram Web resource. http://mathworld.wolfram.com/Catenary.html. Accessed 31 March 2012 (2012)
Shampine, L.F., Gear, C.W.: A user’s view of solving stiff ordinary differential equations. SIAM Rev. 21(1), 1–17 (1979)
Lilly, K.W.: Efficient Dynamic Simulation of Robotic Mechanisms. Kluwer Academic, Boston (1993)
Higham, N.J.: Accuracy and Stability of Numerical Algorithms. SIAM, Philadelphia (2002)
Poole, G., Larry Neal, L.: A geometric analysis of Gaussian elimination. I. Linear Algebra Appl. 149, 249–272 (1991)
Acknowledgements
The authors acknowledge the Naren Gupta Chair Professor fund of the last author at IIT Delhi, which was used to support the second author to conduct this research. Anonymous reviewers are also thanked for their constructive comments.
Author information
Authors and Affiliations
Corresponding author
Appendix
Appendix
1.1 A.1 Recursive O(n) forward dynamics
In this section, outline of the recursive O(n) forward dynamics algorithm implemented in Recursive Dynamics Simulator (ReDySim) solver and used for the simulation of chains with large-DOF are presented. The algorithm is based on the UDU T decomposition of the GIM [27] using analytical Reverse Gaussian Elimination, denoted by RGE-A. The forward dynamics essentially involves the calculation of joint accelerations from Eq. (9) as
Using the decomposition I=UDU T, the equations of motion, Eq. (A.1), are rewritten as follows:
where U and D, the n×n block upper-triangular and diagonal matrices, respectively. They have the following representations:
In Eq. (A.3), U k,j and \(\hat{\mathbf{I}}_{k}\) are the z k ×z j and z k ×z k matrices, which are scalars for one-DOF jointed chains, as shown in [26, 27]. The matrices U k,j and \(\hat{\mathbf{I}}_{k}\) are given by
where the 6×z k matrices Ψ k and \(\hat{\boldsymbol{\Psi}}_{k}\) are as follows:
In Eq. (A.5), the 6×6 matrix \(\hat{\mathbf{M}}_{k}\) contains the mass and inertia properties of the articulated-body #k [23]. The matrix \(\hat{\mathbf{M}}_{k}\) is computed as follows:
where \(\hat{\mathbf{M}}_{n} \equiv \mathbf{M}_{n}\). Moreover, the 6×6 matrix \(\hat{\mathbf{M}}_{k + 1,k + 1}\) in Eq. (A.6) is obtained as
The joint accelerations are then obtained using three sets of linear algebraic equations, namely
From Eq. (A.8), the recursive algorithm, comprising of the backward recursions arising from steps (i) and (ii), and forward recursions, arising from step (iii), is summarised in Table 12. It is assumed in Table 12 that the vector φ, comprised of the external joint torques and those due to Coriolis and centripetal accelerations, is calculated using an O(n) inverse dynamic algorithm after setting \(\ddot{\boldsymbol{\theta}} = \mathbf{0}\), as shown in [29]. The effect of gravity can be taken into consideration during the inverse dynamics calculations by adding the gravitational acceleration vector into the twist-rate of the first link. Table 12 explains the steps involved in forward dynamic calculations.
1.2 A.2 Geometric interpretations of GE and RGE
After GE-N, which is denoted here with simply GE as no numerical aspect is emphasised, the GIM of Eq. (10a) is converted to an equivalent upper triangular matrix during the annihilations or sweep-out phase, whereas the solution of the joint accelerations is obtained using backward substitution as
The matrix representing multipliers in the sweep-out phase is a lower triangular matrix such that I=LU [25]. Therefore, after GE of the GIM, κ 2(L) and κ 2(U) will give an estimate of the accuracy of the sweep-out and backward substitution phases, respectively. The matrices L and U, corresponding to the GIM I(0) in Table 9, and their condition numbers are shown in Table 13. On the contrary, in RGE-N or RGE-A, which are denoted here by RGE only because no numerical or analytical aspect is emphasised, the GIM of Eq. (10a) is converted into an equivalent lower triangular matrix during the sweep-out phase, and the solution of the joint accelerations are obtained using forward substitution as
In RGE, the matrix representing multipliers of the sweep-out phase is an upper triangular matrix such that I=U′L′. The matrices U′ and L′ and their condition numbers are also given in Table 13.
It can be seen from Table 13 that the condition number of L after GE is κ 2(L)=2.17, which ensures the accuracy of the sweep-out phase. However, the condition number of U, κ 2(U)=223.11, makes backward substitution phase inaccurate or sensitive to small error in the right-hand side, as shown in Table 9. On the other hand, in RGE, κ 2(U′)=21.46 while κ 2(L′)=15.15. Hence, both the phases have low sensitivity to deviations in the right-hand sides, thereby, giving better solution to the system of linear equations.
This above fact was also supported in [36], where it was shown geometrically that the use of partial pivoting to achieve stability in sweep-out phase may reorient the planes such that it makes substitution phase highly inaccurate. Hence, geometric analysis of both GE and RGE was performed. Figure 20(a–c) show the planes of the original system, \(\mathbf{I}\ddot{\mathbf{q}} = \boldsymbol{\varphi}\), and reoriented systems \(\mathbf{U}\ddot{\mathbf{q}} = \bar{\boldsymbol{\varphi}}\) due to GE of the GIM and \(\mathbf{L}'\ddot{\mathbf{q}} = \boldsymbol{\varphi}\mathbf{ }\boldsymbol{'}\) due to RGE. Figure 20(a) shows that the original system is poorly oriented as the angles between them are small. The GE does not make the situation better as planes 2 and 3 are still poorly oriented, as shown in Fig. 20(b). As GE starts backward substitution with calculation of \(\ddot{q}_{3}\), small deviation in \(\ddot{q}_{3}\) (orientation of plane 3) causes large changes in \(\ddot{q}_{2}\) and \(\ddot{q}_{1}\). On the other hand, RGE of the GIM, as shown in Fig. 20(c), makes the orientation of the plane favourable for forward substitution as the angle between the planes is higher. Hence, small deviations in \(\ddot{q}_{1}\) do not result into large changes in \(\ddot{q}_{2}\) and \(\ddot{q}_{3}\).
Rights and permissions
About this article
Cite this article
Agarwal, A., Shah, S.V., Bandyopadhyay, S. et al. Dynamics of serial kinematic chains with large number of degrees-of-freedom. Multibody Syst Dyn 32, 273–298 (2014). https://doi.org/10.1007/s11044-013-9386-3
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11044-013-9386-3