前言
好久没更新这部分了,最近在搞中期答辩的东西,简单补充一部分多线激光雷达建图的内容。上文介绍使用自己的激光雷达如何通过GMapping算法建图,接下来两节介绍怎么运行Velodyne的16线激光雷达,并使用港科大改进的A-Loam进行建图。 前文链接如下-
SLAM实操入门(一):在已有WIN10的电脑上安装Ubuntu20.04
-
SLAM实操入门(二):Ubuntu20.04安装ROS Noetic并运行“小乌龟”程序
-
SLAM实操入门(三):Ubuntu20.04安装Turtlebot3并运行SLAM例程仿真
-
SLAM实操入门(四):使用ROS连接自己的激光雷达并可视化扫描结果文章来源:https://www.toymoban.com/news/detail-704317.html
-
SLAM实操入门(五):无里程计仅使用激光雷达建图(GMapping算法)文章来源地址https://www.toymoban.com/news/detail-704317.html
1 Velodyne激光雷达
Velodyne 的 Puck 激光雷达传感器( VLP-16)是目前机器人与自动驾驶使用的主流传感器之一。 Puck™ 的可靠性、能效和全景视野使其成为经济实惠的低速自动驾驶和驾驶员辅助应用的理想解决方案。很多实验室应该也会买速腾或者这个品牌的多线激光雷达,其实原理都一样,大家都可以作为参考。
- 多线雷达和单线雷达硬件上的差异
(1)多线雷达需要使用220v的插座来进行供电,如果要部署在机器人或者汽车上,可能需要使用户外电源、车载逆变器或对供电进行改造;
(2)多线雷达需要通过以太网进行数据的传输,所以要求设备有网口,也需要对网口进行设置;
(3)多了一个接口盒硬件,用来做电源管理和数据采集,正常连线就好,不用过多关注。
总的来说,多线雷达它更金贵、对设备要求也更高,但是效果也是相当的炫酷!
- 硬件连接
- 两个接口:
一个是供电接口,插头插在220v电源;
另一个是信号线,插网线,连接在PC的网口。
2 配置网络
上面提到该雷达是通过以太网进行数据传输的,这里需要对有线网的地址进行设置
首先打开设置,选择网络,打开有线连接并进入设置,如图
随后进行如下步骤
- 点击IPv4
- 将IPv4的方式调整为手动
- 修改地址为
192.168.1.77
- 修改子网掩码为,网关不用动
255.255.255.0
- 点击应用,退出
3 创建ROS工程
使用如下命令安装Velodyne的依赖包,相关内容见产品手册
sudo apt-get install ros-melodic-velodyne
注意,代码中的melodic
需要替换为你的Ubuntu版本名称。
随后,创建ROS的项目文件
mkdir -p catkin_vel16/src
进入项目文件目录下
cd catkin_vel16/src
拉取雷达的驱动包,这里使用的是GitHub上的这个项目文件
等待完成,要是下载太慢或者失败,可以看看之前的这个文章
- git clone拉取GitHub项目失败/太慢的解决方法
返回上级目录
cd ..
开始对工程进行编译
catkin_make
配配环境变量,搞定!
source devel/setup.bash
4 启动并可视化
再次检查:
- 激光雷达是否连接正常(供电、网线)
- 上述命令,以及相关依赖包是否安装成果
- source不要忘记!
很多同学一开始不知道到底运行个什么东西,怎么着,这里简述一下
launch文件
可以理解成一个批处理文件,通过roslaunch
命令,能同时多ROS的多个node和master进行启动。
相关内容这位博主的博客描述很详细ROS:一文读懂launch文件
首先我们看看这个工程里launch在哪里,长啥样
所有文件都是放在launch文件夹下,以.launch结尾!
那么怎么找到他们的呢?可以通过一下命令实现文件夹的快速翻越与定位。
后面的数字是设置看几层文件,试试就知道啥意思了。
tree -L 3
我们用的16线雷达嘛,家简单的运行一下那个16
roslaunch velodyne_pointcloud VLP16_points.launch
文件名可以用tab键
补全,没事tab一下哈
运行后,使用Ctrl+T
开一个新终端
啥也没有不要慌!按如下步骤添加节点和内容,才能看到
- 先点击左侧的Add,添加可视化的条目
- 随后,点击
By topic
,双击PointCloud2
以选择添加点云信息
- 在添加的点云中选择topic,右侧选择输出的信息节点
- 将
Fixed Frame的名称
替换为Topic名称的前缀
,这里就是velodyne
可视化出来了!!!是不是很简单
比单线雷达还是炫酷多了,下一节的多线雷达SLAM视觉冲击也很快乐
5 录包与播放
使用以下命令可以进行点云数据的录制
- 仅录制
velodyne_point
的数据
rosbag record /velodyne_point
- 录制所有数据
rosbag record -a
按Ctrl+C结束录制
,这里两个命令其实基本是一样的,如果之后会多传感器融合使用,会有区别
- 播放录制的包,后面是录制的包的名字
rosbag play xxxxxxxx.bag
打开rviz可以查看刚才录的数据
总结
本文介绍了使用Velodyne的16线激光雷达进行启动和可视化,和单线雷达也是大同小异,但是对launch那部分做了一些简单的讲解,大家可以深入学习一下,以后不会少打交道的。
下一节就是使用多线雷达进行SLAM建图,使用的算法是A-Loam,是基于Loam做出的改进,大家可以先看看论文,或者先跑出来再看看。
-
SLAM实操入门(一):在已有WIN10的电脑上安装Ubuntu20.04
-
SLAM实操入门(二):Ubuntu20.04安装ROS Noetic并运行“小乌龟”程序
-
SLAM实操入门(三):Ubuntu20.04安装Turtlebot3并运行SLAM例程仿真
-
SLAM实操入门(四):使用ROS连接自己的激光雷达并可视化扫描结果
-
SLAM实操入门(五):无里程计仅使用激光雷达建图(GMapping算法)
到了这里,关于SLAM实操入门(六):连接Velodyne的16线激光雷达并可视化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!