ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I don't think that message is your fault--I'm pretty sure it's because the contact sensor implementation is broken right now, at least in the version of Gazebo that comes with Fuerte, due a bug which is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

If I'm wrong about that, someone please let me know--I also really need working contact sensors!

I don't think that message is your fault--I'm pretty sure it's because the contact sensor implementation is broken right now, at least in the version of Gazebo that comes with Fuerte, due a bug which Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

If I'm wrong about that, someone please let me know--I also really need working contact sensors!

I don't think that message is your fault--I'm pretty sure it's fault--it's because the contact sensor implementation is broken right now, at least in the version of Gazebo that comes with Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

If I'm wrong EDIT: The comments on issue 13 have information about that, someone please let me know--I also really need how to get a working contact sensors!

version of Gazebo, from Thomas Koletschka (look at the original page for links):

Newer gazebo releases are available as tags at [the simulator_gazebo stack repository] for you to install as overlay ... 1.6.17 does not seem to be tagged as such but 1.7.0 uses r 7e81d745eb07 as well and any later version should do as well. ... What's not included in those versions however is the fix for #141 but as a user of the ros bumper plugin which makes use of the public ContactSensor API you don't want to use that fix anyway until #244 has been resolved.

The contact sensor works the way it is in r 7e81d745eb07 in terms of detecting contacts, but you will be spammed with a lot of error messages until the sensor has its first contact. Upon releasing contact the ros bumper plugin will continue to show the same contact because it's not deleted until the next contact occurs but the contacts will correctly show 0 force and torque after losing contact.

To install a newer version of Gazebo:

Create an overlay for the simulator_gazebo stack using the latest tag ... [Check out the tag] in a directory that's in your ROS_PACKAGE_PATH before the root installation and compile it (which will take some time because it will download and compile the appropriate gazebo version with the fix for ContactSensors).

I don't think that message is your fault--it's because the contact sensor implementation is broken in the version of Gazebo that comes with Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

EDIT: The comments on issue 13 have information about how to get a working version of Gazebo, from Thomas Koletschka (look at the original page for links):links).

Newer gazebo releases are available as tags at [the simulator_gazebo stack repository] for you to install as overlay ... 1.6.17 does not seem to be tagged as such but 1.7.0 uses r 7e81d745eb07 as well and any later version should do as well. ... What's not included in those versions however is the fix for #141 but as a user of the ros bumper plugin which makes use of the public ContactSensor API you don't want to use that fix anyway until #244 has been resolved.

The contact sensor works the way it is in r 7e81d745eb07 in terms of detecting contacts, but you will be spammed with a lot of error messages until the sensor has its first contact. Upon releasing contact the ros bumper plugin will continue to show the same contact because it's not deleted until the next contact occurs but the contacts will correctly show 0 force and torque after losing contact.

Installing a new version of Gazebo

  • Choose somewhere to put your new version of Gazebo. I put mine in ~/ros/simulator_gazebo, and I'll assume that's the location for the rest of the instructions.
  • $ mkdir ~/ros
  • $ svn co [path to ros simulator_gazebo repository] ~/ros/simulator_gazebo
  • In your ~/.bashrc (or wherever it is that you set your ROS_PACKAGE_PATH), add ~/ros/simulator_gazebo to ROS_PACKAGE_PATH before the original value. For example:
    export ROS_PACKAGE_PATH=~/ros/simulator_gazebo:$ROS_PACKAGE_PATH
  • $ source ~/.bashrc
  • $ rosmake -i simulator_gazebo (-i means put a ROS_NOBUILD in the directories)
    This took about 30 minutes to run successfully. The first time I tried running it, I got this:
    -- BUILD ERRORS: These must be resolved before compiling.
    -- Missing: Google Protobuf Compiler Library (libprotoc-dev)
    -- Missing: libtar
    so I did:
    $ sudo apt-get install libprotoc-dev libtar-dev
    and tried again, and it worked.

