基于MATLAB的MSK调制解调实现.docx

上传人:b****5 文档编号:6340343 上传时间:2023-01-05 格式:DOCX 页数:14 大小:134.26KB
下载 相关 举报
基于MATLAB的MSK调制解调实现.docx_第1页
第1页 / 共14页
基于MATLAB的MSK调制解调实现.docx_第2页
第2页 / 共14页
基于MATLAB的MSK调制解调实现.docx_第3页
第3页 / 共14页
基于MATLAB的MSK调制解调实现.docx_第4页
第4页 / 共14页
基于MATLAB的MSK调制解调实现.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

基于MATLAB的MSK调制解调实现.docx

《基于MATLAB的MSK调制解调实现.docx》由会员分享,可在线阅读,更多相关《基于MATLAB的MSK调制解调实现.docx(14页珍藏版)》请在冰豆网上搜索。

基于MATLAB的MSK调制解调实现.docx

基于MATLAB的MSK调制解调实现

基于MATLAB的MSK调制解调实现

摘要通过这次课程设计熟悉MATLAB中M文件的使用方法,并在掌握MSK调制解调原理的基础上,编写出MSK调制解调程序。

绘制出MSK信号解调前后在时域和频域中的波形,并观察解调前后频谱有何变化以加深对MSK信号解调原理的理解。

对信号叠加噪声,并进行解调,绘制出解调前后信号的时频波形,改变噪声功率进行解调,分析噪声对信号传输造成的影响。

该课程设计使用的平台为MATLAB,当输入随机序列后能够得到正确的仿真结果。

同时课本上的理论识得到验证。

关键词时频波形;M文件;MATLAB7.1;调制解调

1引言

本课程设计主要用于MSK信号的调制与解调,同时进一步了解MSK信号的的解调调制原理以及其性能。

再次基础上进一步对信号叠加噪声,并绘制相应波形,同时进行分析。

1.1课程设计目的

利用MATLAB集成环境下的M文件,编写程序来实现MSK的调制解调,并绘制出解调前后的时域和频域波形及叠加噪声时解调前后的时频波形,根据运行结果和波形来分析该解调过程的正确性及信道对信号传输的影响。

通过这次课程设计进一步加深了我对最小二进制相移键控(MSK)调制解调性能的理解与掌握,同时将课堂上学到的理论知识用于实践。

增强了我在模拟仿真方面的能力,为以后系统开发和通信系统仿真打下了良好的基础。

1.2课程设计要求

通过课程设计,掌握M文件的使用,同时进一步加深MSK调制解调的原理,在此基础上编写出MSK调制解调的程序。

并绘制出MSK信号解调前后在时域和频域中的波形,观察解调前后频谱有何变化以加深对MSK信号解调原理的理解。

通过这一些之后再加上噪声,对信号解调,并绘制出解调前后信号的时频波形,改变噪声功率进行解调,分析噪声对信号传输造成的影响。

1.3课程设计步骤

先定义MSK输入信号的参数然后用dmod函数做输入的调制,之后画相应的频谱图。

再用dedmod做解调输出。

然后加入噪声,再进行解调输出。

1.定义载波频率Fs,输出信号频率Fd,采样频率Fs。

2.设置输入信号X,同时做信号的调制。

3.画出相应的波形图。

4.做输出信号的解调波形,同时画解调波形图。

5.加入高斯白噪声。

再进行信号的解调输出,画相应的波形。

6.对结果进行比较分析。

1.4课程设计平台

本课程设计中应用M文件设计MSK信号调制解调程序。

所以在本课程设计中有必要对MATLAB进行简要的描述。

MATLAB语言是当今国际上科学界最具影响力、也是最具活力的软件。

它具有强大的数学运算能力、方便实用的绘图功能及语言的高度集成性。

MATLAB是矩阵实验室(MatrixLaboratory)之意。

MATLAB除具备卓越的数值计算能力外,它还提供了专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。

MATLAB的出现使得通信系统的仿真能够用计算机模拟实现,免去构建实验系统的不便,而且操作十分简便,只需要输入不同的参数就能得到不同情况下系统的性能,而且在结果的观测和数据的存储方面也比传统的方式有很多优势。

因而MATLAB在通信仿真领域得到越来越多的应用。

MATLAB的一大特点是提供了很多专用的工具箱和模块库,例如通信工具箱和模块库、数字信号处理工具箱和模块库、控制工具箱和模块库等,MATLAB在这些工具箱和模块库中提供了很多常用的函数和模块,使得仿真更容易实现。

在本课程设计里,我们主要利用MATLAB中的M文件实现MSK解调器的设计,对解调前后波形进行比较,绘制时域波形。

2MSK调制解调原理

