ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Online, full-physics simulation using a reliable contact simulator. The framework relies on PyBullet to enable well established contact simulation for rigid/deformable bodies.
Integration with the ROS ecosystem. Robot simulation and visualization of real robots/objects (utilizing sensing) are integrated via ROS. Furthermore, this enables (i) ROS packages to be integrated with PyBullet and (ii) a straightforward way to port developed algorithms to real systems.
Several interfaces enabling HRI with virtual worlds and telepresence. We provide facilities for human’s to provide examples in a simulated environment via several popular interfaces (including haptic devices).
Sensor simulation. Robot joint force-torque sensors and RGB-D cameras (i.e. point clouds) are provided for sensing-based control and can be seamlessly interchanged with real world sensor streams via ROS.
Modular and extensible design. Our framework adopts a modular (i.e. several ROS nodes) and highly extensible design paradigm (i.e. class hierarchy) using the Python programming language. This makes it easy to quickly develop new features for the framework.
Data collection with standard ROS tools. Since the framework provides an interface to ROS, we can leverage common tools for data collection such as ROS bags [36] and data processing to common formats in machine learning applications, i.e. rosbag pandas [37].
Integration with robot and sensing hardware. Tools are provided to easily remap the virtual system to physical hardware and integrate real sensing apparatus in the PyBullet simulation (e.g. vicon).
Framework features
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Alternatives?
3Possible via additional plugins.
4Isaac Sim was recently integrated with Gazebo.
5Until recently MuJoCo required a license.
6Possible with new Kubric library.
| ROS | Languages | Deform. Obj. | Hardware | HRI | Photo-realistic |
Drake | ✗ | C++/Python | ✔ | ✗ | ✗ | ✗ |
Gazebo | ✔ | C++ | ✗ | ✔ | ✗ | ✗3 |
Nvidia Issac | ✔4 | Python | ✗ | ✔ | ✗ | ✔ |
MuJoCo5 | ✗ | C++/Python | ✔ | ✗ | ✗ | ✗ |
ROS-PyBullet | ✔ | Python | ✔ | ✔ | ✔ | ✗6 |
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Limitations (Dirty Laundry)
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Contributions
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Use case: learning from demonstration and interaction with virtual worlds
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Use case: full-body telepresence
ROS-PyBullet Interface: A Framework for Reliable Contact Simulation and Human-Robot Interaction
Christopher E. Mower, Theodoros Stouraitis, João Moura, Christian Rauch, Lei Yan, Nazanin Zamani Behabadi, Michael Gienger, Tom Vercauteren, Christos Bergeles, Sethu Vijayakumar
Use case: hardware integration and MPC