1 簡介
計算機和仿真技術的發展促進了建模和計算機仿真技術的迅速發展,使計算機仿真技術成為一門獨立學科得到日益發展,并廣泛應用于各種科學研究中,本論文是用PC機仿真研究PD雷達干擾和抗干擾性能評估中的數據處理和顯示控制系統部分,整個項目是我國電子對抗領域首次完整地為研究PD雷達系統及其干擾和抗干擾性能評估所建立的基于PC機的仿真研究平臺。顯然,這對于我國電子對抗領域開展相關研究具有重要意義。 論文論述了PD雷達系統的數據處理、顯示器以及雷達性能的測試與評估這些模塊的原理,建立了數學模型, 設計了相應的仿真軟件,給出了仿真結果。 第一章扼要論述了系統仿真技術的理論、方法以及雷達仿真技術的特點,給出了雷達系統仿真的通用模型。 第二章扼要論述了脈沖多普勒(PD)雷達體制和仿真軟件的整體設計思想,給出了PD雷達的定義、雜波譜、分類及工作特點,闡述了雷達測距、測速的原理和方法,并且給出了仿真方案的流程圖和仿真軟件中各個模塊的主要功能。 第三章重點敘述了脈沖多普勒雷達數據處理的關鍵技術,包括數據錄取時距離和速度的解模糊;PD雷達工作在搜索狀態下目標航跡的起始,航跡的更新,航跡的消失,以及目標的編批和最優先級目標的判斷,其中航跡更新中主要講述了跟蹤濾波和點跡—航跡關聯的原理及實現;PD雷達工作在跟蹤狀態下的單目標跟蹤原理。 第四章詳細介紹了雷達終端顯示器的分類,以及在本仿真試驗中要求的雷達顯示畫面、數據顯示畫面和人機界面的設計。 第五章介紹了雷達技術和戰術性能測試軟件的方法和實現。 第六章給出了PD雷達系統仿真軟件的運行結果及其性能統計分析結果。 整個軟件使用Matlab作為開發工具,以PC機作為運行平臺。
2 部分代碼
clear all
clc
close all
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? 雷達系統仿真參數? ? %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
c=3e8;? ? ? ? ? ? ? ? ? ? ? ? ? ?% 光速
k=1.38e-23;? ? ? ? ? ? ? ? ? ? ? % 玻爾茲曼常數
Pt=20e3;? ? ? ? ? ? ? ? ? ? ? ? ?% 發射功率【W】
Fc=1e9;? ? ? ? ? ? ? ? ? ? ? ? ? % 中心頻率【Hz】
Wavelength=c/Fc;? ? ? ? ? ? ? ? ?% 工作波長【m】
Tp=8e-6;? ? ? ? ? ? ? ? ? ? ? ? % 脈沖寬度【微秒】
Fr=[8e3 11e3 13e3];? ? ? ? ? ? ? ? ? ? ? ? ?% 脈沖重復頻率【Hz】
B=10e6;? ? ? ? ? ? ? ? ? ? ? ? ? ?% 帶寬【Hz】
Fs=20e6;? ? ? ? ? ? ? ? ? ? ? ? ?% 采樣率【Hz】
F=10^(6.99/10);?% 噪聲系數
K=B/Tp;? ? ? ? ? ? ? ? ? ? ? ? ? % 調頻率【Hz】
Tr=1./Fr;% 脈沖重復周期【秒】
R_T=Tr*c/2;%最大模糊距離
Delta_t=1/Fs;? ? ? ? ? ? ? ? ? ? % 時域采樣點時間間隔【秒】
vv=Fr*Wavelength/2;? %最大模糊速度
D=5;? ? ? ? ? ? ? ? ? ? ? ? ? ? ?% 天線孔徑【m】
Ae=1*pi*(D/2)^2;? ? ? ? ? ? ? ? ?% 天線有效面積【m^2】
% G=4*pi*Ae/Wavelength^2;? ? ? ? ? % 天線增益
G=10^(32/10);
BeamWidth=0.88*Wavelength/D;? ? ?% 天線3dB波束寬度【deg】
BeamShift=0.8*BeamWidth/2;? ? ? ? ?% A、B波束與天線軸向的夾角【deg】
Theta0=30*pi/180;? ? ? ? ? ? ? ? % 波束主瓣初始指向【度】
Wa=0;2*pi/1;? ? ? ? ? ? ? ? ? ? ? ?% 天線波束轉速【rad/sec】
Num_Tr_CPI=64;? ? ? ? ? ? ? ? ? ? ? % CPI周期數
R_set=[70e3,7e3,10e3];? ? ? ? ? % 目標距離【m】? ? ? ? ?
RCS=[1,1,1];? ? ? ? ? ? ? ? ?% 目標平均后向散射截面積【m^2】? ?
Theta_target_set=30.1*pi/180; % 目標方位角【deg】
V_set=[2100,1000,900];? ? ? ? ? ? ? ? % 目標速度【m/s】?
for a=1:length(Fr)
? ?R_A(a)=mod(R_set(1),R_T(a));%判斷是否出現模糊
end
for a=1:length(Fr)
? ?v_A(a)=mod(V_set(1),vv(a));
end? ??
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? ? 產生發射信號? ? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
s=lfm(Pt,Tp,Fr,B,Fs,G,Num_Tr_CPI);
figure
s_plot(s);
title('雷達發射信號')
xlabel('time [sec]')
ylabel('magnitude [v]')
print(gcf,'-dbitmap','F:\仿真圖片\雷達發射信號.bmp')? ?% 保存為png格式的圖片。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? ? 目標回波? ? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[s_A s_B] = target(G,Fc,Fs,Fr,Num_Tr_CPI,Theta0,Wa,BeamWidth,s,R_set,V_set,RCS,Theta_target_set);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? ? 仿真熱噪聲? ? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[s_A s_B] = nose(s_A,s_B,k,B,F);
figure
subplot(2,1,1)
s_plot(s_A);
title('A通道回波信號')
xlabel('time [sec]')
ylabel('magnitude [v]')
subplot(2,1,2)
s_plot(s_B);
title('B通道回波信號')
xlabel('time [sec]')
ylabel('magnitude [v]')
print(gcf,'-dbitmap','F:\仿真圖片\雷達回波信號.bmp')? ?% 保存為png格式的圖片。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? ? 和差波束調制? ? %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[s_Sigma s_Delta] =sigma_delta(s_A,s_B);
figure
subplot(2,1,1)
s_plot(s_Sigma);
title('和通道回波信號')
xlabel('time [sec]')
ylabel('magnitude [v]')
subplot(2,1,2)
s_plot(s_Delta);
title('差通道回波信號')
xlabel('time [sec]')
ylabel('magnitude [v]')
print(gcf,'-dbitmap','F:\仿真圖片\和差調制回波信號.bmp')? ?% 保存為png格式的圖片。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? 匹配濾波(脈沖壓縮)? %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%]
[s_Sigma_rc s_Delta_rc] = match(s_Sigma,s_Delta,Tr,Fs,K,Num_Tr_CPI);
figure
s_plot(s_Sigma_rc);
title('和通道匹配濾波結果')
xlabel('time [sec]')
ylabel('magnitude [v]')
print(gcf,'-dbitmap','F:\仿真圖片\匹配濾波結果.bmp')? ?% 保存為png格式的圖片。
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? 多普勒濾波(脈沖積累)? %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[ S_Sigma_a S_Delta_a] =mtd(s_Sigma_rc,s_Delta_rc,Tr,Fs,Num_Tr_CPI );
S_Sigma_abs=cell(1,3);
S_Delta_abs=cell(1,3);
for m=1:length(Fr)
? S_Sigma_abs{1,m}=abs(S_Sigma_a{1,m});
? S_Delta_abs{1,m}=abs(S_Delta_a{1,m});??
end
figure
s_plot(S_Sigma_abs);
title('和通道MTD結果')
xlabel('time [sec]')
ylabel('magnitude [v]')
print(gcf,'-dbitmap','F:\仿真圖片\MTD結果.bmp')? ?% 保存為png格式的圖片。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ?CFAR(恒虛警檢測)? %%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[ S_out] = CFAR(S_Sigma_a,Num_Tr_CPI );
figure
s_plot(S_out);
title('和通道CFAR結果')
xlabel('time [sec]')
print(gcf,'-dbitmap','F:\仿真圖片\CFAR結果.bmp')? ?% 保存為png格式的圖片。
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? 目標確定,距離、多普勒測量? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
[s_R s_D Target_R Target_D target_num Target_Range_all Target_Doppler_all ] = measure(S_out,S_Sigma_a,Num_Tr_CPI ,Fs,Tp,Fr,Wavelength);
figure
subplot(2,1,1)
s_plot_B(s_R);
title('距離中心定位后結果')
xlabel('time [sec]')
ylabel('距離 [m]')
subplot(2,1,2)
s_plot_B(s_D);
title('速度中心定位后結果')
xlabel('time [sec]')
ylabel('速度 [m/s]')
print(gcf,'-dbitmap','F:\仿真圖片\距離與多普勒定心.bmp')? ?% 保存為png格式的圖片。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? 解距離模糊? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
v_TT=Fr*Wavelength/2;
R_TT=Tr*c/2;
for m=1:length(Fr)
? ? v_aa(m)=mod(V_set(1),v_TT(m));
? ? R_aa(m)=mod(R_set(1),R_TT(m));
end
R_am=[Target_R{1,1}(1),Target_R{1,2}(1),Target_R{1,3}(1)];
[ R] = R_ambity(Fr,R_am );
R_plot=[zeros(1,2e3) R zeros(1,500)];
figure
subplot(2,1,1)
plot(R_plot,'LineWidth',2)
title('解距離模糊結果')
ylabel('距離 [m]')
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? 解速度模糊? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
V_am=[Target_D{1,1}(1),Target_D{1,2}(1),Target_D{1,3}(1)];
?[V] =? V_ambity( Fr,V_am );
V_plot=[zeros(1,2e3) V zeros(1,500)];
subplot(2,1,2)
plot(V_plot,'LineWidth',2)
title('解速度模糊結果')
ylabel('速度 [m/s]')
print(gcf,'-dbitmap','F:\仿真圖片\解模糊結果.bmp')? ?% 保存為png格式的圖片
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%? ? ? ?單脈沖測角? ? ? ?%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% [angle_aa angle_result ] =angel_measure(S_Sigma_a,S_Delta_a,BeamWidth,BeamShift,Target_Range_all,Target_Doppler_all,Theta0,G);
[angle_result ] =angel_measure(S_Sigma_a,S_Delta_a,BeamWidth,BeamShift,Target_Range_all,Target_Doppler_all,Theta0,G);
[angle_aa ] =angel_measure(S_Sigma_a,S_Delta_a,BeamWidth,BeamShift,Target_Range_all,Target_Doppler_all,Theta0,G);
figure?
s_plot_B(angle_result);
title('和差通道測角結果')
xlabel('time [sec]')
ylabel('角度 [°]')
print(gcf,'-dbitmap','F:\仿真圖片\測角結果.bmp')? ?% 保存為png格式的圖片。
figure
angle_s=(angle_aa{1,1}(1)+angle_aa{1,2}(1)+angle_aa{1,3}(1))/3;
angle_plot=[zeros(1,2e3) angle_s zeros(1,500)];
plot(angle_plot,'LineWidth',2)
title('重頻測角取平均')
ylabel('角度 [°]')
print(gcf,'-dbitmap','F:\仿真圖片\重頻測角取平均.bmp')? ?% 保存為png格式的圖片
aaa=1;
3 仿真結果
4 參考文獻
[1]劉揚, 郭鋒, 顧宗山,等. 基于方向圖的機載PD雷達中重頻設計[J]. 雷達科學與技術, 2020, 18(1):5.
博主簡介:擅長智能優化算法、神經網絡預測、信號處理、元胞自動機、圖像處理、路徑規劃、無人機等多種領域的Matlab仿真,相關matlab代碼問題可私信交流。
部分理論引用網絡文獻,若有侵權聯系博主刪除。完整代碼獲取關注微信公眾號天天matlab