通信工程,FSK,汉明码,通信系统仿真,
通信工程专业CDIO二级项目
项目设计说明书
(2012/2013学年第一学期)
项目名称 : 通信系统仿真 题 目 :采用2FSK调制和hammin编码技术 专业班级 : 小组成员
指导教师 :
设计周数 : 1周
设计成绩 :
2013年1月11日
通信工程,FSK,汉明码,通信系统仿真,
1.课程设计目的
通过对数字通信系统的仿真,了解数字通信系统的仿真实现方法,掌握各种数字调制解调系统的性能,包括了解数字信号的时域表示、掌握数字信号的频带传输,数字通信系统的信道编码,学会用傅立叶变换方法分析信号的频域成分。
2.课程设计内容
利用MATLAB环境下设计一个2FSK调制与解调系统. 编写M文件实现随机产生的二进制序列的2FSK调制,画出二进制序列及已调信号的时域波形及频谱图。加上各种噪声源,用误码测试模块测量误码率;最后根据运行结果和波形来分析该系统性能。
3.课程设计要求
1)独立完成课题设计题目;
2)对所设计的课题原理要有较深入的了解,画出原理框图; 3)提出设计方案;
4)在老师指导下通过编写程序完成设计方案; 5)中间各个过程的仿真过程给出仿真结果; 6)提交详细的课程设计报告。
4.课程系统设计
4.1设计原理
在二进制数字调制中,若正弦载波的频率随二进制基带信号在f1和f2两个频率点间变化,则产生二进制移频键控信号(2FSK信号)。
二进制移频键控信号可以看成是两个不同载波的二进制振幅键控信号的叠加。然后在MATLAB中产生高斯白噪声,这非常方便,可以直接应用两个函数,一个是WGN,另一个是AWGN。WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。高斯白噪声,
通信工程,FSK,汉明码,通信系统仿真,
是指噪声的概率密度函数满足正态分布统计特性,同时它的功率谱密度函数是常数的一类噪声。这里值得注意的是,高斯型白噪声同时涉及到噪声的两个不同方面,即概率密度函数的正态分布性和功率谱密度函数均匀性,二者缺一不可。其解调原理是将二进制移频键控信号分解为上下两路二进制振幅键控信号,分别进行相干解调,通过对上下两路的抽样值进行比较最终判决出输出信号,并与原信号进行对比统计。
基本的系统原理图如下:
4.2系统设计
通过在Matlab环境下利用相关程序对二进制信号进行抽样产生二进制随机序列,并在此时确定抽样间隔、抽样个数,进行显示。然后对二进制信号进行2FSK调制,利用Matlab函数库中awgn函数在信道中加入高斯白噪声,并对此时的信号进行显示,接着进行相干解调,输出显示解调后序列,对比信号调制前后的变化,统计误码率,并分析调制优劣。
4.2.1产生2FSK调制信号原理图
使用键控法产生2FSK信号,即由电子开关在两个独立的频率源之间转换形成,这样的相邻码元之间相位不一定连续。
4.2.2解调信号本设计使用相干解调
其解调原理是将2FSK信号分解为上下两路2ASK信号分别进行解调,然后进行判决。抽样判决是直接比较两路信号抽样值的大小,判决规则应与调制规则相呼应,调制时若规定“1”
通信工程,FSK,汉明码,通信系统仿真,
符号对应载波频率f1,则接收时上支路的样值较大,应判为“1”;反之则判为“0”。
4.2.3误码率统计
在数字通信系统中,信号的传输过程会受到各种干扰,从而影响对信号的恢复。 通信系统的抗噪声性能是指系统克服加性噪声影响的能力。衡量数字通信系统抗噪声性能的重要指标是误码率.分析二进制数字调制系统的抗噪声性能,得出误码率与信噪比之间的数学关系。
5.程序设计
clear all
snrdB_min=1;snrdB_max=20; %设置信噪比取值的上下限:dB为单位 A=0.001; %信号幅度
snr_dB=1:20; %信噪比范围(单位分贝)
snr=10.^(snr_dB./10); %信噪比(由分贝转化而来 10lg(SNR)=SNR_dB) snr2=A.^2./(2*snr); %信号幅度为a时的噪声功率 %计算理论值
for i=1:length(snr_dB)
fsk_pe0=0.5*erfc(sqrt(A.^2./(4*snr2))); %FSK相关解调时的误码率 end
semilogy(snr_dB,fsk_pe0,'*r'); hold on;
for j=snrdB_min:1:snrdB_max max=10000;
x=randint(1,max);%随机生成一个二进制序列 %figure(1);
%subplot(3,1,1);stem(x); n=max/4;
z=zeros(n,4);%把信源分成n行4列
通信工程,FSK,汉明码,通信系统仿真,
for i=1:n
t=x(4*i-3:4*i);%把信号分成4个一组,4个进行编码 a(i,:)=t; end
h=encode(a,7,4,'hamming/fmt') %汉明编码 %subplot(3,1,2);stem(h); %title('2fSK编码信号'); Fc=50;%载波频率
Fd=25;%码元速率fs>fc>fd. Fs=100;%系统的采样频率
y=dmod(h,Fc,Fd,Fs,'fsk',2);%2fsk调制 %subplot(3,1,3);plot(y);grid on; %title('2fSK调制信号');
s=awgn(y,j,'measured');%噪声 %figure(2);
%subplot(3,1,1);plot(s);grid on; %title('2fSK加噪声的调制信号');
Y=ddemod(s,Fc,Fd,Fs,'fsk',2);%2fsk解调 %subplot(3,1,2);stem(Y); %title('2fSK解调信号');
g=decode(Y,7,4,'hamming/fmt');%汉明译码 %subplot(3,1,3);stem(gg); q=g';
%title('2fSK解调的译码信号'); [errornum,error_ratio]=symerr(a,g); errornum error_ratio
semilogy(j,error_ratio,'o'); hold on;
axis([1,20,1/1e7,1]); end
xlabel('SNR_dB'); ylabel('BER');
legend('理论值','仿真值'); %End of script file.
通信工程,FSK,汉明码,通信系统仿真,
5.2误码率
通信工程,FSK,汉明码,通信系统仿真,
信道编码有纠检错能力
6.心得与体会
通过本次课程设计,使得我们课本上数字通信传输系统特别是二进制频移键控(2FSK)有了重新的认识。对2FSK调制数字基带信号加深了理解。对于使用键控法产生2FSK信号、汉明编码,添加高斯白噪声、使用相干解调、抽样判决等,我比较系统地认识了数字通信传输系统。
MATLAB提供了程序设计仿真环境,可以通过编写代码完成某些模块的仿真。同时利用其提供的画图功能,可以使人直观地观察程序设计及调试的结果。每一步都得十分细心,需要具体到一个小小的标点符号,否则程序就会在调试中出错。本设计中,根据设计规划包括基带信号的产生和调制、汉明编码译码,加入高斯白噪声、带通滤波和低通滤波、相干解调、计算误码率等。本过程使我将学习过但并不熟练的MATLAB软件重新学习和使用了一下,并通过查阅和引用相关资料学习使用其相关的函数功能。MATLAB中的画图功能是本课程设计的亮点,将结果直观地表现出来。
通过进行设计我发现,没有熟悉的理论知识搞设计是困难的。在设计每一步时,必须搞清楚每一步是干什么的,怎么进行,这些都需要理论进行指导。当哪一步不会弄时,我就去查书,将书中的理论细细研读,这样通过本课程设计我又把书中相关的部分细细看了几遍,对书中的理论有了更深的认识。因为多次调试,结果越来越接近理论情况下的结果,可见实
通信工程,FSK,汉明码,通信系统仿真,
验其实就是对理论的验证。所以,清楚地掌握理论是进行设计的关键步骤。
7.参考文献
[1]黄葆华,杨晓静等.《通信原理》西安:西安电子科技大学出版社,2007 [2]胡晓冬,董辰辉 .《MATLAB 从入门到精通》北京:人民邮电出版社,2010 [1]权明富,齐佳音,舒华英.客户价值评价指标体系设计[J].南开管理评论,2004,7
注:此表必须在同一页面。