Robust Contact Generation for Robot Simulation with Unstructured Meshes

  • Kris Hauser
Part of the Springer Tracts in Advanced Robotics book series (STAR, volume 114)


This paper presents a numerically stable method for rigid body simulation of unstructured meshes undergoing forceful contact, such as in robot locomotion and manipulation. The key contribution is a new contact generation method that treats the geometry as having a thin virtual boundary layer around the underlying meshes. Unlike existing methods, it produces contact estimates that are stable with respect to small displacements, which helps avoid jitter or divergence in the simulator caused by oscillatory discontinuities. Its advantages are particularly apparent on non-watertight meshes and can easily simulate interaction with partially-sensed and noisy objects, such as those that emerge from low-cost 3D scanners. The simulator is tested on a variety of robot locomotion and manipulation examples, and results closely match theoretical predictions and experimental data.


Humanoid Robot Unstructured Mesh Robot Simulation Physical Robot Contact Generation 
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.



The author thanks Anna Eilering for capturing the Kinect meshes and H. Andy Park for testing the Hubo robot’s force sensors. This work is partially supported by Defense Advanced Research Projects Agency (DARPA) award # N65236-12-1-1005 for the DARPA Robotics Challenge. Any opinion, findings, and conclusions or recommendations expressed in this material are those of the author and do not necessarily reflect the views of DARPA.


  1. 1.
    Bridson, R., Fedkiw, R., Anderson, J.: Robust treatment of collisions, contact and friction for cloth animation. In: ACM Transactions on Graphics (Proc. ACM SIGGRAPH) (2002)Google Scholar
  2. 2.
    Bullet physics engine. (2013). Accessed 31 Oct 2013
  3. 3.
    Carpin, S., Lewis, M., Wang, J., Balakirsky, S., Scrapper, C.: Usarsim: a robot simulator for research and education. In: IEEE International Conference on Robotics and Automation, pp. 1400–1405 (2007). doi: 10.1109/ROBOT.2007.363180
  4. 4.
    Coppelia Robotics: virtual robot experimentation platform (v-rep). (2013). Accessed 31 Oct 2013
  5. 5.
    Cyberbotics: Webots: the mobile robot simulation software. (2013). Accessed 31 Oct 2013
  6. 6.
    Gazebo. (2013). Accessed 31 Oct 2013
  7. 7.
    Gerkey, B.P., Vaughan, R.T., Howard, A.: The player/stage project: tools for multi-robot and distributed sensor systems. In: Proceedings of 11th International Conference on Advanced Robotics, pp. 317–323 (2003)Google Scholar
  8. 8.
    Gottschalk, S., Lin, M., Manocha, D.: OBB-tree: a hierarchical structure for rapid interference detection. In: ACM SIGGRAPH, pp. 171–180 (1996)Google Scholar
  9. 9.
    Guendelman, E., Bridson, R., Fedkiw, R.: Nonconvex rigid bodies with stacking. In: ACM Transactions on Graphics (Proc ACM SIGGRAPH) (2013)Google Scholar
  10. 10.
    Heidelberger, B., Teschner, M., Keiser, R., Müller, M., Gross, M.: Consistent penetration depth estimation for deformable collision response. In: Proceedings of Vision, Modeling, Visualization, pp. 339–346 (2004)Google Scholar
  11. 11.
    Izadi, S., Kim, D., Hilliges, O., Molyneaux, D., Newcombe, R., Kohli, P., Shotton, J., Hodges, S., Freeman, D., Davison, A., Fitzgibbon, A.: Kinectfusion: Real-time 3d reconstruction and interaction using a moving depth camera. In: ACM Symposium on User Interface Software and Technology (2011)Google Scholar
  12. 12.
    Kim, Y., Otaduy, M., Lin, M., Manocha, D.: Fast penetration depth computation for physically-based animation. In: Symposium on Computer Animation (2002)Google Scholar
  13. 13.
    Lien, J.M., Amato, N.M.: Approximate convex decomposition of polyhedra. In: Proceedings of the ACM Symposium on Solid and Physical Modeling (SPM). Beijing, China (2007)Google Scholar
  14. 14.
    Mirtich, B.: Impulse-based dynamic simulation of rigid body systems. Ph.D. thesis, University of California, Berkeley (1996)Google Scholar
  15. 15.
    Nguyen, B., Trinkle, J.: dvc3d: a three dimensional physical simulation tool for rigid bodies with contacts and coulomb friction. In: The 1st Joint International Conference on Multibody System Dynamics (2010)Google Scholar
  16. 16.
    Nvidia Corporation: Physx. (2013). Accessed 31 Oct 2013
  17. 17.
    Open dynamics engine. (2013). Accessed 31 Oct 2013
  18. 18.
    Pan, J., Sucan, I., Chitta, S., Manocha, D.: Real-time collision detection and distance computation on point cloud sensor data. In: IEEE International Conference on Robotics and Automation (2013)Google Scholar
  19. 19.
    Redon, S., Kheddar, A., Coquillart, S.: Fast continuous collision detection between rigid bodies. Comput. Graph. Forum 21(3), 279–287 (2002)CrossRefGoogle Scholar
  20. 20.
    Stewart, D., Trinkle, J.: An implicit time-stepping scheme for rigid body dynamics with inelastic collisions and coulomb friction.International Journal of Numerical Methods in. Engineering 39, 2673–2691 (1996)MathSciNetzbMATHGoogle Scholar
  21. 21.
    Tang, M., Manocha, D., Otaduy, M.A., Tong, R.F.: Continuous penalty forces. In: ACM Transactions on Graphics (Proc ACM SIGGRAPH) (2012)Google Scholar
  22. 22.
    The blender project. (2013). Accessed 31 Oct 2013
  23. 23.
    Usarsim. (2013). Accessed 31 Oct 2013
  24. 24.
    Zhang, L., Kim, Y., Varadhan, G., Manocha, D.: Generalized penetration depth computation. Comput. Aided Des. 39(8), 625–638 (2007)CrossRefGoogle Scholar
  25. 25.
    Zhang, X., Lee, M., Kim, Y.J.: Interactive continuous collision detection for non-convex polyhedra. Vis. Comput. 22(9), 749–760 (2006). doi: 10.1007/s00371-006-0060-0

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Indiana UniversityBloomingtonUSA

Personalised recommendations