基于MATLAB的FSK调制解调实现完整版Word下载.docx
《基于MATLAB的FSK调制解调实现完整版Word下载.docx》由会员分享,可在线阅读,更多相关《基于MATLAB的FSK调制解调实现完整版Word下载.docx(9页珍藏版)》请在冰豆网上搜索。
每个比特被转换为一个频率,0由较低的频率表示,1由较高的频率表示。
1.1、FSK概念
传“0”信号时,发送频率为f1的载波;
传“1”信号时,发送频率为f2的载波。
可见,FSK是用不同频率的载波来传递数字消息的。
实现模型如下图:
1.2、2FSK信号的波形及时间表示式
根据上图模型的实现可以得到2FSK的信号波形如图:
2FSK信号的时间表达式为:
由以上表达式可见,2FSK信号由两个2ASK信号相加构成。
注意:
2FSK有两种形式:
(1)相位连续的2FSK;
(2)相位不连续的2FSK。
在这里,我们只讨论相位不连续的频移键控信号,这样更具有普遍性。
1.3、2FSK信号的产生方法
2FSK信号的产生方法:
2FSK信号可以两类方法来产生。
一是采用模拟调频的方法来产生(图1);
另一种方法是采用键控法(图2);
图1.3-1图1.3-2
1.4、2FSK信号的功率谱密度
这里我们仅介绍一种常用的近似方法,即把二进制频移键控信号看成是两个幅移键控信号相叠加的方法
如果s1(t)的功率谱密度为Ps1(f);
s2(t)的功率谱密度为Ps2(f),利用平稳随机过程经过乘法器的结论,上式可以整理为如下形式,
核心问题:
Ps1(f)=?
与2ASK信号表达式中的s(t)相同,
根据上面的公式,2FSK信号的功率谱密度如图下图所示。
图1.4-1
根据以上总结:
2FSK功率谱密度的特点如下,
1)、2FSK信号的功率谱由连续谱和离散谱两部分构成,离散谱出现在f1和f2位置;
2)、功率谱密度中的连续谱部分一般出现双峰。
若两个载频之差|f1-f2|≤fs,则出现单峰。
3)、所需传输带宽BFSK=|f1-f2|+2fs。
二2FSK信号的解调
2FSK信号的解调方法有很多,如鉴频器法、相干法、包络检波法、过零检测法等等。
根据要求这里我将用相干解调的方法对其进行解调。
FSK在MATLAB环境下过程与结果
FSK的模拟仿真是采用的MATLAB软件,其在电脑运行环境如图3-1所示。
实验过程是在窗口点击MATLAB快捷方式,使其运行,将FSK调制与解调的程序输入框中,点击回车即可运行,运行结果后面进行分析。
图1.5-1
在MATLAB环境下调制与解调的程序如下:
(百分号后为程序注释)
functionFSK
Fc=10;
%载频
Fs=40;
%系统采样频率
Fd=1;
%码速率
N=Fs/Fd;
df=10;
numSymb=25;
%进行仿真的信息代码个数
M=2;
%进制数
SNRpBit=60;
%信噪比
SNR=SNRpBit/log2(M);
seed=[1234554321];
numPlot=15;
%产生25个二进制随机码
x=randsrc(numSymb,1,[0:
M-1]);
figure
(1)
stem([0:
numPlot-1],x(1:
numPlot),'
bx'
);
title('
二进制随机序列'
)
xlabel('
Time'
ylabel('
Amplitude'
%调制
y=dmod(x,Fc,Fd,Fs,'
fsk'
M,df);
numModPlot=numPlot*Fs;
t=[0:
numModPlot-1]./Fs;
figure
(2)
plot(t,y(1:
length(t)),'
b-'
%画出经过信道的实际信号
axis([min(t)max(t)-1.51.5]);
加入高斯白噪声后的已调信号'
%相干解调
figure(4)
调制后的信号'
%在已调信号中加入高斯白噪声
randn('
state'
seed
(2));
y=awgn(y,SNR-10*log10(0.5)-10*log10(N),'
measured'
[],'
dB'
%在已调信号中加入高斯白噪声
figure(3)
holdon;
numPlot-1],z2(1:
ro'
holdoff;
axis([0numPlot-0.51.5]);
非相干解调后的信号'
legend('
原输入二进制随机序列'
'
%误码率统计
[errorSymratioSym]=symerr(x,z1);
figure(8)
程序的运行过程是:
首先产生25个随机序列码(如图1.5-1所示注:
此序列为随机序列,每一次运行程序所产生的序列都不同),然后通过调用函数对该序列进行调制(如图1.5-2所示)。
相干解调后的误码率统计(如图1.5-3所示)。
在通过调用函数让函数通过相干解调方式进行解调,解调信号与原信号的比较(如图1.5-4所示)。
在通过调用函数让调制信号
图1.5-1图1.5-2
图1.5-3图1.5-4
(注释:
图1.5-3中右上角的意思为,TheoreticalSER理论软件错误率;
TheoreticalBER理论二进制误码率;
SimulatedSER模拟软件错误率;
SimulatedBER模拟二进制误码率。
下图为用MATLAB进行FSK原理及误码性能仿真图:
图1.5-5
三.心得体会
通过本次专业课程设计,进一步加深了我对FSK方面知识的理解,也更深刻的体会到MATLAB在信号与先行系统等方面的应用的重要性。
由于设计时间较短,在设计过程考虑问题不全面,专业知识水平不足,编程工具MATLAB是英文版,帮助系统也全是英文,对有些函数在功能和使用还不是特别的清楚,也只能是别学习边实践,以至在设计过程中出现了不少问题,这只是一个开始,只要有更多的时间,相信我能见任务完成得更好。
以至于仿真出来的图象没有打点,这是这次课程设计出现的不足之处。
四.参考文献
[1]、《通信原理》樊昌信主编国防工业出版社2001年6月
[2]、《移动通信》覃团发等编重庆大学出版社2005年5月
[3]、《MATLAB图形图象处理应用教程》郝文化主编中国水利水电出版社
2002年4月
[4]、《MATLAB实用教程》徐金明主编清华大学出版社
✧MATLAB信息工程工具箱技术手册魏巍国防工业出版社
✧MATLAB与通信仿真王立宁人民邮电出版社2000年
✧MATLAB通信仿真开发手册李妍国防工业出版社