%CFAR 随外部噪声功率变化而改变判决门限 维持虚警概率不变 简版
clc
clear all
close all
k=1; % 设置基本频率单位
A=25; % 脉冲串幅度
fs=100*k; %采样率
fc=10*k; %载波频率
fr=1*k; %脉冲频率
N=10; %脉冲个数
duty=1; %占空比 正比负
tao=duty/100*fs/fr;
t=1/fs:1/fs:N/fr; %N个周期
ps=A*square(2*pi*fr*t,duty); %脉冲串
for i=1:length(ps)
if ps(i)==-A;
ps(i)=0;
end
end
c=cos(2*pi*fc*t); %载波
%调制
%m=c.*ps;
m=ps;%直接发射常规脉冲
figure(1)
n=t*fr;
plot(n,ps,n,m);
xlabel('t/周期');ylabel('transmitter');title('发射信号时域波形图')
%模拟信道 叠加快起伏杂波以及高斯白噪声
noi=wgn(1,length(m),0); %0dBm白噪声
fnoi=noi;
%在N/2-1至N/2+1距离门内模拟快杂波
for i=length(ps)/N*(N/2-1)+10:length(ps)/N*(N/2+1)+10;
fnoi(i)=4+fnoi(i);
end
figure(2)
plot(n,fnoi);grid on
xlabel('t/周期');ylabel('白噪声加快杂波/幅度');title('模拟快杂波背景')
hold on
%第N/2个距离门内收到回波
mr=zeros(1,length(ps));
mr(length(ps)/N*(N/2-1)+1:length(ps)/N*(N/2))=m(length(ps)/N*(N/2-1)+tao+10:length(ps)/N*(N/2)+tao+9);%max(fnoi).*
mr=mr+fnoi;
mr=mr+(-min(mr)).*ones(1,length(mr));%负电平抬升上去
%滑窗设计
Pfa=10^(-4); %虚警概率
K=2; %保护单元长度
LI=7; %滑窗长度
T=Pfa^(-1/LI)-1;
filmr=zeros(1,length(mr));
for i=1:length(filmr)
if (i-2*(LI+K)>0)&&((i+LI+K)<length(filmr))
filmr(i-LI-K)=(sum(mr((i-2*(LI+K)):i-LI-K-K-1))+sum(mr((i-LI):i)))/(2*LI);
end
end
%filmr(1:LI+K)=filmr(LI+K+1);
%filmr((length(filmr)-2*(LI+K)):end)=filmr(length(filmr)-2*(LI+K)-1);
TZ=filmr*T;
mr=20*log10(abs(mr)); %取对数
TZ=20*log10(abs(TZ));
figure(4)
plot(n,mr,'r')
hold on
plot(n,TZ,'b');
xlabel('t/周期');ylabel('功率/dB');title('CFAR处理图')