Abstract
The dynamic equations of motion provide the relationships between actuation and contact forces acting on robot mechanisms, and the acceleration and motion trajectories that result. Dynamics is important for mechanical design, control, and simulation. A number of algorithms are important in these applications, and include computation of the following: inverse dynamics, forward dynamics, the joint-space inertia matrix, and the operational-space inertia matrix. This chapter provides efficient algorithms to perform each of these calculations on a rigid-body model of a robot mechanism. The algorithms are presented in their most general form and are applicable to robot mechanisms with general connectivity, geometry, and joint types. Such mechanisms include fixed-base robots, mobile robots, and parallel robot mechanisms.
In addition to the need for computational efficiency, algorithms should be formulated with a compact set of equations for ease of development and implementation. The use of spatial notation has been very effective in this regard, and is used in presenting the dynamics algorithms. Spatial vector algebra is a concise vector notation for describing rigid-body velocity, acceleration, inertia, etc., using six-dimensional (GlossaryTerm
6-D
) vectors andThe goal of this chapter is to introduce the reader to the subject of robot dynamics and to provide the reader with a rich set of algorithms, in a compact form, that they may apply to their particular robot mechanism. These algorithms are presented in tables for ready
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Abbreviations
- 3-D:
-
three-dimensional
- 6-D:
-
six-dimensional
- ABA:
-
articulated-body algorithm
- CRBA:
-
composite-rigid-body algorithm
- DOF:
-
degree of freedom
- JPL:
-
Jet Propulsion Laboratory
- JSIM:
-
joint-space inertia matrix
- OSIM:
-
operational-space inertia matrix
- RNEA:
-
recursive Newton–Euler algorithm
References
R. Featherstone: The calculation of robot dynamics using articulated-body inertias, Int. J. Robotics Res. 2(1), 13–30 (1983)
J.J. Craig: Introduction to Robotics: Mechanics and Control, 3rd edn. (Prentice Hall, Upper Saddle River 2005)
R.E. Roberson, R. Schwertassek: Dynamics of Multibody Systems (Springer, Berlin, Heidelberg 1988)
J.Y.S. Luh, M.W. Walker, R.P.C. Paul: On-line computational scheme for mechanical manipulators, Trans. ASME J. Dyn. Syst. Meas. Control 102(2), 69–76 (1980)
M.W. Walker, D.E. Orin: Efficient dynamic computer simulation of robotic mechanisms, Trans. ASME J. Dyn. Syst. Meas. Control 104, 205–211 (1982)
D. Baraff: Linear-time dynamics using lagrange multipliers, Proc. 23rd Annu. Conf. Comp. Graph. Interact. Tech., New Orleans (1996) pp. 137–146
J. Baumgarte: Stabilization of constraints and integrals of motion in dynamical systems, Comput. Methods Appl. Mech. Eng. 1, 1–16 (1972)
R. Featherstone: Rigid Body Dynamics Algorithms (Springer, New York 2008)
R.M. Murray, Z. Li, S.S. Sastry: A Mathematical Introduction to Robotic Manipulation (CRC, Boca Raton 1994)
J. Angeles: Fundamentals of Robotic Mechanical Systems, 2nd edn. (Springer, New York 2003)
R.S. Ball: A Treatise on the Theory of Screws (Cambridge Univ. Press, London 1900), Republished (1998)
J.M. Selig: Geometrical Methods in Robotics (Springer, New York 1996)
D.T. Greenwood: Principles of Dynamics (Prentice-Hall, Englewood Cliffs 1988)
F.C. Moon: Applied Dynamics (Wiley, New York 1998)
R. Featherstone: Robot Dynamics Algorithms (Kluwer, Boston 1987)
R. Featherstone: Spatial v2, http://royfeatherstone.org/spatial/v2 (2012)
S. McMillan, D.E. Orin: Efficient computation of articulated-body inertias using successive axial screws, IEEE Trans. Robotics Autom. 11, 606–611 (1995)
L. Sciavicco, B. Siciliano: Modeling and Control of Robot Manipulators, 2nd edn. (Springer, London 2000)
J. Slotine, W. Li: On the adaptive control of robot manipulators, Int. J. Robotics Res. 6(3), 49–59 (1987)
K.S. Chang, O. Khatib: Operational space dynamics: Efficient algorithms for modeling and control of branching mechanisms, Proc. IEEE Int. Conf. Robotics Autom., San Francisco (2000) pp. 850–856
O. Khatib: A unified approach to motion and force control of robot manipulators: The operational space formulation, IEEE J. Robotics Autom. 3(1), 43–53 (1987)
Y.F. Zheng, H. Hemami: Mathematical modeling of a robot collision with its environment, J. Robotics Syst. 2(3), 289–307 (1985)
W. Khalil, E. Dombre: Modeling, Identification and Control of Robots (Kogan Page Sci., London 2002)
J. Denavit, R.S. Hartenberg: A kinematic notation for lower-pair mechanisms based on matrices, J. Appl. Mech. 22, 215–221 (1955)
H. Brandl, R. Johanni, M. Otter: A very efficient algorithm for the simulation of robots and similar multibody systems without inversion of the mass matrix, Proc. IFAC/IFIP/IMACS Int. Symp. Theory Robots, Vienna (1986)
R. Featherstone: Efficient factorization of the joint space inertia matrix for branched kinematic trees, Int. J. Robotics Res. 24(6), 487–500 (2005)
R. Featherstone: An empirical study of the joint space inertia matrix, Int. J. Robotics Res. 23(9), 859–871 (2004)
K. Kreutz-Delgado, A. Jain, G. Rodriguez: Recursive formulation of operational space control, Proc. IEEE Int. Conf. Robotics Autom., Sacramento (1991) pp. 1750–1753
K.W. Lilly: Efficient Dynamic Simulation of Robotic Mechanisms (Kluwer, Boston 1993)
K.W. Lilly, D.E. Orin: Efficient O(N) recursive computation of the operational space inertia matrix, IEEE Trans. Syst. Man Cybern. 23(5), 1384–1391 (1993)
G. Rodriguez, A. Jain, K. Kreutz-Delgado: Spatial operator algebra for multibody system dynamics, J. Astronaut. Sci. 40(1), 27–50 (1992)
R. Featherstone: Exploiting sparsity in operational-space dynamics, Int. J. Robotics Res. 29(10), 1353–1368 (2010)
P. Wensing, R. Featherstone, D.E. Orin: A reduced-order recursive algorithm for the computation of the operational-space inertia matrix, Proc. IEEE Int. Conf. Robotics Autom., St. Paul (2012) pp. 4911–4917
R.E. Ellis, S.L. Ricker: Two numerical issues in simulating constrained robot dynamics, IEEE Trans. Syst. Man Cybern. 24(1), 19–27 (1994)
J. Wittenburg: Dynamics of Systems of Rigid Bodies (Teubner, Stuttgart 1977)
R. Featherstone, D.E. Orin: Robot dynamics: Equations and algorithms, Proc. IEEE Int. Conf. Robotics Autom., San Francisco (2000) pp. 826–834
C.A. Balafoutis, R.V. Patel: Dynamic Analysis of Robot Manipulators: A Cartesian Tensor Approach (Kluwer, Boston 1991)
A. Jain: Robot and Multibody Dynamics: Analysis and Algorithms (Springer, New York 2011)
L.W. Tsai: Robot Analysis and Design: The Mechanics of Serial and Parallel Manipulators (Wiley, New York 1999)
K. Yamane: Simulating and Generating Motions of Human Figures (Springer, Berlin, Heidelberg 2004)
F.M.L. Amirouche: Fundamentals of Multibody Dynamics: Theory and Applications (Birkhäuser, Boston 2006)
M.G. Coutinho: Dynamic Simulations of Multibody Systems (Springer, New York 2001)
E.J. Haug: Computer Aided Kinematics and Dynamics of Mechanical Systems (Allyn and Bacon, Boston 1989)
R.L. Huston: Multibody Dynamics (Butterworths, Boston 1990)
A.A. Shabana: Computational Dynamics, 2nd edn. (Wiley, New York 2001)
V. Stejskal, M. Valášek: Kinematics and Dynamics of Machinery (Marcel Dekker, New York 1996)
L. Brand: Vector and Tensor Analysis, 4th edn. (Wiley/Chapman Hall, New York/London 1953)
F.C. Park, J.E. Bobrow, S.R. Ploen: A lie group formulation of robot dynamics, Int. J. Robotics Res. 14(6), 609–618 (1995)
M.E. Kahn, B. Roth: The near minimum-time control of open-loop articulated kinematic chains, J. Dyn. Syst. Meas. Control 93, 164–172 (1971)
J.J. Uicker: Dynamic force analysis of spatial linkages, Trans. ASME J. Appl. Mech. 34, 418–424 (1967)
A. Jain: Unified formulation of dynamics for serial rigid multibody systems, J. Guid. Control Dyn. 14(3), 531–542 (1991)
G. Rodriguez: Kalman filtering, smoothing, and recursive robot arm forward and inverse dynamics, IEEE J. Robotics Autom. RA-3(6), 624–639 (1987)
G. Rodriguez, A. Jain, K. Kreutz-Delgado: A spatial operator algebra for manipulator modelling and control, Int. J. Robotics Res. 10(4), 371–381 (1991)
J.M. Hollerbach: A recursive lagrangian formulation of manipulator dynamics and a comparative study of dynamics formulation complexity, IEEE Trans. Syst. Man Cybern. SMC-10(11), 730–736 (1980)
M.W. Spong, S. Hutchinson, M. Vidyasagar: Robot Modeling and Control (Wiley, Hoboken 2006)
K.W. Buffinton: Kane's Method in Robotics. In: Robotics and Automation Handbook, ed. by T.R. Kurfess (CRC, Boca Raton 2005), 6-1--6-31
T.R. Kane, D.A. Levinson: The use of kane's dynamical equations in robotics, Int. J. Robotics Res. 2(3), 3–21 (1983)
C.A. Balafoutis, R.V. Patel, P. Misra: Efficient modeling and computation of manipulator dynamics using orthogonal cartesian tensors, IEEE J. Robotics Autom. 4, 665–676 (1988)
X. He, A.A. Goldenberg: An algorithm for efficient computation of dynamics of robotic manipulators, Proc. 4th Int. Conf. Adv. Robotics, Columbus (1989) pp. 175–188
W. Hu, D.W. Marhefka, D.E. Orin: Hybrid kinematic and dynamic simulation of running machines, IEEE Trans. Robotics 21(3), 490–497 (2005)
C.A. Balafoutis, R.V. Patel: Efficient computation of manipulator inertia matrices and the direct dynamics problem, IEEE Trans. Syst. Man Cybern. 19, 1313–1321 (1989)
K.W. Lilly, D.E. Orin: Alternate formulations for the manipulator inertia matrix, Int. J. Robotics Res. 10, 64–74 (1991)
S. McMillan, D.E. Orin: Forward dynamics of multilegged vehicles using the composite rigid body method, Proc. IEEE Int. Conf. Robotics Autom. (1998) pp. 464–470
U.M. Ascher, D.K. Pai, B.P. Cloutier: Forward dynamics: Elimination methods, and formulation stiffness in robot simulation, Int. J. Robotics Res. 16(6), 749–758 (1997)
R. Featherstone: 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. Robotics Res. 18(9), 876–892 (1999)
MSC Software Corporation: Adams, http://www.mscsoftware.com/
T. Kane, D. Levinson: Autolev user's manual (OnLine Dynamics Inc., Sunnyvale 2005)
Real-Time Physics Simulation: Bullet, http://bulletphysics.org/wordpress (2015)
Georgia Tech Graphics Lab and Humanoid Robotics Lab: DART, http://dartsim.github.io (2011)
S. McMillan, D.E. Orin, R.B. McGhee: DynaMechs: An object oriented software package for efficient dynamic simulation of underwater robotic vehicles. In: Underwater Robotic Vehicles: Design and Control, ed. by J. Yuh (TSI Press, Albuquerque 1995) pp. 73–98
Open Source Robotics Foundation: Gazebo, http://gazebosim.org (2002)
R. Smith: Open Dynamics Engine User Guide, http://opende.sourceforge.net (2006)
Microsoft Corporation: Robotics Developer Studio, http://www.microsoft.com/robotics (2010)
P.I. Corke: A robotics toolbox for MATLAB, IEEE Robotics Autom. Mag. 3(1), 24–32 (1996)
Robotran: http://www.robotran.be (Center for Research in Mechatronics, Université catholique de Louvain 2015)
J.C. Samin, P. Fisette: Symbolic Modeling of Multibody Systems (Kluwer, Dordrecht 2003)
M.G. Hollars, D.E. Rosenthal, M.A. Sherman: SD/FAST User’s Manual (Symbolic Dynamics Inc., Mountain View 1994)
M. Sherman, P. Eastman: Simbody, https://simtk.org/home/simbody (2015)
G.D. Wood, D.C. Kennedy: Simulating Mechanical Systems in Simulink with SimMechanics (MathWorks Inc., Natick 2003)
W. Khalil, D. Creusot: SYMORO+: A system for the symbolic modeling of robots, Robotica 15, 153–161 (1997)
W. Khalil, A. Vijayalingam, B. Khomutenko, I. Mukhanov, P. Lemoine, G. Ecorchard: OpenSYMORO: An open-source software package for symbolic modelling of robots, Proc. IEEE/ASME Int. Conf. Adv. Intell. Mechatron. (2014) pp. 126–1211
Cyberbotics Ltd.: Webots User Guide, http://www.cyberbotics.com (2015)
I.C. Brown, P.J. Larcombe: A survey of customised computer algebra programs for multibody dynamic modelling. In: Symbolic Methods in Control System Analysis and Design, ed. by N. Munro (Inst. Electr. Eng., London 1999) pp. 53–77
J.J. Murray, C.P. Neuman: ARM: An algebraic robot dynamic modeling program, Proc. IEEE Int. Conf. Robotics Autom., Atlanta (1984) pp. 103–114
J.J. Murray, C.P. Neuman: Organizing customized robot dynamic algorithms for efficient numerical evaluation, IEEE Trans. Syst. Man Cybern. 18(1), 115–125 (1988)
F.C. Park, J. Choi, S.R. Ploen: Symbolic formulation of closed chain dynamics in independent coordinates, Mech. Mach. Theory 34, 731–751 (1999)
M. Vukobratovic, N. Kircanski: Real-Time Dynamics of Manipulation Robots (Springer, New York 1985)
J. Wittenburg, U. Wolz: Mesa Verde: A symbolic program for nonlinear articulated-rigid-body dynamics, ASME Des. Eng. Div. Conf., Cincinnati (1985) pp. 1–8, ASME Paper No. 85-DET-151
J.Y.S. Luh, C.S. Lin: Scheduling of parallel computation for a computer-controlled mechanical manipulator, IEEE Trans. Syst. Man Cybern. 12(2), 214–234 (1982)
D.E. Orin: Pipelined approach to inverse plant plus jacobian control of robot manipulators, Proc. IEEE Int. Conf. Robotics Autom., Atlanta (1984) pp. 169–175
R.H. Lathrop: Parallelism in manipulator dynamics, Int. J. Robotics Res. 4(2), 80–102 (1985)
C.S.G. Lee, P.R. Chang: Efficient parallel algorithm for robot inverse dynamics computation, IEEE Trans. Syst. Man Cybern. 16(4), 532–542 (1986)
M. Amin-Javaheri, D.E. Orin: Systolic architectures for the manipulator inertia matrix, IEEE Trans. Syst. Man Cybern. 18(6), 939–951 (1988)
C.S.G. Lee, P.R. Chang: Efficient parallel algorithms for robot forward dynamics computation, IEEE Trans. Syst. Man Cybern. 18(2), 238–251 (1988)
M. Amin-Javaheri, D.E. Orin: Parallel algorithms for computation of the manipulator inertia matrix, Int. J. Robotics Res. 10(2), 162–170 (1991)
A. Fijany, A.K. Bejczy: A class of parallel algorithms for computation of the manipulator inertia matrix, IEEE Trans. Robotics Autom. 5(5), 600–615 (1989)
S. McMillan, P. Sadayappan, D.E. Orin: Parallel dynamic simulation of multiple manipulator systems: Temporal versus spatial methods, IEEE Trans. Syst. Man Cybern. 24(7), 982–990 (1994)
A. Fijany, I. Sharf, G.M.T. D'Eleuterio: Parallel O(logN) algorithms for computation of manipulator forward dynamics, IEEE Trans. Robotics Autom. 11(3), 389–400 (1995)
R. Featherstone: A divide-and-conquer articulated-body algorithm for parallel O(log(n)) calculation of rigid-body dynamics. Part 1: Basic algorithm, Int. J. Robotics Res. 18(9), 867–875 (1999)
R. Featherstone, A. Fijany: A technique for analyzing constrained rigid-body systems and its application to the constraint force algorithm, IEEE Trans. Robotics Autom. 15(6), 1140–1144 (1999)
P.S. Freeman, D.E. Orin: Efficient dynamic simulation of a quadruped using a decoupled tree-structured approach, Int. J. Robotics Res. 10, 619–627 (1991)
Y. Nakamura, K. Yamane: Dynamics computation of structure-varying kinematic chains and its application to human figures, IEEE Trans. Robotics Autom. 16(2), 124–134 (2000)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Featherstone, R., Orin, D.E. (2016). Dynamics. In: Siciliano, B., Khatib, O. (eds) Springer Handbook of Robotics. Springer Handbooks. Springer, Cham. https://doi.org/10.1007/978-3-319-32552-1_3
Download citation
DOI: https://doi.org/10.1007/978-3-319-32552-1_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-32550-7
Online ISBN: 978-3-319-32552-1
eBook Packages: EngineeringEngineering (R0)