Browser does not support (or has disabled) JavaScript, some features of this page may not work properly

FMCW 雷达多目标测距测速测角:从一维 FFT 到三维定位的 MATLAB 仿真实践

2D FFT 幅度谱
2D FFT 幅度谱:横轴为距离维度频率,纵轴为速度维度频率。二维傅里叶变换将距离-速度信息在频谱上自然分离

在信号与系统课程中,我们基于 MATLAB 完整仿真了一套 FMCW(调频连续波)雷达系统,实现了对多个移动目标的测距、测速、测角——从单目标到多目标、从一维 FFT 到三维定位,逐步攻克了实际雷达信号处理中的核心难题。


一、FMCW 雷达是什么?

FMCW(Frequency Modulated Continuous Wave,调频连续波)雷达是当前车载毫米波雷达的主流方案。与传统的脉冲雷达不同,它持续发射频率线性变化的信号,通过混频后测量反射信号与发射信号的频率差来获取目标信息。

这项技术已广泛应用于自动驾驶(ACC 自适应巡航、AEB 自动紧急制动)、交通监测和无人机避障。77GHz 毫米波 FMCW 雷达已成为 L2+ 自动驾驶的标配传感器。本项目用 MATLAB 从零搭建仿真系统,理解其背后的信号处理原理。


二、逐层递进:从单目标到三维定位

阶段一:单目标测距

发射线性调频信号 → 接收回波 → 混频得到中频信号 → FFT 提取频率峰值 → 换算距离。这是雷达最基础的"看多远"问题。

单目标 FFT 频谱
单目标 FFT 频谱:混频信号经 FFT 后在频率域出现对称峰值,正频率峰值对应目标距离

阶段二:单目标测距 + 测速

利用多个 Chirp 之间的相位差计算径向速度。我们对比了三种速度估计算法——平均相位差法、多普勒频移法、解包裹相位法——最终解包裹相位法精度最高(误差 < 0.3%)。

阶段三:多目标测距 + 测速

多个目标时频谱出现多个峰值,使用 findpeaks 替代 max 进行多峰检测。但当两个目标距离相同时,一维 FFT 无法区分——这引出了 2D-FFT 的必要性:在速度维度上分离距离相同的目标。

阶段四:三维定位(距离 + 速度 + 角度)

扩展为 16 天线阵列,通过 3D-FFT 同时解算距离、速度和角度。天线间相位差映射为目标来波方向——这是车载雷达实现二维空间定位的核心方法。


三、关键结果

指标设定值测量值误差
目标1距离30m30.01m0.03%
目标2距离40m40.02m0.05%
目标3距离60m60.09m0.15%
目标1速度5m/s5.02m/s0.32%
目标2速度10m/s10.02m/s0.18%
目标3速度33m/s32.96m/s0.12%

仿真参数:载频 77GHz,带宽 150MHz,Chirp 周期 8μs。距离测量范围 0~1023m,分辨率约 1m;速度范围 ±121m/s,分辨率约 1.9m/s——达到典型车载雷达指标水平。


四、技术难点与解决方案

  • 相位跳变:直接计算相位在 ±π 处跳变,无法用于速度估计 → unwrap 解包裹获得连续相位序列
  • 同距离多目标分离:一维 FFT 无法区分同距离目标 → 引入 2D-FFT 在速度维度实现分离
  • 角度测量精度:两天线方案分辨率低 → 扩展至 16 天线阵列,3D-FFT 实现高精度测角

五、总结

从 FFT 基本原理出发,逐步构建完整 FMCW 雷达信号处理链路——单目标测距 → 多普勒测速 → 多目标 2D-FFT 分离 → 16 天线 3D-FFT 三维定位。项目加深了对傅里叶变换、采样定理、相位分析等核心概念的理解,也为自动驾驶感知系统的底层原理奠定了基础。

MATLAB 仿真实现,代码可复现、参数可调节。

Author: Alan
Date:2026年06月11日

Comments