当前位置: 首页 > news >正文

FMCW雷达:从理论到MATLAB GNU Radio双平台验证

FMCW雷达:从理论到MATLAB/GNU Radio双平台验证

前言

在现代雷达系统中,调频连续波(FMCW, Frequency Modulated Continuous Wave)雷达因其结构简单、成本低、距离分辨率高等特点,被广泛应用于汽车辅助驾驶、无人机避障以及工业测距等领域。虽然FMCW的基本原理相对成熟,但在实际工程中,测距与测速的性能往往受到信号处理链路设计、硬件限制以及算法实现方式的影响。因此,在设计和验证FMCW系统之前,通过仿真平台进行功能验证与性能评估显得尤为重要。

本博客将以GNU Radio与MATLAB为两个主要工具平台,分别实现FMCW雷达的测距与测速功能。GNU Radio作为开源的软件无线电开发框架,适合快速搭建实时信号处理流程,验证系统的测距能力;而MATLAB凭借强大的矩阵运算与信号处理工具箱,在频谱分析和二维FFT等方面具有优势,更便于实现精确的测速算法。通过两种平台的对照,我们不仅能够直观比较不同实现环境下的处理思路,还能为后续软硬件结合的FMCW雷达设计提供参考。

1 FMCW雷达原理与信号模型

调频连续波(FMCW, Frequency Modulated Continuous Wave)雷达通过在一个发射周期内线性调制载波频率,将目标的距离信息和速度信息同时编码在回波信号中。经过混频处理,目标的距离和速度可以通过频域分析精确解算。

1. 系统关键参数[1]

在一个线性调频周期(chirp)内,载波频率变化为:
f(t)=fc+St,0≤t<Tr f(t) = f_c + S t, \quad 0 \leq t < T_r f(t)=fc+St,0t<Tr
其中:

  • fcf_cfc 为载波中心频率
  • TrT_rTr 为 chirp 周期
  • S=BTrS = \frac{B}{T_r}S=TrB 为调频斜率
  • BBB 为带宽
    雷达性能指标:
  • 距离分辨率
    dres=c2B d_{\mathrm{res}} = \frac{c}{2B} dres=2Bc
  • 速度分辨率
    vres=λ2TrNd v_{\mathrm{res}} = \frac{\lambda}{2 T_r N_d} vres=2TrNdλ
    其中 ccc 为光速,λ\lambdaλ 为波长,NdN_dNd 为脉冲数。

2. 发射信号

发射的线性调频信号:
stx(t)=ej(2πfct+πSt2) s_{\mathrm{tx}}(t) = e^{j\left( 2\pi f_c t + \pi S t^2 \right)} stx(t)=ej(2πfct+πSt2)
该信号的瞬时频率随时间线性变化,从而在时间上对目标距离信息进行调制。

3. 回波信号

目标距离为 RRR、速度为 vvv 时,传播延迟为:
τ=2Rc \tau = \frac{2R}{c} τ=c2R
多普勒频移为:
fd=2vλ f_d = \frac{2v}{\lambda} fd=λ2v
回波信号为:
srx(t)=A⋅ej[2π(fc−fd)(t−τ)+πS(t−τ)2] s_{\mathrm{rx}}(t) = A \cdot e^{j\left[ 2\pi (f_c - f_d)(t - \tau) + \pi S (t - \tau)^2 \right]} srx(t)=Aej[2π(fcfd)(tτ)+πS(tτ)2]
其中 AAA 为幅度衰减系数。

4. 混频与中频信号

接收端将发射信号与回波信号相乘(同相混频):
sIF(t)=stx(t)⋅srx∗(t) s_{\mathrm{IF}}(t) = s_{\mathrm{tx}}(t) \cdot s_{\mathrm{rx}}^*(t) sIF(t)=stx(t)srx(t)
忽略高频分量:
sIF(t)≈ej2π(Sτ+fd)t s_{\mathrm{IF}}(t) \approx e^{j 2\pi (S\tau + f_d) t} sIF(t)ej2π(Sτ+fd)t
差频信号频率包含:

  • SτS\tauSτ:与目标距离成正比的距离频率
  • fdf_dfd:与目标速度成正比的多普勒频移

5. 距离与速度估计原理

