2022年通信原理实验报告 .pdf
《2022年通信原理实验报告 .pdf》由会员分享,可在线阅读,更多相关《2022年通信原理实验报告 .pdf(28页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、通信原理实验报告名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 28 页 -2 作者:日期:名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 28 页 -3 通信原理实验报告实验名称:实验一数字基带传输系统的MATLAB 仿真实验二模拟信号幅度调制仿真实验班级:10 通信工程三班学号:2010550920 姓名:彭龙龙指导老师:王仕果名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 28 页 -4 实验一数字基带传输系统的MATLAB 仿真一、实验目的1、熟悉和掌握常用的用于通信原理时域仿真分析的MATLAB 函数;2、掌握连续时间和离散时间信号的MATL
2、AB 产生;3、牢固掌握冲激函数和阶跃函数等函数的概念,掌握卷积表达式及其物理意义,掌握卷积的计算方法、卷积的基本性质;4、掌握利用 MATLAB 计算卷积的编程方法,并利用所编写的MATLAB 程序验证卷积的常用基本性质;5、掌握 MATLAB描述通信系统中不同波形的常用方法及有关函数,并学会利用MATLAB 求解系统功率谱,绘制相应曲线。基本要求:掌握用MATLAB 描述连续时间信号和离散时间信号的方法,能够编写MATLAB 程序,实现各种常用信号的MATLAB 实现,并且以图形的方式再现各种信号的波形。二、实验内容1、编写 MATLAB程序产生离散随机信号2、编写 MATLAB程序生成连
3、续时间信号3、编写 MATLAB程序实现常见特殊信号三、实验原理从通信的角度来看,通信的过程就是消息的交换和传递的过程。而从数学的角度来看,信息从一地传送到另一地的整个过程或者各个环节不外乎是一些码或信号的交换过程。例如信源压缩编码、纠错编码、AMI 编码、扰码等属于码层次上的变换,而基带成形、滤波、调制等则是信号层坎上的处理。码的变换是易于用软件来仿真的。要仿真信号的变换,必须解决信号与信号系统在软件中表示的问题。3.1 信号及系统在计算机中的表示3.1.1 时域取样及频域取样一般来说,任意信号s(t)是定义在时间区间(-,+)上的连续函数,但所有计算机的 CPU 都只能按指令周期离散运行,
4、同时计算机也不能处理(-,+)这样一个时间段。为此将把s(t)按区间,22TT截短为 sT(t),再对 sT(t)按时间间隔 t 均匀取样,得到取样点数为:TNtt(3-1)仿真时用这个样值集合来表示信号s(t)。显然 t 反映了仿真系统对信号波形的分辨率,t 越小则仿真的精确度越高。据通信原理所学,信号被取样以后,对应的频谱时频率的周期函数,其重复周期是1t。如果信号的最高频率为fH,那么必须有fH12 t才能保证不发生频域混叠失真。设12sBt(3-2)则称 Bs为仿真系统的系统带宽。如果在仿真程序中设定的采样间隔是t,那么不能用名师资料总结-精品资料欢迎下载-名师精心整理-第 4 页,共
5、 28 页 -5 此仿真程序来研究带宽大于Bs的信号或系统。此外,任意信号s(t)的频谱 S(f)通常来说也是定义在时间区间(-,+)上的连续函数,所以仿真频域特性时,也必须把S(f)截短并取样。考虑到系统带宽为Bs,便把频谱的截短区间设计为-Bs,Bs然后再按间隔f 均匀取样,得到取样点数为:2sBNff(3-3)将式(3-2)代入式(3-3)得1NfNtf(3-4)同样,信号在频域被离散后,对应到时域也是一个周期信号,其周期为1f。如果时域截短时间为T,那么必须 T1/df 才能保证不发生频域混叠失真。也就是说,如果仿真程序中设定得频域采样间隔是f,那么就不能仿真截短时间超过1f的信号。所
6、以,可以把频域的取样间隔设计为:1fT(3-5)将式(3-5)代入式(3-1)得1NtNtf(3-6)这样一来,时域的总取样点数及频域的总取样点数都相等,为1Nt f。要提高仿真的精度,就必须降低时域取样间隔t 及频域取样间隔f,也就是要加大总取样点数N。这说明仿真的精度与仿真系统的运算量直接有关。为了处理上的方便,我们今后规定采样点数N 为 2 的整幂。举例来说,例如设计要求的系统带宽为1MHz,频域最好分辨率为10kHz,那么据此可求得2200sBNff,则取N 256。对应的其他参数 为Bs1MHz,27.8sBfkHzN,1128Tsf,0.5TtsN。3.1.2 频域分析限于篇幅,在
7、此不介绍MATLAB中关于傅立叶变换的有关函数。为了方便仿真,我们利用 MATLAB提供的函数编写了两个函数t2f 和 f2t。t2f 的功能是做傅立叶变换,f2t 的功能是做傅立叶反变换,它们的引用格式分别为X=t2f(x)及 x=f2t(X),其中 x 是时域信号x(t)j截短并采样所得的取样值矢量,X 是对 x(t)的傅立叶变换X(f)截短并采样所得的取样值矢量。名师资料总结-精品资料欢迎下载-名师精心整理-第 5 页,共 28 页 -6 这两个函数分别如附录所示。我们关心的另一个指标是信号的功率谱密度,任意信号s(t)的功率谱的定义是2()()limTsTSfP fT,其中()TSf是
8、 s(t)截短后所得信号()Tst的傅立叶变化,2()TSf是()Tst的能量谱,2()TSfT是()Tst在截短时间T 内的功率谱。对于MATLAB仿真系统,若x是 时 域 取 样 值 矢 量,X是 对 应 的 傅 立 叶 变 换,那 么x 的 功 率 谱 便 为 矢 量(.()/PX conj XT。3.2 与随机信号产生相关的指令3.2.1 高斯噪声的产生由于函数 randn(1,N)产生 N 个互不相关的、均值为零、方差为1 的高斯随机数,所以可用 它 来 产 生 高 斯 白 噪 声。设 仿 真 系 统 的 取 样 点 数 是N,系 统 带 宽 为Bs,矢 量0*(1,)xnBs ra
9、ndnN的总功率为0*nBs,最高频率分量为Bs,并且各样点的值互不相关,故它代表双边功率谱密度为02n(W/Hz)的白噪声。3.2.2 随机码序列的产生语句 round(rand(1,M)产生 M 个取值 1、0 等概的随机码。函数round 表示四舍五入。函数 rand 产生均匀分布于区间0,1的随机数。语句 sign(rand(1,M)产生 M 个取值 1 等概的随机码。函数 sign(x)对矢量 x 的元素取正负号,而高斯数randn 取正负数的概率是相等的。3.2.3 产生数字随机信号的一般方法一般来说,随机数字信号可以直接或间接表示成PAM 信号(请参阅通信原理教材)。PAM信号是
10、指所有形如isiiTtgats)()(的信号。它可以用如下的等效模型来表示:故对所有不同的数字信号,都可以用相同的方法来产生。1)产生随机序列矢量a a=round(rand(1,M);为了方便起见,一般规定a 的长度 M 是 2 的整幂。2)产生冲击序列信号imp(t)imp=zeros(1,N);imp(1:L:M)=a/dt;矢量 imp 代表信号 imp(t)。名师资料总结-精品资料欢迎下载-名师精心整理-第 6 页,共 28 页 -7 其中,N 是 imp 的矢量长度,M 是码元矢量a 中的码元数,L 是每码元内的采样点数。现规定 M、N 都是 2 的整幂,于是L 自然也是 2 的整
11、幂。3)产生 PAM 数字信号 s(t)()()(tgtimpts)(tg代表脉冲波形,例如,升余弦滚降要求的波形有:2)/2(1)/cos(/sin)(ssssTtaTtaTtTttg设)(tg的傅立叶变换为)(fG,)(ts的傅立叶变换为)(fS,则有:GimpftfS*).(2)(%t2f为傅立叶变换函数)(2)(fStfts%f2t为傅立叶反变换函数设矢量 s 代表数字信号)(ts,矢量 g 代表脉冲波形)(tg,矢量 G 代表其频谱)(fG。那么 s 的产生方法是:s=conv(imp,g);其中,函数conv 表示卷积。卷积后s 的长度是 length(imp)+length(g)
12、-1。扣除延迟时间及拖尾时间后,数字信号为:Ii=find(g=max(g);s=s(1:N+ii(1);也可用频域的方法产生数字信号)(ts:s=f2t(t2f(imp).*G);注意,此时imp 的点数应与g 或 G 相同。若 g 的宽度小于imp,则应用零补齐。3.3 信号的仿真3.3.1 连续时间信号的仿真如前所述,MATLAB 有很多内部数学函数可以用来产生这样的数字序列,例如sin()、cos()、exp()等函数可以直接产生一个按照正弦、余弦或指数规律变化的数字序列。例如,运行如下程序%program1_1%This program is used to generate a s
13、inusoidal signal and draw its plot clear,%Clear all variables close all,%Close all figure windows dt=0.01;%Specify the step of time variable t=-2:dt:2;%Specify the interval of time x=sin(2*pi*t);%Generate the signal plot(t,x)%Open a figure window and draw the plot of x(t)title(Sinusoidal signal x(t)
14、名师资料总结-精品资料欢迎下载-名师精心整理-第 7 页,共 28 页 -8 xlabel(Time t(sec)在通信原理 课程中,单位阶跃信号 u(t)和单位冲激信号(t)是二个非常有用的信号。它们的定义如下:这里分别给出相应的简单的产生单位冲激信号和单位阶跃信号的扩展函数。产生单位冲激信号的扩展函数为:function y=delta(t)dt=0.01;y=(u(t)-u(t-dt)/dt;产生单位阶跃信号的扩展函数为:%Unit step function function y=u(t)y=(t=0);%y=1 for t 0,else y=0 请将这二个 MATLAB 函数分别以
15、delta 和u为文件名保存在work文件夹中,以后,就可以像教材中的方法使用单位冲激信号(t)和单位阶跃信号u(t)。3.3.2 离散时间信号的仿真程序 Program1_2用来产生离散时间信号xn=sin(0.2n)。%Program1_2%This program is used to generate a discrete-time sinusoidal signal and draw its plot clear,%Clear all variables close all,%Close all figure windows n=-10:10;%Specify the interva
16、l of time x=sin(0.2*pi*n);%Generate the signal stem(n,x)%Open a figure window and draw the plot of xn title(Sinusoidal signal xn)xlabel(Time index n)请仔细阅读该程序,比较程序 Program1_1和Program1_2中的不同之处,以便自己编程时能够正确使用这种方法方针连续时间信号和离散时间信号。程序 Program1_3用来仿真下面形式的离散时间信号:xn=.,0.1,1.1,-1.2,0,1.3,.n=0%Program1_3%This pr
17、ogram is used to generate a discrete-time sequence%and draw its plot clear,%Clear all variables close all,%Close all figure windows n=-5:5;%Specify the interval of time,the number of points of n is 11.名师资料总结-精品资料欢迎下载-名师精心整理-第 8 页,共 28 页 -9 x=0,0,0,0,0.1,1.1,-1.2,0,1.3,0,0;%Generate the signal stem(n
18、,x,.)%Open a figure window and draw the plot of xn grid on,title(A discrete-time sequence xn)xlabel(Time index n)由于在程序的 stem(n,x,.)语句中加有.选项,因此绘制的图形中每根棒条线的顶端是一个实心点。如果需要在序列的前后补较多的零的话,可以利用函数 zeros(),其语法为 zeros(1,N):圆括号中的 1和N表示该函数将产生一个一行N列的矩阵,矩阵中的所有元素均为零。利用这个矩阵与序列 xn 进行组合,从而得到一个长度与n相等的向量。例如,当xn=0.1,1.1,
19、-1.2,0,1.3 时,为了得到程序Program1_3中的序列,n=0 可以用这个 MATLAB 语句x=zeros(1,4)x zeros(1,2)来实现。用这种方法编写的程序如下:%Program1_4%This program is used to generate a discrete-time sinusoidal signal%and draw its plot clear,%Clear all variables close all,%Close all figure windows n=-5:5;%Specify the interval of time x=zeros(1
20、,4),0.1,1.1,-1.2,0,1.3,zeros(1,2);%Generate the sequence stem(n,x,filled,r)%Open a figure window and draw the plot of xn grid on,四、实验步骤(1)分析程序每条指令的作用,运行该程序,将结果保存,贴在下面的空白处。然后修改程序,将dt 改为 0.2,并执行修改后的程序,保存图形,看看所得图形的效果怎样。dt=0.01 时的信号波形dt=0.2 时的信号波形名师资料总结-精品资料欢迎下载-名师精心整理-第 9 页,共 28 页 -10 请问:上述的两幅图形有什么区别,哪
21、一副图形看起来更接近于实际信号波形?为什么会有这种区别?答:前者波形曲线光滑,后者曲折,第一幅图更接近于实际信号波形。(2)修改 program1_1,,存盘程序名为Q1_2,生成实指数信号x(t)=e-2t。要求在图形中加上网格线,并使用函数axis()控制图形的时间范围在02秒之间。然后执行该程序,保存所的图形。修改 Program1_1后得到的程序 Q1_2如下:%program1_1%This program is used to generate a sinusoidal signal and draw its plot clear,%Clear all variables clos
22、e all,%Close all figure windows dt=0.01;%Specify the step of time variable t=-2:dt:2;%Specify the interval of time X=exp(-2*t);%Generate the signal plot(t,x)%Open a figure window and draw the plot of x(t)axis0,2,0,2 Grid on,title(Sinusoidal signal x(t)彭龙龙熊犇)xlabel(Time t(sec)图形结果如下:名师资料总结-精品资料欢迎下载-名
23、师精心整理-第 10 页,共 28 页 -11(3)将前文中所给的单位冲激信号和单位阶跃信号的函数文件在MA TLAB文件编辑器中编写好,并分别以文件名delta 和 u 存入 work 文件夹中以便于使用。抄写函数文件 delta 如下:unction y=delta(t)dt=0.01;y=(u(t)-u(t-dt)/dt;抄写函数文件 u 如下:f%Unit step function Function y=u(t)y=(t=0);%y=1 for t 0,else y=0(4)修改程序 Program1_4,并以Q1_4为文件名存盘,利用 axis()函数,将图形窗口的横坐标范围改为-
24、2 n 5,纵坐标范围改为-1.5 x 1.5。修改 Program1_4后得到的程序 Q1_4如下:%Program1_4%This program is used to generate a discrete-time sinusoidal signal%and draw its plot clear,%Clear all variables close all,%Close all figure windows n=-2:5;%Specify the interval of time axis-2,5,-1.5,1.5 x=zeros(1,4),0.1,1.1,-1.2,0,1.3,ze
25、ros(1,2);%Generate the sequence stem(n,x,filled,r)%Open a figure window and draw the plot of xn grid on,信号的波形图名师资料总结-精品资料欢迎下载-名师精心整理-第 11 页,共 28 页 -12(5)根据示例程序的编写方法,编写一个MATLAB 程序,以 Q1_5文件名存盘,给给定信号x(t)=e-0.5tu(t)求信号 y(t)=x(1.5t+3),并绘制出 x(t)和y(t)的图形。编写的程序Q1_5 如下:%Program1_5%This program is used to gen
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年通信原理实验报告 2022 通信 原理 实验 报告
限制150内