Inverse dynamics with rigid contact and friction

Inverse dynamics is used extensively in robotics and biomechanics applications. In manipulator and legged robots, it can form the basis of an effective nonlinear control strategy by providing a robot with both accurate positional tracking and active compliance. In biomechanics applications, inverse dynamics control can approximately determine the net torques applied at anatomical joints that correspond to an observed motion. In the context of robot control, using inverse dynamics requires knowledge of all contact forces acting on the robot; accurately perceiving external forces applied to the robot requires filtering and thus significant time delay. An alternative approach has been suggested in recent literature: predicting contact and actuator forces simultaneously under the assumptions of rigid body dynamics, rigid contact, and friction. Existing such inverse dynamics approaches have used approximations to the contact models, which permits use of fast numerical linear algebra algorithms. In contrast, we describe inverse dynamics algorithms that are derived only from first principles and use established phenomenological models like Coulomb friction. We assess these inverse dynamics algorithms in a control context using two virtual robots: a locomoting quadrupedal robot and a fixed-based manipulator gripping a box while using perfectly accurate sensor data from simulation. The data collected from these experiments gives an upper bound on the performance of such controllers in situ. For points of comparison, we assess performance on the same tasks with both error feedback control and inverse dynamics control with virtual contact force sensing.

[1]  C. E. Lemke,et al.  Bimatrix Equilibrium Points and Mathematical Programming , 1965 .

[2]  O. Mangasarian,et al.  The Fritz John Necessary Optimality Conditions in the Presence of Equality and Inequality Constraints , 1967 .

[3]  G. Dantzig,et al.  Mathematics of the decision sciences , 1968 .

[4]  J. Baumgarte Stabilization of constraints and integrals of motion in dynamical systems , 1972 .

[5]  J. Moreau Standard Inelastic Shocks and the Dynamics of Unilateral Constraints , 1985 .

[6]  Roy Featherstone,et al.  Robot Dynamics Algorithms , 1987 .

[7]  Katta G. Murty,et al.  Linear complementarity, linear and nonlinear programming , 1988 .

[8]  David Baraff,et al.  Fast contact force computation for nonpenetrating rigid bodies , 1994, SIGGRAPH.

[9]  Bruno Siciliano,et al.  Modeling and Control of Robot Manipulators , 1995 .

[10]  U. Ascher,et al.  Stabilization of Constrained Mechanical Systems with DAEs and Invariant Manifolds , 1995 .

[11]  Kevin M. Lynch,et al.  Pulling by Pushing, Slip With Infinite Friction, and Perfectly Rough Surfaces , 1995, Int. J. Robotics Res..

[12]  J. Trinkle,et al.  On Dynamic Multi‐Rigid‐Body Contact Problems with Coulomb Friction , 1995 .

[13]  A. Ivanov On multiple impact , 1995 .

[14]  Brian Mirtich,et al.  Impulse-based dynamic simulation of rigid body systems , 1996 .

[15]  D. Stewart,et al.  AN IMPLICIT TIME-STEPPING SCHEME FOR RIGID BODY DYNAMICS WITH INELASTIC COLLISIONS AND COULOMB FRICTION , 1996 .

[16]  M. Anitescu,et al.  Formulating Dynamic Multi-Rigid-Body Contact Problems with Friction as Solvable Linear Complementarity Problems , 1997 .

[17]  D. Stewart Convergence of a Time‐Stepping Scheme for Rigid‐Body Dynamics and Resolution of Painlevé's Problem , 1998 .

[18]  A. Ruina,et al.  A New Algebraic Rigid-Body Collision Law Based on Impulse Space Considerations , 1998 .

[19]  A. Chatterjee On the Realism of Complementarity Conditions in Rigid Body Collisions , 1999 .

[20]  Jeffrey C. Trinkle,et al.  An implicit time-stepping scheme for rigid body dynamics with Coulomb friction , 2000, Proceedings 2000 ICRA. Millennium Conference. IEEE International Conference on Robotics and Automation. Symposia Proceedings (Cat. No.00CH37065).

[21]  David E. Stewart,et al.  Rigid-Body Dynamics with Friction and Impact , 2000, SIAM Rev..

[22]  L. Siciliano Modelling and Control of Robot Manipulators , 2000 .

[23]  Martijn Wisse,et al.  A Three-Dimensional Passive-Dynamic Walking Robot with Two Legs and Knees , 2001, Int. J. Robotics Res..

[24]  D K Smith,et al.  Numerical Optimization , 2001, J. Oper. Res. Soc..

[25]  H. Hatze The fundamental problem of myoskeletal inverse dynamics and its implications. , 2002, Journal of biomechanics.

[26]  Yoshihiko Nakamura,et al.  Contact phase invariant control for humanoid robot based on variable impedant inverted pendulum model , 2003, 2003 IEEE International Conference on Robotics and Automation (Cat. No.03CH37422).

[27]  C. Glocker,et al.  A set-valued force law for spatial Coulomb-Contensou friction , 2003 .

