![4840a87c6e1fdae6237ea23fdc42422a.png](https://i-blog.csdnimg.cn/blog_migrate/a631a1e46cbbb208e170433b8cb55082.jpeg)
这篇文章的前提条件是在大家已经清楚整个雷达仿真的基本原理并且能自己熟练的根据公式写出雷达信号仿真的距离和相位变化信息。如果这里概念不清楚,请看这
https://zhuanlan.zhihu.com/p/100595803zhuanlan.zhihu.com如果你能够熟练的完成上述要求,那么今天我们要使用的MATLAB工具箱,用来大幅度的节省你的时间和精力,提高仿真效率。
说实话这篇文章实际上是我偷懒了,主要是MATLAB的帮助文档的部分,原教程在
https://www.mathworks.com/help/phased/examples/automotive-adaptive-cruise-control-using-fmcw-technology.htmlwww.mathworks.com或者在matlab的F1帮助文档里搜索
Automotive Adaptive Cruise Control Using FMCW Technology
这篇文章实际上就是翻译+个人的一些理解,但是在写的过程中发现自己在一些地方上可以扩展,加点私货。所以从这篇文章作为开始,看看哪里可以进行补充说明,寻找一下文章的灵感。废话不多,今天我们来学习如何用MATLAB的相控阵工具箱进行雷达信号回波仿真。
毫米波雷达目前是比较热门的领域,我们就按照77GHz调频连续波雷达作为我们仿真的建模参考(其实是因为文档里给的就是77GHz,我懒得改参数,参数变了大家也会算)
![95bf6c72946a61eec87402e43a0310fe.png](https://i-blog.csdnimg.cn/blog_migrate/e1eed04d6919813dc6b473114b63da7b.png)
波形设计
在汽车系统中采用调频连续波模式(FMCW)进行目标探测,其测距的原理如图所示
![e5f19cb1039fd30ecdfd615bbda08dfb.png](https://i-blog.csdnimg.cn/blog_migrate/2a354f936c96511d7d4ed64d2dc51a25.png)
接收到的信号是发射信号的延迟,延迟的时间与目标的距离相关。由于发射的是扫频信号,因此在任意时刻,接收到的回波信号与发射信号的频率差必然是一个常数,这个信号我们称为拍频。我们可以从拍频中得到频率信息,再将频率转化为时间延迟,由时间延迟得到目标距离。
车载雷达采用77G载频,假设最大探测距离是200m,对于FMCW雷达系统,接收信号的时间至少应该是往返时间的5到6倍,采用5.5倍采样时间进行仿真
fc = 77e9;
c = 3e8;
lambda = c/fc;
range_max = 200;
tm = 5.5*range2time(range_max,c);
range2time函数是matlab工具箱提供的函数,就是t = 2R/c,即电磁波往返探测距离需要飞行的时间,根据我们的要求设置5.5倍进行仿真,即我们需要设置接收信号的时间
tm =5.5*range2time(range_max,c);
扫频带宽实际上由距离分辨率决定,雷达的距离分辨率是
range_res = 1;
bw = range2bw(range_res,c);
sweep_slope = bw/tm;
range2bw即距离分辨率的计算公式,由于我们知道了距离分辨率得到了扫频带宽,同时也知道了采样时间tm,我们就知道了扫频信号的斜率 sweep_slope
FMCW的发射波形具有非常大的带宽,如果单纯的根据奈奎斯特采样定理,那我们的AD器件的性能要求实在是太高了,这不是扯淡嘛!开玩笑这器件要多贵?为了解决这个问题,我们采集到的信号实际上是拍频信号,这样子我们就可以选择较低的采样率,那么采样率选择什么的样的参数合适呢?实际上我们需要考虑:
1.复杂情况下采样率可以设置的与带宽相同
2.FMCW的距离估计实际上是拍频信号,因此我们只需要知道最大距离下的拍频和最大多普勒频率的和的两倍(奈奎斯特采样定理)即可
我们来计算一下最大探测距离下的拍频是:
fr_max = range2beat(range_max,sweep_slope,c);
在汽车领域,一般按照120km/h为最大速度,在高速路上,迎面的2辆车具有的相对速度为240km/h,我们按照230km/h计算最大多普勒,那么最大频率差为