1. 程式人生 > >SLAM之鐳射雷達Velodyne vlp-16使用

SLAM之鐳射雷達Velodyne vlp-16使用

https://blog.csdn.net/weixin_37239947/article/details/75097145

簡介:

       VLP-16鐳射雷達是Velodyne公司出品的最小型的3維鐳射雷達,保留了電機轉速可調節的功能。實時上傳周圍距離和反射率的測量值。VLP-16具有100米的遠量程測量距離。精巧的外觀設計使得安裝非常方便。重量輕,只有830g,非常適合安裝在小型無人機和小型移動機器人上。
       每秒高達30萬個點資料輸出。±15°的垂直視場,360°水平視場掃描。IP67的防護等級。支援兩次回波接收,可以測量第一次回波和最後一次回波的距離值和反射強度值。

 

技術引數:

鐳射線數:16線
測量範圍:高達100m
測量精度:±3cm
支援兩次回波
垂直測量角度範圍:30°(﹢15°到﹣15°)
垂直方向角度解析度:2°
水平方向測量角度範圍:360°
水平方向角度解析度:0.1°到0.4°
測量頻率:5到20Hz
可以通過網路瀏覽器監測和改變電機的轉速
鐳射安全等級:1級(人眼安全)
鐳射波長:905nm
感測器功率:8W(典型值)
工作電壓:9-32V
重量:830g
外形尺寸:103mmX72mm
振動測試:500m/sec² 振幅,持續時間11msec 
振動:5 Hz to 2000 Hz, 3G rms
防護等級:IP67
工作溫度:﹣10℃到﹢60℃
儲存溫度:-40℃到﹢105℃
輸出:
 每秒高達30萬個測量點輸出
100M快速乙太網連線
資料包包含:距離值、物體反射率、旋轉角度、同步時間
支援外接GPS

--------------------------------------------------以下為轉載

Velodyne VLP16如下圖:

實驗機器是ubuntu 14.04 x64, ROS版本Indigo,目前ROS支援的Velodyne型號是:HDL-64E,HDL-32E,VLP-16。官方tutorial是以32E為例,但我們手頭是VLP-16,下面以VLP-16為例介紹驅動過程:

1. 安裝驅動:

 

[plain] view plain copy

  1. sudo apt-get install ros-indigo-velodyne  
sudo apt-get install ros-indigo-velodyne

2. 連線到鐳射雷達:

 

首先配置有線網路,開啟/etc/network/interfaces:

 

[plain] view plain copy

  1. auto eth0  
  2. iface eth0 inet static  
  3.     address 192.168.1.77  
  4.     netmask 255.255.255.0  
  5.     gateway 192.168.1.1  
auto eth0
iface eth0 inet static
    address 192.168.1.77
    netmask 255.255.255.0
    gateway 192.168.1.1

然後/etc/init.d/networking restart重啟網路,開啟瀏覽器輸入192.168.1.201可以看到鐳射雷達的配置檔案。

 

3. 新建一個ROS的工程:

 

[plain] view plain copy

  1. mkdir -p catkin_velodyne/src  
  2. cd catkin_velodyne/src  
  3. git clone https://github.com/ros-drivers/velodyne.git  
  4. cd ..  
  5. rosdep install --from-paths src --ignore-src --rosdistro indigo -y  
  6. catkin_make  
  7. source devel/setup.bash  
mkdir -p catkin_velodyne/src
cd catkin_velodyne/src
git clone https://github.com/ros-drivers/velodyne.git
cd ..
rosdep install --from-paths src --ignore-src --rosdistro indigo -y
catkin_make
source devel/setup.bash

4. 把Velodyne XML檔案轉成ROS節點的YAML檔案(VLP-16.xml檔案是鐳射雷達附贈U盤中提供的,轉換後生成VLP-16.yaml):

 

 

[plain] view plain copy

  1. rosrun velodyne_pointcloud gen_calibration.py ~/Desktop/VLP-16.xml  
rosrun velodyne_pointcloud gen_calibration.py ~/Desktop/VLP-16.xml

5. 載入:

 

 

[plain] view plain copy

  1. roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/home/phd/VLP-16.yaml  
roslaunch velodyne_pointcloud VLP16_points.launch calibration:=/home/phd/VLP-16.yaml

6. 實時顯示點雲圖:

 

 

[plain] view plain copy

  1. rosrun rviz rviz -f velodyne  
rosrun rviz rviz -f velodyne

然後在rviz中點Add,增加PointCloud2,再在PointCloud2下點topic輸入/velodyne_points。這樣就可以實時顯示獲取的3D點雲圖。
7. 記錄資料:

 

 

[plain] view plain copy

  1. rosbag record -O out /velodyne_points  
rosbag record -O out /velodyne_points

只儲存/velodyne_points這個topic的資料(可以用rostopic list -v開看當前可用的topic),儲存在當前目錄的out.bag。

8. 後記:

VeloView也是可以實時顯示3D LiDAR鐳射雷達點雲圖的,儲存格式是pcap。

轉載請註明: 轉自 http://blog.csdn.net/littlethunder/article/details/51920681