《通信原理I课程设计》任务书
题目 模拟(数字)通信系统Matlab仿真平台的设计和实现 1、完成系统方案的设计; 2、完成仿真程序的设计与调试; 3、分析仿真结果,得出合理结论。 1、 仿真输入的模拟信号,给出信号波形和功率谱密度; 2、 实现题目要求的模拟信号的调制与解调,画出调制后的信号波形和功率谱密度,以及解调后的输出信号波形; 3、 实现题目要求的模拟信号的数字化; 设计 要求 4、 实现题目要求的数字基带码型变换和反变换,画出变换后数字基带信号的波形; 5、 实现题目要求的数字信号的调制与解调,画出调制后的信号波形和功率谱密度,以及解调后的输出信号波形; 6、 在不同的条件下(基带码型、调制方式,输入信噪比),对系统信噪比(模拟)和误码性能(数字)进行分析,画出系统误码率仿真曲线; 7、 实现系统仿真平台正常运行; 8、 按要求完成设计报告。 主要 仪器 设备 [1] 《通信原理》,周炯槃等,2005年11月 北京邮电大学出版社 [2] 《现代通信原理》,曹志刚等,清华大学出版社,1992年 [3] 《通信原理》,樊昌信等,国防工业出版社,2006第6版 [4] 《Digital and Analog Communication Systems》Leon W.Couch,清华大学出版社影印版,1999第5版 [5] 《Digital Modulation and Coding》Stephen G. Wilson,电子工业出版社影印版,1998年 课程设计进度安排(起止时间、工作内容) 1、计算机1台,Matlab 仿真软件一套。 主要 内容 主要 参考 文献
1
目录
一、课程设计主要内容┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄4 二、课程设计实验要求┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄——┄4 三、课程设计原理┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄—┄┄4 四、课程设计思路及过程—┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄——┄┄┄┄┄┄5 五、课程设计实验结果┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄15 六、课程设计分析及心得┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄┄18 七、通信原理I课程设计环节参考资料 ┄┄┄┄┄┄┄┄┄——┄┄┄—————18
2
一. 课程设计主要内容
1、完成系统方案的设计; 2、完成仿真程序的设计与调试; 3、分析仿真结果,得出合理结论。
二. 课程设计实验要求
1. 仿真输入的模拟信号,给出信号波形和功率谱密度;
2. 实现题目要求的模拟信号的调制与解调,画出调制后的信号波形和功率谱密度,以及解
调后的输出信号波形;
3. 实现题目要求的模拟信号的数字化;
4. 实现题目要求的数字基带码型变换和反变换,画出变换后数字基带信号的波形; 5. 实现题目要求的数字信号的调制与解调,画出调制后的信号波形和功率谱密度,以及解
调后的输出信号波形;
6. 在不同的条件下(基带码型、调制方式,输入信噪比),对系统信噪比(模拟)和误码
性能(数字)进行分析,画出系统误码率仿真曲线; 7. 实现系统仿真平台正常运行;
按要求完成设计报告。
三. 课程设计原理
数字频带通信系统(5号题目):
输入:首先输入模拟信号,给出此模拟信号的时域波形。
数字化:将模拟信号进行数字化,得到数字信号,可以选择PCM编码。
调制:可以选择简单的二进制数字调制方式,例如振幅键控(2ASK)、相移监控(2PSK)、频移键控(2FSK),差分相移键控(DPSK)等。要求每个题目至少选择两种调制方式。有能力的同学也可以选择其它高效的调制方式,例如多进制数字振幅键控等,给出调制后信号的时域波形。
信道:假定信道属于加性高斯信道,或自行设计。
解调:相应的2ASK、2PSK、2FSK,DPSK解调,仿真获得解调输出波形。 PCM解码:给出解码后的模拟信号的时域波形,并与输入信号进行比较。
系统性能分析:比较在不同调制方式下,该数字频带传输系统的性能指标,即该系统的
3
输出误码率随输入信噪比的变化曲线。
四. 课程设计思路及过程
1. 课程设计思路:
在了解了课程设计的原理之后,并用MATLEB软件实现仿真,从而产生波形。使用MATLEB语言编程,首先,输入一个模拟信号。第二步,用3个判别语句来实现PCM编码的构成。第三步,实现FSK/ASK的调制。第四步,加高斯干扰,近似认为是信道干扰。第5步,FSK/ASK的解调。第6步,依然通过3个判别语句成完PCM解码。第7步,形成输出信号。
2. 课程设计过程:
FSK调制方法的源代码:
close all clear all; clc;
%生成模拟信号
fudu=5; %模拟信号的振幅 fs=2800; %抽样频率
f=100;%模拟信号的频率Hz N=64; %抽样个数
t=(0:N-1)/fs;%采样时间s
moni=fudu*sin(2*pi*f*t);%生成了模拟信号 figure(1);
%将第1个窗口分成2行2列,取第1个位置 subplot(2,1,1); plot(t,moni); grid on;
axis([0 1/f*2 -fudu fudu]); %输出2个周期的信号 title('输入模拟信号'); for i=1:64;
%设计输入范围是-6~6V,对模拟信号抽取64个样本 %循环对每个样本进行归一化并计算出量化单位x
4
%设量化器最大分层电平是2048个量化单位. x(i)=moni(i)/6*2048; end
%pcm编码部分--对每个样本进行编码 for i=1:64 if x(i)>0
out(1)=1;%抽样值大于0,极性码为1 else
out(1)=0;%抽样值小于0,极性码为0 end
%确定段落码
if abs(x(i))>=0 & abs(x(i))<32
out(2)=0;out(3)=0;out(4)=0;step=1;st=0;%x的绝对值在0到32之间,则落在第一段内,段落码为001,段落起始电平st为16,量化间隔step为1 elseif 32<=abs(x(i)) & abs(x(i))<64
out(2)=0;out(3)=0;out(4)=1;step=2;st=32;%x的绝对值在32到64之间,则落在第二段内,段落码为010,段落起始电平st为32,量化间隔step为2 elseif 64<=abs(x(i)) & abs(x(i))<128
out(2)=0;out(3)=1;out(4)=0;step=4;st=64;%x的绝对值在64到128之间,则落在第三段内,段落码为011,段落起始电平st为64,量化间隔step为4 elseif 128<=abs(x(i)) & abs(x(i))<256
out(2)=0;out(3)=1;out(4)=1;step=8;st=128;%x的绝对值在128到256之间,则落在第四段内,段落码为100,段落起始电平st为128,量化间隔step为8 elseif 256<=abs(x(i)) & abs(x(i))<512
out(2)=1;out(3)=0;out(4)=0;step=16;st=256;%x的绝对值在256到512之间,则落在第五段内,段落码为101,段落起始电平st为256,量化间隔step为16 elseif 512<=abs(x(i)) & abs(x(i))<1024
out(2)=1;out(3)=0;out(4)=1;step=32;st=512;%x的绝对值在512到1024之间,则落在第六段内,段落码为110,段落起始电平st为512,量化间隔step为32 elseif 1024<=abs(x(i)) & abs(x(i))<2048
out(2)=1;out(3)=1;out(4)=0;step=64;st=1024;%x的绝对值在1024到2048之间,则落在第七段内,段落码为111,段落起始电平st为1024,量化间隔step为64 else
out(2)=1;out(3)=1;out(4)=1;step=64;st=1024;%x的绝对值超出了2048,则段落码为111,段落起始电平st为1024,量化间隔step为64 end
%确定段内码
if (abs(x(i))>=2048)
out(2:8)=[ 1 1 1 1 1 1 1];%x的绝对值超出了2048,段落码和段内码均为1111111 else
tmp=floor((abs(x(i))-st)/step);%确定x落在某段的第tmp级内 t=dec2bin(tmp,4)-48;%将tmp转化为四位二进制码 out(5:8)=t(1:4);%段内码为t end
5