收藏 分销(赏)

BPSK的matlab仿真原理加源代码.doc

上传人:快乐****生活 文档编号:4319969 上传时间:2024-09-05 格式:DOC 页数:6 大小:126.01KB
下载 相关 举报
BPSK的matlab仿真原理加源代码.doc_第1页
第1页 / 共6页
BPSK的matlab仿真原理加源代码.doc_第2页
第2页 / 共6页
BPSK的matlab仿真原理加源代码.doc_第3页
第3页 / 共6页
BPSK的matlab仿真原理加源代码.doc_第4页
第4页 / 共6页
BPSK的matlab仿真原理加源代码.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

1、BPSK误码率的Matlab仿真实验作者:黄准南京航空航天大学,江苏省 南京市 430062摘要:对于刚刚从事通信领域研究性工作的研究生来说,很有必要通过Matlab强大的仿真功能来强化理解通信信号处理的过程。本文正是通过对BPSK的Matlab仿真来提供一个比较好的实例。关键词:BPSK,高斯白噪声,带通滤波器,载波,抽样判决1 BPSK的理论分析1.1 基本原理加法器s(t)相乘器BPF相乘器LPF抽样判决A(t)WGN定时脉冲A(t)图1.1 BPSK相干解调原理框图输入信号A(t)可表示为: (1.1-1)式中为矩形波,而表达式如下:对A(t)进行傅里叶变换,得到A(t)的功率谱密度(

2、式中Ts为码元时间长度):得到A(t)的频谱图如1.2所示(图中Tb为码元时间长度)图1.2 矩形基带信号频谱A(t)与载波相乘:其频谱图如图1.3所示:图1.3图中fc为载波频率,fs=1/Tb=Rb(码速率),故带通滤波器的中心频率为fc,带宽至少为2fs。经过带通滤波器的高斯白噪声变成了窄带高斯信号,可以表示为:经过带通滤波器后的信号为y(t)y(t)=s(t)+n(t)与载波相乘后再经过低通滤波器滤除高频分量得到x(t)由x(t)的功率谱密度图(图1.4所示)可知,最佳判决门限为0;误码率Pe=0.5*erfc(sqrt(r);式中信噪比r=A2/2*2,2为窄带高斯信号的方差,由于其

3、均值为0,故噪声功率就是其方差。图1.4附录:clear allclcnum = 5000; %码元数Rb = 1000; %码速率2*Rb2*(fp+Rb)fp = 100000; %载波频率t = 0:1/fs:num/Rb-1/fs; %时间t的长度与间隙。panjue1 = zeros(1,num); %基带传输的判决输出panjue2 = zeros(1,num); %频带传输的判决输出pe1 = zeros(1,15); %基带传输的误码率矩阵pe2 = zeros(1,15); %频带传输的误码率矩阵a = 2*(fp-2*Rb)/fs; %带通滤波器的第一截止频率b = 2*(

4、fp+2*Rb)/fs; %带通滤波器的第二截止频率s = 1; %循环累加数%a1,b1 = butter(2,a,b); %采用butter滤波器,得到butter滤波器的H(z)的分子分母参数noise = randn(1,num*tnum); %产生正态分布参数nwgnnoise = filter(a1,b1,noise); %对WGN进行带通滤波stdnwgn = std(nwgnnoise); %为了减少运算量。a2,b2 = butter(2,b); %低通滤波h1 w1 = freqz(a1,b1); %带通滤波器频谱h2 w2 = freqz(a2,b2); %低通滤波器频谱

5、%以上一段代码是为了防止加重计算机的计算量而从循环中提出来的。%for SNR_db = -5:10;in = randint(1,num);in1 = 2*in-1;g = ones(1,tnum);inn = upsample(in,tnum);inn = filter(g,1,inn);in2 = inn*2-1; %以上一段代码产生基带信号inn = in2.*sin(2*pi*fp*t); %产生频带信号noise = randn(1,num*tnum); %产生标准正态分布的高斯白噪声信号snr = 10(SNR_db/10); %信噪比换算sigma = sqrt(1/(2*sn

6、r); %求出高斯白噪声标准差s2 = in2+noise*sigma; %基带传输s1 = inn+noise*sigma; %频带传输,暂未用上%带通滤波器v = filter(a1,b1,inn); %对载波信号进行带通滤波nwgnnoise = filter(a1,b1,noise); %对WGN进行带通滤波,此处分开滤波是为了对窄带高斯信号的功率进行处理nwgnnoise = nwgnnoise/stdnwgn; %使得滤波后的窄带高斯噪声任然为正态分布nwgnnoise = nwgnnoise*sigma; %改变噪声功率使其符合预设的信噪比。v = v+nwgnnoise; %经

7、过带通滤波器后的信号v2 = v.*sin(2*pi*fp*t); %与载波相乘v = filter(a2,b2,v2); %进行低通滤波i = 1; %进行抽样判决while i 0 %基带抽样判决 panjue1(i) = 1; else panjue1(i) = -1; end if v(i*tnum-tnum/2) 0 %频带抽样判决 panjue2(i) = 1; else panjue2(i) = -1; end i = i+1;end pe1(s) = length(find(panjue1=in1)/num; %基带误码率 pe2(s) = length(find(panjue

8、2=in1)/num; %频带误码率 s = s+1;endfigure(1);subplot(3,2,1);pwelch(in2,fs);title(基带信号频谱);figure(1);subplot(3,2,2);pwelch(inn,fs);title(频带信号);figure(1);subplot(3,2,4);plot(w1,h1);title(带通信号频谱);figure(1);subplot(3,2,3);plot(w2,h2);title(低通信号频谱);figure(1);subplot(3,2,5);pwelch(noise,fs);title(高斯白噪声信号频谱);figure(1);subplot(3,2,6);pwelch(nwgnnoise,fs);title(窄带高斯信号频谱);figure(3);SNR_db = -5:10;pelilun = 0.5*erfc(sqrt(10.(SNR_db)./10);semilogy(SNR_db,pe1,-or);hold on;semilogy(SNR_db,pe2,-ob);hold on;semilogy(SNR_db,pelilun,-og);legend(基带误码率曲线,频带误码率曲线,理论误码率曲线);grid on;hold on;xlabel(SNR_db);ylabel(pe);

展开阅读全文
收益排行: 01、路***(¥15400+),
02、曲****(¥15300+),
03、wei****016(¥13200+),
04、大***流(¥12600+),
05、Fis****915(¥4200+),
06、h****i(¥4100+),
07、Q**(¥3400+),
08、自******点(¥2400+),
09、h*****x(¥1400+),
10、c****e(¥1100+),
11、be*****ha(¥800+),
12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服