[28]  Mihai Anitescu,et al.  A constraint‐stabilized time‐stepping approach for rigid multibody dynamics with joints, contact and friction , 2004 .

[29]  Christer Ericson,et al.  Real-Time Collision Detection , 2004 .

[30]  Olivier A. Bauchau,et al.  Efficient simulation of a dynamic system with LuGre friction , 2005 .

[31]  Stephen P. Boyd,et al.  Convex Optimization , 2004, Algorithms and Theory of Computation Handbook.

[32]  Mihai Anitescu,et al.  Optimization-based simulation of nonsmooth rigid multibody dynamics , 2006, Math. Program..

[33]  At L Hof,et al.  Handling of impact forces in inverse dynamics. , 2006, Journal of biomechanics.

[34]  Linhong Ji,et al.  An Inverse Dynamical Model for Slip Gait , 2007, HCI.

[35]  R. Bhatia Positive Definite Matrices , 2007 .

[36]  Roy Featherstone,et al.  Rigid Body Dynamics Algorithms , 2007 .

[37]  W. Blajer,et al.  Multibody modeling of human body for the inverse dynamics analysis of sagittal plane movements , 2007 .

[38]  Antonie J van den Bogert,et al.  A weighted least squares method for inverse dynamic analysis , 2008, Computer methods in biomechanics and biomedical engineering.

[39]  Richard W. Cottle,et al.  Linear Complementarity Problem , 2009, Encyclopedia of Optimization.

[40]  Christopher G. Atkeson,et al.  Dynamic Balance Force Control for compliant humanoid robots , 2010, 2010 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[41]  Stefan Schaal,et al.  Inverse dynamics control of floating base systems using orthogonal decomposition , 2010, 2010 IEEE International Conference on Robotics and Automation.

[42]  Dylan A. Shell,et al.  Modeling Contact Friction and Joint Friction in Dynamic Robotic Simulation Using the Principle of Maximum Dissipation , 2010, WAFR.

[43]  Michael E. Hahn,et al.  The Potential for Error With Use of Inverse Dynamic Calculations in Gait Analysis of Individuals With Lower Limb Loss: A Review of Model Selection and Assumptions , 2010 .

[44]  Stefan Schaal,et al.  Inverse dynamics control of floating-base robots with external constraints: A unified view , 2011, 2011 IEEE International Conference on Robotics and Automation.

[45]  Emanuel Todorov,et al.  A convex, smooth and invertible contact model for trajectory optimization , 2011, 2011 IEEE International Conference on Robotics and Automation.

[46]  Gerd Hirzinger,et al.  Posture and balance control for biped robots based on contact force optimization , 2011, 2011 11th IEEE-RAS International Conference on Humanoid Robots.

[47]  R. Siegwart,et al.  Hybrid Operational Space Control for Compliant Quadruped Robots , 2012 .

[48]  Eitan Grinspun,et al.  Reflections on simultaneous impact , 2012, ACM Trans. Graph..

[49]  Russ Tedrake,et al.  Direct Trajectory Optimization of Rigid Body Dynamical Systems through Contact , 2012, WAFR.

[50]  Weiwei Huang,et al.  3D walking based on online optimization , 2013, 2013 13th IEEE-RAS International Conference on Humanoid Robots (Humanoids).

[51]  Aaron D. Ames,et al.  Human-inspired control of bipedal robots via control lyapunov functions and quadratic programs , 2013, HSCC '13.

[52]  Evan Drumwright,et al.  Inverse Dynamics for a Quadruped Robot Locomoting Along Slippery Surfaces , 2013 .

[53]  Mark R. Cutkosky,et al.  Simulation-based tools for evaluating underactuated hand designs , 2013, 2013 IEEE International Conference on Robotics and Automation.

[54]  François Keith,et al.  Dynamic Whole-Body Motion Generation Under Rigid Contacts and Other Unilateral Constraints , 2013, IEEE Transactions on Robotics.

[55]  Stefan Schaal,et al.  Optimal distribution of contact forces with inverse-dynamics control , 2013, Int. J. Robotics Res..

[56]  Emanuel Todorov,et al.  Convex and analytically-invertible dynamics with contacts and constraints: Theory and implementation in MuJoCo , 2014, 2014 IEEE International Conference on Robotics and Automation (ICRA).

[57]  Evan Drumwright,et al.  Quadratic programming-based inverse dynamics control for legged robots with sticking and slipping frictional contacts , 2014, 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems.

[58]  Aaron D. Ames,et al.  Human-inspired multi-contact locomotion with AMBER2 , 2014, 2014 ACM/IEEE International Conference on Cyber-Physical Systems (ICCPS).

[59]  Scott Kuindersma,et al.  An efficiently solvable quadratic program for stabilizing dynamic locomotion , 2013, 2014 IEEE International Conference on Robotics and Automation (ICRA).

[60]  Evan Drumwright,et al.  Adaptive integration for controlling speed vs. accuracy in multi-rigid body simulation , 2015, 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

[61]  R. Hunger Floating Point Operations in Matrix-Vector Calculus , 2022 .