To install a newer version of Gazebo: When you launch Gazebo as usual, you'll get the new version you just compiled. Be aware though that the existing models you want to use might be incompatible with this new version (mine seem to be).

Create an overlay for the simulator_gazebo stack using the latest tag ... [Check out the tag] in a directory that's in your ROS_PACKAGE_PATH before the root installation and compile it (which will take some time because it will download and compile the appropriate gazebo version with the fix for ContactSensors).

I don't think that message is your fault--it's because the contact sensor implementation is broken in the version of Gazebo that comes with Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

EDIT: The comments on issue 13 have information about how to get a working version of Gazebo, from Thomas Koletschka (look at the original page for links).

Newer gazebo releases are available as tags at [the simulator_gazebo stack repository] for you to install as overlay ... 1.6.17 does not seem to be tagged as such but 1.7.0 uses r 7e81d745eb07 as well and any later version should do as well. ... What's not included in those versions however is the fix for #141 but as a user of the ros bumper plugin which makes use of the public ContactSensor API you don't want to use that fix anyway until #244 has been resolved.

The contact sensor works the way it is in r 7e81d745eb07 in terms of detecting contacts, but you will be spammed with a lot of error messages until the sensor has its first contact. Upon releasing contact the ros bumper plugin will continue to show the same contact because it's not deleted until the next contact occurs but the contacts will correctly show 0 force and torque after losing contact.

Installing a new version of Gazebo

  • Choose somewhere to put your new version of Gazebo. I put mine in ~/ros/simulator_gazebo, and I'll assume that's the location for the rest of the instructions.
  • $ mkdir ~/ros
  • $ svn co [path to ros simulator_gazebo repository] repository, tag simulator_gazebo-1.7.6] ~/ros/simulator_gazebo
  • In your ~/.bashrc (or wherever it is that you set your ROS_PACKAGE_PATH), add ~/ros/simulator_gazebo to ROS_PACKAGE_PATH before the original value. For example:
    export ROS_PACKAGE_PATH=~/ros/simulator_gazebo:$ROS_PACKAGE_PATH
  • $ source ~/.bashrc
  • $ rosmake -i simulator_gazebo (-i means put a ROS_NOBUILD in the directories)
    This took about 30 minutes to run successfully. The first time I tried running it, I got this:
    -- BUILD ERRORS: These must be resolved before compiling.
    -- Missing: Google Protobuf Compiler Library (libprotoc-dev)
    -- Missing: libtar
    so I did:
    $ sudo apt-get install libprotoc-dev libtar-dev
    and tried again, and it worked.

When you launch Gazebo as usual, you'll get the new version you just compiled. Be aware though that the existing models you want to use might be incompatible with this new version (mine seem to be).

I don't think that message is your fault--it's because the contact sensor implementation is broken in the version of Gazebo that comes with Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)

EDIT: The comments on issue 13 have information about how to get a working version of Gazebo, from Thomas Koletschka (look at the original page for links).

Newer gazebo releases are available as tags at [the simulator_gazebo stack repository] for you to install as overlay ... 1.6.17 does not seem to be tagged as such but 1.7.0 uses r 7e81d745eb07 as well and any later version should do as well. ... What's not included in those versions however is the fix for #141 but as a user of the ros bumper plugin which makes use of the public ContactSensor API you don't want to use that fix anyway until #244 has been resolved.

The contact sensor works the way it is in r 7e81d745eb07 in terms of detecting contacts, but you will be spammed with a lot of error messages until the sensor has its first contact. Upon releasing contact the ros bumper plugin will continue to show the same contact because it's not deleted until the next contact occurs but the contacts will correctly show 0 force and torque after losing contact.