MSK信号是一种包络恒定、相位连续、带宽最小并且严格正交的2FSK信号,其波形如图2-1所示。

图2-1MSK信号的波形图

2.1MSK基本原理

MSK信号是一种相位连续、包络恒定并且占用带宽最小的二进制正交FSK信号。

它的第k个码元可以表示为:

  

   (2-1)

式中,

为视在角载频;

;T为第k个码元确定的初始相位。

由上式可以看出,当

时,码元频率

等于

;当

时,码元频率

等于

的距离等于

这是2FSK信号最小频率间隔。

MSK信号具有特点如下:

①MSK信号是正交信号;②其波形在码元间是连续的;③其包络是恒定不变的;④其附加相位在一个码元持续时间内线性地变化

;⑤调制产生的频率偏移等于

Hz;⑥在一个码元持续时间内含有的载波周期数等于1/4的整数倍。

2.2MSK正交表示法

式(2-1)可以用频率为

的两个正交分量表示。

将式(2-1)进行三角公式变换,得到:

(3-1)

式中,

(3-2)

式(2-2)表示,此MSK信号可以分解为同相分量(I)和正交分量(Q)两部分。

2.3MSK信号的调制

由式(2-2)可知,MSK信号可以用两个正交的分量表示。

根据该式构成的MSK信号的产生方框图如图2-2所示。

图2-2MSK调制原理图

2.4MSK信号的解调

由于MSK信号是最小二进制FSK信号,所以它可以采用解调FSK信号的相干法和非相干法解调。

图2-3是MSK信号的解调原理框图。

图2-3MSK信号的解调原理图

3仿真实现过程

3.1MSK信号的产生

因为MSK信号可以用两个正交的分量表示:

(k-1)Ts<t≤kTs

式中:

右端第1项称作同相分量,其载波为

;第2项称作正交分量,其载波为

在仿真时先设置输入信号的参数:

载波频率Fc调制后,数字信号速率Fd,模拟信号采样率Fs。

之后产生要调制的随机数字信号x;然后用dmod函数进行调制,产生调制信号。

dmod函数是MATLAB中一个常用来进行信号调制的函数,它后面的参数包括被调制信号,载波信号的频率,输出信号的速率以及采样速率和所进行调制的函数。

部分程序代码和仿真图如下所示:

M=2;%定义输入随机信号的参数

Fc=20;%载波信号的频率Fc为20;

Fd=10;%输出信号的速率Fd为10;

Fs=200;%采样速率Fs为200;

x=randint(1,10000);%产生随机的输入序列

y=dmod(x,Fc,Fd,Fs,'msk');%对用dnod函数对输入的随机序列进行调制

图3-1MSK调制信号的波形

由调制波形图可以看出MSK的调制信号特性与2FSK调制信号的特性非常的相似,即:

当输入信号为“1”时,调制后的波形比输入信号为“0”时的波形要密。

同时MSK信号的包络是恒定的,相位则是连续的。

带宽相对于一般的2FSK信号要小,而且正交。

3.2MSK解调实现

由于MSK信号是最小二进制FSK信号,所以它可以采用解调FSK信号的相干法和非相干法解调。

在进行程序仿真时,用ddemod函数进行调制信号的解调。

同时画出解调前后的时域与频域的波形图。

在画频域的波形图时先对已调信号与解调信号进行DTFT变换,之后画出相应的波形。

ddemod函数是与dmod函数相对应,用来对已调信号进行解调的。

其后面的参数与dmod函数后的一模一样。

部分程序与仿真波形图如下所示:

z=ddemod(y,Fc,Fd,Fs,'msk');%对调制后的MSK信号进行解调

图3-2MSK信号的解调波形

由解调信号的时域波形可以看出,解调后的波形与原始输入信号的波形完全一致。

同时不难发现解调后的信号很稳定。

n1=1:

1:

length(y);w=[0:

1:

1000]*pi/500;

n2=1:

1:

10000;w=[0:

1:

1000]*pi/500;%定义频域参数n1为y的长度,n2为输入原始信号的长度

