sam-xl / scancontrol

Micro Epsilon scanCONTROL ROS Driver
10 stars 11 forks source link

micro_epsilon_scancontrol

CI License

Overview

ROS device driver for the scanCONTROL series of laser line scanners of Micro Epsilon using the scanCONTROL Linux C++ SDK 0.2. The driver allows to connect to a (specific) scanCONTROL device, configure the sensor using predefined settings or at runtime and publishes the sensor data as point clouds.

Author: D. Kroezen (GitHub username: dave992)
Affiliation: SAM|XL, TU Delft
Maintainer: D. Kroezen, d.kroezen@tudelft.nl

The micro_epsilon_scancontrol package has been tested under ROS Melodic and Ubuntu 18.04.

Installation

Dependencies

Building

To build from source, clone the latest version from this repository into your catkin workspace and compile the package using:

cd catkin_ws/src
git clone https://github.com/sam-xl/micro_epsilon_scancontrol.git
cd ../
catkin build

Usage

Run the main driver node with:

roslaunch micro_epsilon_scancontrol_driver load_driver.launch

Launch files

Nodes

scancontrol_driver_node

The scancontrol_driver_node connects to the scanCONTROL device and allows control of most settings through the provided services. By default the driver only extracts the xyz data from the measurement buffer to create the point cloud message. For now the additional measurement data such as reflections are discarted.

Published Topics

Services

Most servives are wrappers of the scanCONTROL API. For more information on the available settings and values see the documentation as part of the scanCONTROL Linux C++ SDK 0.2. The rqt plugin uses these services to change the settings during runtime.

Parameters

Device Settings

The following parameters are available to allow using multiple scanCONTROL devices.

scancontrol_driver_nodelet

Encapsulates the same driver class as the scancontrol_driver_node, but instead allows for zero-copy data transfer. The Topics, services and paremeters are the same as described for the scancontrol_driver_node above.

Bugs & Feature Requests

Please report bugs and request features using the Issue Tracker.