📄 main.m
字号:
%
%主程序
%
clear all;
clc;
n=5; %产生n个回波信号
zp=20e6; %用于产生中频10M
x=zeros(n,3000);
[x,b2,f]=hbxh(n); %生成回波信号
[myxs1,B2]=myxs(b2,f); %取得脉压系数
for i=1:n
X1=x(i,:); %逐个存储回波信号
y=gf1(X1); %高频放大
Y=abs(fft(y)); %幅频响应
hp=hunpin(y,zp,0.1,0.3); %混频
hp=4.*hp;
[xwjb1,xwjb2]=xwjb(real(hp)); %相位检波
% figure;
% subplot(211);
% title('llalalalldllfg');
% plot(abs(fft(xwjb1(1,:))));
% plot(abs(fft(xwjb2(1,:))));
[ad1,fad1]=a2d(xwjb1,f); % A/D转换
[ad2,fad2]=a2d(xwjb2,f);
X2=fft((ad1)+j*(ad2)); %脉冲压缩
% mcys1=X2.*myxs1; %时域卷积,频域相乘
mcys1=X2.*myxs1.*hamming(1500)';
mcys=ifft(mcys1); %变换回时域
hc(i,:)=mcys; %缓存信号
end
figure;
subplot(211);
plot(real(X1));
title('回波信号');
subplot(212);
plot(f,abs(fft(X1)));
figure;
subplot(211);
plot(real(y));
title('高频放大');
subplot(212);
plot(f,Y);
figure;
subplot(211);
plot(real(hp));
title('混频');
subplot(212);
plot(f,abs(fft(hp)));
figure;
subplot(211);
plot(real(xwjb1));
title('相位检波I路');
subplot(212);
plot(real(xwjb2));
title('相位检波Q路');
figure;
subplot(211);
plot(real(ad1));
title('AD转换')
subplot(212);
plot(real(ad2));
figure;
subplot(211);
plot(abs(ad1+j*ad2));
title('回波包络');
subplot(212);
plot(abs(mcys));
title('脉冲压缩');
for i=1:n
hc1((i-1)*1500+1:i*1500)=hc(i,:); %未对消前
end
mti=mti(hc,n); %动目标检测(MTI)
mti(1,:)=0;
YMTI=zeros(1,1500*(n-1));
for i=1:n-1
YMTI((i-1)*1500+1:i*1500)=mti(i+1,:); %对消后
end
figure;
subplot(211)
plot(abs(hc1))
title('未对消')
subplot(212)
plot(abs(YMTI))
title('MTI一次对消')
ysum=sum(mti); %积累
abst=abs(ysum); %取模
figure;
plot(abst);
title('取模+积累')
[cfar,cfar1,cfarn]=cfar(abst,16); %恒虚警(CFAR),前8后8
figure;
subplot(211)
plot(cfarn,cfar);
title('恒虚警CFAR')
subplot(212)
plot(cfarn,cfar1);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -