Ubuntu16.04运行velodyne雷达驱动

一、实验环境:

系统版本:Ubuntu16.04 ros-kinetic
激光雷达:Velodyne-16

二、实验操作:

  1. 安装ROS驱动:
sudo apt-get install ros-kinetic-velodyne
  1. 创建ROS工程:
mkdir -p velodyne_ws/src
cd velodyne_ws/src
git clone https://github.com/ros-drivers/velodyne.git
cd ..
rosdep install --from-paths src --ignore-src --rosdistro kinetic -y
catkin_make
source devel/setup.bash

!!!注意:编译过程中可能出现以下错误:/usr/include/yaml-cpp/node/detail/iterator.h:48:47: error: ‘next’ is not a member of ‘boost
实际上如果你安装了boost库的话,是有next的。在/usr/include/boost 下面,我的电脑上有next_prior.hpp的文件,这个实际上就是实现了boost::next 的功能,解决办法很简单: sudo vim /usr/include/yaml-cpp/node/detail/iterator.h,引入next_prior.hpp头文件就行了:#include <boost/next_prior.hpp>,也可参考:https://blog.csdn.net/xinwenfei/article/details/81232658
(这是我遇到的问题,所以说一下自己的解决办法,你们如果没遇到可以忽略)

  1. 把Velodyne XML文件转成ROS节点的YAML文件,安装U盘里有,转换后生成VLP-16.yaml文件:
rosrun velodyne_pointcloud gen_calibration.py ~/filepath/VLP-16.xml
  1. 连接设备:
    连接激光雷达,并在网络中添加雷达ip,具体操作为:将有线网络里面的ipv4改为手动, IP地址192.168.1.200(和雷达在同一网段即可),子网掩码255.255.255.0,连接此网络,打开浏览器输入:192.168.1.201即可看到激光雷达的配置文件:
    在这里插入图片描述
  2. 加载:
roslaunch velodyne_pointcloud VLP16_points.launch calibration:=~/filepath/VLP-16.yaml

!!!注意:运行launch文件前,需先修改接收数据的端口号。由上图配置文件可知端口为2369,或通过WireShark软件查看也可以:
在这里插入图片描述
launch文件修改结果如下图所示:
在这里插入图片描述
(若没有校准文件可以省略,直接运行:roslaunch velodyne_pointcloud VLP16_points.launch加载默认文件)

  1. 显示点云:
    新开一个终端,输入:
rosrun rviz rviz -f velodyne

或:

rosrun rviz rviz
#之后在手动设置Fixed Frame= velodyne

点击左下角Add,选择PointCloud2,Topic一栏填写/velodyne_points,出现点云图:
在这里插入图片描述

  1. 保存数据:
rosbag record -o saved_filename /velodyne_points

只保存/velodyne_points这个topic的数据(可以用rostopic list -v开看当前可用的topic),保存在当前目录的saved_filename.bag中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值