TI AWR1843毫米波雷达采集三维点云数据(ROS)

毫米波雷达以其稳定性、对不同环境的适应能力、价格等方面的优势逐步引起了科研人员的注意,本文主要介绍利用了TI(德州仪器)的AWR1843设备,基于ROS系统进行采集点云数据的流程。供大家参考及为自己做一个笔记。

准备

  1. Ubuntu 18.04 + ROS Melodic (推荐工作环境)
  2. 使用Uniflash成功烧录对应SDK版本中的Demo(mmwave_sdk_03_05_00_04/packages/ti/demo/xwr18xx/mmw/xwr18xx_mmw_demo.bin)
  3. 能够在mmwave demo visulalizer 的离线版本或者网页版本中成功运行开箱演示的demo,看到数据。
  4. 官方参考链接

下载源码

下载ti_mmwave_rospkg ROS driver这个lab的源码:

git clone https://git.ti.com/git/mmwave_radar/mmwave_ti_ros.git

切换到下载项目中的"ros_driver"文件夹中:

cd mmwave_ti_ros/ros_driver/

编译

编译:

catkin_make

编译通过后出现下述界面:
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第1张图片
最后source一下当前工作环境即可。

source devel/setup.bash

至此,我们就完成了ti官方开发的ros driver的编译与准备。

用户权限

我们在使用ros driver这个demo时需要控制电脑的两个端口,分别用来发送命令和传输数据。这需要我们的用户在dialout这个组中。
首先使用:

groups

查看当前用户名所在的用户组。可以看到我的用户名“xiaochen”并没有在dialout这个用户组中。
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第2张图片

接着,执行下述命令进行添加用户名到dialout用户组:

sudo adduser xiaochen dialout

重启电脑,生效添加用户的命令。
再次运行groups命令进行查看,结果如下:
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第3张图片

硬件配置/启动

  1. 连接电源线,给板子上电
  2. 连接USB数据线,发送命令/传输数据
    针对本文介绍的AWR 1843板子,启动对应的launch文件:
roslaunch ti_mmwave_rospkg 1843_multi_3d_0.launch 

第一次运行会出现下述乱码,不过没有关系,ctrl + C 结束命令,我们再次运行一次。
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第4张图片
可以看到弹出一个rviz窗口,并出现了三维点云数据:
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第5张图片
使用rostopic list查看当前所发布的topic。
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第6张图片
其中:/ti_mmwave/radar_scan_pcl_0就是我们想要记录的topic数据,使用rosbag record进行记录即可。

点云数量

相信读者可能会发现rviz中点云数量非常少,这一方面时毫米波雷达本身就不能获取较高质量的数据,另一方面时我们需要修改一下 .cfg文件中的参数配置。
在:/mmwave_ti_ros/ros_driver/src/ti_mmwave_rospkg/cfg路径下找到对应的cfg文件,本文的是:“1843_3d.cfg”,打开此文件:
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第7张图片
修改其中:
cfarCfg -1 0 2 8 4 3 0 15 1
cfarCfg -1 1 0 4 2 3 1 15 1
为:
cfarCfg -1 0 2 8 4 3 0 15 0
cfarCfg -1 1 0 4 2 3 1 15 0
之后,重新执行命令:

roslaunch ti_mmwave_rospkg 1843_multi_3d_0.launch 

可以看到点云数量有明显增加:
TI AWR1843毫米波雷达采集三维点云数据(ROS)_第8张图片

你可能感兴趣的:(毫米波雷达,自动驾驶,ros,linux)