简介:介绍 Velodyne VLP-16 16线激光雷达 在EHub_tx1_tx2_E100载板,TX1核心模块环境(Ubuntu18.04)下测试ROS驱动,打开使用RVIZ 查看点云数据,本文的前提条件是你的TX1里已经安装了ROS版本:Melodic。关于测试硬件EHub_tx1_tx2_E100载板请查看:EdgeBox_EHub_tx1_tx2_E100 开发板评测_机器人虎哥的博客-CSDN博客
大家好,我是虎哥,关注最早的多线激光雷达,可以看到大多都是Velodyne 激光雷达,虽然这家公司退出直接在中国市场的经营,但是通过代理其实还是可以拿到货。从任何层面来说,VLP-16都算是比较经典的一款雷达。有项目机会,我入手了一套VLP-16雷达,上手之后,总结梳理一下简单的使用过程,在这里分享给大家。
Velodyne的激光雷达传感器解决方案能够使移动机器人自主、安全地运行,无需额外的人工干预,并为定位、映射、目标分类与追踪提供实时3D感知数据。在各种极具挑战性(包括不同温度、光照与降水)的室内外环境下,Velodyne高效、低功耗的传感器均可为自主移动机器人提供支持。
一、VLP-16 1 16线激光雷达介绍
VLP-16激光雷达是Velodyne公司出品的最小型的3维激光雷达,保留了电机转速可调节的功能。实时上传周围距离和反射率的测量值。VLP-16具有100米的远量程测量距离。精巧的外观设计使得安装非常方便。重量轻,只有830g,非常适合安装在小型无人机和小型移动机器人上。 每秒高达30万个点数据输出。±15°的垂直视场,360°水平视场扫描。
1.1 主要参数
•激光线数:16线;
•测量范围:高达100m;
•测量精度:±3cm;
•支持两次回波;
•垂直测量角度范围:30°(﹢15°到﹣15°);
•垂直方向角度分辨率:2°;
•水平方向测量角度范围:360°;
•水平方向角度分辨率:0.1°到0.4°;
•测量频率:5到20Hz;
•可以通过网络浏览器监测和改变电机的转速;
•激光安全等级:1级(人眼安全);
•激光波长:905nm;
•传感器功率:8W(典型值);
•工作电压:9-32V;
•重量:830g;
•外形尺寸:103mmX72mm;
•振动测试:500m/sec² 振幅,持续时间11msec;
•振动:5Hzto2000Hz,3Grms;
•防护等级:IP67;
•工作温度:﹣10℃到﹢60℃;
•储存温度:-40℃到﹢105℃;
•输出:每秒高达30万个测量点输出;
•100M快速以太网连接;
•数据包包含:距离值、物体反射率、旋转角度、同步时间(μs分辨率);
•支持外接GPS;
威力登(Velodyne)16线三维激光雷达VLP-16行业应用:汽车自动驾驶、建图测量、测绘、高精度地图、机器人导航避障、环境3维建模、自动化行业


1.2 Velodyne 全线雷达参数对比



1.3 应用领域图示




Velodyne Lidar全球销售副总裁Laura Wrisley表示:“波士顿动力研发的机器人具备先进的移动性、灵活性与智能性,能够在陌生、不可预测的环境中实现自动化。配备Velodyne的激光雷达传感器可帮助机器人在复杂的环境中实现自主导航,既能安全地避开障碍物,也能找到从制造工厂、建筑工地到配送中心、仓库的最快路线,完成重要任务。”


二、查找雷达IP


velodyne的默认出厂ip为:192.168.1.201,将雷达上电后,网口链接到板子的有线网口。有时候雷达IP 如果因为来回修改,导致不知道雷达传感器的源ip,可以通过以下方法进行查看:
打开终端,输入:

#如果没有就安装,有就可以跳过
sudo apt-get install tcpdump
#打印信息
sudo tcpdump -n -i eth0


