最近做能量检测的仿真,遇到一些问题不明白,特来向各位请教,请大家多多指教
我的仿真思路:以URKOWITZ 在1967年发表的能量检测文章以及Digham发表的一系列文章为参考,不同信道中,在给定SNR下,先产生一个原始信号(单音或者BPSK基带信号)然后通过不同信道,如AWGN,Rayleigh等等,再根据给定的平均SNR叠加高斯噪声, 再进行能量检测,对叠加信号求功率累积并对噪声功率进行归一化,然后由Pf反推一个检测门限Th,将累积功率与门限比较,求超过门限次数即为检测概率。由此进行Monte-Carlo仿真画出Pm-Pf曲线,并与理论曲线进行比较。
我的问题是:在AWGN下的仿真曲线和理论曲线基本一致,但是Rayleigh信道下却差距很大,刚开始我用的是Matlab2009中的自带信道函数rayleighchan,并将信道建模为准静态Quasi-static channel,发现与理论曲线相差很大!
然后经过一个外国朋友指点,自己产生rayleigh 衰落的增益变量与信号相乘,但是结果仍然不对,下面的图就是我的仿真结果,请各位高手多多指教!!
ED over fading channels.jpg (163.49 KB, 下载次数: 2767)
2010-3-19 21:51 上传
附源程序代码以及主要的参考文献:
close all;
clear all;
clc;
Sim_Times=100000; %Monter-Carlo times
m=5;
W=1;
Fs=2;
N =Fs*m; %sample points N=T/Ts=T/1/2W=2TW
Base= 0.01:0.02:1;
Pf =Base.^2; %False alarm
%average SNR=Es/(N0*WT)=sum(x.^2)/T/avgpower_noise,
%note:it must not be the traditional sample snr,but the averge snr of all
%the samples in the period T
snr_avgd