您的当前位置:首页基于MATLAB的FSK调制解调 (1)

基于MATLAB的FSK调制解调 (1)

2021-02-23 来源:小侦探旅游网


基于MATLAB的FSK的实验报告

1.1

姓 实现对FSK的MATLAB仿真. 重点研究问题:

(1) 对FSK的概念、组成以及性能分析方法有深入的研究; (2) FSK调制与解调的原理及应用MATLAB软件实现仿真的方案.

1.2 FSK信号的调制方法

移频键控(FSK):用数字调制信号的正负控制载波的频率。当数字信号的振幅为正时载波频率为f1,当数字信号的振幅为负时载波频率为 f2。有时也把代表两个以上符号的多进制频率调制称为移频键控。移频键控能区分通路,但抗干扰能力不如移相键控和差分移相键控。他的主要调制方法有以下两种:

方法一:

用一个矩形脉冲序列对一个载波进行调频。

s(t) 模拟调频器 e0(t) 图2-3 2FSK信号的产生(一)

方法二:键控法

载波发生器f1 e0(t) 载波发生器f2 图2-4 2FSK信号的产生(二)

键控法是利用矩形脉冲bt来控制开关电路对两个不同的独立频率源进行选通。

1.3 FSK解调的方法

常见的FSK解调方法有两种:相干解调法与非相干解调法.现在我将对这两种解法。

1.4 设计总思路

如下图所示,我将FSK的调制与FSK的解调独立开作为两个子函数,其中FSK调制的输出即可作为FSK解调的输入信号.最后设计一主函数main将两个子函数同时调用完成整个仿真过程。

输出 基带信号输入 载波调制 FSK信号 解调信号 噪声 基带信号输出 判决 低通滤波器 加入相干频率 不同带通滤波器分离信号 模拟基带信号 实现频移

图3-1 设计总思路图

2.1 FSK调制的仿真设计

本文主要是对2FSK进行调制,而2FSK可看做是基带信号与载波频率的结合就可.FSK的产生思路参考的是键控法,如图4

载波发生器f1 e0(t) 载波发生器f2

图3-2 2FSK信号的产生(二)

2.2 FSK解调的仿真设计

FSK的解调方法有很多,比如非相干检测法与相干检测法,鉴频法,过零检测法及差分检波法等等.而我则选择使用相干检测法对FSK进行解调. cos1t 1 带通滤波器1 输相乘器 低通滤波器输出 入 抽样脉冲 抽样判决器 带通滤波器2 相乘器 低通滤波器 2 cos2t

图3-3 FSK信号的相干检测原理图 两个带通滤波器的作用是起分路作用。它们的输出分别与相应的同步相干载波相乘,再分别经低通滤波器取出含基带数字信息的低频信号, 滤掉二倍频信号,抽样判决器在抽样脉冲到来时对两个低频信号进行比较判决,即可还原出基带数字信号。 如上图所示的FSK信号的相干检测原理图,FSK信号可以采用两个乘法检测器进行

相干检测. 上图中输入信号为2FSK信号加上噪声组成

带通滤波器2的设计类似滤波器1,只是更改频率为fc2就可.

滤波器设计中使用了切比雪夫滤波器,是因为切比雪夫滤波器通带内有等波纹起伏,截止特性特别好,因此选择了切比雪夫滤波器.

[b2, a2]=cheby1(3, .5, 2.5*fc1/fs, 'high'); y2 =filtfilt(b2, a2, y).*sin(2*pi*fc2*t); y2 =filtfilt(b, a, y2);

在与相干载波频率cos1t,cos2t相乘后,完成移频,后通过低通滤波器得到基带模拟输出信号.然后通过判决电路即可判断输出的参量是0还是1.

2.3 误码率计算的设计

相干解调时,带通滤波器后接有乘法器和低通滤波器,低通滤波器输出的就是带有噪声的有用信号,他们的概率密度函数属于高斯分布,经过计算,其漏报率p(0/1)为

1P(0/1)erfc2r2 (4-1)

虚报概率p(1/0)为

1r P(1/0)erfc (4-2)

22系统的误码率为:

1r (4-3) PeP(1)P(0/1)P(0)P(1/0)erfc22

在实验中,为降低误码率,可以通过将主函数main文件中的N1值即每秒发送的比特数

增加的方式,达到降低误码率的效果.

