湖南工学院
计算机仿真论文
《基于MATLAB的2FSK数字通信系统设计》
院系 电气与信息工程
姓名 陈斌
学号 09401140228
指导教师 张松华
2012-5-20
理学与信息科学学院 通信原理课程设计报告
一、 课程设计目的
本次课程设计是对通信原理课程理论教学和实验教学的综合和总结。通过这次课程设计,使同学认识和理解通信系统,掌握信号是怎样经过发端处理、被送入信道、然后在接收端还原。
要求学生掌握通信原理的基本知识,运用所学的通信仿真的方法实现某种传输系统。能够根据设计任务的具体要求,掌握软件设计、调试的具体方法、步骤和技巧。对一个实际课题的软件设计有基本了解,能进一步掌握高级语言程序设计基本概念,掌握基本的程序设计方法,拓展知识面,激发在此领域中继续学习和研究的兴趣,为学习后续课程做准备。
二、课程设计内容
在信道中,大多数具有带通传输特性,必须用数字基带信号对载波进行调制,产生各种已调数字信号。可以用数字基带信号改变正弦型载波的幅度、频率或相位中的某个参数,产生相应的数字振幅调制、数字频率调制和数字相位调制。也可以用数字基带信号同时改变正弦型载波幅度、频率或相位中的某几个参数,产生新型的数字调制。
本课程设计旨在根据所学的通信原理知识,并基于MATLAB软件,设计一2FSK 数字通信系统。2FSK数字通信系统,即频移键控的数字调制通信系统。可以基于MATLAB仿真软件以及Simulink仿真环境设计该系统。频移键控是利用载波的频率变化来传递数字信息。在2FSK中,载波的频率随二进制基带信号在f1和f2两个频率点间变化。因此,一个2FSK信号的波形可以看成是两个不同载频的2ASK信号的叠加。可以利用频率的变化传递数字基带信号,通过调制解调还原数字基带信号,实现课程设计目标。
三、设计原理
在二进制数字调制中,若正弦载波的频率随二进制基带信号在f1和f2两个频率点间变化,则产生二进制移频键控信号(2FSK信号)。
二进制移频键控信号可以看成是两个不同载波的二进制振幅键控信号的叠加。然后在MATLAB中产生高斯白噪声,这非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。高斯白噪声,是指噪声的概率密度函数满足正态分布统计特性,同时它的功率谱
1
理学与信息科学学院 通信原理课程设计报告
密度函数是常数的一类噪声。这里值得注意的是,高斯型白噪声同时涉及到噪声的两个不同方面,即概率密度函数的正态分布性和功率谱密度函数均匀性,二者缺一不可。其解调原理是将二进制移频键控信号分解为上下两路二进制振幅键控信号,分别进行相干解调,通过对上下两路的抽样值进行比较最终判决出输出信号,并与原信号进行对比统计。
基本的系统原理图如下:
二进制数字基带信号 2FSK调制 加入高斯白噪声
求误码率
四、实现方法
抽样判决输出信号 2FSK相干解调 通过在Matlab环境下利用相关程序对二进制信号进行抽样产生二进制随机序列,并在此时确定抽样间隔、抽样个数,进行显示。然后对二进制信号进行2FSK调制,利用Matlab函数库中awgn函数在信道中加入高斯白噪声,并对此时的信号进行显示,接着进行相干解调,输出显示解调后序列,对比信号调制前后的变化,统计误码率,并分析调制优劣。以下为详细过程:
a) 调整模块
使用键控法产生2FSK信号,即由电子开关在两个的频率源之间转换形成,这样的相邻码元之间相位不一定连续。 产生2FSK调制信号原理图:
振荡器1f1 基带信 号反相器 振荡器2 f2
选通开关相加器e2FSK(t)选通开关2
理学与信息科学学院 通信原理课程设计报告
Fc=10; %载频 Fs=40; %系统采样频率 Fd=1; %码速率 N=Fs/Fd; df=10;
numSymb=25; %进行仿真的信息代码个数 M=2; %进制数 SNRpBit=60; %信噪比 SNR=SNRpBit/log2(M); seed=[12345 54321]; numPlot=25;
如上图,使用产Bernoulli Binary Generator模块生二进制随机比特流,通过键控法进行2FSK调制。 figure(1)
%产生25个二进制随机码
x=randsrc(numSymb,1,[0:M-1]);%产生25个二进制随机码 subplot(2,2,1)
stem([0:numPlot-1],x(1:numPlot),'bx'); title('二进制随机序列') xlabel('Time'); ylabel('Amplitude');
3
理学与信息科学学院 通信原理课程设计报告
2、 传输模块 (1)2FSK调制阶段
在二进制数字调制中,若正弦载波的频率随二进制基带信号在f1和f2两个频率点间变化,则产生二进制移频键控信号(2FSK信号)。二进制移频键控信号的时间波形如下图所示: ak as(t) bs(t) c d e f
g2FSK信号
1011001ttttttt图中波形g可分解为波形e和波形f,即二进制移频键控信号可以看成是两个不同载波的二进制振幅键控信号的叠加。 若二进制基带信号的1符号对应于载波频率f1,0符号对应于载波频率f2,则二进制移频键控信号的时域表达式为:
%调制
y=dmod(x,Fc,Fd,Fs,'fsk',M,df); numModPlot=numPlot*Fs; t=[0:numModPlot-1]./Fs; subplot(2,2,2)
plot(t,y(1:length(t)),'b-'); axis([min(t) max(t) -1.5 1.5]); title('调制后的信号') xlabel('Time'); ylabel('Amplitude');
4
理学与信息科学学院 通信原理课程设计报告
(2)在已调信号中加入高斯白噪声
在二进制数字调制系统抗噪声性能分析中,假设信道特性是恒参信道,在信号的频带范围内其具有理想矩形的传输特性(可取传输系数为K)。 噪声为等效加性高斯白噪声, 其均值为零,方差为σ2。 加入高斯噪声信道的总图如下
其中,Scope图为原随机二进制比特流图形,Scope3图为高频率f1信号调制后的波形,Scope2图为低频率f2信号调制后的波形,Scope14图为经过2FSK调制后未加高斯白噪声前的波形图,Scope13为经过加有高斯白噪声信道后的波形图,Scope5图为经过解调抽样判决后的波形信号。
%在已调信号中加入高斯白噪声 randn('state',seed(2));
y=awgn(y,SNR-10*log10(0.5)-10*log10(N),'measured',[],'dB'); %在已调信号中加入高斯白噪声 subplot(2,2,4)
plot(t,y(1:length(t)),'b-'); %画出经过信道的实际信号 axis([min(t) max(t) -1.5 1.5]); title('加入高斯白噪声后的已调信号') xlabel('Time'); ylabel('Amplitude');
5
理学与信息科学学院 通信原理课程设计报告
3、 解调模块 (1)解调输出
本设计使用相干解调。其解调原理是将2FSK信号分解为上下两路2ASK信号分别进行解调,然后进行判决。抽样判决是直接比较两路信号抽样值的大小,判决规则应与调制规则相呼应,调制时若规定“1”符号对应载波频率f1,则接收时上支路的样值较大,应判为“1”;反之则判为“0”。
将加入的高斯白噪声滤除,并抽样判决出解调后的信号:
输入
ω1 带通滤波器 相乘器 低通滤波器 抽样脉抽样判决器 输出 Cosω1t 带通滤波器 ω2 Cosω2t 相乘器 低通滤波器 6
理学与信息科学学院 通信原理课程设计报告
调制后的信号经过带通滤波器和低通滤波器解调出不同频率的两路信号,通过抽样判决器,解调出原信号。
%相干解调
z1=ddemod(y,Fc,Fd,Fs,'fsk/eye',M,df); %带输出波形的相干M元频移键控解调 subplot(2,2,3)
stem([0:numPlot-1],x(1:numPlot),'bx'); hold on;
stem([0:numPlot-1],z1(1:numPlot),'ro'); hold off;
axis([0 numPlot -0.5 1.5]);
title('相干解调后的信号原序列比较')
legend('原输入二进制随机序列','相干解调后的信号') xlabel('Time'); ylabel('Amplitude')
(2)、误码率统计
在数字通信系统中,信号的传输过程会受到各种干扰,从而影响对信号的恢复。 通信系统的抗噪声性能是指系统克服加性噪声影响的能力。衡量数字通信系统抗噪声性能的重要指标是误码率.分析二进制数字调制系统的抗噪声性能,得出误码率与信噪比之间的数学关系。
%误码率统计
z1=ddemod(y,Fc,Fd,Fs,'fsk/eye',M,df); [errorSym ratioSym]=symerr(x,z1); figure(2)
simbasebandex([0:1:5]); title('相干解调后误码率统计')
7
理学与信息科学学院 通信原理课程设计报告
五、总结与体会
通过本次课程设计,我对课本上数字通信传输系统特别是二进制频移键控(2FSK)有了重新的认识。对2FSK调制数字基带信号加深了理解。对于使用键控法产生2FSK信号、添加高斯白噪声、使用相干解调、抽样判决等,我比较系统地认识了数字通信传输系统。本课程设计使用的MATLAB仿真软件和Simulink仿真环境,通过写其源程序代码,加深了我对每一步进行的理解,即要明白每一步都是怎么来的。通过使用Simulink仿真环境,我可以直观地放置相应的模块,搭建通信系统,并能够动态的显示仿真结果,使学习设计不再枯燥 1、程序设计与系统实施。
MATLAB提供了程序设计仿真环境,可以通过编写代码完成某些模块的仿真。同时利用其提供的画图功能,可以使人直观地观察程序设计及调试的结果。每一步都得十分细心,需要具体到一个小小的标点符号,否则程序就会在调试中出错。本设计中,根据设计规划包括基带信号的产生和调制、加入高斯白噪声、带通滤波和低通滤波、相干解调、计算误码率等。本过程使我将学习过但并不熟练的MATLAB软件重新学习和使用了一下,并通过查阅和引用相关资料学习使用其相关的函数功能。MATLAB中的画图功能是本课程设计的亮点,将结果直观地表现出来。
8
理学与信息科学学院 通信原理课程设计报告
2、理论模糊造成设计困难。
通过进行设计我发现,没有熟悉的理论知识搞设计是困难的。在设计每一步时,必须搞清楚每一步是干什么的,怎么进行,这些都需要理论进行指导。当哪一步不会弄时,我就去查书,将书中的理论细细研读,这样通过本课程设计我又把书中相关的部分细细看了几遍,对书中的理论有了更深的认识。因为多次调试,结果越来越接近理论情况下的结果,可见实验其实就是对理论的验证。所以,清楚地掌握理论是进行设计的关键步骤。
本课程设计只是在通信理论下的软件系统仿真,若放在实际环境中肯定有许多需要改进的地方,甚至根本行不通。因为理论下的设计是基于理想的环境中的,现实中的环境充满干扰因素,如噪声并非理想化的高斯白噪声、信源及信道本身存在系统误差、滤波器不可能实现理想化等等。所以,若要将系统应用于现实世界,还需要根据具体的环境改进该系统。
参考书目:
【1】 樊昌信、曹丽娜,《通信原理》(第6版),国防工业出版社,2009.5 【2】 曹弋,《MATLAB教程及实训》,机械工业出版社,2008.5 【3】 李贺兵,《Simulink通信仿真教程》,国防工业出版社,2006.5 【4】 刘波、文忠、曾涯,《MATLAB信号处理》,电子工业出版社,2006.1
9
理学与信息科学学院 通信原理课程设计报告
课程设计成绩评定表
学生姓名 设计题目 指导教师评语及意见: 指导教师评阅成绩: 指导教师签字: 年 月 日 注:此表装订在课程设计之后。
专业班级 基于MATLAB的2FSK数字通信系统设计 10