在 FMCW 雷达系统中,目标的距离与速度信息都在拍频信号中。雷达发射的线性调频连续波经过传播并与回波混频得到中频信号,拍频信号中包含两个主要信息:

  1. 距离信息
    目标的距离决定了回波的时间延迟:
    τ=2Rc \tau = \frac{2R}{c} τ=c2R
    其中 RRR 为目标距离,ccc 为光速。
    拍频信号的频率由调频斜率 SSS 与时间延迟 τ\tauτ 决定:
    fb=S⋅τ f_b = S \cdot \tau fb=Sτ
    因此,目标距离可由拍频信号频率计算:
    R=cfb2S R = \frac{c f_b}{2 S} R=2Scfb

  2. 速度信息
    目标相对雷达的径向速度产生多普勒频移:
    fd=2vλ f_d = \frac{2 v}{\lambda} fd=λ2v
    其中 vvv 为目标速度,λ\lambdaλ 为雷达波长。
    在拍频信号中,速度信息会使频谱沿频率轴发生偏移,通过对多个连续 chirp 的中频信号进行傅里叶变换,可以提取多普勒频率:
    v=λfd2 v = \frac{\lambda f_d}{2} v=2λfd

  3. 距离-速度二维频谱
    通过对中频信号先做距离向 FFT,再做速度向 FFT,可以得到二维的距离-速度频谱图。

  • 距离向 FFT:提取每个 chirp 的拍频信号频率,映射到目标距离。
  • 速度向 FFT:对同一距离单元的多个 chirp 做 FFT,提取多普勒频率,映射到目标速度。

频率与物理量的对应关系总结如下:
R=cfb2S,v=λfd2 R = \frac{c f_b}{2 S}, \quad v = \frac{\lambda f_d}{2} R=2Scfb,v=2λfd

这样,FMCW雷达可以通过拍频信号的二维频谱同时实现目标距离与速度的联合测量。

2 基于GNU_Radio的FMCW雷达流图

本节介绍基于 GNU Radio 的 FMCW 雷达仿真流图[2]原理,各个模块功能如下。

  1. 采样率设置
    系统采样率为:
    Fs=40 MHz F_s = 40 \ \text{MHz} Fs=40 MHz
    采样率决定了信号生成、延迟模拟及后续 FFT 的频率分辨率。

  2. Signal Source(信号源)
    生成频率为 100 kHz100 \ \text{kHz}100 kHz 的锯齿波,幅值范围为 000222
    图1 signal source
    图1 signal source

该锯齿波作为 VCO 的调制信号,控制输出频率随时间线性变化,从而实现线性调频。
图2 VCO
图2 VCO

VCO 接收锯齿波信号,生成调频连续波(FMCW)信号。灵敏度(Sensitivity)设置为:
Sensitivity=2π×10 MHz/V \text{Sensitivity} = 2 \pi \times 10 \ \text{MHz/V} Sensitivity=2π×10 MHz/V
fout=fcenter+(Input Signal×Sensitivity2π) f_{\text{out}} = f_{\text{center}} + \left( \text{Input Signal} \times \frac{\text{Sensitivity}}{2\pi} \right) fout=fcenter+(Input Signal×2πSensitivity)

代入数值:
fcenter=0,Sensitivity=2π×10 MHz/V,Input Signal∈[0,2] V f_{\text{center}} = 0, \quad \text{Sensitivity} = 2\pi \times 10\ \text{MHz/V}, \quad \text{Input Signal} \in [0,2]\ \text{V} fcenter=0,Sensitivity=2π×10 MHz/V,Input Signal[0,2] V

输入信号边界值计算:

  1. Input Signal=0 V\text{Input Signal} = 0\ \text{V}Input Signal=0 V
    fout=0×10 MHz=0 MHz f_{\text{out}} = 0 \times 10\ \text{MHz} = 0\ \text{MHz} fout=0×10 MHz=0 MHz

  2. Input Signal=2 V\text{Input Signal} = 2\ \text{V}Input Signal=2 V
    fout=2×10 MHz=20 MHz f_{\text{out}} = 2 \times 10\ \text{MHz} = 20\ \text{MHz} fout=2×10 MHz=20 MHz

