-
 

velodyne_simulator repository

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version foxy-devel
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

  • URDF with colored meshes
  • Gazebo plugin based on gazebo_plugins/gazebo_ros_ray_sensor
  • Publishes PointCloud2 with same structure (x, y, z, intensity, ring, time)
  • Simulated Gaussian noise
  • GPU acceleration (with known issues)
  • Supported models:
  • Experimental support for clipping low-intensity returns

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • When accelerated with the GPU option, ranges are heavily quantized (image)
    • Solution: Use CPU instead of GPU
  • 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)

Example Gazebo Robot

```ros2 launch velodyne_description example.launch.py


# Example Gazebo Robot (with GPU)

```ros2 launch velodyne_description example.launch.py gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version foxy-devel
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

  • URDF with colored meshes
  • Gazebo plugin based on gazebo_plugins/gazebo_ros_ray_sensor
  • Publishes PointCloud2 with same structure (x, y, z, intensity, ring, time)
  • Simulated Gaussian noise
  • GPU acceleration (with known issues)
  • Supported models:
  • Experimental support for clipping low-intensity returns

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • When accelerated with the GPU option, ranges are heavily quantized (image)
    • Solution: Use CPU instead of GPU
  • 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)

Example Gazebo Robot

```ros2 launch velodyne_description example.launch.py


# Example Gazebo Robot (with GPU)

```ros2 launch velodyne_description example.launch.py gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version foxy-devel
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

  • URDF with colored meshes
  • Gazebo plugin based on gazebo_plugins/gazebo_ros_ray_sensor
  • Publishes PointCloud2 with same structure (x, y, z, intensity, ring, time)
  • Simulated Gaussian noise
  • GPU acceleration (with known issues)
  • Supported models:
  • Experimental support for clipping low-intensity returns

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • When accelerated with the GPU option, ranges are heavily quantized (image)
    • Solution: Use CPU instead of GPU
  • 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)

Example Gazebo Robot

```ros2 launch velodyne_description example.launch.py


# Example Gazebo Robot (with GPU)

```ros2 launch velodyne_description example.launch.py gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version foxy-devel
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

  • URDF with colored meshes
  • Gazebo plugin based on gazebo_plugins/gazebo_ros_ray_sensor
  • Publishes PointCloud2 with same structure (x, y, z, intensity, ring, time)
  • Simulated Gaussian noise
  • GPU acceleration (with known issues)
  • Supported models:
  • Experimental support for clipping low-intensity returns

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • When accelerated with the GPU option, ranges are heavily quantized (image)
    • Solution: Use CPU instead of GPU
  • 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)

Example Gazebo Robot

```ros2 launch velodyne_description example.launch.py


# Example Gazebo Robot (with GPU)

```ros2 launch velodyne_description example.launch.py gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version master
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • With the default Gazebo version shipped with ROS, ranges are incorrect when accelerated with the GPU option (issue,image)
  • 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)

Example Gazebo Robot

```roslaunch velodyne_description example.launch


# Example Gazebo Robot (with GPU)

```roslaunch velodyne_description example.launch gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version foxy-devel
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

  • URDF with colored meshes
  • Gazebo plugin based on gazebo_plugins/gazebo_ros_ray_sensor
  • Publishes PointCloud2 with same structure (x, y, z, intensity, ring, time)
  • Simulated Gaussian noise
  • GPU acceleration (with known issues)
  • Supported models:
  • Experimental support for clipping low-intensity returns

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • When accelerated with the GPU option, ranges are heavily quantized (image)
    • Solution: Use CPU instead of GPU
  • 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)

Example Gazebo Robot

```ros2 launch velodyne_description example.launch.py


# Example Gazebo Robot (with GPU)

```ros2 launch velodyne_description example.launch.py gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.

Repository Summary

Checkout URI https://bitbucket.org/DataspeedInc/velodyne_simulator.git
VCS Type git
VCS Version master
Last Updated 2022-12-02
Dev Status MAINTAINED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

README

Velodyne Simulator

URDF description and Gazebo plugins to simulate Velodyne laser scanners

rviz screenshot

Features

Parameters

  • *origin URDF transform from parent link.
  • ``` URDF parent link name. Default 
    ```base_link
    
  • ``` URDF model name. Also used as tf frame_id for PointCloud2 output. Default 
    ```velodyne
    
  • ``` PointCloud2 output topic name. Default 
    ```/velodyne_points
    
  • ``` Update rate in hz. Default 
    ```10
    
  • ``` Number of vertical spinning lasers. Default 
    ```VLP-16: 16, HDL-32E: 32
    
  • ``` Nuber of horizontal rotating samples. Default 
    ```VLP-16: 1875, HDL-32E: 2187
    
  • ``` Organize PointCloud2 into 2D array with NaN placeholders, otherwise 1D array and leave out invlaid points. Default 
    ```false
    
  • ``` Minimum range value in meters. Default 
    ```0.9
    
  • ``` Maximum range value in meters. Default 
    ```130.0
    
  • ``` Gausian noise value in meters. Default 
    ```0.008
    
  • ``` Minimum horizontal angle in radians. Default 
    ```-3.14
    
  • ``` Maximum horizontal angle in radians. Default 
    ```3.14
    
  • ``` Use gpu_ray sensor instead of the standard ray sensor. Default 
    ```false
    
  • min_intensity The minimum intensity beneath which returns will be clipped. Can be used to remove low-intensity objects.

Known Issues

  • At full sample resolution, Gazebo can take up to 30 seconds to load the VLP-16 pluggin, 60 seconds for the HDL-32E
  • With the default Gazebo version shipped with ROS, ranges are incorrect when accelerated with the GPU option (issue,image)
  • 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)

Example Gazebo Robot

```roslaunch velodyne_description example.launch


# Example Gazebo Robot (with GPU)

```roslaunch velodyne_description example.launch gpu:=true

CONTRIBUTING

No CONTRIBUTING.md found.