通信原理实验.docx
《通信原理实验.docx》由会员分享,可在线阅读,更多相关《通信原理实验.docx(60页珍藏版)》请在冰豆网上搜索。
通信原理实验
实验一MATLAB程序设计与仿真
一实验目的
1、在理论学习的基础上,通过实验学会Matlab软件的基本用法。
2、运用Matlab程序进行编程实现基本波形的输出。
3、通过自我拓展练习,进一步熟悉Matlab软件的用法。
二实验仪器
计算机,Matlab仿真软件;
三实验要求
1、掌握Matlab软件的基本用法
2、运用Matlab程序进行编程实现基本波形的输出。
四实验原理
1.单位脉冲序列
它与模拟信号中的单位冲激信号δ(t)类似,但δ(t)在t=0处的值为∞,只是其积分(面积)为1,是不可实现的数学极限,并非任何现实的信号。
而离散时间系统中的δ(n)在n=0处值为1,δ(n)是可实现的。
2.单位阶跃序列u(n)
单位阶跃序列u(n)定义为
它类似于模拟信号中的单位阶跃信号u(t),但在n=0处有确定的取值u(0)=1。
3正弦波
正弦型函数解析式:
y=Asin(ωx+φ)+b
各常数值对函数图像的影响:
φ:
决定波形与X轴位置关系或横向移动距离(左加右减)
ω:
决定周期(最小正周期T=2π/∣ω∣)
A:
决定峰值(即纵向拉伸压缩的倍数)
4矩形波
方波是一种非正弦曲线的波形,通常会与电子和讯号处理时出现。
理想方波只有“高”和“低”这两个值。
电流或电压的波形为矩形的信号即为矩形波信号,高电平在一个波形周期内占有的时间比值称为占空比,占空比为50%的矩形波称之为方波。
方波有低电平为零与为负之分,必要时,可加以说明“低电平为零”、“低电平为负”。
五实验内容和步骤
1.单位脉冲序列
n=0:
49;
x=zeros(1,50);
x
(2)=1;
closeall;
stem(n,x);
title('单位采用信号序列')
2.单位阶跃序列u(n)
n=0:
49;
x=ones(1,50);
closeall;
stem(n,x);
title('单位采用信号序列')
3正弦波
a=0:
0.01:
10;
y=sin(a.*pi);
plot(a,y);
4矩形波
t=linspace(0,10.*pi,100);
y=square(t);
plot(t,y);
axis([010*pi-1.51.5]);
gridon;
5三角波
六、实验报告与分析
按照实验报告规范完成实验报告,其主要内容与要求包括:
1、基本框架完整;
2、对所记录的实验数据的整理、分析与相应的结论;
3、实验过程中与实验技术相关的心得与体会;
4、完成实验讲义后面的思考题;
5、实验报告完成后,按照从上到下实验报告、实验记录、预习报告的顺序装订,下次实验时呈交给老师。
MATLAB仿真:
1、单位脉冲序列
2、单位阶跃序列
3、正弦波
4、矩形波
5、三角波
6、课外拓展
实验二信道与噪声仿真
一实验目的
1、在理论学习的基础上,通过实验学会Matlab软件的基本用法。
2、运用Matlab程序进行编程实现噪声的仿真
3、通过自我拓展练习,进一步熟悉Matlab软件的用法。
二实验仪器
计算机,Matlab仿真软件;
三实验要求
1、掌握Matlab软件的基本用法
2、运用Matlab程序进行编程实现基本波形的输出。
四实验原理
1.正弦波信号、方波、三角波和白噪声
正弦(sine),数学术语,在直角三角形中,任意一锐角∠A的对边与斜边的比叫做∠A的正弦,记作sinA(由英语sine一词简写得来),即sinA=∠A的对边/斜边。
方波是一种非正弦曲线的波形,通常会与电子和讯号处理时出现。
理想方波只有“高”和“低”这两个值。
电流或电压的波形为矩形的信号即为矩形波信号,高电平在一个波形周期内占有的时间比值称为占空比,占空比为50%的矩形波称之为方波。
方波有低电平为零与为负之分,必要时,可加以说明“低电平为零”、“低电平为负”。
三角波(TriangularWave)也称锯齿波,是指主要用在CRT作显示器件的扫描电路中的波形。
如示波器,显像管,显示器等.CRT是由许多点组成的.要形成光栅就要有电子束轰击这些发光点.扫描电路分水平和垂直扫描两种.可以一行或一帧的对CRT进行扫描.电子束从第一行或帧的一端开始扫到另一端,马上返回扫第二行或第二帧.......三角波的特点是电压渐渐增大突然降到零.正好适合用于扫描电路中.
白噪声序列,是指白噪声过程的样本实称,简称白噪声。
随机变量X(t)(t=1,2,3……),如果是由一个不相关的随机变量的序列构成的,即对于所有S不等于T,随机变量Xt和Xs的协方差为零,则称其为纯随机过程。
对于一个纯随机过程来说,若其期望为0,方差为常数,则称之为白噪声过程。
如果一个噪声,它的瞬时值服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。
五实验内容和步骤
n=0:
10000;
m=sin(pi*0.001*n);
y=0.2*randn(1,10001);
k=m+y;
subplot(3,1,1)
plot(y);
Y=fft(y,20481);
Pyy=Y.*conj(Y)/20480;
f=(0:
20480)/20480;
subplot(3,1,2)
plot(f,Pyy(1:
20481));
subplot(3,1,3)
plot(hist(y,30));
图一高斯白噪声
1信号,2功率谱,3强度分布
正弦波加弱噪声
1信号,2功率谱,3强度分布
正弦波加噪声
1信号,2功率谱,3强度分布,4滤波后结果
方波加噪声
1信号,2功率谱,3强度分布,4滤波后结果
三角波加噪声
1信号,2功率谱,3强度分布,4滤波后结果
六、实验报告与分析
按照实验报告规范完成实验报告,其主要内容与要求包括:
1、基本框架完整;
2、对所记录的实验数据的整理、分析与相应的结论;
3、实验过程中与实验技术相关的心得与体会;
4、完成实验讲义后面的思考题;
5、实验报告完成后,按照从上到下实验报告、实验记录、预习报告的顺序装订,下次实验时呈交给老师。
MATLAB仿真:
一、高斯白噪声
二、正弦波加弱噪声
三、正弦波加噪声
四、方波加噪声
五、三角波加噪声
实验三模拟调制解调(AM)仿真实验
一、实验目的
1、掌握用MATLAB的Simulink实现全载波调幅(AM)调制和解调的方法。
2、研究已调波与调制信号以及载波信号的关系。
3、熟悉MATLAB的Simulink的用法。
二、实验内容
1、模拟调制实验仿真AM
2、模拟解调实验仿真AM
三、实验的原理
AM调制
四、实验调制解调模型的建立
五、参数的设置
模块名称
参数名称
参数取值
Sinewave1(调制信号)
Frequency
5
Sinewave2(调制载波)
Frequency
100
解调载波
Frequency
100
Constant(A0)
Constantvalue
2
Analogfilterdesign
Designmethod
butterworth
Filtertype
lowpass
Filterorder
7
Passbandedgefrequency
48
六、实验数据
DSB
模块名称
参数名称
参数取值
Sinewave
Frequency
5
Sinewave1
Frequency
60
Sinewave2
Frequency
60
Analogfilterdesign
Designmethod
butterworth
Filtertype
lowpass
Filterorder
7
Passbandedgefrequency
45
MATLAB仿真:
实验四基于MATLAB/Simulink的ASK频带传输系统仿真与性能分析
实验目的
通过设计基于MATLAB/Simulink的ASK频带传输系统仿真与性能分析,让我深入理解和掌握二进制数字调制通信系统的各个关键环节,包括调制、解调、滤波、传输、噪声对通信质量的影响等。
在数字信号处理实验课的基础上更加深入的掌握数字滤波器的设计原理及实现方法。
使学生对系统各关键点的信号波形及频谱有深刻的认识。
在进行了专业基础课和《通信原理》课程教学的基础上,设计或分析一个简单的通信系统,有助于加深对通信系统原理及组成的理解。
设计平台
MATLAB是美国MathWorks公司生产的一个为科学和工程计算专门设计的交互式大型软件,是一个可以完成各种精确计算和数据处理的、可视化的、强大的计算工具。
它集图示和精确计算于一身,在应用数学、物理、化工、机电工程、医药、金融和其他需要进行复杂数值计算的领域得到广泛应用。
它不仅是一个在各类工程设计中便于使用的计算工具,而且也是一个在数学、数值分析和工程计算等课程教学中的优秀的教学工具,在世界各地的高等院校中十分流行,在各类工业应用中更有不俗的表现。
MATLAB可以在几乎所有的PC机和大型计算机上运行,适用于Windows、UNIX等各种系统平台[1]。
Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。
在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。
Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。
同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink[2]。
Simulink是MATLAB中的一种可视化仿真工具,是一种基于MATLAB的框图设计环境,是实现动态系统建模、仿真和分析的一个软件包,被广泛应用于线性系统、非线性系统、数字控制及数字信号处理的建模和仿真中。
Simulink可以用连续采样时间、离散采样时间或两种混合的采样时间进行建模,它也支持多速率系统,也就是系统中的不同部分具有不同的采样速率。
为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口(GUI),这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。
模型化图形输入是指Simulik提供了一些按功能分类的基本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型,进而进行仿真与分析[3]。
2基本原理
2.1Simulink工作环境
(1)模型库
在MATLAB命令窗口输入“Simulink”并回车,就可进入Simulink模型库单击或工具栏上的
按钮也可进入。
Simulik模块库按功能进行分为以下8类子库:
Continuous(连续模块)Discrete(离散模块)Function&Tables(函数和平台模块)Math(数学模块)Nonlinear(非线性模块)Signals&Systems(信号和系统模块)Sinks(接收器模块)Sources(输入源模块)用户可以根据需要混合使用歌库中的模块来组合系统,也可以封装自己的模块,自定义模块库、从而实现全图形化仿真。
Simulink模型库中的仿真模块组织成三级树结构Simulink子模型库中包含了Continous、Discontinus等下一级模型库Continous模型库中又包含了若干模块,可直接加入仿真模型。
图2-1Simulink工具箱
(2)设计仿真模型
在MATLAB子窗口或Simulink模型库的菜单栏依次选择“File”|“New”|“Model”,即可生成空白仿真模型窗口
图2-2新建仿真模型窗口
(3)运行仿真
两种方式分别是菜单方式和命令行方式,菜单方式:
在菜单栏中依次选择"Simulation"|"Start"或在工具栏上单击
。
命令行方式:
输入“sim”启动仿真进程
比较这两种不同的运行方式:
菜单方式的优点在于交互性,通过设置示波器或显示模块即可在仿真过程中观察输出信号。
命令行方式启动模型后,不能观察仿真进程,但仍可通过显示模块观察输出,适用于批处理方式[4]。
2.2二进制振幅键控原理(2ASK)
数字幅度调制又称幅度键控(ASK),二进制幅度键控记作2ASK。
2ASK是利用代表数字信息“0”或“1”的基带矩形脉冲去键控一个连续的载波,使载波时断时续地输出。
有载波输出时表示发送“1”,无载波输出时表示发送“0”。
2ASK信号可表示为
(2-1)
式中,
为载波角频率,s(t)为单极性NRZ矩形脉冲序列
(2-2)
其中,g(t)是持续时间
、高度为1的矩形脉冲,常称为门函数;
为二进制数字
(2-3)
2ASK/OOK信号的产生方法通常有两种:
模拟调制(相乘器法)和键控法。
本课程设计运用模拟幅度调制的方法,用乘法器实现。
相应的调制如图2-3:
图2-3模拟相乘法
AM信号的解调一样,2ASK/OOK信号也有两种基本的解调方法:
非相干解调(包络检波法)和相干解调(同步检测法)。
本课程设计要求的是相干解调,如图2-4:
图2-4相干解调方式
3系统设计
3.1ASK调制与解调
整个ASK的仿真系统的调制与解调过程为:
首先将信号源的输出信号与载波通过相乘器进行相乘,在接收端通过带通滤波器后再次与载波相乘,接着通过低通滤波器、抽样判决器,最后由示波器显示出各阶段波形,并用误码器观察误码率。
在MATLAB下Simulink仿真平台构建了ASK调制与解调仿真电路图如图3-1所示:
图3-1ASK调制与解调仿真电路图
将信号源的码数率设为1B/S,即频率为1Hz。
参数设置如图3-2所示:
图3-2信号源参数设置
在调制解调系统中,载波信号的频率一般要大于信号源的频率。
信号源频率为1Hz,所以将载波频率设置为6Hz,由于在载波参数设置里,频率的单位是rad/sec,所以即为12*pi。
载波信号参数如图3-3所示:
图3-3载波信号参数设置:
低通滤波器的频带边缘频率与信号源的频率相同,前面设置信号源频率为1Hz,所以对话框中“Passbandedgefrequency(rads/sec):
”应填“2*pi”。
参数设置如图3-4所示:
图3-4低通滤波器参数设置
对于2ASK系统,判决器的最佳判决门限为a/2(当P
(1)=P(0)时),它与接受机输入信号的幅度有关。
当接收机输入的信号幅度发生变化,最佳判决门限也将随之改变。
抽样判决器参数设置如图3-5所示:
图3-5抽样判决器的参数设置
量化器抽样频率等于信号源频率。
前面已经设置信号源频率为1Hz,即抽样频率为1Hz,所以对话框中“Sampletime(-1forinherited):
”应填“1”。
量化器参数设置如图3-6所示:
图3-6量化器参数设置
设置好参数之后,进行仿真,由示波器的输出波形可知,信号的调制解调成功,但存在1比特的时延(用时延时间乘以采样量化编码器的采样频率)。
因而,误码器的可接纳时延为1比特。
其参数设置如图3-7所示:
图3-7误码器的参数设置
经过误码器的1比特时延后,其误码率为0,结果正确。
如图3-8所示:
图3-8误码率的查看
输入信号经过ASK调制解调系统后,输出的各个波形(从上到下分别是输入信号、载波信号、已调信号、经过乘法器的解调信号、经过低通滤波器的解调信号,输出信号)第一路为信号源模块波形图,第二路为ASK调制后波形图,第三路为调制信号与载波相乘后波形图,第四路为经过低通滤波器后波形图,第五路为ASK解调波形图。
由各波形可看出该ASK调制解调系统符合设计要求。
如图3-9所示:
图3-9各点信号的波形
3.2加入高斯白噪声后的ASK调制与解调
整个加入高斯白噪声后的ASK仿真系统的调制与解调过程为:
首先将信号源的输出信号与载波通过相乘器进行相乘,送入加性高斯白噪声(AWGN)信道中传输。
在接收端通过带通滤波器后再次与载波相乘,接着通过低通滤波器、抽样判决器,最后由示波器显示出各阶段波形,并用误码器观察误码率。
如图3-10所示:
图3-10ASK调制与解调中加入高斯白噪声仿真图
高斯白噪声的抽样时间设置为0.01,如图3-11所示:
图3-11高斯白噪声的参数设置
带通滤波器的下频应该等于载波频率与调制信号频率之差,上频应该等于载波频率与调制信号频率之和。
前面已设置信号源频率为1Hz,载波频率为6Hz,计算得上、下截止频率分别为7Hz、5Hz,转换成以rads/sec为单位即为14*pi、10*pi。
所以“Lowerpassbandedgefrequency(rads/sec)Upperpassbandedgefrequency(rads/sec)”应填“10*pi、14*pi”。
参数设置如图3-12所示:
图3-12带通滤波器的参数设置
设置好参数之后,进行仿真,由示波器的输出波形可知,信号的调制解调成功,但存在0.01秒的时延,即信号时延了2比特(用时延时间乘以采样量化编码器的采样频率)。
因而,误码器的可接纳时延为2比特。
其参数设置如图3-13所示:
图3-13误码器的参数设置
经过误码器的2比特时延后,其误码率为0。
如图3-14所示:
图3-14误码率的查看
输入信号经过ASK调制解调系统后,输出的各个波形(从上到下分别是输入信号、载波信号、已调信号、经过乘法器的解调信号、经过低通滤波器的解调信号,输出信号)第一路为信号源模块波形图,第二路为ASK调制后的波形图,第三路为加入高斯白噪声后的波形图,第四路为经过带通滤波器后的波形图,第五路为经过带通滤波器后与载波相乘后的波形图,第六路为经过低通滤波器后的波形图,第七路为ASK解调后的波形图。
在ASK调制与解调中加入高斯白噪声后,波形出现了失真,解调也有误码存在,系统基本符合设计要求。
如图3-15所示:
图3-15各点信号的波形
3.3误码率的计算
误码率是衡量一个数字通信系统性能的重要指标。
在信道高斯白噪声的干扰下,各种二进制数字调制系统的误码率取决于解调器输入信噪比,而误码率表达示的形式则取决于解调方式。
ASK调制与解调中计算误码率仿真图如图3-16所示:
图3-16ASK调制与解调中计算误码率仿真图
在绘制信噪比-误码率关系曲线图之前,先将源程序创建M文件,将仿真图及M文件放入MATLAB软件的work文件夹下,并重新设置高斯噪声和误码器模型参数。
高斯白噪声的“Variance(vectorormatrix)”应该设置为“var”。
如图3-17所示:
图3-17高斯白噪声的参数设置
误码器“Outputdata”应该设置为“workspace”。
如图3-18所示:
图3-18误码器的参数设置
二进制数字频带传输系统,误码率与信号形式(调制方式),与噪声的统计特性,解调及译码判决方式有关。
对于二进制数字频带传输系统,无论采用何种方式,何种检测方法,其共同点都是随着输入信噪比增大时,系统的误码率就降低;反之,当输入信噪比减小时,系统的误码率就增加。
根据信噪比与误码率的关系式,可以绘制出信噪比-误码率理论关系曲线图。
源程序见附录Ⅰ,所需M文件如图3-19所示:
图3-19M文件1
信噪比-误码率的理论关系曲线如图3-20所示:
图3-20信噪比-误码率的理论关系曲线图
根据信噪比与误码率的关系式,可以绘制出信噪比-误码率实际关系曲线图。
源程序见附录Ⅱ,所需M文件如图3-21所示:
图3-21M文件2
信噪比-误码率的实际关系曲线如图3-22所示:
图3-22信噪比-误码率的实际关系曲线图
与信噪比-误码率理论关系曲线图相比较类似,由上图可以看出:
随着输入信噪比增大,系统的误码率降低;反之,当输入信噪比减小时,系统的误码率就增加。
符合理论要求,所以此图绘制正确,达到预想结果。
MATLAB仿真:
附录Ⅰ:
误码率计算(理论曲线)
%程序名称:
t.m
%程序功能:
绘制信噪比-误码率的理论关系曲线
x=-6:
18;%定义信噪比范围
fori=1:
length(x);
snr=x(i);%每次运行信噪比增加1dB
var=0.5/(10.^(0.1*snr));%计算对应的噪声功率
sim('tls.mdl');%运行模型文件
ebr(i)=ErrorVec
(1);%保存当次运行误码率
i
end
ebr_th=erfc(sqrt((-1/3).^10));
semilogy(x,ebr,x,ebr_th)%绘制信噪比-误码率曲线,纵坐标为对数标
xlabel('信噪比r/dB');
ylabel('误码率Pe');
title('误码率与信噪比关系曲线');
gridon;
附录Ⅱ:
误码率计算(实际曲线)
%程序名称:
t.m
%程序功能:
绘制信噪比-误码率的实际关系曲线
x=-6:
18;%定义信噪比范围
fori=1:
length(x);
snr=x(i);%每次运行信噪比增加1dB
var=0.5/(10.^(0.1*snr));%计算对应的噪声功率
sim('tls.mdl');%运行模型文件
ebr(i)=ErrorVec
(1);%保存当次运行误码率
end
i
semilogy(x,ebr)%绘制信噪比-误码率曲线,纵坐标为对数坐标
xlabel('信噪比r/dB');
ylabel('误码率Pe');
title('误码率与信噪比关系曲线');
gridon;
实验五、基于循环码的差错控制编码系统建模与仿真
一、设计目的及要求
设计目标:
通过利用MATLAB/simulink系统仿真功能,设计一个基于循环码的差错控制编码系统。
实验知识要求:
循环码的编、译码原理,差错控制编码系统的特点。
MATLAB/simulin系统仿真知识。
实验软件平台:
MATLAB7.0软件。
2、课程设计的任务
2.1循环码及差错控制编码的概念及理论基础
2.1.1循环码的概念及生成多项式
在实际应用中,数据传输一般采用系统码的编码方式,即在发送的信息序列之后附加上特定位数的冗余位,该冗余位称为所发送信息序列的监督位。
监督位一般是由所发送的信息序列经过恰当的变化而生成的。
若监督位由信息位经线性组合而得到,则称得到的系统码为线性分组码。
在线性分组码中有一类重要的码,称为循环码。
这种码的编码和解码设备都不太复杂,而且检错和纠错的能力都较强。
循环码除了具有线性码的一般性质外,还具有循环性,即任一码组循环一位后仍然是该编码中的一个码组。
(n,k)循环码表示其中信息位为k,监督位为n-k。
如果一种码的所有码多项式都是多项式g(x)的倍式,则称g(x)为该码的生成多项式。
在循环码中,