基于MATLAB的2ASK系统和FSK系统设计误码率分析_第1页
基于MATLAB的2ASK系统和FSK系统设计误码率分析_第2页
基于MATLAB的2ASK系统和FSK系统设计误码率分析_第3页
基于MATLAB的2ASK系统和FSK系统设计误码率分析_第4页
基于MATLAB的2ASK系统和FSK系统设计误码率分析_第5页
已阅读5页,还剩29页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计题目2ASK系统和FSK系统设计、误码率性能分析和比较

目录一、设计目的和要求 一、设计目的和要求1.1设计目的通信原理课程设计的目的是使我们加深对所学的通信原理知识理解,同时也是对我们学习知识的检验,也是让自己对所学知识的更加深入的了解。用来培养专业素质,提高利用通信原理知识处理通信系统问题的能力,为今后的专业课程的学习、毕业设计和工作打下良好的基础。通过课程设计能比较扎实地掌握本专业的基础知识和基本理论,掌握数字通信系统及有关设备的分析、开发等基本技能,受到必要工程训练和初步的科学研究方法和实践训练,增强分析和解决问题的能力,了解本通信专业的新发展。1.2设计要求题目1:2ASK系统和FSK系统设计、误码率性能分析和比较题目2:2FSK系统和2PSK系统设计、误码率性能分析和比较题目3:2ASK系统和2PSK系统设计、误码率性能分析和比较目标:(1)系统工作原理(2)设计系统(3)设定参数(码速率,仿真时间,抽样频率,载频,信噪比等),利用Matlab仿真(4)误码性能Matlab仿真分析与比较报告要求:(1)概述所作题目的意义、本人所做的工作及系统的主要功能;(2)调制解调原理及系统性能的描述;(3)软件设计流程及描述;(4)源程序代码(要有注释);(5)用matlab软件仿真系统的各个部分的波形和频谱图。二、设计原理2.12ASK系统2.1.12ASK系统原理振幅键控法(2ASK)最初用于电报系统(用在传递莫斯Morse电码上面,莫斯在早期的“无线”应用上广为采用,通过开关的长度传递码元),但由于它在抗噪声的能力上较差,故在数字通信中用得不多。不过,二进制振幅键控常常作为研究其他数字调制方式的基础,因此,熟悉它仍然是必要的。ASK的应用:ASK和OOK通信协议通常用在近距离无线通信应用中,例如家庭自动化、工业网络、无线基站、遥控无钥匙进入系统(RKE)以及胎压监测系统(TPMS)。OOK特别适合电池供电的便携式设备使用,因为这样的系统在发送‘0’时无需发送载波,因而可以节省功率。不同的应用涉及的载波频率可能变化很大,例如在某些基站的低频有线通信中约为2MHz,在使用ISM频段(工业、科学和医疗)的短距离无线通信中约433MHz。各种无线技术,包括蓝牙、ZigBee、Wi-Fi在当前的消费电子行业中已经取得了一定进展。这些协议提供了设备之间安全通信的机制,通常都工作在2.4GHz的ISM频段,并且组合使用频移键控(FSK)、相移键控(PSK)和幅移键控(ASK)调制技术。这些技术提供的安全性包括通信的信道跳频和扩频模式。这种方案很难被侦听到,因此具有很高的安全性,并能改善抗噪声性能。所有这些方法在发送‘0’和‘1’的时候都会消耗发送功率。遗憾的是,这些协议还是具有相对较高的复杂性以及较高的硬件实现成本,特别是当安全性和高抗噪声性不是硬性要求的时候。ASK缺点:它的抗噪声能力较差,尤其是抗衰落的能力不强,因而一般只适宜在恒参信道下采用,只能用在像电缆一类的恒参信道中。振幅键控是正弦载波的幅度随数字基带信号而变化的数字调制。当数字基带信号为二进制时,则为二进制振幅键控。设发送的二进制符号序列由0,1序列组模拟信号源调制器信道解调器受信者噪声源调制器信道解调器基带信号输入噪声源基带信号输出成,发送0符号的概率为P,发送1符号的概率为1-P,且相互独立。该二进制符号序列可表示为:(2.1)其中(2.2)则二进制振幅键控信号可表示为:(2.3)振幅键控是利用载波的幅度变化来传递数字信息,而其频率和初始相位保持不变。在2ASK中,载波的幅度只有两种变化状态,分别对应二进制信息“0”或“1”。一种常用的也是最简单的二进制振幅键控方式称为通—断键控(OOK),其表达式为:(2.4)典型波形如下图所示:图2.12ASK/OOK信号时间波形可见,载波在二进制基带信号是s(t)控制下通-断变化,所以这种键控又称为通-断键控。在OOK中,某一种符号(“0”或“1”)用有没有电压来表示。2ASK信号一般表达式为e2ASK(t)=Σang(t-nTs)cosωct(2.5)2ASK/OOK信号的产生方法2ASK信号的产生方式通常有两种:模拟调制法(相乘器法)和建控法,相应的调制器下图所示。采用的是模拟调制法,即用乘法器(multiplier)实现。图2.22.1.22ASK系统框图图2.3(1)发送端采用模拟法产生已调信号:若要产生2ASK信号,则基带信号s(t)是单极性波形,若要产生2PSK信号,则基带信号s(t)是双极性波形;(2)将已调信号送入信道进行传输:由于信道中常见的噪声是高斯白噪声,因而,假设信道是高斯白噪声信道。已调信号在送入信道传输的过程中,叠加上高斯白噪声。(3)信道输出端信号的解调这里采用同步解调法进行解调。(4)基带信号的恢复对解调器的输出进行抽样判决恢复基带信号。2.1.32ASK的调制原理由于二进制的随机脉冲序列是一个随机过程,所以调制后的二进制数字信号也是一个随机过程,因此在频率域中只能用功率谱密度表示。2ASK信号功率谱密度的特点如下:由连续谱和离散谱两部分构成,连续谱由信号g(t)经线性调制后决定,离散谱由载波分量决定;已调信号波形的带宽是基带脉冲波形带宽的二倍。2ASK信号功率谱密度推导如下:………………式(2.5)(2.6)图2.42ASK信号的功率谱密度示意图在二进制数字振幅调制中,载波的幅度随着调制信号的变化而变化,实现数字调制技术有两种方法:①模拟相乘法:通过相乘器直接将载波和数字信号相乘得到输出信号,这种直接利用二进制数字信号的振幅来调制正弦载波的方式称为模拟相乘法,如图2.2,在该电路中载波信号和二进制数字信号同时输入到相乘器中完成调制。②数字键控法:用开关电路控制输出调制信号,当开关接载波就有信号输出,当开关接地就没信号输出,如图2.3。图2.5模拟相乘法图2.6数字键控法2.1.42ASK的解调原理与AM信号的解调方法一样。2ASK有两种基本的解调方法:非相干解调(包络检波法)和相干解调(同步检测法),相应的接收系统方框图如图:图2.7非相干解调方式图2.8相干解调方式

