本文主要记录如何使用激光雷达思岚A1 Rplidar A1
一、修改串口别名
1.在Win上修改串口号
修改串口工具:链接:https://pan.baidu.com/s/1XfE28AUHVP1HHXXq3pSQvw 提取码:6ouo
CP2102驱动:链接:https://pan.baidu.com/s/1kxBRXwxkqAlmvXs7WU-Plw 提取码:z41o
插上激光雷达到Win10上,(需要安装CP2102驱动),我们可以看到Serial值默认为0001,也就是说只要是CP2102的串口芯片,那么其默认值都是一样的。这样会导致我们不容易区分设备。因此,我们可以将激光雷达的串口号改为0002
修改如下图所示:
这样我们就可以永久固定CP2102的串口号啦!
2.在Ubuntu上设置别名
查看USB设备:
ll /dev | grep ttyUSB0
查看详细的串口信息:
udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)
可以看到ATTRS{serial}==0002 修改成功!
下载功能包:
链接: https://pan.baidu.com/s/15LJDUrtG4PNK7UmV_YWAPw 提取码: 7pnk
cd scripts
sudo ./rplidar_udev.sh
查看是否成功(重新插拔激光雷达):
ll /dev | grep ttyUSB
之后重新插拔激光雷达外设,不管接在哪个USB口,我们都可以使用rplidar代替ttyUSBx
二、编译和运行
上面我们已经下载了功能包
mkdir -p rplidar_ws/src
# 将功能包放入src文件夹中
cd rplidar_ws
catkin_make
这种方法是基于源码进行编译的。也可以直接通过ros进行下载功能包(基于Ubuntu20.04 noetic)
sudo apt-get install ros-noetic-rplidar-ros
运行:
roslaunch rplidar_ros rplidar.launch
这时候我们可以看到多了scan话题
查看激光雷达/scan话题的frame_id
rostopic echo /scan | grep frame_id
查看激光雷达发布的信息
rostopic echo /scan
光看数据看不出啥效果,接下来采用rviz工具进行图形化显示
rviz
(由于我设置了激光雷达的扫描范围角度,因此没有显示完整的360°,这个大概有60°的FOV)
完整的如下:
三、常见问题
rosrun rplidar_ros rplidarNode
这时候显示
Error, cannot bind to the specified serial port /dev/ttyUSB0
这个时候可能遇到串口权限的问题了!
解决方法:
添加用户权限即可解决:
sudo gpasswd --add USER_NAME dialout
USER_NAME 为当前用户名
如何查看当前用户名:
whoami
设置完注销重启重新登录Ubuntu系统即可!