During his internship with OSRF, Alex Henning developed FRCSim for the FIRST Robotics Competition (FRC). FRC is a competive high school robotics program where students build 120lb robots and compete against other robots while working on alliances. FRCSim is a set of plugins that integrates Gazebo and WPILib, the robot library used by teams, so that they can work together to allow the same code to run on FRC robots and on Gazebo simulated robots. Until recently, students on FRC teams needed access to physical robots to test their code, practice programming, and learn WPILib in just six short weeks. FRCSim currently ships with models of two actual robots and experimental support is on the way to allow teams to import their own robots into Gazebo.
Alex implemented WPILibSim in both Java and C++. He also developed Gazebo plugins for a variety of sensors and actuators, created a simplified installer for FRC teams and integrated with the WPILib Eclipse-based development tools. The current integration using the Eclipse plugins makes running the code in simulation almost identical to deploying for the real robot, the only difference is the user selects "Run in simulation" instead of "Deploy to robot". The plugin also ships with example programs that can be run and modified by students. Check out the following video for more information.
FRCSim is currently part of the closed FRC Beta and should be available to everyone in January, 2015. With its deployment, students will be given greater access to simulation environments to help them learn to program robots. It will also give them experience with simulation, which is being used more and more as part of modern robotics projects.
We are moving a few web assets from gazebosim.org to externally hosted locations. This is done in an effort to reduce the maintenance effort required by OSRF. The following list details what resource are being moved:
We are making great progress on Gazebo's goals for version 4.0. The first item tackled is an updated tutorial system. Until now, Gazebo tutorials have resided on http://gazebosim.org/wiki/Tutorials. While the wiki format is convenient in many ways, it was not well suited to our needs. For instance, tutorial versioning is difficult, and there was limited edit control.
The new tutorial system is integrated directly into the main Gazebo website. Tutorial information is pulled directly from the new gazebo_tutorials Bitbucket repository. This approach supports the fork --> modify --> pull-request method of editing and creating new tutorials.
While we were at it, we gave the tutorials a face-lift and added version information to each tutorial. A dropdown in the upper-right of each tutorial allows you to switch between content appropriate for different versions of Gazebo. An Edit button, located directly to the right, allows you to quickly and easily modify the tutorial. For more information about creating and editing tutorials, please see the Contribution Tutorial.
Enjoy the new tutorials!
The fifth and final part in our series of posts about new features in Gazebo 3.0 covers the new Gazebo command-line tool.
Taking a cue from many popular command line interfaces, such as mercurial and git, we have unified the Gazebo command-line interface into one tool called gz. Previously, multiple independent tools (gztopic, gzlog, gzsdf, etc) provided system introspection and control for Gazebo. These tools, while powerful, had slightly different syntax, lacked proper testing, and were difficult to remember. The new gz tool addresses all these issues, and even adds a few new features such as joint control.
To see a list of the available commands, simply type gz help. Similarly, get help for a specific command using gz help <command>.
The new command line tool also incorporates tab-completion. This improvement will simplify the process of topic introspection.
We hope you enjoy this new tool as much as we do!