neo_sick_s300

Summary

The neo_sick_s300 package provides a means to access laser scan information from a Sick S300 scanner.

Location for ROS: https://github.com/neobotix/neo_sick_s300

Location for ROS 2: https://github.com/neobotix/neo_sick_s300-2

neo_sick_s300_node

(usually the node named as lidar_1, lidar_2, etc)

Connects to the S300 scanner over serial bus and publishes the data to ROS.

Publishes:

  • /lidar_x/scan

Parameters

port:
Type Default
string /dev/neo-s300-1
Description

Serial port to which the laser scanners are connected

baud:
Type Default
int 500000
Description

Baud rate for communication

scan_duration:
Type Default
double 0.025
Description

Duration of each scans (s)

scan_delay:
Type Default
double 0.045
Description

Duration of the scanner delay (s)

frame_id:
Type Default
std::string lidar_1_link
Description

Name of the frame from which laser scanners are published

Attention

The support for frame_id parameter is depreciated in ROS 2. See the notes for ROS 2 below.

Notes for ROS 2

The namespacing for the laser scanners are described directly through the launch file. It is assumed that the namespacing string and the frame_id of the laser scanners are the same. Thus, this needs to be noted while configuring the laser scanners.

The configuration of the neo_mp_400 serves as a nice example to address this point.

neo_scan_filter_node

(usually named as lidar_1_filter, lidar_2_filter, etc)

Filters out ranges from the original scan data where the view is obstructed, by setting the corresponding ranges to zero.

Publishes:

  • /lidar_x/scan_filtered

Subscribes:

  • /lidar_x/scan

Parameters

scan_intervals:
Type Default
vector {-2.27, 2.27}
Description

scanning range of the laser scanners {min_angle, max_angle}. Angles are given in radians.