ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)

测试系统:ubuntu 16.04 (64位)
Ros版本:kinetic

文章目录

1.传感器与电脑利用网线进行连接

配置好本机有线连接的IP地址
(1)点击电脑右上角的网络标志,然后点最下面Edit Connections.
(2)点击Add,添加Ethernet。
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)
(3)将connection name改为velodyne,method:Manual。
(4)更改IPv4 Settings
Addresses:(Address:192.168.1.77;Netmask:255.255.255.0;Gateway:192.168.1.1)
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)
最后保存即可。

2.安装ROS依赖

sudo apt-get install ros-kinetic-velodyne

3.创建ROS工程

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

在执行rosdep install --from-paths src --ignore-src --rosdistro indigo -y。报了一个错,如下:
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)

解决方法:在http://github.com/ros/roslint上下载roslint,并将它放在/catkin_velodyne/src/路径下。重新运行该命令。
然后编译成功(注:ROS必须在python2中执行)
(编译过程中报了一个错,说no module named rospkg)
需要添加rospkg模块,执行命令pip install rospkg
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)

查看linux系统python版本:python --version
linux python版本切换(改成2就对应写Python2,改成3就对应写python3):

echo alias python=python2 >>~/.bashrc
soure ~/.bashrc

4.连接好设备

激光雷达正常供电,与电脑通过网线连接。

5.运行并查看数据

(1)打开网页,网址处输入192.168.1.201
激光雷达参数页面:
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)
(2)在catkin_velodyne目录下打开终端,输入命令:

roslaunch velodyne_pointcloud VLP16_points.launch

ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)
(3)打开rviz,查看3D数据,在catkin_velodyne目录下重新打开一个终端,输入命令

rviz

ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)

更改:将Fixed Frame:may改为velodyne;
添加Add——pointcloud2——By topic——/velodyne_points.
并将catkin_velodyne——src——velodyne——velodyne_pointcloud——launch——VLP16_points.launch文件中的第14行2368改为3201.

即可显示点云图。
ubuntu16.04 Velodyne VLP16在ROS下使用(遇见各种报错及解决方法)

6.记录数据

rosbag record -0 out /velodyne_points

只保存/velodyne_points这个topic的数据,保存在当前目录的out.bag
rostopic list -v查看当前可用的topic

rosbag record -a out /velodyne_points

保存当前所有topic的数据。

上一篇:使用pcl将bin文件转化为pcd文件


下一篇:Autoware 培训笔记 No. 4——寻迹