?? fir_mtd16.m
字號:
clear;
clc;
close all;
fr=1.6e3;%脈沖重復頻率
tr=1/fr;%脈沖重復周期
fs=1e6;%采樣頻率
ts=1/fs;%采樣周期
f_doppler=800;%多普勒頻率
t=0:1/fs:tr-1/fs;%一個脈沖重復時間軸
x=ones(1,2);%回波中目標的回波
n=length(x);
N=fs/fr;
x_1=[zeros(1,120),x,zeros(1,N-120-n)];%一個脈沖回波
x_16=repmat(x_1,1,16);%16個脈沖回波,其中兩個為填充脈沖,一個相關處理間隔為16*tr
t_16=(0:length(x_16)-1)*ts;
s_doppler=exp(j*2*pi*f_doppler*t_16);%多普勒調制信號
%s_doppler=cos(2*pi*f_doppler*t_16);%多普勒調制信號
randn('state', sum(100*clock));%Initialize randn to a different state each time
s_noise_i=0.1*randn(1,length(s_doppler));
randn('state', sum(100*clock));%Initialize randn to a different state each time
s_noise_q=0.1*randn(1,length(s_doppler));
y=x_16.*s_doppler+s_noise_i+s_noise_q*j;%附帶多普勒的動目標回波
%y=x_16;
figure('Name','附帶多普勒的動目標回波顯示')
subplot(211)
plot(t_16,real(y));
subplot(212)
plot(t_16,imag(y));
%%%%%%%%%%%%%%%%%%%% 產生16個FIR濾波器的濾波器組 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
a0=[ 5.93141234807e-008,4.347755861717e-007,1.303747145161e-006,2.772196904973e-006,...
4.74857800029e-006,6.910166596115e-006,8.774077218793e-006,9.856915099804e-006,...
9.856915099804e-006,8.774077218793e-006,6.910166596115e-006,4.74857800029e-006,...
2.772196904973e-006,1.303747145161e-006,4.347755861717e-007,5.93141234807e-008]*1e8;
n=1:16;
f=linspace(0.5,1.5,16)*pi;
fn=f'*n;
fnexp=exp(j*fn);
a016=repmat(a0,1,16);
a016=reshape(a016,16,16)';
b=(a016.*fnexp);
%%%%%%%% FIR濾波器的濾波器組的頻率響應曲線 %%%%%%%%%%%%
figure('Name','FIR濾波器的濾波器組的頻率響應曲線');
for n=1:16
freqz(b(n,:),1,1024,'whole',fr)
hold on;
end
axis([0 fr -50 100]);
%%%%%%%% FIR濾波器的濾波器組的頻率響應曲線 %%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%% 產生16個FIR濾波器的濾波器組 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
yt=reshape(y,length(y)/16,16)';
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 采用FIR進行MTD處理 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
M=16;
L=length(yt);
for i=1:L
s_temp=yt(:,i);
s_mtd(:,i)=b*s_temp;
end
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 采用FIR進行MTD處理 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%% MTD處理結果顯示 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%% MTD各通道結果顯示 %%%%%
t=0:ts:(length(s_mtd)-1)*ts;
figure('Name','MTD各通道結果顯示 1')
subplot(241),plot(t,abs(s_mtd(1,:))),title('(第1通道)');
subplot(242),plot(t,abs(s_mtd(2,:))),title('(第2通道)');
subplot(243),plot(t,abs(s_mtd(3,:))),title('(第3通道)');
subplot(244),plot(t,abs(s_mtd(4,:))),title('(第4通道)');
subplot(245),plot(t,abs(s_mtd(5,:))),title('(第5通道)');
subplot(246),plot(t,abs(s_mtd(6,:))),title('(第6通道)');
subplot(247),plot(t,abs(s_mtd(7,:))),title('(第7通道)');
subplot(248),plot(t,abs(s_mtd(8,:))),title('(第8通道)');
figure('Name','MTD各通道結果顯示 2')
subplot(241),plot(t,abs(s_mtd(9,:))),title('(第9通道)');
subplot(242),plot(t,abs(s_mtd(10,:))),title('(第10通道)');
subplot(243),plot(t,abs(s_mtd(11,:))),title('(第11通道)');
subplot(244),plot(t,abs(s_mtd(12,:))),title('(第12通道)');
subplot(245),plot(t,abs(s_mtd(13,:))),title('(第13通道)');
subplot(246),plot(t,abs(s_mtd(14,:))),title('(第14通道)');
subplot(247),plot(t,abs(s_mtd(15,:))),title('(第15通道)');
subplot(248),plot(t,abs(s_mtd(16,:))),title('(第16通道)');
%%%%% MTD各通道結果顯示 %%%%%
%%%%% MTD距離維結果顯示 %%%%%
figure('Name','MTD距離維結果顯示');
plot(max(abs(s_mtd)))
%%%%% MTD距離維結果顯示 %%%%%
%%%%% MTD速度維結果顯示 %%%%%
figure('Name','MTD速度維結果顯示')
plot(1:16,(max(abs(s_mtd'))))
%%%%% MTD速度維結果顯示 %%%%%
%%%%%%%%%%%%%%%%%%%% MTD處理結果顯示 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -