During his internship with OSRF, Mike Kasper developed a new ignition-robotics rendering library. The key feature of this library is that it provides an abstract render-engine interface for building and rendering scenes. This allows the library to employ multiple underlying render engines. The motivation for this work was to extend Gazebo's rendering capabilities to provide near photo-realistic imagery for simulated camera sensors. This could then be utilized for the development and testing of perceptions algorithms.
As Gazebo currently employs the Object-Oriented Graphics Rendering Engine (OGRE), an OGRE-based implementation has been added to the ignition-rendering library. Additionally, a render-engine using NVIDIA's OptiX ray-tracing engine has also been implemented. The current OptiX-based render-engine employs simple ray-tracing techniques, but will employ physically based path-tracing techniques in the future to generate photo-realistic imagery.
The following videos give an overview of the libraries' current capabilities:
Source code for the ignition-rendering library is available here:
The Advanced Robotic Systems Engineering Lab at the Naval Postgraduate School in Monterey, CA recently flew fifty small autonomous planes together using ROS.
Each plane - a styrofoam wing with a 56” wingspan - was equipped with a Pixhawk autopilot running a modified version of the open-source Ardupilot firmware and an ODroid u3 “ payload” computer running ROS Indigo. The payload used autopilot_bridge (similar to mavros) to bridge between serial communications with the autopilot and ROS messages and services. A network node bridged ROS communications with a lightweight UDP-based protocol that allowed aircraft to share their pose and status with one another and to receive commands from the ground.
Also residing on the payload was a set of controller nodes that could “drive” the plane by sending updated target latitude-longitude-altitude commands to the autopilot. Controllers were individually activated by a state machine, based on commands from the ground. The controller used during the fifty-plane flight was a follower controller. A single ground operator commanded two sets of 25 planes each to configure themselves into leader-follower formations; planes would determine a leader based on highest altitude (which was deconflicted at the start of the flight). The leader would then proceed along a predefined racetrack, and all followers, listening to the broadcast position of the leader, would track its path while remaining at their designated altitudes.
Gazebo 1.9 and 3.x have had a nice long lives, and it's time to put these version to rest. We will continue to address questions about Gazebo 1.9 and 3.x, but we will stop fixing bugs.
Another six months has elapsed, and nicely polished Gazeob6 is ready for use. We spent a considerable amount of time delving into Windows in an effort make Gazebo cross-platform. The process of compiling Gazebo on Windows was both a learning experience, and an uphill battle. The good news is that you can now compile Gazebo natively on Windows. Over the coming months we will refine this process, and offer a proper Windows installer.
A few of Gazebo's internal libraries are slowing transitioning into separate packages. We noticed that Gazebo has many great capabilites that are hidden or difficult to use. Access to these features will improve with this separation, and Gazebo's core footprint will shrink. The first library to to start this transition is Gazebo's math library, which is now Ignition Math. Gazebo7 will see a complete transition to Ignition Math, and the start of Ignition Transport which replaces Gazebo's internal transport library.
Enjoy the new release, and thanks for all the contributions,
OSRF Development Team
Thanks to everyone for filling out the Gazebo survey, and helping direct our development plans. We have received 128 responses from simulation users around the world. The following is a summary of the survey results
At the outset of the DRC, Program Manager Dr. Gill Pratt said, “The value of a cloud-based simulator is that it gives talent from any location a common space to train, design, test and collaborate on ideas without the need for expensive hardware and prototyping. That opens the door to innovation.” Taking that goal to heart, we worked together with DARPA and the DRC teams to make Gazebo into the most flexible, powerful, and capable robotics simulation available.
A few key milestones that have been achieved over the past three years include:
The Atlas robot from BDI, a 53-degree-of-freedom sensor heavy humanoid robot, runs on a modern desktop computer at or near real-time. To our knowledge, this represents the most complex robot simulation to date that runs in near real time on commodity computing hardware.
Gazebo’s flexible plugin system has made it possible to simultaneously simulate ground, aerial, and underwater vehicles in expansive environments. Physically accurate simulation in all three environments is a first for a robotics simulator without suppressing physics properties.
As a preliminary stage in the DRC program, a virtual competition was conducted to determine which teams would receive funding and access to an Atlas humanoid robot. Leveraging advances in robot simulation, cloud hosted infrastructure, and web technology, we were able to accurately and efficiently simulate complex robots and environments on remote servers while providing realistic data streams for human-in-the-loop robot control.
The competition was a resounding success, with no major problems, and largely positive feedback from the participants. Importantly, the VRC achieved its goals: the most capable software teams were selected for award of an Atlas robot, and those teams were prepared immediately upon receipt of their Atlas, because they had already spent months developing their software using a high-quality simulation of the robot.
Use of Gazebo has expanded beyond the DRC and even the research community. Organizations such as FIRST and RoboCup have begun to use Gazebo either officially or experimentally. Industry is also adapting Gazebo. The Amazon Picking Challenge, a competition designed around complex object manipulation using a robot platform, utilizes Gazebo as a development and testing tool. Rethink Robotics simulates their Baxter industrial robot in Gazebo, and the ROS-Industrial Consortium actively makes use of Gazebo to simulate industrial arms.
Dr. Pratt said, “The DRC Simulator is going to be one of DARPA’s legacies to the robotics community.” We believe that goal has been achieved, thanks in large part to the support and contributions of an active community of simulation developers and users. We are excited to help provide users with this critical tool, and look forward to advances that simulation will take in the coming years.