最终输出频率范围:
fout∈[0,20] MHz f_{\text{out}} \in [0, 20]\ \text{MHz} fout[0,20] MHz

  1. Delay 模块(目标距离模拟)
    三个 Delay 模块分别设置延迟为 222444888 个采样点,用于模拟不同距离的目标回波。
    图3 Delay
    在采样率 Fs=40 MHzF_s = 40 \ \text{MHz}Fs=40 MHz 下,每个采样点时间间隔为:
    Ts=1Fs=25 ns T_s = \frac{1}{F_s} = 25 \ \text{ns} Ts=Fs1=25 ns
    往返延迟 Δt\Delta tΔt 与距离 RRR 的关系为:
    R=c⋅Δt2 R = \frac{c \cdot \Delta t}{2} R=2cΔt
    因此,延迟 222444888 个采样点分别对应:
  • R1=7.5 mR_1 = 7.5 \ \text{m}R1=7.5 m
  • R2=15 mR_2 = 15 \ \text{m}R2=15 m
  • R3=30 mR_3 = 30 \ \text{m}R3=30 m
  1. Add(信号相加)
    图4 Add
    图4 Add

将三个延迟后的回波信号叠加,得到多目标回波信号:
srx(t)=∑i=13αi stx(t−τi) s_{\text{rx}}(t) = \sum_{i=1}^3 \alpha_i \, s_{\text{tx}}(t - \tau_i) srx(t)=i=13αistx(tτi)
其中 αi\alpha_iαi 为目标反射系数,τi\tau_iτi 为相应目标的延迟。

  1. Multiply Conjugate(混频与解调)

图5 Multiply Conjugate
图5 Multiply Conjugate

将接收信号与发射信号的共轭相乘,得到拍频信号:
sif(t)=srx(t)⋅stx∗(t) s_{\text{if}}(t) = s_{\text{rx}}(t) \cdot s_{\text{tx}}^*(t) sif(t)=srx(t)stx(t)
拍频信号的频率 fbf_bfb 与目标距离成正比:
fb=S⋅τ=BTc⋅2Rc f_b = S \cdot \tau = \frac{B}{T_c} \cdot \frac{2R}{c} fb=Sτ=TcBc2R
其中 SSS 为调频斜率,BBB 为带宽,TcT_cTc 为 chirp 时长。

  1. Rational Resample(有理数倍采样率变换)
    图6 Rational Resampler
    通过插值(Interpolation, 因子 LLL)与抽取(Decimation, 因子 MMM)实现任意有理数倍的采样率变换:
    Rate change=LM,Fout=Fin⋅LM \text{Rate change} = \frac{L}{M}, \qquad F_{\text{out}} = F_{\text{in}} \cdot \frac{L}{M} Rate change=ML,Fout=FinML
    本流图设置:
    L=16,M=25⇒Fout=0.64 Fin L = 16,\quad M = 25 \quad \Rightarrow \quad F_{\text{out}} = 0.64 \, F_{\text{in}} L=16,M=25Fout=0.64Fin
    Fin=40 MHzF_{\text{in}} = 40 \ \text{MHz}Fin=40 MHz,则:
    Fout=40×1625=25.6 MHz F_{\text{out}} = 40 \times \frac{16}{25} = 25.6 \ \text{MHz} Fout=40×2516=25.6 MHz

