本文主要是介绍IWR1443毫米波雷达------基于多普勒相偏补偿的速度解模糊/扩展,实测数据验证,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
文章目录
- 前言
- 一、基于多普勒相偏补偿的解模糊算法核心思想
- 二、算法步骤
- 三、理论效果示意图
- 四、程序编写
- 五、实测数据结果:
- 5.1、data1结果:
- 5.2、data2结果:
- 六、总结
- 6.1、多普勒相偏补偿参考:
- 6.2、致读者:
前言
“速度模糊”现象是指由于雷达测速范围有限,当目标速度|Vr|>|Vmax|时,测量速度Ve!=Vr的现象。
更多细节可以看这篇文章:https://zhuanlan.zhihu.com/p/486798151
本文主要是记录iwr1443毫米波雷达通过实测数据,验证基于多普勒相偏补偿的速度解模糊算法的有效性。
一、基于多普勒相偏补偿的解模糊算法核心思想
首先,由于雷达测速和测角度都是基于相位差的,因此当实际速度Vr超过测速范围时,发生“相位模糊”导致了"速度模糊"。下图1所示W2>pi,发生“相位模糊”,实测得到的相位为w1=2*pi-w2。因此,目标实际速度Vr、测量速度Ve与雷达测速范围Vmax之间满足如下公式1所示:
公式(1)
图1:相位模糊示意图
雷达测角度时,需要考虑速度引起的相位差,根据测量速度Ve对目标角度的求解进行修正,这一过程称为“多普勒相偏补偿”。
在这种的情况下,根据可知测量多普勒补偿相位差与实际多普勒补偿相位差的关系如公式2所示:
公式(2)
如果测量速度Ve !=实际速度Vr,那么根据测量速度Vr进行多普勒相偏补偿的结果就是错误的;如果没有发生速度模糊:Ve=Vr,那么根据测量速度Vr进行多普勒相偏补偿的结果就是正确的。因此此算法的核心思想就是在不知道速度是否发生模糊的情况下,通过比较两个不同的角度谱的峰值大小来求解目标速度,因为如果角度补偿结果是错误的,那么相应的角度谱的峰值就会偏小。
二、算法步骤
说明:当假设速度发生模糊,那么如图1所示,实际相位应该为2kpi-w1,k为非零整数,由于不能区分2pi-w1和4pi-w1,因此此算法只能假设当速度模糊时,k=1或-1,这也就导致了此算法只能将速度范围扩展一倍。
如图2所示,是此算法的步骤:定义set1时,符号翻转的操作,对应着复数中“旋转pi”的操作,对应着公式2,但此时k只能取正负1。
图2:基于多普勒相偏补偿算法的步骤
`
三、理论效果示意图
图3(a)和图3(b)分别展示了两种情况下的理论结果:
图3(a):未发生速度模糊
图3(b):发生速度模糊
四、程序编写
根据图2所示的算法步骤,只需在原有的求解目标角度的基础上修改。程序有三个需要注意的点:
1.index_dop是目标速度在多普勒门中的下标,范围是-64到63(假设一帧中的脉冲数目chirp_num=128),具体细节可以参考官方关于多普勒相偏补偿的讲解。
2.符号翻转对应着复数中的“旋转pi”。
3.比较两个角度谱的峰值的相对大小,所以一定不要在music算法内将角度谱归一化
核心代码块如下:
snapshot=snapshot';%未经过多普勒相偏补偿的原始数据snapshot1=snapshot;%操作:多普勒相偏补偿,对应set0snapshot2=snapshot;%操作:多普勒相偏补偿+符号翻转,对应set1%分别进行操作snapshot1(5:8,:)=snapshot1(5:8,:)*exp(-1i*pi*(index_dop(n)/128));%多普勒相偏补偿snapshot2(5:8,:)=snapshot2(5:8,:)*exp(-1i*pi*(index_dop(n)/128))*exp(1i*pi);%分别利用空间谱估计算法(FFT或者MUSIC算法)求解角度谱%注意由于要比较两个角度谱的峰值的相对大小,所以一定不要在music算法内将角度谱归一化[azimuth1(n),P1] = Music(snapshot1,chirps_num,1);%P1:set0[azimuth2(n),P2] = Music(snapshot2,chirps_num,1);%P2:set1plot(P1,'b-.');hold on%叠加,比较set0和set1plot(P2,'r--');xlabel('方位角/度')ylabel('幅度')title('基于多普勒补偿的速度扩展示意图(Vr>V_max)')legend({'set0','set1'})
全部代码和数据放在如下网盘中,可自取:链接:https://pan.baidu.com/s/1fhAVXiAIDKM_nPshWbvJEw?pwd=HUST
提取码:HUST
五、实测数据结果:
5.1、data1结果:
data1.bin文件是人体走动跟踪的数据,因此全程不会发生速度模糊Vr<Vmax,此时理论上如图3(a)所示:set0>set1。
图4(a):未发生速度模糊
图4(b):未发生速度模糊
5.2、data2结果:
data2.bin文件是向上抛物并下落的数据,因此全程在自由落体时发生速度模糊Vr>Vmax,此时理论上发生速度模糊时如图3(b)所示:set0<set1。当然,此过程中当物体上升过程中,速度没有发生模糊(70帧)。
图5(a):发生速度模糊
图5(b):未发生速度模糊
六、总结
6.1、多普勒相偏补偿参考:
关于多普勒相偏补偿,请参考官方SDK中的说明文档“Millimeter Wave (mmw) Demo for XWR14XX”
6.2、致读者:
更多结果和程序说明,都在代码注释中详细说明了。由于第一次写博客,所以文章的排版很差,望理解。由于本人水平有限,所以难免出现错误,请大家赐教。
这篇关于IWR1443毫米波雷达------基于多普勒相偏补偿的速度解模糊/扩展,实测数据验证的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!