目录
1. 激光雷达硬件连接
1.1 工具准备
1.2 硬件连接
2. 软件安装
2.1 rslidar_sdk
2.2 Yaml (必需)
2.3 libpcap (必需)
2.4 编译、运行
3. 屏蔽部分雷达通道
最近课题组新入手个80线的雷达,现在对其相关操作记录一下。
黑与黑相对,红与红相对。
链接后的结果图:
需要注意:雷达接口盒子的PWR接口与25.2V 3A需要有一根连接线,并不是雷达接口盒子的PWR直接与5525的口连接哦。
在本文中,雷达对应的以太网是enp2s0。那么怎么样确定自己插入的是那个网口呢??直接拔雷达的网线,看看哪个选项变黑了就行了。
设置工控机 Ubuntu 18.04静态IP,速腾聚创80线激光雷达出厂默认发送到192.168.1.102。手动设置IP 192.168.1.102 和子网掩码 255.255.255.0
在连接前、后可以通过wireshark抓包工具进行检测;
启动 wireshark
sudo wireshark
启动界面:
正常发送UDP数据流才算正常接入!
或者配置完成后,可以通过 ifconfig 命令查看静态IP 是否生效。
ifconfig
interface name: enp2s0
flags: UP - 接口已启用 BROADCAST - 支持广播 RUNNING - 接口正在运行 MULTICAST - 支持多播
MTU: 1500 - 最大传输单元为1500字节
IPv4 address: 192.168.1.102/24 - IP地址为192.168.1.102,子网掩码为255.255.255.0
Broadcast address: 192.168.1.255 - 广播地址
IPv6 address: fe80::adof:ac73:8281:e8db/64 - IPv6 地址为 fe80::adof:ac73:8281:e8db,前缀长度为64
MAC address: oo:e0:4c:74:02:df - 接口的MAC地址
RX packets: 1725778 - 已接收的数据包数量 RX bytes: 2225791518 (2.2 GB) - 已接收的字节数 RX errors: 0 - 接收错误数为0 RX dropped: 0 - 因接收缓冲区满而丢弃的包数为0 RX overruns: 0 - 接收过载(接收速率过快)数为0 RX frame: 0 - 接收帧错误数为0
TX packets: 213 - 已发送的数据包数量 TX bytes: 54685 (54.6 KB) - 已发送的字节数 TX errors: 0 - 发送错误数为0 TX dropped: 0 - 因发送缓冲区满而丢弃的包数为0 TX overruns: 0 - 发送过载数为0
collisions: 0 - 冲突数为0
carrier: 0 - 载波检测数为0
使用 git clone 对rslidar_sdk进行下载。rslidar_sdk项目包含子模块驱动内核rs_driver。在执行git clone后,还需要执行相关指令,初始化并更新子模块。
git clone https://github.com/RoboSense-LiDAR/rslidar_sdk.git
cd rslidar_sdk
git submodule init
git submodule update
版本号: >= v0.5.2,若已安装ROS desktop-full, 可跳过
sudo apt-get update
sudo apt-get install -y libyaml-cpp-dev
版本号: >= v1.7.4
sudo apt-get install -y libpcap-dev
可以使用三种方式编译、运行rslidar_sdk,这里只介绍依赖于ROS-catkin编译
(1) 打开工程内的*CMakeLists.txt*文件,将文件顶部的变量**COMPILE_METHOD**改为**CATKIN**.
set(COMPILE_METHOD CATKIN)
(2) 将rslidar_sdk工程目录下的 package_ros1.xml 文件里面的内容替换到 package.xml 。
(3) 新建一个文件夹作为工作空间,然后再新建一个名为 src 的文件夹, 将 rslidar_sdk 工程放入 src 文件夹内。
(4) 返回工作空间目录,执行以下命令即可编译、运行。如果使用.zsh,将第二行替换成 *source devel/setup.zsh*。
catkin_make
source devel/setup.bash
roslaunch rslidar_sdk start.launch
运行结果如下:
你会发现,这个运行的时候报错了,因为这是80线的雷达,需要对config.yaml进行配置,yaml的路径如下:
修改后的 config.yaml 内容如下(路径见上图):
lidar_type: RSP80
再次启动雷达
source devel/setup.bash
roslaunch rslidar_sdk start.launch
OK!!结束
在驱动这里修改,重新编译,即可屏蔽部分雷达通道 图片示例是屏蔽(0.1.2通道)。
屏蔽的代码的路径如下:
rslidar_sdk-v1.5.10\src\rs_driver\src\rs_driver\driver\decoder\decoder_RSP80.hpp