雷达系统设计MATLAB仿真-雷达基础导论(1)

  •  一般来说,以L表示的雷达损耗会降低总的SNR,所以:

下面用MATLAB进行仿真

利用函数radar_eq.m 调用语法为:

[snr]=radar_eq(pt,freq,g,sigma,te,b,nf,loss,range)

 

函数“radar _eq.m”的设计使它对于输人“距离”,可以接受单个数值,或包含很多距离值的矢量。下图为一些典型曲线,这个程序使用了函数"radar _eq.m",默认输入如下:峰值功率Pt= 1.5 MW ,工作频率f0=5.6 GHz,天线增益G=45 dB,有效温度Te=290K,雷达损失L=6 dB,噪声系数F=3 dB。雷达带宽B=5 MHz。雷达最小和最大检测距离是Rmin = 25 km和Rmax = 165 km。假定目标截面积σ=0.1 m2

  • radar _eq.m代码
function[snr]=radar_eq(pt,freq,g,sigma,te,b,nf,loss,range)
c=3.0e+8;%光速
lambda=c/freq;%波长
p_peak=10*log10(pt);%将峰值功率转化为分贝值dB
lambda_sqdb=10*log10(lambda^2);%将波长的平方转化为分贝值dB
sigmadb =10*log10(sigma); %将sigma转为dB
four_pi_cub = 10*log10((4.0*pi)^3); %将(4pi)^3转为dB
k_db =10*log10(1.38e-23); % Boltzman's constant in dB
te_db =10*log10(te); % noise temp. in dB
b_db = 10*log10(b);% bandwidth in dB
range_pwr4_db =10*log10(range.^4);% vector of target range^4 in dB
% Implement Equation 雷达距离方程
num =p_peak +g+g+lambda_sqdb + sigmadb;
den = four_pi_cub +k_db +te_db+b_db +nf + loss + range_pwr4_db;
snr = num - den;
return
  • 程序代码
close all
clear all
pt = 1.5e+6; % peak power in Watts
freq = 5.6e+9; % radar operating frequency in Hz
g = 45.0; % antenna gain in dB
sigma = 0.1; % radar cross section in m squared
te = 290.0; % effective noise temperature in Kelvins
b = 5.0e+6;% radar operating bandwidth in Hz
nf = 3.0; %noise figure in dB
loss = 6.0; % radar losses in dB
range = linspace(25e3,165e3,1000); % traget range 25 -165 Km,1000 points
snr1 = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range);
snr2 = radar_eq(pt, freq, g, sigma/10, te, b, nf, loss, range);
snr3 = radar_eq(pt, freq, g, sigma*10, te, b, nf, loss, range);
% plot SNR versus range
figure(1)
rangekm = range./ 1000;%换算成KM
plot(rangekm,snr3,'k',rangekm,snr1,'k -.', rangekm,snr2, 'k:')
grid
legend('\sigma =0 dBsm', '\sigma =-10dBsm', '\sigma=-20 dBsm')
xlabel('Detection range - Km');
ylabel('SNR - dB');
snr1 = radar_eq(pt, freq, g, sigma, te, b, nf, loss, range);
snr2 = radar_eq(pt*.4, freq, g, sigma, te, b, nf, loss, range);
snr3 = radar_eq(pt*1.8,freq, g, sigma, te, b, nf, loss, range);
figure (2)
plot(rangekm,snr3,'k',rangekm,snr1,'k -.', rangekm,snr2,'k:')
grid
legend('Pt=2.16 MW','Pt=1.5 MW','Pt= 0.6MW')
xlabel('Detection range - Km');
ylabel('SNR - dB');
  • 仿真图:

 

另一方面,也可以修改雷达方程来计算对于给定的检测距离为获得一定的SNR 所需要的脉冲宽度。在这种情况下,雷达方程可以写为

  • 程序代码