3.1 FSK仿真图

Signal10.50-0.5-100.511.522.5Spectrum0.80.60.40.2002468f/fb1012141633.544.55

图4-1 基带信号调制的结果与其频谱

由图4-1可以看出,当输入基带信号为0时,及输入信号为1时,是不同的。结合第二章对FSK信号产生的分析,

s2FSKtDngtnT5cos1tnDngtnT5cos0tn (2-3)

nn参数设计如下:信号为0时的频率fc1为2HZ,信号为1时的频率fc2为5HZ..波特率fb为1.采样频率为32 HZ.每次产生的比特个数为1000.输入基带为[0 0 1 1 1 0 0 1 0 1 1 0 0 0 1 0].再结合图形,即可发现图4-1的上图对应的就是[1 0 0 1 0]这一段基带信号以及调制后的FSK信号.其中信号0的频率为4信号1的频率为10,即奈奎斯特速率.

再看图4-1的下图,可以发现在频率为2 HZ和5 HZ 的地方频谱最密集.这也与参数设置相符合.

3.2 调制与解调后的信号

Input20100-1000.511.522.5Output33.544.5531210-100.511.522.533.544.550111

图4-2 解调前经过噪声后的输入信号及解调后的输出信号

Input40200-20-4000.511.522.5Output51001033.544.550-500.511.522.533.544.55

图4-3 噪声能量加倍后的输入输出信号

Input1050-500.511.522.5Output33.544.55110.510100-0.500.511.522.533.544.55

图4-4 噪声能量减半后的输入输出信号

由图4-1,图4-2,图4-3.可以看出,当我将噪声能量由N0B分别改为2N0B和

1N0B2时,解调系统输入的解调信号与解调后输出的基带信号都发现了巨大的变化.这是因为解调信号就是由输入FSK信号加上噪声后形成.

参数设计如下:信号为0时的频率fc1为2HZ,信号为1时的频率fc2为5HZ..波特率fb为1.采样频率为32 HZ.每次产生的比特个数为1000.输入基带为[0 0 1 1 1 0 0 1 0 1 1 0 0 0 1 0].snr=-12:3:10.snr2=10.^(snr./10).

结合图4-2图4-3图4-4可以很清晰的看出,当我将snr的值扩大一倍或者缩小一倍时,噪声的能量也随即增加减少一倍.可以发现,无论是输入信号还是输出解调信号都发生了很大改变.输入信号的幅度值与噪声的增加成正比,而输出信号的幅度值也同样跟随噪声的改变而改变.

3.3 误码率

10010-1BER10-210-3-10-8-6-4-2信噪比(dB)024

图4-5 BER(误码率)的仿真结果.

10010-1BER10-210-3-25-20-15-10信噪比(dB)-505

图4-6 噪声能量加倍后的误码率

10-1BER10-210-3-3-2-10信噪比(dB)123

图4-7 噪声能量减半后的误码率

通过图4-5,图4-6,图4-7可以发现,噪声的变化对系统误码率也产生了影响,因此对系统的研究需要认真的考虑噪声的存在.另外,当系统输入比特发生变化的时候,同样会对误码率的影响.因此在实际仿真过程中,我将输入比特设置较大以降低噪声的影响.减小误码率。

参数设置:信号为0时的频率fc1为2HZ,信号为1时的频率fc2为5HZ..波特率fb为1.采样频率为32 HZ.每次产生的比特个数为1000.在改变噪声后误码率的改变很明显但是并没有产生数量级的变化,仍然在10-0与10-3之间.

当我将每次产生的比特个数由1000改为10000或者改为100时候,误码率的变化将会是巨大的.他将直接引起数量级的变化.因此在减小系统误码率的问题上,可以通过减小系统噪声,和增加每次产生的比特个数的办法来解决.

结论

本文中,我通过MATLAB工具,通过相干检测法,对频移键控(FSK)进行了仿真处理,

仿真结果证明了课本理论的正确.

在实验过程中,我很好的利用键控法产生了FSK信号,同时利用了相干解调法对FSK

信号进行了解调.最后利用MATLAB语言在MATLAB上通过程序实现FSK信号的仿真.最后对系统噪声的影响,误码率进行了较详细的分析.基本达到本次设计的要求.

因篇幅问题不能全部显示,请点此查看更多更全内容