本文主要是介绍在ros中使用 RPLIDAR_A1 激光雷达 8000点/秒 的配置方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
下午拿到一个思岚科技的RPLIDAR_A1,具体版本型号是A1M8-R5。
直接在 ros 环境下搞起,配置与使用非常简单,但是仔细阅读了源码却发现一些需要注意的地方,在这里罗列下来。
1、安装
非常简单,只需要一条指令。
sudo apt-get install ros-YOUR_ROS_DISTRO-rplidar-ros
然后就可以利用 rospack find 指令查看是否安装成功。
2、rplidar-ros源码链接
利用指令安装后没有源码,可以github查看源码。如果有需要可以下载下来, 当做普通 ros package 来进行更改重新编译。
https://github.com/Slamtec/rplidar_ros
3、升级固件到8K Boost模式
在官网的下载栏,有一个8K Boost模式的醒目字样,于是果断下载固件进行了升级。
http://www.slamtec.com/cn/Support#rplidar-a-series
下载链接是一个exe文件,直接双击运行;连接雷达,选择对应串口后一路点击“下一步”就行。
4、ROS下更改工作模式
默认的 rplidar.launch 文件中,没有对应参数,需要添加一项
<param name="scan_mode" type="string" value="Boost">
运行后可以看到提示信息中有工作模式和8K的字样。
5、注意事项
源码中有些地方写的不是很恰当,这里先贴出来代码再逐一分析。
start_scan_time = ros::Time::now();op_result = drv->grabScanDataHq(nodes, count);end_scan_time = ros::Time::now();scan_duration = (end_scan_time - start_scan_time).toSec();
这里先通过 start_scan_time 记录下系统时间戳,然后 drv->grabScanDataHq(nodes, count) 获取到了一个周期中数量为 count 的逐点激光测量数值保存到 nodes 数组中。之后这个时间戳会被打到 /scan 的消息里,因此消息的时
这篇关于在ros中使用 RPLIDAR_A1 激光雷达 8000点/秒 的配置方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!