% Use this program to reproduce Fig. 1.13 of text.
close all
clear all
pt = 1.e+6; % peak power in Watts
freq = 5.6e+9; % radar operating frequency in Hz
g = 40.0; % antenna gain in dB
sigma = 0.1; % radar cross section in m squared
te =300.0; % effective noise temperature in Kelvins
nf = 5.0; %noise figure in dB
loss = 6.0; % radar losses in dB
range = [75e3,100e3,150e3]; % three range values
snr_db = linspace(5,20,200); % SNR values from 5 dB to 20 dB 200 points
snr = 10.^(0.1.*snr_db); % convert snr into base 10
gain = 10^(0.1*g); %convert antenna gain into base 10
loss = 10^(0.1*loss); % convert losses into base 10
F = 10^(0.1*nf); % convert noise figure into base 10
lambda = 3.e8 / freq; % compute wavelength
% Implement Eq.(1.57)
den = pt * gain * gain * sigma * lambda^2;
num1 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(1)^4 .* snr;
num2 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(2)^4 .* snr;
num3 = (4*pi)^3 * 1.38e-23 * te * F * loss * range(3)^4 .* snr;
tau1 = num1 ./ den ;
tau2 = num2 ./ den;
tau3 = num3 ./ den;
% plot tau versus snr
figure(1)
semilogy(snr_db,1e6*tau1,'k',snr_db,1e6*tau2,'k -.',snr_db,1e6*tau3,'k:')
grid
legend('R = 75 Km','R = 100 Km','R = 150 Km')
xlabel ('Minimum required SNR - dB');
ylabel ('\tau (pulse width) in \mu sec');
  • 仿真图:

当进行雷达仿真时,脉冲宽度的选择是非常有用的。雷达系统经常使用有限数量的脉冲宽度(波形)来实现所有指定的工作模式。这些波形中的一些用来搜索和检测,另一些可能用于跟踪,同时有限数量的宽带波形可能用于分辨的目的。

雷达散射截面积(Radar Cross Section, RCS)

一旦计算了所要求的SNR,可以使用上图和对应的公式寻找最合适的脉冲(或波形)来获得所要求的SNR(或等效成所要求的PD)。对于在特定检测距离上的特定RCS数值,经常可能出现没有可用的雷达波形能够保证所要求的最小SNR的情况。在这种情况下,雷达必须一直等到目标在距离上足够接近时再建立起检测,另外就是使用脉冲积累(相干或非相干)。

  • 雷达参考距离

很多雷达设计问题可以根据雷达参考距离Rref推导或计算,其通常由雷达最终用户提供。它简单描述了这样一个距离,在此距离上,对于预先确定的目标截面积σref ,使用规定的参考脉冲宽度τref ,必须达到某个称为SNRref的SNR数值。雷达参考距离的计算假定目标位于天线波束内最大增益所定义的直线上(天线的法线)。这条直线通常称为雷达视线,如图1.14所示。

 在参考距离上的雷达方程为:

对SNR、RCS和脉冲宽度的任意其他组合,在任意其他探测距离上的雷达方程为

其中,附加的损失项Lp的引人是考虑到非参考目标可能不在雷达视线上,以及考虑到与特定场景相关的其他损失。上式的其他形式可以用SNR表示。更准确的表示为

例如,考虑上―节描述的雷达,此时,定义σref = 0.1 m2,Rref = 86 km,以及 SNRref = 20 dB。参考脉冲宽度是τref =0.1 us。使用上式,对于RCS为σ = 0.2 m2,的目标,计算在R= 120 km处的SNR。假定Lp=2 dB相等,得到(SNR )120km = 15.2 dB。

计算过程为:

  • 搜索(警戒)

 

也就是对下面式子做仿真

  •  power_aperture.m
function PAP = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle)
% This program implements Eq. (1.67)
Tsc = 10*log10(tsc); % convert Tsc into dB
Sigma = 10*log10(sigma); % convert sigma to dB
four_pi = 10*log10(4.0 * pi); % (4pi) in dB
k_db = 10*log10(1.38e-23); % Boltzman's constant in dB
Te = 10*log10(te); % noise temp. in dB
range_pwr4_db = 10*log10(range.^4); % target range^4 in dB
omega = (az_angle/57.296) * (el_angle / 57.296); % compute search volume in steraradians
Omega = 10*log10(omega); % search volume in dB
% implement Eq. (1.67)
PAP = snr + four_pi + k_db + Te + nf + loss + range_pwr4_db + Omega ...
    - Sigma - Tsc;
return
  • 仿真代码
