?? 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 + -