Package Summary

ROS package for HLDS(Hitachi-LG Data Storage,Inc.) HLS-LFOM 3D LiDAR(TOF)

Manufacturer of the TOF: Hitachi-LG Data Storage, Inc.

Product Webpage: HLDS 3D LiDAR(TOF)

Overview

* Object distance measurement with high accuracy in realtime

* Easy to install with Ethernet (POE+) connection

* Multiple use cases can be accommondated with the SDK

HLS-LFOM1 view_hlds_tof_driver.launch

Product Specification

produc specification

Installation

Download HLS-LFOM SDK

Download latest version(v2.1.0 or later) for Ubuntu 16.04 LTS (x64) and extract it(http://hlds.co.jp/product-eng/tofsdk)

Install SDK

$ sudo dpkg -i libtof-dev_<version_number>ubuntu16_amd64.deb

Build HLS-LFOM 3D LiDAR(TOF) driver

$ cd ~/catkin_ws/src  
$ git clone https://github.com/HLDS-GIT/hls_lfom_tof_driver.git  
$ cd ~/catkin_ws  
$ catkin_make

If using SDK older than v2.3, please use CMakeLists_old.txt.

Setting IP address

Modify IP address of tof.ini file in launch folder. It should be the same as the IP address of the TOF sensor you are trying to connect. (Default is 192.168.0.105)
If you want to change IP address, please refer to Setup TOF sensor of API Reference Manual in SDK

Running Node

Run hlds_3dtof_node

roslaunch hls_lfom_tof_driver hlds_tof_driver.launch  

Run hlds_3dtof_node with RViz

roslaunch hls_lfom_tof_driver view_hlds_tof_driver.launch  

Nodes

hlds_3dtof_node

hlds_3dtof_node is a driver for HLS-LFOM 3D LiDAR(TOF). It reads raw sensor data using HLS-LFOM's SDK and convert to ROS message.

Published Topics

cloud (sensor_msgs/PointCloud2)
  • XYZ point cloud
image_depth_raw (sensor_msgs/Image)
  • point.z data with TYPE_32FC1 encoding type
image_depth (sensor_msgs/Image)
  • 3channel depths data with RGB8 encoding type
image_ir (sensor_msgs/Image)
  • IR image with MONO8 encoding type

Services

set_distance_mode_srv (hls_lfom_tof_driver/DistanceMode)
  • Set TOF distance mode (dm_2_0x, dm_1_5x, dm_1_0x, dm_0_5x)
set_edge_signal_cutoff_srv (std_srvs/Empty)
  • Set to 'true' enable and 'false' to disable edge signal cutoff.
set_far_signal_cutoff_srv (hls_lfom_tof_driver/FarSignalCutoff)
  • Set value (0.0~1.0)
set_low_signal_cutoff_srv (hls_lfom_tof_driver/LowSignalCutoff)
  • Set value (0~4095)

Parameters

camera_mode (string, default: CameraModeDepth) sensor_angle_x (int, default: 0)
  • X-axis rotation angle(0 to 359 degree)
sensor_angle_y (int, default: 0)
  • Y-axis rotation angle(0 to 359 degree)
sensor_angle_z (int, default: 0)
  • Z-axis rotation angle(0 to 359 degree)
edge_signal_cutoff (bool, default: true)
  • Edge noise reduction mode
low_signal_cutoff (int, default: 20)
  • Signal level to cutoff(0 to 4095)
far_signal_cutoff (float, default: 0.0)
  • Distance rate far from TOF(rate:0.0~1.0)
camera_pixel (string, default: 320x240)
  • Pixel size of TOF sensor image. Refer to CameraPixel type of API reference manual in SDK
ir_gain (int, default: 8)
  • Exposure sensitivity for IR(1 to 15)
distance_mode (string, default: dm_1_0x)
  • Distance mode of TOF sensor. Refer to DistanceMode type of API reference manual in SDK
frame_rate (string, default: fr30fps)
  • Frame rate of TOF sensor. Refer to FrameRate type of API reference manual in SDK

Use Case

3D SLAM

3D occupancy grid mapping and hector slam with HLS-LFOM1 3D SLAM

Package Installation

// Install pointcloud to laserscan
$ sudo apt-get install ros-kinetic-pointcloud-to-laserscan
//Install hector slam
$ sudo apt-get install ros-kinetic-hector-slam
//Install octomap
$ sudo apt-get install ros-kinetic-octomap-server

Example

3D hector slam launch file

Depth image processing

Combine depth image and IR image into XYZRGB point cloud Depth image processing

Package Installation

depth_image_proc

Example

Depth image processing launch file

OpenPose

OpenPose with IR image

OpenPose

Package Installation

OpenPose ROS

Example

OpenPose launch file

HLDS 2D LiDAR: HLS-LFCD2 HLS-LFCD3

Wiki: hls_lfom_tof_driver (last edited 2019-04-01 07:28:41 by JeehoonYang)