2.22FSK系统原理2.2.12FSK系统原理频移键控是利用载波的频率变化来传递数字信息。在2FSK中,载波的频率随二进制基带信号在和两个频率点间变化。故其表达式为(2.7)(2.7)典型波形如图1-1所示。11010ttt图2.92FSK信号的时间波形由图可见,2FSK信号的波形(a)可以分解为(b)和波形(c),也就是说,一个2FSK信号可以看成是两个不同载频的2ASK信号的叠加。因此,2FSK信号的时域表达式又可写成(2.8(2.8)式中:为单个矩形脉冲,脉宽为;(2.9(2.9)是的反码,若=1,则=0;若=0,则=1,于是(2.10(2.10)和分别是第个信号码元(1或0)的初始相位。在移频键控中,和不携带信息,通常可令和为零。因此,2FSK信号的表达式可简化为(2.11(2.11)其中(2.12(2.12)2.2.22FSK信号的产生振荡器1振荡器2反相器选通开关选通开关相加器基带信号2FSK信号的产生方法主要有两种。一种可以采用模拟调频电路来实现;另一种可以采用键控法来实现,即在二进制基带矩形脉冲序列的控制下通过开关电路对两个不同的独立频率源进行选通,使其在每一个码元期间输出或两个载波之一,如图2.10所示。这两种方法产生2FSK信号的差异在于:由调频法产生的2FSK信号在相邻码元之间的相位变化是连续变化的。(这是一类特殊的FSK,称为连续相位FSK(Continuous振荡器1振荡器2反相器选通开关选通开关相加器基带信号图图2.10键控法产生2FSK信号的原理图2.2.32FSK信号的解调2FSK信号的常用解调方法是采用如图2.11所示的非相干解调(包络检波)和相干解调。其解调原理是将2FSK信号分解为上下两路2ASK信号分别进行解调,然后进行判决。这里的抽样判决是直接比较两路信号抽样值的大小,可以不专门设置门限。判决规则应与调制规则相呼应,调制时若规定“1”符号对应载波频率,则接收时上支路的样值较大,应判为“1”;反之判为“0带通滤波器带通滤波器带通滤波器包络检波器包络检波器抽样判决器定时脉冲输出(a)非相干解调带通滤波器带通滤波器带通滤波器相乘器相乘器低通滤波器低通滤波器抽样判决器定时脉冲输出(b)相干解调图2.112FSK信号解调原理图除此之外,2FSK信号还有其他解调方法,比如鉴频法、差分检测法、过零检测法等。过零检测的原理基于2FSK信号的过零点数随不同频率而异,通过检测过零点数目的多少,从而区分两个不同频率的信号码元。2FSK信号经限幅、微分、整流后形成与频率变化相对应的尖脉冲序列,这些尖脉冲的密集程度反映了信号的频率高低,尖脉冲的个数就是信号过零点数。把这些尖脉冲变换成较宽的矩形脉冲,以增大其直流分量,该直流分量的大小和信号频率高低成正比。然后经低通滤波器取出此直流分量,这样就完成了频率—幅度变换,从而根据直流分量幅度上的区别还原出数字信号“1”和“0”。2FSK在数字通信中应用较为广泛。国际电信联盟(ITU)建议在数据率低于1200b/s时采用2FSK体制。2FSK可以采用非相干接收方式,接收时不必利用信号的相位信息,因此特别适合应用于衰落信道/随参信道(如短波无线电信道)的场合,这些信道会引起信号的相位和振幅随机抖动和起伏。2.3性能分析:2.3.12ASK的抗噪声性能通信系统的抗噪声性能是指系统克服加性噪声影响的能力。在数字通信系统中,加性噪声可能使传输码元产生错误。其错误程度一般用误码率来衡量。(1)非相干解调的误码率非相干接收时的误码率为:,其中为解调器的输入信噪比。当信噪比r>>1时,。(2)相干解调的误码率相干接收时的误码率为:,其中为解调器的输入信噪比。当信噪比r>>1时,上式变成。2.3.22FSK抗噪声性能2FSK信号的解调方法有多种,而误码率和接收方法相关。同步检波法的系统性能2FSK信号采用同步检测法的性能分析模型如图2.12所示。信道信道发送端带通滤波器带通滤波器带通滤波器带通滤波器抽样判决器相乘器相乘器定时脉冲输出图2.122FSK信号采用同步检测法性能分析模型设“1”符号对应载波频率,“0”符号对应载波频率,则在一个码元的持续时间内,发送端产生的2FSK信号可表示为(2.13)(2.13)其中(2.14(2.14)(2.15(2.15)因此,在(0,)时间内,接收端的输入合成波形为即(2.16(2.16)式中:为加性高斯白噪声,其均值为0。在图2.12中,解调器采用两个带通滤波器来区分中心频率分别为和的信号。中心频率为的带通滤波器只允许中心频率为的信号频谱成分通过,而滤除中心频率为的信号频谱成分;中心频率为的带通滤波器只允许中心频率为的信号频谱成分通过,而滤除中心频率为的信号频谱成分。这样,接收端上下支路两个带通滤波器的输出波形和分别为(2.17(2.17)(2.18(2.18)式中:和分别为高斯白噪声经过上下两个带通滤波器的输出噪声——窄带高斯噪声,其均值同为0,方差同为,只是中心频率不同而已,即(2.19(2.19)现在假设在在(0,)时间内发送“1”符号(对应),则上下支路两个带通滤波器的输出波形和分别为(2.20(2.20)它们分别经过相干解调(相乘—低通)后,送入抽样判决器进行比较。比较的两路输入波形分别为上支路下支路式中:a为信号成分;和均为低通型高斯噪声,其均值为零,方差为。因此,和抽样值的一维概率密度函数分别为(2.21(2.21)(2.22(2.22)当的抽样值小于的抽样值时,判决器输出“0”符号,造成将“1”判为“0”的错误,故这时错误概率为(2.23(2.23)其中,z=-,则z是高斯型随机变量,其均值为a,方差为。设z的一维概率密度函数为,则由上式得到(2.24(2.24)同理可得,发送“0”错判为“1”的概率(2.25(2.25)显然,由于上下支路的对称性,以上两个错误概率相等。于是,采用同步检测时的2FSK系统的总误码率为(2.26(2.26)式中,为解调器输入端(带通滤波器输出端)的信噪比。在大信噪比(r>>1)条件下,上式可近似表示为(2.27(2.27)

三、设计步骤及内容3.1设计步骤1、消息代码的产生本次设计,可以通过malab软件的以下命令产生一串随机的“0”、“1”消息代码序列:data=rand(1,nb)>0.5对于2PSK系统,消息代码是双极性的,还需要进行单双极性变换:data1=data.*2-1其中,nb是代码个数。2、基带信号的产生对于2ASK系统,fori=1:nbdata_bs((i-1)*fs+1:i*fs)=data(i)end对于2FSK系统,fori=1:nbdata_bs((i-1)*fs+1:i*fs)=data1(i)end其中,fs是抽样速率。3、已调信号的产生对于2ASK系统sm=data_bs.*cos(2*pi*fc*t)其中,fc为载波频率。对于2FSK系统fsk1=g1.*cos(2*pi*f1.*t);%得到频率为f1的fsk1已调信号fsk2=g2.*cos(2*pi*f2.*t);%得到频率为f2的fsk2已调信号fsk=fsk1+fsk2;%已产生2FSK信号4、已调信号通过白噪声信道s1=awgn(sm,SNR)其中,SNR为信噪比。5、对信道输出端混合信号中的噪声进行抑制这里以巴特沃斯滤波器为例,wp=[wp1,wp2];ws=[ws1,ws2];[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),rp,rs,'z')[B,A]=butter(N0,wn);[H,W]=freqz(B,A);s1bp=filter(B,A,s1);6、信号的解调2ASK和2FSK都采用想干解调的方式。由于这两个系统很类似,故采用的同样的方式进行解调,只是参数设置有载波频率决定。信号先与同步载波相乘,再进行低通滤波,这里滤波器还是以巴特沃斯为例,s1cj=s1bp.*2*cos(2*pi*fc*t);[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),rp,rs,'z')[B,A]=butter(N0,wn)[H,W]=freqz(B,A)s1lp=filter(B,A,s1cj);7、基带信号的恢复基带信号的恢复需要三个步骤:抽样、判决和码元再生。fori=1:nbifs1lp((i-1)*fs+fs/2)>0.5demodata(i)=1;elsedemodata(i)=0;endendfori=1:nbdemodata_bs(1,(i-1)*fs+1:i*fs)=demodata(i);end2ASK判决门限设为为0.5,2FSK不设置判决门限,仅由两路载波进行比较。8、系统性能分析同时画出2ASK和2FSK的实际误码率和理论误码率曲线,进行分析。%误码率分析PE(k)=sum(abs(demodata(1:n)-data(1:n)))/(n);r=10^(snr(k)/10);pe(k)=0.5*erfc(sqrt(r./4));%计算理论误码率3.2设计内容3.2.1MATLAB仿真——2ASK(1)首先产生一个TB=1的基带信号,抽样频率fs=100,基带信号个数n=100,载波fc=20HZ,观察前十个码元图像,如图3.1。分析:图中从上到下依次是基带信号、载波信号,调制信号。载波信号与调制信号相乘得到已调信号。图3.1(2)其次计算基带信号和已调信号的功率谱,如图3.2。分析:由于TB=1,故波特率为1。从已调信号功率谱可以看出2ASK是基带信号功率谱的搬移。图3.2(3)对信号先加10dB的高斯噪声,模拟信道传输;再进行相干解调,信号以此通过带通滤波器、相乘器、低通滤波器。波形如图3.3.图3.3(4)对经过低通滤波器的信号进行抽样判决,判决门限为0.5,恢复出的波形和原基带信号波形如图3.4。图3.4(5)带通滤波器和低通滤波器如图3.5。图3.53.2.2MATLAB仿真——2FSK(1)如图6。分析:同样,产生一个TB=1的基带信号,抽样频率fs=100,基带信号个数n=100,由于2FSK相当于两个2ASK信号相加,取两载波频率分别为f1=20、f2=30,然后分别跟基带信号和基带信号取反信号相乘,再相加,得到最后的已调信号。如图3.6所示。图3.6(2)观察基带信号和已调信号的功率谱,如图3.7.。提调信号功率谱为两个2ASK信号功率谱相加。图3.7(3)分别对f1信号和f2信号进行相干解调,如图3.8、图3.9图3.8图3.9(4)做出f1信号和f2信号的带通滤波器和低通滤波器图像。如图3.10.图3.103.2.3MATLAB仿真——2ASK和2FSK的误码率分析抽样点数n=1000图3.11抽样点数n=10000图3.12对比图3.11,图3.12,n取不同的值,发现,n越大,实际误码率的曲线越接近于理论误码率时候的曲线。同样,由图可以看出在同样信噪比情况下,2ASK信号的误码率大于2FSK信号的误码率。

四、课程设计心得通过本次课程设计,我对通信原理2ASK系统和2FSK相关知识有了更进一步的认识和理解,在该课程设计的过程中,也涉及到了数字信号处理低通滤波器和带通滤波器的相关知识,我也有了更深层次的理解,同时,我对于Matlab的函数以及操作也更加熟练,将理论在实践中得到验证和应用,同时进一步巩固了课堂所学知识。在这个课程设计的过程中,遇到的困难很多,遇到的疑惑也是很多,对于相干解调的延迟问题,这个延迟虽然很小,但是通过放大还是可以观察出来的,抽样判决得到的图形和原图形的延迟就很明显看出来了,再比如参数设置的不理想,因此总是会出现波形失真的现象;改变输入信号参数,尤其是输入信号频率,就需要调试带通滤波器、低通滤波器,及抽样判决的参数等问题,通过不断尝试,以及上网查找资料和查询参考书让我更好的完成此次设计。接收滤波器是用来接收信号,尽可能滤除信道噪声和其它干扰,对信道特性进行均衡,使输出的基带波形有利于抽样判决。抽样判决器则是在传输特性不理想及噪声背景下,在规定时刻对接收滤波器的输出波形进行抽样判决,以恢复或再生基带信号。在这个课程设计的过程中,我学到了遇到问题不要先去问别人,先自己查找一下参数是否设置的有问题,公式是否正确,矩阵维度是否一致等等,之后再查资料,请教老师或者同学。我们小组在做课程设计的过程中,遇到问题一起解决,商量,最终问题都得到解决,在结果出来的时候,都非常开心。虽然过程比较难熬,但最后做出成果图那一瞬间的喜悦是无法比喻的。考完试立马就继续做课程设计,并且连续做了12个小时,自己都不敢想象时间竟过得如此之快。终于能赶在电脑没电之前做完,并且作为班里第一个验收的,我很开心。验收完再帮同学们解决问题,又给了我很大程度的提升,通过这次课设我学到了很多东西。

五、附录2ASK程序:clear;%产生一串0,1消息代码fs=100;n=100;data=rand(1,n)>0.5fc=20;fori=1:ndata_bs((i-1)*fs+1:i*fs)=data(i);endL=length(data_bs)t=(0:L-1)/fs;%基带信号的功率谱f=-60-0.001:0.001:60-0.001;TB=1;%码元宽度Ps=TB*sinc(f*TB).*sinc(f*TB)*(1/4)+(1/4)*dirac(f);%基带信号的功率谱L=length(data_bs);t=(0:L-1)/fs;%产生载波信号c=cos(2*pi*fc*t);%2ASK调制p1=data_bs.*c;%已调信号的产生Ps2ask=(TB*sinc((f+fc)*TB).*sinc((f+fc)*TB)+dirac(f+fc)+dirac(f-fc)+TB*sinc((f-fc)*TB).*sinc((f-fc)*TB))/16;%已调信号的功率谱%信号加高斯白噪声snr=10;%信噪比为10dBsn=awgn(p1,snr);%通过带通滤波器滤除噪声wp1=18;wp2=22;%设计带通滤波器ws1=17;ws2=23;wp=[wp1,wp2];ws=[ws1,ws2];Ap=0.3;As=1;[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),Ap,As,'z')[B,A]=butter(N0,wn);[H,w]=freqz(B,A);sbp=filter(B,A,sn);%对加噪信号滤波%解调信号scj=sbp.*(2*c);%低通滤波wp=20;ws=25;%设计低通滤波器[N1,wc]=buttord(wp/(fs/2),ws/(fs/2),3,15,'z')[B,A]=butter(N1,wc);[H1,w1]=freqz(B,A);slp=filter(B,A,scj);%对解调信号滤波%抽样判决fori=1:nifslp((i-1)*fs+fs/2)>0.5demodata(i)=1;elsedemodata(i)=0;endend%demodata%是0,1序列fori=1:ndemodata_bs(1,(i-1)*fs+1:i*fs)=demodata(i);%恢复基带信号end%demodata_bs%由于fs=100,故有1000个这个值,这些值画出来得到原信号PE=sum(abs(demodata(2:n)-data(1:n-1)))/(n-1)%lil误码率pe=0.5*erfc(sqrt((snr/4)))%理论误码率2FSK程序clear;%产生一串0,1消息代码fs=100;n=100;f1=20;f2=30;data=rand(1,n)>0.5;fori=1:ndata_bs((i-1)*fs+1:i*fs)=data(i);endg1=data_bs;g2=~data_bs;%将原始数字信号反转与g1反向L=length(data_bs);t=(0:L-1)/fs;%在0~10-dt之间取值,取值间隔为dtfsk1=g1.*cos(2*pi*f1.*t);%得到频率为f1的fsk1已调信号fsk2=g2.*cos(2*pi*f2.*t);%得到频率为f2的fsk2已调信号fsk=fsk1+fsk2;%已产生2FSK信号figure(1)subplot(511);plot(t,g1);grid;axis([010-12]);title('基带信号');subplot(512);plot(t,g2);grid;axis([010-12]);title('基带信号取反');subplot(513);plot(t,fsk1);grid;axis([010-12]);title('载波f1=20');subplot(514);plot(t,fsk2);grid;axis([010-12]);title('载波f1=30');subplot(515);plot(t,fsk);grid;axis([010-12]);title('已调信号');f=-60-0.1:0.1:60-0.1;TB=1;Ps=TB*sinc(f*TB).*sinc(f*TB)*(1/4)+(1/4)*dirac(f);%基带信号的功率谱Ps2fsk1=(TB*sinc((f+f1)*TB).*sinc((f+f1)*TB)+2*dirac(f+f1)+TB*sinc((f-f1)*TB).*sinc((f-f1)*TB))/16;%已调信号1的功率谱Ps2fsk2=(TB*sinc((f+f2)*TB).*sinc((f+f2)*TB)+2*dirac(f+f2)+TB*sinc((f-f2)*TB).*sinc((f-f2)*TB))/16;%已调信号2的功率谱Ps2fsk=Ps2fsk1+Ps2fsk2;figure(2)subplot(2,1,1);plot(f,Ps);gridon;axis([-101000.3]);title('基带信号的功率谱');subplot(2,1,2);plot(f,Ps2fsk);gridon;axis([05000.07]);title('已调信号的功率谱');%信号加噪声snr=3;%S/N,单位为dBsn2fsk=awgn(fsk,snr);figure(3)subplot(4,1,1);plot(t,sn2fsk);grid;axis([010-22]);title('信号加噪声');%通过带通滤波器滤除f1的噪声wp11=f1-2;wp12=f1+2;%设计带通滤波器ws11=f1-3;ws12=f1+3;wp11=[wp11,wp12];ws21=[ws11,ws12];Ap=0.3;As=1;[N1,wn1]=buttord(wp11/(fs/2),ws21/(fs/2),Ap,As,'z')[B1,A1]=butter(N1,wn1);[H1,w1]=freqz(B1,A1);sbp1=filter(B1,A1,sn2fsk);%对加噪信号滤波subplot(4,1,2);plot(t,sbp1);grid;title('经过带通后f1信号');axis([010-22]);%通过带通滤波器滤除f2的噪声wp21=f2-2;wp22=f2+2;%设计带通滤波器ws21=f2-3;ws22=f2+3;wp2=[wp21,wp22];ws2=[ws21,ws22];[N2,wn2]=buttord(wp2/(fs/2),ws2/(fs/2),Ap,As,'z')[B2,A2]=butter(N2,wn2);[H2,w2]=freqz(B2,A2);sbp2=filter(B2,A2,sn2fsk);%对加噪信号滤波subplot(4,1,3);plot(t,sbp2);grid;title('经过带通后f2信号');axis([010-22]);sbp=sbp1+sbp2;subplot(4,1,4);plot(t,sbp);grid;title('经过带通后信号');axis([010-22]);%f1解调信号scj1=sbp1.*(2*cos(2*pi*f1.*t));figure(4)subplot(511);plot(t,scj1);grid;title('f1解调信号');axis([010-22]);%f1低通滤波wp1=f1;ws1=f1+2;%设计低通滤波器[N3,wc3]=buttord(wp1/(fs/2),ws1/(fs/2),0.1,3,'z')[B3,A3]=butter(N3,wc3);[H3,w3]=freqz(B3,A3);slp1=filter(B3,A3,scj1);%对解调信号滤波subplot(512);plot(t,slp1);grid;title('f1通过低通滤波器的信号');axis([010-22]);%f2解调信号scj2=sbp2.*(2*cos(2*pi*f2.*t));subplot(513);plot(t,scj2);grid;title('f2解调信号');axis([010-22]);%f2低通滤波wp2=f2;ws2=f2+2;%设计低通滤波器[N4,wc4]=buttord(wp2/(fs/2),ws2/(fs/2),0.1,3,'z')[B4,A4]=butter(N4,wc4);[H4,w4]=freqz(B4,A4);slp2=filter(B4,A4,scj2);%对解调信号滤波subplot(514);plot(t,slp2);grid;title('f2通过低通滤波器的信号');axis([010-22]);slp=slp1+slp2;subplot(515);plot(t,slp);grid;title('通过低通滤波器的信号');axis([010-22]);figure(5)%抽样判决fori=1:nifslp1((i-1)*fs+fs/2)>slp2((i-1)*fs+fs/2)demodata(i)=1;elsedemodata(i)=0;endend%demodata%是0,1序列fori=1:ndemodata_bs(1,(i-1)*fs+1:i*fs)=demodata(i);%恢复基带信号endsubplot(2,1,1);plot(t,demodata_bs);gridon;axis([010-22]);title('恢复波形');subplot(2,1,2);plot(t,g1);gridon;title('基带信号');axis([010-22]);figure(5)subplot(221);plot(w1*fs/(2*pi),abs(H1));grid;ylabel('幅度');xlabel('Hz');title('f1带通滤波器');axis([-106001.2]);%111带通滤波器幅度响应subplot(222);plot(w2*fs/(2*pi),abs(H2));grid;ylabel('幅度');xlabel('Hz');title('f2带通滤波器');axis([-106001.2]);%222带通滤波器幅度响应subplot(223);plot(w3*fs/(2*pi),abs(H3));grid;ylabel('幅度');ylabel('幅度');xlabel('Hz');title('f1低通滤波器');axis([05001.2]);%f1低通滤波器幅度响应subplot(224);plot(w4*fs/(2*pi),abs(H4));grid;ylabel('幅度');ylabel('幅度');xlabel('Hz');title('f2低通滤波器');axis([05001.2]);%f2低通滤波器幅度响应PE=sum(abs(demodata(1:n)-data(1:n)))/(n)%lil误码率pe=0.5*erfc(sqrt((snr/2)))%理论误码率误码率分析:clearall;n=1000;%代码个数fs=100;%抽样速率fc=20;%载波频率%消息代码的产生data=rand(1,n)>0.5;fori=1:ndata_bs((i-1)*fs+1:i*fs)=data(i);%产生基带信号endL=length(data_bs);t=(0:L-1)/fs;%载波的产生c=cos(2*pi*fc*t);%已调信号的产生sm=data_bs.*c;%已调信号通过高斯噪声信道snr=-10:10;fork=1:length(snr)sn=awgn(sm,snr(k));%通过带通滤波器滤除噪声wp1=15;wp2=25;ws1=10;ws2=30;wp=[wp1,wp2];ws=[ws1,ws2];Ap=0.3;As=1;[N0,wn]=buttord(wp/(fs/2),ws/(fs/2),Ap,As,'z')[B,A]=butter(N0,wn);sbp=filter(B,A,sn);%解调信号scj=sbp.*(2*c);%低通滤波wp=15;ws=20;[N1,wc]=buttord(wp/(fs/2),ws/(fs/2),3,15,'z')[B,A]=butter(N1,wc);[H1,w1]=freqz(B,A);slp=filter(B,A,scj);%抽样判决form=1:nifslp((m-1)*fs+fs/2)>0.5%若slp>0.5则此时码元为1(判决门限为0.5),课本P191demodata(m)=1;elsedemodata(m)=0;%若slp<0.5则此时码元为1endendforj=1:ndemodata_bs(1,(j-1)*fs+1:i*fs)=demodata(j);end%误码率分析PE(k)=sum(abs(demodata(1:n)-data(1:n)))/(n);r=10^(snr(k)/10);pe(k)=0.5*erfc(sqrt(r./4));%计算理论误码率,书本P192公式end%semilogy(snr,PE,snr,pe);legend('实际误码率','理论误码率');%2FSK误码率f1=20;f2=30;g1=data_bs;g2=~data_bs;fsk1=g1.*cos(2*pi*f1.*t);%得到频率为f1的fsk1已调信号fsk2=g2.*cos(2*pi*f2.*t);%得到频率为f2的fsk2已调信号fsk=fsk1+fsk2;%已产生2FSK信号%信

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论