Radar系列文章
传感器融合是将多个传感器采集的数据进行融合处理,以更好感知周围环境;这里首先介绍毫米波雷达的相关内容,包括毫米波雷达基本介绍,毫米波雷达数据处理方法(测距测速测角原理,2D FFT,CFAR,聚类,毫米波雷达障碍物识别实例)等。
系列文章目录
1. 毫米波雷达基本介绍
2. FMCW毫米波雷达原理
3. 毫米波雷达障碍物检测算法介绍
上一章我们讲到可以通过混频器(Mixer)的中频信号(beat frequency)解算出速度和距离信息。
混频器出来的差频信号,首先需要进行ADC模数转换,转换成数字信号,再给到DSP处理。首先进行的是FFT频谱分析,将时域信号转换为频域信号,再提取有效信息,下面将介绍这一过程。
FFT and FMCW
混频器回波后的差频信号,首先截取中间段的有效信号进行FFT频谱分析,每段采样N次,每次采样得到一个距离单元,从而得到一下Range FFT map图,获得N*(Number of chirps)单元。
以下是MATLAB进行FFT分析的程序示例。
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sampling period
L = 1500; % Length of signal
t = (0:L-1)*T; % Time vector
% TODO: Form a signal containing a 77 Hz sinusoid of amplitude 0.7 and a 43Hz sinusoid of amplitude 2.
S = 0.7*sin(2*pi*77*t)+2*sin(2*pi*43*t);
% Corrupt the signal with noise
X = S + 2*randn(size(t));
% Plot the noisy signal in the time domain. It is difficult to identify the frequency components by looking at the signal X(t).
plot(1000*t(1:50) ,X(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('t (milliseconds)')
ylabel('X(t)')
% TODO : Compute the Fourier transform of the signal.
signal_fft = fft(X);
% TODO : Compute the two-sided spectrum P2. Then compute the single-sided spectrum P1 based on P2 and the even-valued signal length L.
P2 = abs(signal_fft/L);
P1=P2(1:L/2+1);
% Plotting
f = Fs*(0:(L/2))/L;
plot(f,P1)
title('Single-Sided Amplitude Spectrum of X(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')
2D FFT
我们已经从Range FFT中获得了距离信息,下一步我们需要提取速度信息。这里我们需要对Range FFT信号再次进行FFT,获得获取多普勒频移 f d f_d fd,即可获得速度信息。多普勒频移是通过分析多个扫频波(chirps)的相位变化来获得的,因此需要在连续扫频波发射接收后,对距离多普勒进行2nd FFT,即2D FFT可获得频移/速度信息。
下图是真实场景中