插值—抽取的等效处理(理想低通滤波器 h[n]h[n]h[n]):

  • 插值(零插入 + 抗成像滤波):
    xL[n]={x[n/L],n≡0 (mod L)0,otherwise,y[n]=(xL∗h)[n] x_L[n] = \begin{cases} x[n/L], & n \equiv 0 \ (\mathrm{mod}\ L)\\[4pt] 0, & \text{otherwise} \end{cases} ,\qquad y[n] = (x_L * h)[n] xL[n]={x[n/L],0,n0 (mod L)otherwise,y[n]=(xLh)[n]
  • 抽取(抗混叠滤波 + 降采样):
    z[k]=y[kM] z[k] = y[kM] z[k]=y[kM]
    为提高效率,GNU Radio 采用多相滤波(Polyphase)结构,将上述两步合并实现,在保持拍频频率位置不变的同时降低数据率与运算量。
  1. 整体流图

图7 整体流图
图7 整体流图

3 仿真结果分析

本节展示基于 GNU Radio 与 MATLAB 的 FMCW 雷达仿真实验结果,对比两者在目标检测方面的表现。
在 GNU Radio 流图中,设置三个目标回波延迟分别为 222444888 个采样点,分别对应目标距离:
R1=7.5 m,R2=15 m,R3=30 m R_1 = 7.5\ \text{m}, \quad R_2 = 15\ \text{m}, \quad R_3 = 30\ \text{m} R1=7.5 m,R2=15 m,R3=30 m
通过 Multiply Conjugate 模块获得拍频信号,并经过 Rational Resample 处理后在 Frequency Sink 中进行频谱分析。
实验结果显示,频谱中出现了三个明显峰值,峰值位置对应的拍频与目标距离一致,说明 GNU Radio 流图能够准确反映多目标距离信息。

在 MATLAB 仿真中,目标参数与 GNU Radio 一致,距离分别为 7.5 m7.5\ \text{m}7.5 m15 m15\ \text{m}15 m30 m30\ \text{m}30 m,同时引入速度信息,速度分别为:
v1=0,v2=10×velres,v3=−5×velres v_1 = 0, \quad v_2 = 10 \times \text{velres}, \quad v_3 = -5 \times \text{velres} v1=0,v2=10×velres,v3=5×velres
其中速度分辨率为:
velres=97.251 m/s \text{velres} = 97.251\ \text{m/s} velres=97.251 m/s
通过二维 FFT 处理得到距离-速度图像,每个目标在图像中对应一个明确的峰值点。
实验结果显示,MATLAB 仿真不仅能够准确恢复目标距离,而且能够区分不同速度的目标,峰值位置与理论距离和速度一致,验证了二维 FFT 方法在测距测速中的有效性。

下面展示仿真结果。

  1. 发射信号时域图
    图8(a) MATLAB
    图8(b) GNU_Radio
    图8 发射信号时域图: (1) MATLAB (2) GNU_Radio

  2. 发射信号频域图
    在这里插入图片描述
    在这里插入图片描述
    图8 发射信号频域图: (1) MATLAB (2) GNU_Radio

在这里插入图片描述
在这里插入图片描述
图8 中频信号频谱图: (1) MATLAB (2) GNU_Radio

可以看到,高峰出现在0.1MHz,0.2MHz和0.4MHz,这与设置的目标距离匹配

  1. MATLAB距离速度维FFT结果在这里插入图片描述
    图11 距离速度维FFT

  2. 结论

  3. 距离检测一致性:两种方法在距离测量上均能够准确反映设定目标位置,GNU Radio 主要验证了流图和信号处理链的正确性,MATLAB 提供了更精细的数值验证。

  4. 速度信息获取:GNU Radio 仿真仅模拟距离信息,无法直接区分速度差异;MATLAB 仿真引入速度分辨率,可通过二维 FFT 在速度维上区分不同运动状态的目标。

参考文献

[1] 毫米波MIMO雷达成像技术研究.学士学位论文

[2] https://blog.csdn.net/RICEresearchNOTE/article/details/145358161?fromshare=blogdetail&sharetype=blogdetail&sharerId=145358161&sharerefer=PC&sharesource=m0_72488901&sharefrom=from_link

http://www.dtcms.com/a/399953.html

相关文章:

  • 每日精讲:⼆叉树的构建及遍历/⼆叉树的前中后序遍历
  • 教人如何做吃的网站wordpress更改主题名
  • 网站和网页的区别在于o2o模式举例说明
  • 大概在网上建立一个网站一年要花多少钱呀微商网
  • 做网站服务好福州外贸网站建设推广
  • NAND FLASH与NOR FLASH
  • 有什么好的网站推荐一下私域流量运营
  • 新网站如何做排在前面给卖假性药的做网站一般要判多久
  • 臭氧传感器采用电化学原理测量原理一文浅淡
  • Spring-AI简单实践
  • [优选算法专题三二分查找——NO.18在排序数组中查找元素的第一个和最后一个位置]
  • 智能化住宅防盗报警系统设计(论文+源码)
  • 58同城网站建设案例购买网域名的网站好
  • 创意合肥网站建设网站后台ftp账户
  • 配置文件空密码与明文密码修复方案
  • 对网站开发的理解js做网站登录界面
  • 统计二级域名的网站流量有什么用龙岗公司网站
  • vivado进行zynq开发问题总结
  • 大气金融网站peise网站
  • 计算机网站建设职业群wordpress 批量修改字体
  • 湖南省金力电力建设有限公司 网站亚太建设科技信息研究院网站
  • 北京网站建设培训网站建设先进个人材料
  • 【 GUI自动化测试】GUI自动化测试(一) 环境安装与测试
  • 如何将ISO20000的SLA与服务器响应时间有效结合?
  • 贺福建舰电磁弹射上线
  • wordpress网站分享到朋友圈小项目加盟
  • 牛客:多项式输出
  • 构建一个支撑10万设备的虚拟电厂IoT平台
  • Linux 中,`pip install`与 `apt install`
  • 宁波优质网站制作哪家好晋中市科技馆网站建设