% Use this program to reproduce Fig. 1.16 of text.
close all
clear all
tsc = 2.5; % Scan time i s2.5 seconds
sigma = 0.1; % radar cross section in m sqaured
te = 900.0; % effective noise temperature in Kelvins
snr = 15; % desired SNR in dB
nf = 6.0; %noise figure in dB
loss = 7.0; % radar losses in dB
az_angle = 2; % search volume azimuth extent in degrees
el_angle = 2; %serach volume elevation extent in degrees
range = linspace(20e3,250e3,1000); % range to target from 20 Km 250 Km, 1000 points
pap1 = power_aperture(snr,tsc,sigma/10,range,te,nf,loss,az_angle,el_angle);
pap2 = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle);
pap3 = power_aperture(snr,tsc,sigma*10,range,te,nf,loss,az_angle,el_angle);
% plot power aperture prodcut versus range
% figure 1.16a
figure(1)
rangekm  = range ./ 1000;
plot(rangekm,pap1,'k',rangekm,pap2,'k -.',rangekm,pap3,'k:')
grid
legend('\sigma = -20 dBsm','\sigma = -10dBsm','\sigma = 0 dBsm')
xlabel ('Detection range in Km');
ylabel ('Power aperture product in dB');
% generate Figure 1.16b
lambda = 0.03; % wavelength in meters
G = 45; % antenna gain in dB
ae = linspace(1,25,1000);% aperture size 1 to 25 meter squared, 1000 points
Ae = 10*log10(ae);
range = 250e3; % rnage of interset is 250 Km
pap1 = power_aperture(snr,tsc,sigma/10,range,te,nf,loss,az_angle,el_angle);
pap2 = power_aperture(snr,tsc,sigma,range,te,nf,loss,az_angle,el_angle);
pap3 = power_aperture(snr,tsc,sigma*10,range,te,nf,loss,az_angle,el_angle);
Pav1 = pap1 - Ae;
Pav2 = pap2 - Ae;
Pav3 = pap3 - Ae;
figure(2)
plot(ae,Pav1,'k',ae,Pav2,'k -.',ae,Pav3,'k:')
grid
xlabel('Aperture size in square meters')
ylabel('Pav in dB')
legend('\sigma = -20 dBsm','\sigma = -10dBsm','\sigma = 0 dBsm')
  • 仿真结果图

功率孔径积相对于检测距离

雷达平均功率相对于孔径大小 

  • 例题

利用下图中的式子

 可以算出

 计算公式如下:

  • 例题

 

 

其中1.8式为:

 其中1.67式为:

  • 仿真代码
% This program is used to generate Fig. 1.17 
% It implements the search radar equation defined in Eq. 1.67
clear all
close all
snr = 15.0;          % Sensitivity SNR in dB
tsc = 2.;            % Antenna scan time in seconds
sigma_tgtm = -10;    % Missile RCS in dBsm
sigma_tgta = 6;      % Aircraft RCS in dBsm
range = 60.0;       % Sensitivity range in Km, 
te = 290.0;         % Effective noise temprature in Kelvins
nf = 8;             % Noise figure in dB
loss = 10.0;         % Radar losses in dB
az_angle = 360.0;   % Search volume azimuth extent in degrees
el_angle = 10.0;    % Search volume elevation extent in degrees
c = 3.0e+8;         % Speed of light
% Compute Omega in steradians
omega = (az_angle / 57.296) * (el_angle /57.296);
omega_db = 10.0*log10(omega); % Convert Omega to dBs
k_db = 10.*log10(1.38e-23);
te_db = 10*log10(te);
tsc_db = 10*log10(tsc);
factor = 10*log10(4*pi);
rangemdb = 10*log10(range * 1000.);
rangeadb = 10*log10(range * 1000.);
PAP_Missile = snr - sigma_tgtm - tsc_db + factor + 4.0 * rangemdb + ...
   k_db + te_db + nf + loss + omega_db
PAP_Aircraft = snr - sigma_tgta - tsc_db + factor + 4.0 * rangeadb + ...
   k_db + te_db + nf + loss + omega_db
index = 0;
% vary rnage from 2Km to 90 Km 
for rangevar = 2 : 1 : 90
   index = index + 1;
   rangedb = 10*log10(rangevar * 1000.0);
   papm(index) = snr - sigma_tgtm - tsc_db + factor + 4.0 * rangedb + ...
      k_db + te_db + nf + loss + omega_db;
  missile_PAP(index) = PAP_Missile;
  aircraft_PAP(index) = PAP_Aircraft;
   papa(index) = snr - sigma_tgta - tsc_db + factor + 4.0 * rangedb + ...
      k_db + te_db + nf + loss +omega_db;
end
var = 2 : 1 : 90;
figure (1)
plot (var,papm,'k',var,papa,'k-.')
legend ('Missile','Aircraft')
xlabel ('Range - Km');
ylabel ('Power Aperture Product - dB');
hold on
plot(var,missile_PAP,'k:',var,aircraft_PAP,'k:')
grid
hold off
  • 仿真图

雷达的功率孔径积相对检测距离

上图显示了这个程序产生的输出图形。这个同样的程序也计算了导弹和飞机对应的功率孔径积,它们也可以从这幅图上读出。

 

posted @ 2021-04-06 22:21  司砚章  阅读(938)  评论(1编辑  收藏  举报