During his internship with Open Robotics, Adam Allevato ported a 3D object detector into ROS 2 and made it run on live depth camera data. The detector leverages ROS 2 features such as intraprocess communication and shared memory to run with lower overhead than the ROS 1 version. Using the ros1_bridge, we can also interface the detector with ROS 1 tools (like Rviz) if desired.
By porting a few other packages for vision and robot motion, we are now able to perform vision-based manipulation using an industrial robot arm 100% ROS 2 code. We like to call this the “picky robot” because it can preferentially push food it doesn’t like off the table and into the trash.
For even more details, attend our upcoming ROSCon 2017 talk, “Using ROS2 for Vision-Based Manipulation with Industrial Robots,”.
The demo is open source and available on Github (still in development). We’re excited to integrate even more use cases and platforms with ROS 2 moving forward!