URDF description and Gazebo plugins to simulate Velodyne laser scanners
- URDF with colored meshes
- Gazebo plugin based on gazeboo_plugins/gazebo_ros_block_laser
- Publishes PointCloud2 with same structure (x, y, z, intensity, ring)
- Simulated Gaussian noise
- Supported models:
*originURDF transform from parent link.parentURDF parent link name. Defaultbase_linknameURDF model name. Also used as tf frame_id for PointCloud2 output. DefaultvelodynetopicPointCloud2 output topic name. Default/velodyne_pointshzUpdate rate in hz. Default10lasersNumber of vertical spinning lasers. DefaultVLP-16: 16, HDL-32E: 33samplesNuber of horizontal rotating samples. DefaultVLP-16: 1875, HDL-32E: 2187min_rangeMinimum range value in meters. Default0.9max_rangeMaximum range value in meters. Default130.0noiseGausian noise value in meters. Default0.008min_angleMinimum horizontal angle in radians. Default-3.14max_angleMaximum horizontal angle in radians. Default3.14
- At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
- Gazebo cannot maintain 10Hz with large pointclouds
- Solution: User can reduce number of points (samples) or frequency (hz) in the urdf parameters, see example.urdf.xacro
- Gazebo crashes when updating HDL-32E sensors with default number of points. "Took over 1.0 seconds to update a sensor."
- Solution: User can reduce number of points in urdf (same as above)
- Gazebo versions in indigo and jade have different z orientations
- Solution: Maintain separate branches for urdf changes (gazebo2 and master)
roslaunch velodyne_description example.launch