本文基于TI的IWR1642毫米波雷达 2T4R MIMO阵列,通过实际采集数据算法仿真,实现多人呼吸心跳检测。
文章末尾给出了本文的仿真代码。
主要内容包含:
(1)雷达参数设定
(2)ADC数据导入
(3)均值相消和距离维FFT(脉冲压缩)
(4)DOA估计,获取目标的距离-角度位置
(5)峰值搜索确定目标峰值(这里以2个目标为例,但目标的个数可以超过2个,主要看雷达的算力最大能够支持多少个目标的呼吸心跳计算)
(6)计算不同目标的呼吸心跳,并绘制谱图
这个仿真代码不仅仅局限于IWR1642,还可以利用其他毫米波雷达开发板上,比如IWR6843\IWR1443等等,只是数据导入和解析部分需要做简单修改,不过这个也不是难题,官方都有各个型号的毫米波雷达数据解析代码。
一、呼吸心跳原理
毫米波雷达呼吸心跳的原理,之前写过,可以见文章:
调皮连续波:干货 | IWR1642EVM呼吸心跳原始数据采集与仿真分析(含MATLAB代码和数据)
而且单目标的呼吸心跳在上述文章中也介绍过,本文就不再过多介绍。多人呼吸心跳的主要难点在于DOA估计,这里我们采用MVDR
二、仿真结果
DOA估计的仿真结果如下:
距离角度谱图如下:
其中,我们可以把距离角度谱转为扇形图,更加便于观察目标所在的空间位置。可以看到,目标所处的位置如红框中所标注。
这里我们假设目标的最大个数为2个,其实这个不局限于2个,目标可以是3个或者4个,只是看雷达能否支持这么多目标的呼吸心跳的计算。
三、呼吸心跳估计结果
目标1:
目标2:
可以看到,两个目标估计出来的结果还是比较不错的,感兴趣的读者可以尝试下载代码学习:【27期】MATLAB多人呼吸心跳检测毫米波雷达仿真。