本文主要是介绍雷达系统仿真——2种求发射机峰值功率的途径,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在设计雷达系统时,发射机的峰值功率是一个很关键的设计参数。要求发射机的峰值功率,关键是求得接收端可检测的最小的信噪比。Maltab中提供了两种求信噪比的方法。
1 用ROC曲线求SNR
Matlab提供了ROC曲线的函数rocsnr
。可以指定接收机脉冲累积的个数和方式。
- 单脉冲接收
snr_db = [-inf, 0, 3, 10, 13];
rocsnr(snr_db,'SignalType','NonfluctuatingNoncoherent');
- 多脉冲累积检测
%累计脉冲数为10个
num_pulse_int = 10;
rocsnr([0 3 5],'SignalType','NonfluctuatingNoncoherent',...'NumPulses',num_pulse_int);
从ROC曲线当中可以看出,如果要在1e-3的Pfa情况下得到0.9的Pd,如果不做脉冲累积检测,接收机端的最小信噪比大概为13dB;做10个非相参脉冲累计,接收机端最小信噪比降低到大约5dB。
2 用albersheim经验公式求SNR
用ROC曲线可以“看出”所需的SNR,但是不能精确得出SNR的值。实际上,求接收机所需的SNR值的理论计算非常复杂,所幸,有一些经验公式可以很方便的求得SNR的近似值。比如这里介绍的albersheim经验公式,极大的简化了SNR的求解计算。
注:W.J.Alberhseim于1981年发表的"A Closed-Form Approximation to Robertson’s Detection characteristics"提出了SNR值的近似计算公式。适用于非相参检测。
Matlab中的用法如下:
pd = 0.9; % Probability of detection,发现概率
pfa = 1e-6; % Probability of false alarm,虚警概率
num_pulse_int = 10;
snr_min = albersheim(pd, pfa, num_pulse_int)
运行结果为:
snr_min =4.990385959428693
所需的最小信噪比大约为5dB。
3 计算发射机所需的最小峰值功率
得到所需的最小信噪比之后,可以用Matlab自带的“雷达方程计算器”进行峰值功率的计算,也可以用radareqpow
函数很方便的得到峰值功率。
下列代码用radareqpow
计算一个单机雷达所需的发射峰值功率:
pd = 0.9; % Probability of detection,发现概率
pfa = 1e-6; % Probability of false alarm,虚警概率
max_range = 5000; % Maximum unambiguous range,最大无模糊距离
range_res = 50; % Required range resolution,距离分辨力
tgt_rcs = 1; % Required target radar cross section,目标的雷达截面积prop_speed = physconst('LightSpeed'); % Propagation speed
pulse_bw = prop_speed/(2*range_res); % Pulse bandwidth
pulse_width = 1/pulse_bw; % Pulse widthtx_gain = 20; %发射增益,对单基雷达来说,接收增益等于发射增益fc = 10e9;
lambda = prop_speed/fc;peak_power = radareqpow(lambda,max_range,snr_min,pulse_width,...'RCS',tgt_rcs,'Gain',tx_gain)
计算结果为:
peak_power =5.226479164200367e+03
在此情况下,所需的峰值发射功率大概为5.2kW,是一个较为合理的值。
这篇关于雷达系统仿真——2种求发射机峰值功率的途径的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!