资源简介
梯形调制LFMCW的目标解算流程,包括发射信号以及回波信号的建模,基带信号处理过程,以及最后目标参数的解算和误差分析
代码片段和文件信息
function [goast_nummiss_numerr_R err_V]=trapezoid_typical(NoisePowerTarget_num)
%------------------------------------------------------------%
%% 雷达信号基本参数
C = 3E8;
Radar.f0 = 77E9; % 载频 77GHz
Radar.lambda = C/Radar.f0; % 波长
Radar.T =4e-3;
Radar.B = 2E8; % 信号带宽
Radar.mu=Radar.B / Radar.T; %调制斜率
%Radar.Fs = 2*Radar.B; % 采样率
% Radar.Fs =Radar.B; % 采样率
Radar.Single = 2e8; % 单频信号
basic_par.windows_en=1; %是否加窗
%% 信号分辨力
R_max=160;
V_max=83.34;
fd_max=2*V_max/Radar.lambda ;
fr_max= Radar.mu * 2 * R_max / C;
fb_max = fr_max + fd_max;
fs=2*fb_max; %做fft的采样频率
NFFT =2048;
delta_f = 1/Radar.T;
delta_r = C/(2*Radar.B);
delta_v = Radar.lambda /(2*Radar.T);
f_res = fs/NFFT;
%% 产生发射波形
Radar.Fs =fs; % 采样率 (为了降低运行时间设定)
% Radar.Fs =2e8;
Radar.Ts = 1/Radar.Fs;% 采样间隔
t=0:Radar.Ts :3*Radar.T-Radar.Ts;
Tx_Sig =exp(1i*2*pi*(Radar.f0.*t + Radar.mu/2*t.^2 .*(t + Radar.Single *t.*(t>=Radar.T).*(t<2*Radar.T ) ...
+ (-Radar.mu/2 * t.^2 ) .*(t>=2*Radar.T)));
%---- 多个运动目标组合(速度距离随机产生) ---- %
% seed =24;
% rng(seed); seed = seed + 1;
%
Target.Num=Target_num;% 目标个数
for i=1:Target.Num
Target.Item(i).Range =R_max*rand(11); % 距离 (米)
Target.Item(i).Velocity =random(‘uniform‘-838311); %* delta_v;% 速度(米/秒)
Target.Item(i).Amp = 0.5*rand(11) + 0.5;
Target.Item(i).Single = 2*Target.Item(i).Velocity/Radar.lambda;
Target.Item(i).Up = Radar.mu*2*Target.Item(i).Range/C - Target.Item(i).Single;
Target.Item(i).Down = Radar.mu*2*Target.Item(i).Range/C + Target.Item(i).Single;
end
%% 产生目标的回波信号
Rx_Sig=0;
% parpool(4);
% parfor i = 1 : Target.Num
for i = 1 : Target.Num
tempRx_Sig = [];
t=0:Radar.Ts :3*Radar.T-Radar.Ts;
tao = 2 * Target.Item(i).Range / C; % 目标延时
fd = 2 * Target.Item(i).Velocity / Radar.lambda;
tempRx_Sig = Target.Item(i).Amp * exp(1i*2*pi*( (Radar.f0 + fd).*(t-tao)+ ...
Radar.mu/2*(t-tao).^2 .*(t-tao=Radar.T) ...
.*(t-tao < 2*Radar.T ) +(-Radar.mu/2*(t-tao).^2 .*((t-tao)>=2*Radar.T) )));
Rx_Sig = Rx_Sig + tempRx_Sig;
end
% delete(gcp(‘nocreate‘));
% 加噪声
% rng(seed);
% NoisePower=-20; %(dB);%噪声功率
SystemNoise=normrnd(010^(NoisePower/10)1length(Rx_Sig))+...
1i*normrnd(010^(NoisePower/10)1length(Rx_Sig));
Rx_Sig = Rx_Sig + SystemNoise;
% Rx_Sig = Rx_Sig;
%% 差频接收处理
IF_Sig = conj(Tx_Sig) .* (Rx_Sig); %利用发射波形的共轭对接收波形进行去调频处理得到中频信号
n_T = fix(Radar.T * Radar.Fs); % Radar.T内的点数
number = fix(Radar.Fs/fs); % 采样间隔点数
Sam_tri_up = IF_Sig(1:number:n_T);
Sam_single = IF_Sig(n_T+1:number:2*n_T);
Sam_tri_down= IF_Sig(2*n_T+1:number:3*n_T);
%加窗
% if basic_par.windows_en
- 上一篇:一维有序序列聚类分析源代码
- 下一篇:MATLAB目标识别
评论
共有 条评论