Y=y*exp(-j*n1'*w);%对已调信号进行DTFT变换

Z=z*exp(-j*n2'*w);%对解调信号进行DTFT变换

magY=abs(Y);

magZ=abs(Z);

图3-3MSK信号解调前后的频域波形

由解调后的频域波形可以看出MSK信号的稳定性很好,说明MSK信号的抗噪声性能很强。

图3-4调制前解调后的频域波形

通过调制前和解调后的频域波形比较,发现解调非常的成功,波形被完整无误的输出来。

3.3叠加噪声的MSK解调

由于信号在传输的过程中难免要受到外来噪声的影响,所以在进行通信仿真时务必要在理想的模拟通信系统中加入高斯白噪声对系统进行影响,以此来判断一个通信系统抗噪声性能的好坏。

在这次课程设计中,我利用awagn函数对已调信号加入信噪比为0.001的高斯白噪声。

然后对加入了噪声的已调信号进行解调,同时画出其时域与频域的波形,将其与没有加噪声的调制信号进行比较,不难发现:

加入噪声后对已调信号的影响很大,但对解调信号而言,噪声对解调后的影响还是有一定限度的。

这说明MSK解调系统的抗噪声性能很强。

仿真的部分程序与相应的仿真波形图如下所示:

y1=awgn(y,0.001);%对已调信号加入高斯白噪声

z1=ddemod(y,Fc,Fd,Fs,'msk');%对加入高斯白噪声的调制信号进行解调

[num1,ratio1]=symerr(x,z2)%对加入噪声后解调的信号进行误码率的测定

通过symerr函数对解调信号的误码率进行测定,得到的误码率为0.0024.因为输入的随机序列长度为10000,错了24个。

说明MSK信号的抗噪声性能很强。

当将信噪比变为1时,输出的误码率很快发生了变化,由原来的0.0024变为了6.0000e-004.图形也同时发生了变化。

通过图形的比较,可以发现噪声对调制信号的影响很大,但通过解调后影响相对减小了很多。

图3-5信噪比为0.001的MSK信号加噪声解调前后的时域波形

图3-6信噪比为1的MSK信号加噪声解调前后的时域波形

Y1=y1*exp(-j*n1'*w);%对加噪声后的已调信号进行DTFT变换

Z1=z1*exp(-j*n2'*w);%对加噪声后的解调信号进行DTFT变换

magY1=abs(Y1);

magZ1=abs(Z1);

图3-7信噪比为2的MSK信号加噪声解调前后的频域波形

 

在多次改变信噪比后,将信噪比与误码率联合做了如图3-8所式的波形图。

图3-8信噪比与产生误码率曲线图

通过图形可知,随着系统信噪比的增加,解调后输出的误码率随之减小,当信噪比增加到一定程度时,误码率变为0。

说明噪声对信号的影响在一定程度上是可以减小,但很难消除,因为每一个系统都不可能是理想系统,总会受到外界的干扰。

4遇到的问题及解决办法

遇到的问题一:

在设计程序时由于一开始使用的不是随机序列,同时MSK信号的抗噪声性能很强,当输入的是有限个序列时,很难判断出噪声对信号的影响。

所以在加入噪声后再进行解调时根本就无法发现噪声对信号的影响。

解决办法:

利用randint函数来产生100个随机序列,然后再在调制好了的信号上加入高斯白噪声,之后对调制信号解调。

这样发现噪声对信号的一点点影响。

遇到的问题二:

在画解调信号前后的频域波形时,由于忽略了调制信号和解调后的信号长度不一致,所以只设置了一个参数n1,当进行仿真画图时一直都无法画出来。

解决办法:

在老师的指导下,我又重新检查了一变程序。

后来发现错误,并重新添加了参数n2,然后在进行DTFT转换后画图得到了正确的结果。

遇到的问题三:

在加入高斯白噪声时,由于不清楚awgn这个函数,所以我一直按照参考书上的方法进行噪声的添加,但噪声却一直没有成功的添加。

解决办法:

在老师的知道下,我通过MATLAB里的help帮我很快了解了awgn函数,后来成功加入噪声也是可想而知的了。

5结束语

这次通信原理课程设计虽然不是上大学以来第一次做课程设计,但它却是最成功的一次。

这次课程设计耗时短,但得出的结果却很正确。

在以往的课程设计中,耗了很多时间也并不一定能够得到正确的结果。

课程设计本来就是锻炼我们的动手能力,同时是一个将我们在课堂上学到的理论知识用于实践的平台。

这次通信原理课程设计很到的达到了这样的目的。

它不仅使我的理论知识的到了实践和加深,同时也让我从另一个角度去理解2FSK信号和MSK信号。

当我接到老师给我们的任务书时,我当时头都大了。

看到是MSK信号的调制与解调,开始有点茫然。

因为我们在通信原理课上根本就没有提到过什么MSK,后来通过图书馆的一些参考书和我们的教材我才发现原来MSK信号是2FSK信号的一个最简单的特例。

慢慢的通过2FSK信号的特性,我也了解了很多关于MSK信号的特性,比如:

MSK信号是一种相位连续、包络恒定并且占用带宽最小的二进制正交FSK信号。

通过这次课程设计不仅仅加强了我在通信原理这一块的了解,同时也进一步提高了我MATLAB的编程能力以及对数字信号里频域与时域的图形的画法。

更重要的是让我懂得了在遇到挫折时不要轻易说出放弃两个字,因为在很多时候事情总是“峰回路转疑无路,柳暗花明又一村”。

所以当我们遇到挫折时第一个想到的不应该是放弃,而是想如何将遇到的困难解决。

成功不会很轻易的来到我们的身边,但我们没有付出足够的努力时,成功永远都是离我们那么的远。

在机房写报告的时候,由于我的粗心,没有随时备份写好了的报告。

本来快完了的报告结果机子突然关机了,里面的内容什么都没有了。

当时很是郁闷,搞了这么久,居然一下就全没了。

可是回到寝室想,没都没了气还有个屁用啊!

所以二话没说又重新开始写报告,没想到很快就将它搞定了。

这次课程设计的够程中虽然也遇到了几个棘手的问题,但通过我查阅资料,以及在老师的指导和同学的帮助下很快的将问题给解决了。

在这里我对在课程设计中帮助我的老师和同学表示由衷的感谢!

 

参考文献

[1]黄文梅,熊桂林,杨勇.信号分析与处理—MATLAB语言及应用.长沙:

国防科技大学出版社,2000.

[2]唐向宏,岳恒立,郑雪峰.MATLAB及在电子信息类课程中的应用.北京:

电子工业出版社,2006,8.

[3]邓华.MATLAB通信仿真及应用实例详解.人民邮电出版社,2003.

[4]樊昌信,曹丽娜.通信原理.国防工业出版社,2006.2

[5]孙屹.MATLAB通信仿真开发手册.国防工业出版社.北京:

2005

 

附录:

MSK信号调制解调的源程序代码

%程序名称:

msk_xie.m

%程序功能:

利用MATLAB中的M文件编写程序,实现MSK信号的调制与解调

%程序作者:

谢理义

%最后修改日期:

2009-01-16

%画时域波形的程序代码:

M=2;%定义输入随机信号的参数

Fc=20;

Fd=10;

Fs=200;

t=0:

500;

x=randint(1,100);%产生随机的输入序列

y=dmod(x,Fc,Fd,Fs,'msk');%对输入的随机序列进行调制

figure

(1);%第一张图画调制前后的波形

subplot(2,1,1),stem(x),title('调制前的输入波形');

subplot(2,1,2),(t,y(1:

501)),title('调制后的输出波形');axis([0500-11])

z=ddemod(y,Fc,Fd,Fs,'msk');%对调制后的MSK信号进行解调

figure

(2);%第二张图画解调前后的时域波形

subplot(2,1,1),plot(y),title('解调前的波形');axis([0500-11])

subplot(2,1,2),stem(z),title('解调后的波形');axis([09901])

y1=awgn(y,0.001);%对已调信号加入高斯白噪声

z1=ddemod(y,Fc,Fd,Fs,'msk');%对加入高斯白噪声的调制信号进行解调

[num,ratio]=symerr(x,z1)

figure(3);%第三张图画加噪声解调前后的波形图

subplot(2,1,1),plot(y1),title('加噪声后解调前的波形');axis([0500-11])

subplot(2,1,2),stem(z1),title('加噪声后解调后的波形');axis([09901])

画频域波形的代码:

n1=1:

1:

length(y);w=[0:

1:

1000]*pi/500;%定义频域参数

n2=1:

1:

100;w=[0:

1:

1000]*pi/500;

Y=y*exp(-j*n1'*w);%对已调信号进行DTFT变换

Z=z*exp(-j*n2'*w);%对解调信号进行DTFT变换

magY=abs(Y);

magZ=abs(Z);

figure(4);%第四张图画解调前后的频域波形图

subplot(2,1,1),plot(w/pi,magY),title('解调前的频域波形')

subplot(2,1,2),plot(w/pi,magZ),title('解调后的频域波形')

Y1=y1*exp(-j*n1'*w);%对加噪声后的已调信号进行DTFT变换

Z1=z1*exp(-j*n2'*w);%对加噪声后的解调信号进行DTFT变换

magY1=abs(Y1);

magZ1=abs(Z1);

figure(5);%第五张图画加噪声解调前后的频域波形

subplot(2,1,1),plot(w/pi,magY1),title('加噪声后解调前的频域波形')

subplot(2,1,2),plot(w/pi,magZ1),title('加噪声后解调后的频域波形')

figure(6);

subplot(2,1,1),plot(w/pi,magX),title('调制前的频域波形')

subplot(2,1,2),plot(w/pi,magZ),title('解调后的频域波形')

信噪比与误码率的画图程序:

x=[-10-8-5-4-3-1023];

y=[0.26280.19230.07610.04260.02540.00480.00202.0000e-0040];

semilogy(x,y)

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1