Installing a new version of Gazebo

  • Choose somewhere to put your new version of Gazebo. I put mine in ~/ros/simulator_gazebo, and I'll assume that's the location for the rest of the instructions.
  • $ mkdir ~/ros
  • $ svn co [path to ros simulator_gazebo repository, tag simulator_gazebo-1.7.6] ~/ros/simulator_gazebo
  • In your ~/.bashrc (or wherever it is that you set your ROS_PACKAGE_PATH), add ~/ros/simulator_gazebo to ROS_PACKAGE_PATH before the original value. For example:
    export ROS_PACKAGE_PATH=~/ros/simulator_gazebo:$ROS_PACKAGE_PATH
  • $ source ~/.bashrc
  • $ rosmake -i simulator_gazebo (-i means put a ROS_NOBUILD in the directories)
    This took about 30 minutes to run successfully. The first time I tried running it, I got this:
    -- BUILD ERRORS: These must be resolved before compiling.
    -- Missing: Google Protobuf Compiler Library (libprotoc-dev)
    -- Missing: libtar
    so I did:
    $ sudo apt-get install libprotoc-dev libtar-dev
    and tried again, and it worked.

When you launch Gazebo as usual, you'll get the new version you just compiled. compiled, and it should have semi-working contact sensors (with the caveats mentioned above). Be aware though that the existing models you want to use might be incompatible with this new version (mine seem to be).

click to hide/show revision 7
Updated content and added links

I don't think that message is your fault--it's because the contact sensor implementation is broken in the version of Gazebo that comes with Fuerte. At least one of the bugs causing the problem is now fixed, but the fix hasn't made it to the released version yet. It also sounds like that there might be bugs in the bumper implementation itself. (This is based itself (based on gazebo bitbucket issues 141 and 244, but I don't have enough "karma" to post links yet, so I can't link to the issues.)this and this).

EDIT: The comments on issue 13 have Thomas Koletschka's comment has information about how to get a working version of Gazebo, from Thomas Koletschka (look at the original page for links). which I've included and expanded below.

Newer gazebo releases are available as tags at [the simulator_gazebo stack repository] for you to install as overlay ... 1.6.17 does not seem to be tagged as such but 1.7.0 uses r 7e81d745eb07 as well and any later version should do as well. ... What's not included in those versions however is the fix for #141 but as a user of the ros bumper plugin which makes use of the public ContactSensor API you don't want to use that fix anyway until #244 has been resolved.

The contact sensor works the way it is in r 7e81d745eb07 in terms of detecting contacts, but you will be spammed with a lot of error messages until the sensor has its first contact. Upon releasing contact the ros bumper plugin will continue to show the same contact because it's not deleted until the next contact occurs but the contacts will correctly show 0 force and torque after losing contact.

Installing a new version of Gazebo

  • Choose somewhere to put your new version of Gazebo. I put mine in ~/ros/simulator_gazebo, and I'll assume that's the location for the rest of the instructions.
  • $ mkdir ~/ros
  • $ svn co [path to ros simulator_gazebo repository, tag simulator_gazebo-1.7.6] https://code.ros.org/svn/ros-pkg/stacks/simulator_gazebo/tags/simulator_gazebo-1.7.11/ ~/ros/simulator_gazebo
  • In your ~/.bashrc (or wherever it is that you set your ROS_PACKAGE_PATH), add ~/ros/simulator_gazebo to ROS_PACKAGE_PATH before the original value. For example:
    export ROS_PACKAGE_PATH=~/ros/simulator_gazebo:$ROS_PACKAGE_PATH
  • $ source ~/.bashrc
  • $ rosmake -i simulator_gazebo (-i means put a ROS_NOBUILD in the directories)
    This took about 30 minutes to run successfully. The first time I tried running it, I got this:
    -- BUILD ERRORS: These must be resolved before compiling.
    -- Missing: Google Protobuf Compiler Library (libprotoc-dev)
    -- Missing: libtar
    so I did:
    $ sudo apt-get install libprotoc-dev libtar-dev
    and tried again, and it worked.

When you launch Gazebo as usual, you'll get the new version you just compiled, and it should have semi-working contact sensors (with the caveats mentioned above). Be aware though that the it's possible existing models you want to use might be incompatible with this new version (mine seem to be).version.

EDIT 4/9/2013: The issue seems to have been resolved as of Gazebo 1.3, which is included in the simulator-gazebo-1.7.11 tag.