易武 《MATLAB的差分码PSK调制解调实现》 第11页 共15页
图5.2频域解调前后波形
由图5.3中而已看出基带信号频谱和无噪声解调反差分信号频谱是一致的,差分信号频谱和无噪声解调信号频谱一致,说明成功实现4DPSK调制解调。
图5.3基带差分信号,解调差分信号和调制信号对比图
差分信号与解调出的差分信号完全一致,并且两者相对应已调信号,满足4PSK调制关系,相同时相位不发生偏移,不同时相位相应发生偏移。
默认噪声比为5,试验无噪声和加噪声的时域序列相同,改信噪比为2,重新绘图如下
易武 《MATLAB的差分码PSK调制解调实现》 第12页 共15页
图5.4 时域解调前后波形
由图5.4中可以看出下小信噪比的噪声条件下,基带信号和加入噪声的反差分解调信号产生了较大失真,加入噪声解调信号波形也相应产生失真,在小信噪比的实验条件下,加入噪声的解调信号发生了不同程度的失真,说明改变噪声后,加入信噪比越大的噪声解调后波形越不容易失真,所以信噪比越大,解调后更准确地得到了基波。
6 结束语
从课设开始的一周,在网上找了好多相关的资料,后面跟同学交流的时候,发现课设的题目理解错了,导致前几天的都白费了,再后来通过与黄老师和吴老师的交流和得到她们的指导,知道了课设的做法和步骤。在本次设计中,我遇到了很多的问题,也充分体会到了学海无涯。无论任何时候我们都要不断的学习和吸收新的知识,然后更新自己的知识储备,很感激老师在这次设计中对我的帮助和指导。老师就曾给我们很多的鼓励和信心。之后,又不间断的监督,催促我们认真写课设报告,了解大家论文的完成进度。真的很感谢老师在我退缩的是给我鼓励,在我怠惰的时候给我鞭策,在我遇到困难的时候给我指导,让我更好的完成此次课程设计。在过去的两个星期里,自己或多或少都有一点的收获,感谢所有教导我的老师和曾给予我帮助的同学。
回顾此次通信原理的课程设计,至今我人感慨颇多,的确从老师定下的题目到考试
易武 《MATLAB的差分码PSK调制解调实现》 第13页 共15页
做,从理论到实践,在整整两个星期的日子里,可以说是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多书本上的没有的东西,通过这次课程设计使我懂得了理论和实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考能力,在设计的过程中遇到问题,可以说的是困难重重,这毕竟第一次做的,难免遇到各种各样的问题同时在设计的过程中发现自己的不足之处,对实验平台很不熟悉,动手能力比较欠缺,这是我必须在以后的学习的过程中需要加以改进的地方,在不断的学习中要加以改进的地方,在不断的学习过程中完善自己。
通过这次课程设计我们能够比较系统的了解理论知识,掌握了2DPSK调制解调的工作原理及4DPSK调制解调系统的工作过程,学会了使用仿真软件Matlab,并学会通过应用软件仿真来实现某些通信系统的设计,对以后的学习和工作都起到了一定的作用,加强了动手能力和学业技能。
通过这次课程设计还让我们知道了,我们平时所学的知识如果不加以实践的话等于纸上谈兵。课程设计主要是我们理论知识的延伸,它的目的主要是要在设计中发现问题,并且自己要能找到解决问题的方案,形成一种独立的意识。我们还能从设计中检验我们所学的理论知识到底有多少,巩固我们已经学会的,不断学习我们所遗漏的新知识,把这门课学的扎实。
当然在做课程设计的过程中总会出现各种问题,在这种情况下我们都会努力寻求最佳路径解决问题,无形间提高了我们的动手,动脑能力,并且同学之间还能相互探讨问题,研究解决方案,增进大家的团队意识。
总的来说,这次课程设计让我们收获颇多,不仅让我们更深一步理解书本的知识,提高我们分析问题和解决问题的能力,而且让我们体会到团队的重要性。
参考文献
[1]樊昌信 曹丽娜等.通信原理(第6版).北京:国防工业出版社,2011,08 [2]王福昌 熊兆飞 黄本雄.通信原理.北京:清华大学出版社,2006 [3]钟麟 王峰.MATLAB仿真技术与应用教程.国防工业出版社.2003
[4]徐明远 邵玉斌.《MATLAB仿真在通信与电子工程中的应用》.西安:西安电子科技大学出版社.2010,05
[5]孙屹 吴磊.《Simulink通信仿真开发手册》.国防工业出版社,2004
易武 《MATLAB的差分码PSK调制解调实现》 第14页 共15页
[6]王兴亮.《数字通信原理与技术》(第二版).西安电子科技大学出版社.2000
附录:FM解调程序清单 %程序名称:4dpsk.m %程序作者:易武 %最后修改时间:2015-1-4 M=4; %输入二进制 Fc=40; %载波频率 40HZ
Fd=20; %原始信号与已调信号取样频率 20 HZ Fs=1000; %采样频率 1000 HZ %SRNperBit=6; SNR=2; %设置信噪比为5
adjSRN=SNR-10*log10(Fs/Fd)+10*log10(log2(M)); %信噪比转换 sign=randint(32,1,2); %输入长度为32的二进制数字基带信号 an=[]; %预设一个矩阵存放一组数据 for n=1:2:31 %循环奇数个随机2进制序列 if sign(n)==0&sign(n+1)==0;
an((n+1)/2)=0; %2进制00表示0 elseif sign(n)==0&sign(n+1)==1;
an((n+1)/2)=1; %2进制00表示1 elseif sign(n)==1&sign(n+1)==0;
an((n+1)/2)=2; %2进制00表示2 elseif sign(n)==1&sign(n+1)==1; an((n+1)/2)=3; %2进制00表示3 end end %差分编码
cfm=[]; cfm(1)=1; %设cfm的初值为1 for i=1:31 %设置循环差分实现
cfm(i+1)=xor(sign(i),cfm(i)); %差分异或运算
易武 《MATLAB的差分码PSK调制解调实现》 第15页 共15页
end
bn=[]; %预设一个矩阵存放一组数据 for n=1:2:31 %循环奇数个随机2进制序列 if cfm(n)==0&cfm(n+1)==0;
bn((n+1)/2)=0; %2进制00表示表示四进制0 elseif cfm(n)==0&cfm(n+1)==1;
bn((n+1)/2)=1; %2进制01表示表示四进制1 elseif cfm(n)==1&cfm(n+1)==0;
bn((n+1)/2)=2; %2进制10表示表示四进制2 elseif cfm(n)==1&cfm(n+1)==1;
bn((n+1)/2)=3; %2进制11表示表示四进制3 end end
y=dmod(bn,Fc,Fd,Fs,'psk',M); %进行DPSK调制 modz=awgn(y,SNR);
yniose=awgn(y,adjSRN,'measured',[],'dB'); %加入高斯白噪声 w=ddemod(y,Fc,Fd,Fs,'psk/opt',M) %进行PSK解调
z=ddemod(yniose,Fc,Fd,Fs,'psk/opt',M); %加入高斯白噪声PSK解调 cn=[]; %预设一个矩阵存放一组数据
for n=1:2:31 %循环为基数的解调后的四进制序列 if z((n+1)/2)==0;
cn(n)=0;cn(n+1)=0; %四进制序列0拆分为二进制00 elseif z((n+1)/2)==1;
cn(n)=0;cn(n+1)=1; %四进制序列1拆分为二进制01 elseif z((n+1)/2)==2;
cn(n)=1;cn(n+1)=0; %四进制序列2拆分为二进制10 elseif z((n+1)/2)==3;
cn(n)=1;cn(n+1)=1; %四进制序列3拆分为二进制11 end end cfm1=[];