可以看到雷达一直会一直广播信息,通过他可以确定雷达IP,即使你不在一个网段,也能收到这个广播信息。从上面打印,我们可以确认,我测试的雷达IP,还是出厂的IP:192.168.1.201
将自己主板的IP,设置成手动。
设置->网络->有线连接->IPV4->手动 地址: 192.168.1.XXX 掩码: 255.255.255.0 网关: 192.168.1.X 注:为保证源IP与目的IP在同一网段下,IP的前三位要相同。最后几位要在1-255之间,但不可以为201与雷达重复。 设置成功后记得重新启动ip开关。




三、ROS下查看点云
3.1安装依赖包

sudo apt-get install ros-melodic-velodyne

3.2 建立工作空间

mkdir -p ~/Velodyne_ws/src
cd ~/Velodyne_ws/
catkin_make
source devel/setup.bash

3.3 克隆代码

cd ~/Velodyne_ws/src
git clone https://github.com/ros-drivers/velodyne.git

3.4 编译源码包

cd ~/Velodyne_ws/
rosdep install --from-paths src --ignore-src --rosdistro melodic -y
catkin_make
source devel/setup.bash

nvidia@nvidia-desktop:~/Velodyne_ws$ rosdep install --from-paths src --ignore-src --rosdistro melodic -y
#All required rosdeps installed successfully


注:到这里结束就可以,后面就可以正常显示。其实还有一步是激光雷达的校准,没有这一步,也没问题。找到U盘中VLP-16.xml文件是激光雷达附赠U盘中提供的,找不到可以下载。转换后生成VLP-16.yaml。


3.5 雷达接入板子,配置好对应IP测试启动
我手里的雷达IP:192.168.1.201,我自己的ARM板子的IP我手动设置成了:192.168.1.102

cd ~/Velodyne_ws
source devel/setup.bash
source devel/setup.bash
roslaunch velodyne_pointcloud VLP16_points.launch

新启动一个终端,我们可以初步看看驱动的一些节点信息:

rosnode list
    /rosout
    /velodyne_nodelet_manager
    /velodyne_nodelet_manager_driver
    /velodyne_nodelet_manager_laserscan
    /velodyne_nodelet_manager_transform
rostopic list
    /diagnostics
    /rosout
    /rosout_agg
    /scan
    /velodyne_nodelet_manager/bond
    /velodyne_nodelet_manager_driver/parameter_descriptions
    /velodyne_nodelet_manager_driver/parameter_updates
    /velodyne_nodelet_manager_laserscan/parameter_descriptions
    /velodyne_nodelet_manager_laserscan/parameter_updates
    /velodyne_nodelet_manager_transform/parameter_descriptions
    /velodyne_nodelet_manager_transform/parameter_updates
    /velodyne_packets
    /velodyne_points

3.6 打开RVIZ 查看点云

#我是用nomachine 打开的桌面终端
rosrun rviz rviz -f velodyne


增加激光

这样看到的似乎是单线数据!
•进入Rviz后,点击左下角Add添加By topic -> velodyne_points -> PointCloud2
•修改左边目录中的Global Options -> Fixed Frame为:velodyne
•以及PointCloud2 -> Topic为:/velodyne_points

这样似乎才能看到点云数据,试试。




调整页面。



四、修改雷达IP
实际使用中,我们常常由于网络环境的变化,根据自己需要,需要配置修改雷达IP。比如,我手里的雷达IP:192.168.1.201,我自己的ARM板子的IP我手动设置成了:192.168.1.102 VLP-16 修改参数和IP,官方提供了一个WEB,很方便就能做配置修改。


1、用nomachine 登录板子


2、打开浏览器,输入192.168.1.201



3、找到IP修改项



比如我们修改雷达IP为:192.168.9.201



先点 SET,再点击 Save Configuration
保存配置后,可以选择软重启雷达,我只直接雷达重新上电的:


#板子端打印信息
sudo tcpdump -n -i eth0


雷达IP已经修改过来了。