基于MATLAB的8PSK的调制与仿真报告.docx
- 文档编号:5824067
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:7
- 大小:98.54KB
基于MATLAB的8PSK的调制与仿真报告.docx
《基于MATLAB的8PSK的调制与仿真报告.docx》由会员分享,可在线阅读,更多相关《基于MATLAB的8PSK的调制与仿真报告.docx(7页珍藏版)》请在冰豆网上搜索。
基于MATLAB的8PSK的调制与仿真报告
基于MATLAB的8-PSK的调制与仿真报告
LT
MATLAB软件能迅速测试设想构想,综合评测系统性能,快速设计更好方案来确保更高技术要求。
同时MATLAB也是国家教委重点提倡的一种计算工具。
MATLAB主要由C语言编写而成,采用LAPACK 为底层支持软件包。
MATLAB的编程非常简单,它有着比其他任何计算机高级语言更高的编程效率、更好的代码可读性和移植性,以致被誉为“第四代”计算机语言,MATLAB是所有MathWorks公司产品的数值分析和图形基础环境。
此外MATLAB 还拥有强大的2D和3D甚至动态图形的绘制功能,这样用户可以更直观、更迅速的进行多种算法的比较,从中找出最好的方案。
从通信系统分析与设计、滤波器设计、信号处理、小波分析、神经网络到控制系统、模糊控制等方面来看,MATLAB提供了大量的面向专业领域的工具箱。
通过工具箱,以往需要复杂编程的算法开发任务往往只需一个函数就能实现,而且工具箱是开放的可扩展集,用户可以查看或修改其中的算法,甚至开发自己的算法。
目前,MATLAB已经广泛地应用于工程设计的各个领域,如电子、通信等领域;它已成为国际上最流行的计算机仿真软件设计工具。
现在的MATLAB不再仅仅是一个矩阵实验室,而是一种实用的、功能强大的、不断更新的高级计算机编程语言。
现在从电子通信、自动控制图形分析处理到航天工业、汽车工业,甚至是财务工程。
MATLAB都凭借其强大的功能获得了极大的用武之地。
广大学生可以使用MATLAB来帮助进行信号处理、通信原理、线性系统、自动控制等课程的学习;科研工作者可以使用MATLAB进行理论研究和算法开发;工程师可以使用MATLAB进行系统级的设计与仿真.
4.2 仿真程序
clearall;
closeall;
n=10000;%每种信噪比下发送符号数,
T=1;%符号周期
fs=100;%每个符号的采样点数
ts=1/fs;%采样时间间隔
t=0:
ts:
T-ts;%时间矢量
fc=10;%载波频率
c=sqrt(2/T)*exp(j*2*pi*fc*t);%载波信号,sqrt平方根计算
subplot(231);
plot(c,'b');
title('载波信号')
c1=sqrt(2/T)*cos(2*pi*fc*t);%同相载波
c2=-sqrt(2/T)*sin(2*pi*fc*t);%正交载波
M=8;%8—PSK
graycode=[01236745];%编规则graycode格雷码
SNR=0:
15;%信噪比
snr1=10.^(SNR/10);%信噪比转换为线性值
msg=randint(1,n,M);%生成消息序列
subplot(232);
plot(msg);
axis([0,10,0,10]);
title('基带信号')
msg1=graycode(msg+1);%绝对码表示为相对码,幅值相位表示
msgmod=pskmod(msg1,M).';%基带8—PSK调制
subplot(233);
plot(msgmod,'y');
title('基带调制')
tx=real(msgmod*c);%载波调制
subplot(234);
plot(tx);
axis([0,10,-4,4]);
title('载波调制')
tx1=reshape(tx.',1,length(msgmod)*length(c));%调整矩阵行数列数
spow=norm(tx1).^2/n;%求每个符号的平均功率
forindx=1:
length(SNR)
sigma=sqrt(spow/(2*snr1(indx)));%根据符号功率求噪声功率
rx=tx1+sigma*randn(1,length(tx1));%加入高斯白噪声
rx1=reshape(rx,length(c),length(msgmod));
r1=(c1*rx1)/length(c1);%相关运算
r2=(c2*rx1)/length(c2);
r=r1+j*r2;
y=pskdemod(r,M);%8PSK解调
decmsg=graycode(y+1);
[err,ber(indx)]=biterr(msg,decmsg,log2(M));%误比特率
[err,ser(indx)]=symerr(msg,decmsg);%误符号率
end
subplot(235);
plot(r,'m');
title('加噪声后的已调信号');
subplot(236);
plot(y);
axis([0,10,0,10]);
title('8psk解调');
figure
(2)
ser1=2*qfunc(sqrt(2*snr1)*sin(pi/M));%理论误符号率
ber1=1/log2(M)*ser1;%理论误比特率
semilogy(SNR,ber,'-ko',SNR,ser,'-r*',SNR,ser1,SNR,ber1,'-b.');
title('8-Psk载波调制信号在AWGN信道下的性能')
xlabel('Es/No');ylabel('误比特率和误符号率')
legend('误比特率','误符号率','理论误符号率','理论误比特率')
4.3仿真结果
5.仿真调试中出现的错误及原因和排除方法程序设计过程中的地
55行老是提示出现错误,具体处理如下:
经过仔细排查是semilogy(SNR,ber,'-ko',SNR,ser,'-r*',SNR,ser1,SNR,ber1,'-b.');中的ber开始我们弄成了ber1,没有与上面出现的ber对应,所以出现仿真结果不能顺利得出。
6.总结
在通信和信息传输系统、工业自动化或电子工程技术中,调制和解调应用最为广泛。
本设计研究了8PSK的调制和解调原理,以及利用MATLAB对其调制和解调进行了编程和编译仿真,得到的结论和理论上是一致的。
简单而且快捷。
同时利用MATLAB中的8PSK的通信系统进行了仿真研究了其传输的特性。
而调制和解调的基本原理是利用信号与系统的频域分析和傅里叶变换的基本性质,将信号的频谱进行搬移,使之满足一定需要,从而完成信号的传输或处理。
本课程设计主要介绍基于Matlab对8PSK进制的调制仿真实现,通过用MAT LAB仿真8-PSK载波调制信号在AWGN信道下的误码率和误比特率性能,并和理论值进行了比较。
通过这次课程设计,培养了我综合运用所学知识,发现、提出、分析和解决实际问题、锻炼实践的能力,是对我们以后的实际工作能力的具体训练和一个考察过程。
在这次课程设计中,我能够比较系统的了解数字信号的载波传输,尤其是多进制相移监控8PSK。
把理论和实践相结合。
在做设计的过程中难免总会出现各种问题,通过查阅资料,自学其中的相关知识,无形间提高了我们的动手,动脑能力,通过课程设计让我知道了,我们平时所学的知识如果不加以实践的话等于纸上谈兵。
课程设计主要是我们理论知识的延伸,它的目的主要是要在设计中发现问题,并且自己要能找到解决问题的方案,形成一种独立的意识。
我们还能从设计中检验我们所学的理论知识到底有多少,巩固们已经学会的,不断学习我们所遗漏的新知识,把这门课学的扎实。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 MATLAB PSK 调制 仿真 报告