Gazebo Newsletter 6 October 2016

Slowly and surely we are switching Gazebo from its built-in transport library to the new Ignition Transport library based on ZeroMQ and Protobuf. The Ignition Transport library is independent of Gazebo, and designed for use in robotic and in non-robotic applications.

Recently, we have added new features to Ignition Transport including

  • throttling message delivery to subscribers,
  • requesting services from the command line, and
  • publishing messages to a topic from the command line.

Ignition Transport has been available in Ubuntu since Trusty, with version 1.3 scheduled for Yakkety. Gazebo 8, to be released in January 2017, will depend on Ignition Transport 1 or greater.

OSRF has internally used Ignition Transport in a number of projects, including HAPTIX and Mentor2. We believe it is ready for prime-time use, and we will be making more use of it in Gazebo and other projects.

Releases

  • Ignition Transport 1.4.0
  • Ignition Transport 2.1.0

Tip of the month

Inertia plays an important role in simulation. An object's inertia defines how it will move and react to forces, including gravity. Incorrect inertia values can lead to strange behavior.

Gazebo has a visualization tool that helps debug inertia values. Within the Gazebo GUI, right click on a model and select ViewInertia. You should see a purple box with green axes for each link. The center of each box is aligned with the center of mass of its link. The sizes and orientations of the boxes correspond to unit-mass boxes with the same inertial behavior as their corresponding links.

A rule of thumb is to make sure the purple boxes roughly match each link in size. There are exceptions to this rule, such as an object that doesn't have uniform density.

Featured Model

A fire station is an active pull request to the model database. firehouse

Bugs

Questions and Answers

Most recent active questions

Gazebo Newsletter 5 September 2016

Tip of the month

Gazebo can log and replay state information. This feature, typically called logging, allows you to save an instance of simulation to a file. This log file can be parsed using the gz log command line tool or visualized using the -p command line argument to gazebo.

Featured Model

Check out the Parrot Bebop model in the Gazebo model database. parrot_bebop

Releases

The following lists package versions that will appear in Ubuntu Yakkety.
  • Gazebo 7.3.0
  • SDFormat 4.1.0
  • Ignition Math 2.5.0
  • Ignition Transport 1.3.0
  • Ignition Messages 0.4.0

Bugs

Questions and Answers

Most recent active questions

Gazebo Newsletter 4 August 2016

Tip of the month

Toggle the pause state of Gazebo using the space bar, just as you would almost any media player.

Development

It is summer time, which means many people on vacation. As a result development news is on the light side.

  • Video recorder

    A new pull request to Gazebo adds the ability to record the user camera to a video file.

  • Visual plugin

    Check out this world file and plugin for example on how to manipulate visual elements in Gazebo.

Featured Model

A new delta wing model is under development, and will soon be made available through the model database.

Releases

  • Ignition Transport 2.0.0
  • Ignition Messages 0.5.0
  • Ignition Math 2.5.0
  • Ignition Common 0.1.0
  • Gazebo 7.3.1

Bugs

Questions and Answers

Most recent active questions

Gazebo Newsletter 3 July 2016

Tip of the month

By default, the Gazebo graphical user interface will start full screen. It is possible to change this behavior. Try resizing and moving the main window. Then select File->Save Configuration. The next time Gazebo starts, the window position and size will be restored.

The position and size information is stored in a file called ~/.gazebo/gui.ini. You can manually modify this file by adjusting or adding the following lines:

[geometry]
x=x_position_in_pixels
y=y_position_in_pixels
width=window_width_in_pixels
height=window_height_in_pixels

Development

Featured Model

A model of the Lunar Tranquillitatis Pit has been added to the Gazebo model database.

lunar-pit

Releases

  • SDFormat 4.1.1
  • Ignition Math 2.4.1
  • DRCSim7 (drcsim compatible with Gazebo7)
  • Gazebo7 ROS packages for Indigo+Trusty and Jade+(Trusty/Vivid)
  • Gazebo ROS control (gazebo_ros_control) for Kinetic and Jade

Bugs

Questions and Answers

Most recent active questions

Gazebo Newsletter 2 June 2016

This past month we have started a development push on our web-technologies. CloudSim, a tool used to provision and manage cloud-based simulations, and PropShop are getting a reboot. Stay tuned over the coming months for updates.

We spent a week on a usability sprint, with the goal of putting ourselves in the shoes of first-time simulation users. The sprint utilized the FIRST 2016 competition environment. Two teams were tasked with constructing three robots using Gazebo and ROS. At the end of the week we generated and long list of usability issues, which we are now busy resolving.

We had a bit of fun at the end of the sprint, in the form of a live competition. Both teams setup in the OSRF cafe, and connected to Gazebo running the FRC 2016 environment. Check out the video below for a quick take on the robots we created.

Check out our robot building tutorial to make your own robot, and the FRC 2016 repository for the simulation environment.

Tip of the month

This month's tip is about improving simulation performance.

  1. Use simple shapes for collision elements, rather than meshes.
    Triangle mesh collisions are both CPU intensive and error prone. Use mesh objects for visuals, and simple shapes for collisions.
  2. Reduce joint count.
    Try to reduce the number of joints, including fixed joints, in models. Each joint introduces a constraint that the physics solver must compute.
  3. Simplify meshes.
    Meshes may contain screws and internal structures that are not useful in simulation, and only slow down rendering.Open your meshes in a 3D modeling tool, such as Blender, and remove or reduce the number of triangles.
  4. Review your sensors.
    Check sensor update rates and resolutions. For example, ask yourself if you need an HD camera in simulation.

Development

  • Thanks to Nicolas Dessart, Jeongseok Lee, and Guilherme Campos Camargo for fixing bugs in Gazebo.
  • Thanks to Stefan Glaser, Camm11, and Jason Z Liang for fixing bugs in Robocup3ds.
  • Work continues on Gazebo for Windows. An internal development branch contains an experimental version that adds plugin support to Gazebo on Windows.

Releases

  • RoboCup3DS support for Ubuntu Xenial

Bugs

We need your help to squash bugs! Please visit our issue trackers to get started.

Questions and Answers

Most recent active questions