赞
踩
目标静止时,目标和雷达之间没有多普勒频偏,回波信号和发射信号之间只是存在一个时延,因此回波信号波形图是发射信号波形图沿时间轴的左右平移,如下左图。假设静止目标距雷达的距离为R,电磁波在空气中的传播速度为c,则接收信号和发射信号之间存在固定的信号延迟
τ
=
2
R
c
\tau=\frac{2R}{c}
τ=c2R,因此理想情况下,回波信号模型可表示为:
s
r
(
t
)
=
K
A
c
o
s
(
2
π
(
f
0
(
t
−
τ
)
+
S
(
t
−
τ
)
2
2
)
+
ϕ
0
)
)
s_r(t)=KAcos(2\pi(f_0(t-\tau)+\frac{S(t-\tau)^2}{2})+\phi_0))
sr(t)=KAcos(2π(f0(t−τ)+2S(t−τ)2)+ϕ0))
回波信号相位为:
p
r
(
t
)
=
2
π
(
f
0
(
t
−
τ
)
+
S
(
t
−
τ
)
2
2
)
+
ϕ
0
)
p_r(t)=2\pi(f_0(t-\tau)+\frac{S(t-\tau)^2}{2})+\phi_0)
pr(t)=2π(f0(t−τ)+2S(t−τ)2)+ϕ0)
如下中图,将接收到的回波信号和发射信号经过混频器,再经过一个低通滤波器就可以得到一个单一频率的正弦波信号,叫做差频信号,如下左图中IF signal。差频信号的相位为:
p
t
(
t
)
−
p
r
(
t
)
=
2
π
f
0
τ
+
2
π
S
τ
t
−
π
S
τ
2
p_t(t)-p_r(t)=2\pi f_0\tau+2\pi S\tau t-\pi S\tau^2
pt(t)−pr(t)=2πf0τ+2πSτt−πSτ2
相位对时间求导为瞬时角频率,除以2pi就是瞬时频率,因此差频信号的频率为:
f
m
=
S
τ
=
B
T
2
R
c
=
2
B
R
c
T
f_m=S\tau=\frac{B}{T}\frac{2R}{c}=\frac{2BR}{cT}
fm=Sτ=TBc2R=cT2BR
因此,可以从频谱图中得到谱峰值对应的频率fm,再倒推得到目标距离R为:
R
=
c
T
f
m
2
B
R=\frac{cTf_m}{2B}
R=2BcTfm
clear; clc; close all; warning off;
%% 参数设置
maxR = 200; % 最大探测距离
rangeRes = 1; % 距离分辨率
maxV = 70; % 最大检测目标的速度
fc = 77e9; % 工作频率(载频)
c = 3e8; % 光速
r0 = 90; % 目标距离设置 (max = 200m)
v0 = 10; % 目标速度设置 (min =-70m/s, max=70m/s)
%% 产生信号
B = c / (2 * rangeRes); % 扫频带宽(B = 150MHz)
Tchirp = 5.5 * 2 * maxR / c; % 扫频时间 (x-axis), 5.5= sweep time should be at least 5 o 6 times the round trip time
S = B / Tchirp; % 调频斜率
phi = 0; % 初相位
N_chrip = 128; % chirp数量
Ns = 4096; % ADC采样点数
t = linspace(0, N_chrip * Tchirp, N_chrip * Ns); % 发射信号和接收信号的采样时间
ft = fc .* t + (S .* t.^2) ./ 2;
Tx = cos(2 * pi .* ft + phi); % 发射信号
tau = Tchirp / 6; % 时延
fr = fc .* (t - tau) + S .* (t - tau).^2; % 回波信号频率
Rx = cos(2 * pi .* fr / 2 + phi); % 回波信号
%% 经过混频器
Mix = Tx .* Rx;
%% 混频经过低通滤波器
fpass = 30e5; % 截止频率fpass=30MHz
fs_lpf = 120e6; % 采样频率fs=120MHz
Mix_filtered = lowpass(Mix(1:Ns), fpass, fs_lpf);
%% 计算差频
N_fft = 1024;
f = (0 : N_fft - 1) / 2 * Ns;
Mix_filtered_fft = db(abs(fft(Mix_filtered, N_fft)));
%% 作图
figure(1); clf;
sp1 = subplot(2, 2, 1); plot(t(1:Ns), Tx(1:Ns), 'linewidth', 1.2); axis('tight');
xlabel('时间'); ylabel('幅值'); title('发射信号时域波形图'); set(gca, 'fontsize', 12);
sp3 = subplot(2, 2, 3); plot(t(1:Ns), Rx(1:Ns), 'linewidth', 1.2); axis('tight');
xlabel('时间'); ylabel('幅值'); title('回波信号时域波形图'); set(gca, 'fontsize', 12);
subplot(2, 2, [2, 4]); plot(t(1:Ns), ft(1:Ns), 'linewidth', 1.2); hold on;
plot(t(1:Ns), fr(1:Ns)); hold off; axis('tight'); ylim([0, max(fr(1:Ns))]);
xlabel('时间'); ylabel('频率'); legend('发射信号频率', '回波信号频率'); set(gca, 'fontsize', 12);
linkaxes([sp1, sp3], 'x');
figure(2); clf;
sp11 = subplot(3, 1, 1); plot(t(1:Ns), Mix(1:Ns), 'linewidth', 1.2); axis('tight');
xlabel('时间'); ylabel('幅值'); title('混频信号'); set(gca, 'fontsize', 12);
sp22 = subplot(3, 1, 2); plot(t(1:Ns), Mix_filtered(1:Ns), 'linewidth', 1.2); axis('tight');
xlabel('时间'); ylabel('幅值'); title('差频信号'); set(gca, 'fontsize', 12);
subplot(3, 1, 3); plot(f, Mix_filtered_fft, 'linewidth', 1.2); axis('tight');
xlabel('频率'); ylabel('幅度(dB)'); title('差频信号的频谱图'); set(gca, 'fontsize', 12);
linkaxes([sp11, sp22], 'x');
运行结果:
当目标相对雷达有径向运动时,由于多普勒效应回波信号和发射信号之间存在频率偏移fd,回波信号波形图相对发射信号波形图不仅有左右平移,还有上下平移,如下图:
假设在电磁波区域内,有一个目标在t0时刻距离雷达的距离为R0,并以径向距离vr远离天线,那么回波信号依然可表示为:
s
r
(
t
)
=
K
A
c
o
s
(
2
π
(
f
0
(
t
−
τ
)
+
S
(
t
−
τ
)
2
2
)
+
ϕ
0
)
)
s_r(t)=KAcos(2\pi(f_0(t-\tau)+\frac{S(t-\tau)^2}{2})+\phi_0))
sr(t)=KAcos(2π(f0(t−τ)+2S(t−τ)2)+ϕ0))
和静止目标不同的是,运动目标的时延不同,记为
τ
t
=
2
R
′
c
=
2
(
R
0
+
v
r
t
)
c
\tau_t=\frac{2R'}{c}=\frac{2(R_0+v_rt)}{c}
τt=c2R′=c2(R0+vrt),代入差频信号相位有:
p
t
(
t
)
−
p
r
(
t
)
=
2
π
f
0
τ
t
+
2
π
S
τ
t
t
−
π
S
τ
t
2
=
2
π
(
2
f
0
v
r
c
+
2
S
R
0
c
−
4
S
R
0
v
r
c
2
)
t
+
2
π
(
2
S
v
r
c
−
2
S
v
r
2
c
2
)
t
2
+
(
4
π
R
0
f
0
c
−
4
π
S
R
0
2
c
2
)
因此可以知道,运动目标的中频信号依然是一个线性调频信号,调频斜率S’,差频fm’,初相phi’分别为:
S
′
=
2
S
v
r
c
−
2
S
v
r
2
c
2
S'=\frac{2Sv_r}{c}-\frac{2Sv_r^2}{c^2}
S′=c2Svr−c22Svr2
f m ′ = 2 f 0 v r c + 2 S R 0 c − 4 S R 0 v r c 2 f_m'=\frac{2f_0 v_r}{c}+\frac{2SR_0}{c}-\frac{4SR_0v_r}{c^2} fm′=c2f0vr+c2SR0−c24SR0vr
ϕ ′ = 4 π R 0 f 0 c − 4 π S R 0 2 c 2 \phi'=\frac{4\pi R_0f_0}{c}-\frac{4\pi SR_0^2}{c^2} ϕ′=c4πR0f0−c24πSR02
又由于:①光速的平方做分母,对应的项可约为0;②vr远小于c;③波长*频率=光速,因此可化简为:
S
′
≈
2
S
v
r
c
S'\approx \frac{2Sv_r}{c}
S′≈c2Svr
f m ′ ≈ 2 v r λ + 2 S R 0 c ≈ f m + f d f_m'\approx \frac{2v_r}{\lambda}+\frac{2SR_0}{c}\approx f_m+f_d fm′≈λ2vr+c2SR0≈fm+fd
ϕ ′ ≈ 4 π R 0 f 0 c = 4 π R 0 λ \phi'\approx \frac{4\pi R_0f_0}{c}=\frac{4\pi R_0}{\lambda} ϕ′≈c4πR0f0=λ4πR0
为表示振动方向引入了复数,用实部和虚部表示两个互相垂直的振动方向。以圆极化为例,红色曲线是电磁波在水平方向的投影,黄色曲线是电磁波在垂直方向的投影,黑色轴是电磁波的传播方向。当冲激信号1完整的转了一圈,电磁波在空间中走了多远呢?一个波长
λ
\lambda
λ。即,电磁波在空间中转一圈
2
π
2\pi
2π,就传播了一个波长
λ
\lambda
λ,反之也成立。发射信号的目标速度信息就体现在回波信号的相位变化上。雷达信号仿真的基本原理——时延与相位的变化
从上图可以看到,余下的长度是
2
R
λ
\frac{2R}{\lambda}
λ2R的余数
r
r
r,我们表示为
r
=
2
R
−
k
λ
r=2R-k\lambda
r=2R−kλ,其中k是整数,一个
λ
\lambda
λ和一个
2
π
2\pi
2π对应,那么余下长度
r
r
r对应的相位为:
θ
=
r
λ
×
2
π
\theta=\frac{r}{\lambda}\times2\pi
θ=λr×2π
因为相位变化也具有周期性,所以也可以表示为:
θ
=
2
R
λ
×
2
π
\theta=\frac{2R}{\lambda}\times2\pi
θ=λ2R×2π
将相位信息体现在指数上,那么发射信号的相位可以表示为:
e
j
θ
=
e
j
4
π
R
λ
e^{j\theta}=e^{j\frac{4\pi R}{\lambda}}
ejθ=ejλ4πR
总之,回波信号由两部分决定:信号的时延(体现距离信息)、信号的相位变化(体现速度变化)。
只有一个chrip就可以实现测距,因为频率信息内包含了距离信息(运动目标解算出来的是模糊距离)。因为一个chrip周期很短,近似将该时间段的目标看作是静止的,因此分析速度需要从多普勒维去看。也就是说,实现目标测速,必须发送多个chrip周期。
目标的速度信息是包含在不同chrip间回波信号的相位中的,连续发送L个chrip信号,其相位信息是随着chrip个数在不断变化的,因此对回波信号按照距离维-多普勒维排列存储之后,同一列的不同行对应的是相同频率、不同相位的回波信号(同频不同相)。具有相同频率、不同初始相位的正弦信号经过FFT变换,会在相同频率处产生峰值,但峰值信号的相位不同,峰值的相位等于正弦波的初始相位。因此对多普勒维做FFT,即可提取出回波信号的相位信息,即可解算出速度。中频信号对目标微小位移的灵敏度是非常高的。
ϕ
=
4
π
R
0
λ
=
4
π
v
r
T
c
λ
⇒
v
r
=
λ
ϕ
4
π
T
c
\phi=\frac{4\pi R_0}{\lambda}=\frac{4\pi v_rT_c}{\lambda}\,\,\Rightarrow\,\,v_r=\frac{\lambda \phi}{4\pi T_c}
ϕ=λ4πR0=λ4πvrTc⇒vr=4πTcλϕ
当目标距离发生微小变化时,Range-FFT峰值相位会发生较大的变化,因此可以利用物体与两个天线的距离差引起的相位变化估算到达角(Angle of Arrival, AOA)。实现测角原理,至少使用2个接收天线RX。
设相邻两个天线之间的排布间距为d,到达角为
θ
\theta
θ,则相邻两个天线之间存在固定光程差
d
s
i
n
θ
dsin\theta
dsinθ,这个固定光程差会造成两个信道间的接收回波存在固定相位差,即:
d
s
i
n
θ
λ
=
Δ
ϕ
2
π
\frac{dsin\theta}{\lambda}=\frac{\Delta \phi}{2\pi}
λdsinθ=2πΔϕ
因此,到达角可以求得:
θ
=
a
r
c
s
i
n
(
λ
2
π
d
Δ
ϕ
)
\theta=arcsin(\frac{\lambda}{2\pi d}\Delta \phi)
θ=arcsin(2πdλΔϕ)
测速要进行RD分析。
clear; clc; close all; warning off;
%% 雷达参数设计
c = 3e8; % 光速
fc = 77e9; % 载频(77GHz)
lambda = c / fc; % 波长
B = 4e9; % 扫频带宽(4GHz)
Tchrip = 20e-6; % 扫频时宽(20us)
Nchrip = 256; % 一个frame的chrip数量
fs = Nchrip / Tchrip; % 采样率
Ns = 1024; % 单个chrip周期内的采样点数
Tframe = Tchrip * Ns; % 一个frame持续时长
S = B / Tchrip; % 扫频斜率
Rx_num = 1; % 接收天线数量
%% 测量参数计算
d_res = c / (2 * B); % 距离分辨率
d_max = (c * fs) / (2 * S); % 最大探测距离
v_max = lambda / (4 * Tchrip); % 最大不模糊速度
v_res = lambda / (2 * Nchrip * Tchrip); % 速度分辨率
%% 设置目标参数(单个目标)
d0 = 5; % 目标位置
v0 = 15; % 目标速度
rcs = 10; % 目标RCS
sigma = 0.1; % 高斯白噪声标准差
%% 产生混频信号
t = linspace(0, Tchrip, Ns);
ft = fc .* t + S .* t.^2 / 2;
St = cos(2 * pi .* ft);
Smix_frame = zeros(Nchrip, Ns);
for chrip = 1 : Nchrip
d = d0 + v0 * (t + (chrip - 1) * Tchrip);
tau = 2 .* d ./ c; % 运动目标的时延是动态变化的
Sr = zeros(1, Ns);
for target = 1 : length(d0)
fr = fc .* (t - tau(target, :)) + S * (t - tau(target, :)).^ 2 / 2;
Sr = Sr + rcs(target) * cos(2 * pi * fr) + wgn(1, Ns, sigma(target)); % 总的回波信号=所有目标的回波信号之和
end
Smix = St .* Sr;
Smix_frame(chrip, :) = Smix;
end
%% 距离多普勒分析
Nfft_v = Nchrip * 2;
Nfft_d = Ns;
x = (0 : Nfft_d - 1) / Nfft_d * Ns * d_res; % RDM横轴转换为距离
y = linspace(-v_max, v_max, Nfft_v); % RDM横轴转换为速度
FFT_2D = abs(fftshift(fft2(Smix_frame, Nfft_v, Nfft_d), 1));
figure(1); clf;
subplot(1, 2, 1); mesh(x(1:Nfft_d/2), y, FFT_2D(:, 1:Nfft_d/2)); axis('tight'); set(gca, 'fontsize', 12);
xlabel('距离(m)'); ylabel('速度(m/s)'); title('距离-多普勒2D-FFT(fft2)');
subplot(1, 2, 2); mesh(x(1:Nfft_d/2), y, FFT_2D(:, 1:Nfft_d/2)); axis('tight'); set(gca, 'fontsize', 12); view(2);
xlabel('距离(m)'); ylabel('速度(m/s)'); title('俯视图(fft2)');
锯齿波调制的FMCW雷达差拍信号的推导及分析 - 晴天_en - 博客园
雷达原理 | 用MATLAB信号处理是如何解算目标的距离和速度信息的?
干货:FMCW雷达系统信号处理建模与仿真(含matlab代码)
TI 毫米波雷达基本原理(1)——测距原理_为什么fft变换能测距-CSDN博客
TI FMCW毫米波雷达基础(2)——测速原理_doppler range fft-CSDN博客
Xiaojie雷达之路—毫米波雷达基础知识—中频信号的相位_雷达中频信号-CSDN博客
(本文完整的pdf请关注“张张学算法”,并回复“025”获取~)
本文由mdnice多平台发布
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。