Open AntoineRichard opened 6 years ago
Have you tried running this setup without the gazebo_ros plugins (just the gazebo sensors)? I want to identify if this is an issue in Gazebo or in the ros plugins in this repository.
I did some test today with the ros plugins disabled and it ran alright, I checked that both sensors were properly working by visualizing their rays. So it seems its related to the ros plugins and not the gazebo components.
I downloaded the sources and replaced GazeboRosLaser by GazeboRosGPULaser in "gazebo_plugins/src/gazebo_ros_gpu_laser.cpp" and "gazebo_plugins/include/gazebo_plugins/gazebo_ros_gpu_laser.h", and it's working fine. The classes had the same name in "gazebo_ros_gpu_laser" and gazebo_ros_laser" it looks like that was responsible for the issue.
Great job finding that! Please consider submitting a pull request with your fix
This seems like that this can be closed.
I try to use both gpu_ray and ray sensors at the same time but it always gets me an error which leads to the none of the laser_scans being published. I am using Gazebo 9.1 and ros-kinetic (I have a Nvidia 1060GTX GPU). The sensor are working individually, and I can add mulitple cpu or gpu sensors as long as I only use one type of sensors in the scene.
To test the issue I first launch an empty gazebo world using:
roslaunch gazebo_ros empty_world.launch
Then I spawn the model a modified turtlebot from turtlebot_gazebo and I get the following error:In the gazebo_ros launch:
Unfortunately I cannot find the log file....
In the spawn model launch:
Logfile:
I need this solution because I have to label human being laser hits and the GPU sensors doesn't support laser retro value while the CPU sensor does not sense the "skin" of the gazebo actors. With the 2 sensors a simple point to point subtraction allows to find the laser rays that touches humans. A Depth camera could be used but it does not provide out of the box noise and raytracing.