《(通信企业管理)通信原理实验的MATLAB仿真讲义一、二)》由会员分享,可在线阅读,更多相关《(通信企业管理)通信原理实验的MATLAB仿真讲义一、二)(7页珍藏版)》请在金锄头文库上搜索。
1、数据通信原理实验的MATLAB仿真讲义MATLAB原意为“矩阵实验室MA-TrixLABoratory”,它是目前控制界国际上最流行的软件,它除了传统的交互式编程之外,还提供了丰富可靠的矩阵运算、图形绘制、数据和图象处理、Windows编程等便利工具。MATLAB还配备了大量工具箱,特别是还提供了仿真工具软件SIMULINK。SIMULINK这一名字比较直观地表明了此软件的两个显著的功能:SIMU(仿真)与LINK(连接),亦即可以利用鼠标在模型窗口上“画”出所需的系统模型,然后利用SIMULINK提供的功能对控制系统进行仿真和线性化分析。MATLAB在80年代一出现,首先是在控制界得到研究人
2、员的瞩目。随着MAT-LAB软件的不断完善,特别是仿真工具SIMULINK的出现,使MATLAB的应用范围越来越广。MATLAB的仿真环境(simulink)提供的系统模型库包括以下几个子模型库:Sources(输入源)、Sinks(输出源)、Discrete(离散时间系统)、Linear(线性环节)、Non-linear(非线性环节)、Connections(连接及接口)、Extras(其它环节)。打开子模型库,你会发现每个模型库都包含许多个子模块,比如Sources模型库里含有阶跃函数、正弦函数、白噪声函数、MATLAB空间变量、信号发生器等子模块。另外在Extras子模型库下还有一个Bl
3、ockLibrary,集中了子模型库中最常用及其它常用的子模块,使用起来特别方便。通信系统一般都可以建立数学模型,在数学模型中,主要包括乘法器、加法器、信号发生器、滤波器等,而这些在上述的simulink系统模型库中一般都可找到,对于没有的模块(如伪随机信号发生器),可自己根据掌握的技术生成所需的子模块,随时调用。这样就可根据数学模型,建立通信系统的仿真模型。应用MATLAB下的SIMULINK仿真工具可以很方便地进行通信系统仿真,利用SIMULINK仿真工具下的现有子模块进行仿真。实验一.利用SIMULINK仿真常规调幅AM滤波 调制与卷积定理从信号与线性系统分析观点看,滤波如图 1 是系统
4、的冲激响应 h(t)对输入信号 x(t)的卷积作用,即y(t) = x(t) * h(t) (1)对应的频域分析是Y( ) = X( )H( ) (2)即时域卷积处理对应于频域内相乘,(1)和(2)式是时域卷积定理 图 1 滤 波 图 2 调 制 再看调制(包括解调、混频等)如图2, 是两信号相乘 即 y(t) = x(t)c(t) (3)对应的频域分析是 Y()=1/2X()*C() (4)即时域相乘对应于频域内卷积 ,(3)和(4)式是频域卷积定理。 一般说来 卷积运算比乘法运算复杂得多, 这也是(2)式得到广泛应用的原因。对调制来说,由于载波高频信号多采用 cos(0t)或ej0t ,它
5、们的频谱都是离散型的 ()形式,利用()卷积性质 即 X()*(0)X(0) (5)(4)式的卷积运算变成 X()在频带上的平移操作,(即“搬迁”), 从而使(4)式的卷积运算反而变得异常简单,调制就是把调制信号“基带信号” 搬出去,解调就是把调制信号“搬回来”。而混频就是把调制信号搬到适当的位置,如中频带。常规调幅(AM)仿真首先建立数学模型,如图1所示,其中:调制信号f(t)=sin(mt),直流分量A0=常数,载波信号c(t)=cos(0t),相干载波c(t)=2cos(0t)。然后建立SIMULINK仿真模型,如图2所示,图2中,载波信号和相干载波的频率都设为30rad/s,直流分量A
6、0取值为1,滤波器的截止频率定为10rad/s,f(t)为调制信号,s(t)为AM信号,f(t)为解调后的信号。仿真结果如图3所示。图3中,由上往下的三个波形分别解调出的信号f(t),AM信号s(t)和调制信号f(t)。可见,f(t)与f(t)除了有时间上的延迟外,完全一样。图3 AM通信系统的数学模型图4 AM通信系统的仿真模型主要仿真参数:载波角频率:30rad/s调制信号频率:6 rad/s直流分量:1滤波器通带截止频率:750 rad/s图5 AM通信系统仿真波形实验步骤:1 启动MATLAB,并在命令窗口中敲入simulink,回车,进入SIMULINK仿真模块。2 在SIMULIN
7、K仿真模块中新建一个模型,需要保存时命名为AM。从SIMULINK工具箱中找到图2中出现的各个器件,并拖动到AM模型的工作界面里。具体方法是:从Simulink模块的Sources(输入源)子模块中寻找正、余弦和常数发生器;从Simulink模块的Math Operation子模块中寻找加法器和乘法器;从Simulink模块的Sinks(输出源)中找到示波器,并且改变示波器的参数Number of axes的值为3,使得可以在同一个示波器上看到解调后的信号、AM信号和调制信号的波形。3按图2所示,连接各个器件。4运行模型5观察示波器的输出波形,即为图3所示。6改变滤波器的截止频率,观察输出波形
8、,描述此时波形的变化实验二. DSB调制与解调仿真方法一:SIMULINK模型法双边带幅度调制 DSB 和解调 原理图如图 6所示图 6 DSB 原理图 和实验一中类似,我们可以在SIMULINK 中建立如下仿真模型:图7 DSB仿真模型仿真结果如图8所示: 图8 DSB仿真波形方法二:M文件编程在MATLAB中,除了用SIMULINK仿真模块仿真通信系统以外,还可以编写MATLAB脚本(.m文件)来仿真通信系统。DSB通信系统仿真的M文件如下:% 双边带幅度调制(DSB)和解调n=1024;fs=n;%设取样频率fs=1024Hz%m=640*pi;%产生调制信号s(t)i=0:1:n-1;
9、t=i/n;t1=(t-1/8).2;t3=(t-3/8).2;t4=(t-4/8).2;t6=(t-6/8).2;t7=(t-7/8).2;s=exp(-m*t1)+exp(-m*t3)+exp(-m*t4)+exp(-m*t6)+exp(-m*t7);c=cos(2*pi*100*t);%产生载波信号 载波频率fc=30Hzx=s.*c;%正弦波幅度调制(DSB)y=x.*c;%解调wp=0.1*pi;ws=0.12*pi;Rp=1;As=15;%设计巴特沃思数字低通滤波器N,wn=buttord(wp/pi,ws/pi,Rp,As);b,a=butter(N,wn);s1=filter(
10、b,a,y);%滤波s1=2*s1;S=fft(s,n);%求上述各信号及滤波器的频率特性C=fft(c,n);X=fft(x,n);Y=fft(y,n);H,w=freqz(b,a,n,whole);n2=300;f=(-n/2:1:n/2-1);%绘图subplot(521),plot(s);title(调制信号的波形)subplot(523),plot(c);title(载波的波形)subplot(525),plot(x);title(已调信号的波形)subplot(527),plot(y); title(解调信号的波形)subplot(529),plot(f,abs(fftshift(H);title(滤波器传输特性)subplot(522),plot(f,abs(fftshift(S);title(调制信号的频谱)subplot(524),plot(f,abs(fftshift(C);title(载波的频谱)subplot(526),plot(f,abs(fftshift(X);title(已调信号的频谱)subplot(528),plot(f,abs(fftshift(Y);title(解调信号的频谱)subplot(5,2,10),plot(s1);title(解调滤波后的频谱)执行结果如图9所示: