基于13位巴克码和线性调频混合调制信号MTI,MTD以及CFAR的matlab仿真

up目录

一、理论基础

二、核心程序

三、测试结果


一、理论基础

巴克码序列是相位编码信号的一种,具有理想的自相关特性。巴克码的自相关函数的主峰和旁瓣均为底边宽度为 2T 的等腰三角形 ,主瓣峰值是 旁瓣峰值 的13 倍。能够找到的巴克码只有 7 种,子脉冲长度分别为 :2,3 ,4 ,5 ,7 ,11 ,13 。已经证明巴克码的最大长度为 13 位 。

巴克码是R.H.巴克于50年代初提出的一种特殊的二进制码组。它是一个非周期序列,并且具有非常良好的自相关特性,可用于数据帧的帧头。其定义如下:一个n nn位的巴克码序列为{ x 1 , x 2 , x 3 , … , x n } \{ {x_1},{x_2},{x_3}, \ldots ,{x_n}\}{x

 

 

 

巴克码信号进行 FFT 变换(先补零)和共轭变换后可得到巴克码信号匹配滤波器的传输函数。信号+噪声进行 FFT 变换(先补零)后得到其频谱函数,与传输函数相乘后即为频率响应,再经 IFFT 变换输出时域波形。

仿真结果表明 ,巴克码信号经匹配滤波器后,主瓣幅度为副瓣幅度的 13 倍,即 :副瓣电平为 223 dB ,脉冲宽度压缩为原来的 1/13。采用组合巴克码的方法,即对 每一个码元再进行编码,可进一步提高压缩比。

MTI是利用杂波抑制滤波器来抑制杂波,提高雷达信号的信杂比,以利于运动车辆目标检测的技术。MTI滤波器利用杂波与运动目标的多普勒频率的差异实现抑制静止目标和静物杂波的目的。

动目标检测(MTD)是使用窄带多普勒滤波器将不同速度的目标分离出来的方法。

恒虚警检测技术(CFAR,Constant False-Alarm Rate)是雷达系统在保持虚警概率恒定条件下对接收机输出的信号与噪声作判别以确定目标信号是否存在的技术。恒虚警检测器首先对输入的噪声进行处理后确定一个门限,将此门限与输入端信号相比,如输入端信号超过了此门限,则判为有目标,否则,判为无目标。一般信号由信号源发出,在传播的过程中受到各种干扰,到达接收机后经过处理,输出到检测器,然后检测器根据适当的准则对输入的信号做出判决。

二、核心程序

%%%%%%%%%%%%%%%%%%%%% MTI %%%%%%%%%%%%%%%%%%
S_MTI_result = zeros(N_echo_frame-2,NFFT);
for i=1:N_echo_frame-2
S_MTI_result(i,:)=s_pc_result(i,:)+s_pc_result(i+2,:)-2*s_pc_result(i+1,:);
end
S_MTI_result_1=S_MTI_result';
S_MTI_result_1=reshape(S_MTI_result_1,1,(N_echo_frame-2)*NFFT);
figure,subplot(2,1,1),plot((0:ts:(N_echo_frame-2)*NFFT*ts-ts),real(S_MTI_result_1));
xlabel('t(单位:S)'),title('固定杂波对消后结果(实部)');
subplot(2,1,2),plot((0:ts:(N_echo_frame-2)*NFFT*ts-ts),imag(S_MTI_result_1));
xlabel('t(单位:S)'),title('固定杂波对消后结果(虚部)');
clear S_MTI_result_1;
%%%%%%%%%%%%%%%%%%%%% MTD处理和求模 %%%%%%%%%%%%%%%%%%
S_MTD_result_1 = fft(S_MTI_result,N_echo_frame-2);
S_MTD_result=abs(max(S_MTD_result_1));
figure,plot((0:ts:NFFT*ts-ts),S_MTD_result);
xlabel('t(单位:S)'),title('MTD处理后求模结果(信号最大通道)');
%%%%%%%%%%%%%%%%%%%%% CFAR处理 %%%%%%%%%%%%%%%%%%
cfar_result = zeros(1,NFFT);
cfar_result(1,1)=S_MTD_result(1,1)/(sqrt(2)/pi*mean(S_MTD_result(1,2:17)));
% 第1点恒虚警处理的噪声均值由其后面的16点的噪声决定
for i=2:16
% 第2点到第16点恒虚警处理的噪声均值由其前面和后面16点的噪声共同决定
noise_mean=sqrt(2)/pi*(mean(S_MTD_result(1,1:i-1))+mean(S_MTD_result(1,i+1:i+16)))/2;
cfar_result(1,i)=S_MTD_result(1,i)/noise_mean;
end


三、测试结果

使用matlab2021a仿真测试结果如下所示:

 

 

 

 

 

 

 

 

 

 

 

 

 

 up0008

 

 

posted @ 2022-12-05 17:54  fpga和matlab  阅读(510)  评论(0编辑  收藏  举报