simulink仿真实验设计报告.doc_第1页
simulink仿真实验设计报告.doc_第2页
simulink仿真实验设计报告.doc_第3页
simulink仿真实验设计报告.doc_第4页
simulink仿真实验设计报告.doc_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验总成绩: 装 订 线报告份数: 1份 西安邮电大学 通信与信息工程学院 基于Simulink的通信系统仿真报告专业班级: 学生姓名: 学号(班内序号): 年 月 日摘要 Simulink是一对动态系统建模和仿真分析的软件包,为信号与系统仿真实验提供了很好的平台。作为功能强大的数学工具软件和动态系统仿真软件,在涉及信号处理、控制系统、虚拟现实等领域已得到了广泛的应用。Simulink采用基于时间流的链路级仿真方法,将仿真系统建模与工程通用的方框图设计方法统一起来,可以更加方便的对系统进行可视化建摸,并且仿真结果可以近乎实时的通过可视化模块,使得系统设计、仿真调试和模型检验工作大为方便。关键词:Simulink 系统仿真 系统建模Abstract Simulink is an analysis on the modeling and Simulation of dynamic system software, provides a good platform for signal and system simulation experiment. Mathematical tool software and dynamic simulation software system as a powerful, has been widely used in relating to the signal processing, control system, virtual reality etc. Simulink uses link level simulation method based on the flow of time, the block diagram design method for modeling and general engineering simulation system to unify, can be more convenient for visual model of the system, and the simulation results can be near real-time through visualization module, which makes system design, simulation and model checking work is convenient.Key word:simulink system simulation system modeling引言 Simulink是MATLAB最重要的组件之一,它提供一个动态系统建模、仿真和综合分析的集成环境。在该环境中,无需大量书写程序,而只需要通过简单直观的鼠标操作,就可构造出复杂的系统。Simulink具有适应面广、结构和流程清晰及仿真精细、贴近实际、效率高、灵活等优点,并基于以上优点Simulink已被广泛应用于控制理论和数字信号处理的复杂仿真和设计。同时有大量的第三方软件和硬件可应用于或被要求应用于Simulink。Simulink是用于动态系统和嵌入式系统的多领域仿真和基于模型的设计工具。对各种时变系统,包括通讯、控制、信号处理、视频处理和图像处理系统,Simulink提供了交互式图形化环境和可定制模块库来对其进行设计、仿真、执行和测试。为了创建动态系统模型,Simulink提供了一个建立模型方块图的图形用户接口,这个创建过程只需单击和拖动鼠标操作就能完成,它提供了一种更快捷、直接明了的方式,而且用户可以立即看到系统的仿真结果。 实验一 MATLAB基础实验一、实验目的l 了解MATLAB 程序设计语言的基本特点,熟悉MATLAB软件运行环境l 掌握创建、保存、打开m文件及函数的方法l 掌握变量等有关概念,具备初步的将一般数学问题转化为对应的计算机模型并进行处理的能力二、实验内容及步骤1.在Command Window里面计算;,计算:;,求;,输入复数矩阵;2.建立.m文件,用for循环语句生成5050的矩阵A:,将A矩阵进行水平和垂直翻转得到矩阵B和C。将A矩阵的前10行,10列变成0并赋值给D。3.建立.m文件,随机产生一个5050的矩阵,元素值为从0到255,要求用0和255对该矩阵进行标记,元素值大于128的标记为255,元素值小于128的标记为0。4.产生一个均值为2.4方差为0.2大小为34的随机矩阵。三、实验代码及仿真结果1.(1)、(3+5+8)/5*10(2)、sin(3*pi)/exp(9/5) (3)A=1,2,3;4,5,6;7,8,9,B=7,8,9;4,5,6;1,2,3,C=A*B,D=A+B,AC,C/B (4)、A=3,1.2,4;7.5,6.6,3.1;5.4,3.4,6.1,A,inv(A),det(A) (5)、Z=1+2i,3+4i;5+6i,7+8i2、 程序代码:for i=1:1:50 for j=1:1:50 A(i, j)=i+j-1; endenddisp(A);B=flipud(A);disp(B);C=fliplr(A);disp(C);for i=1:1:10 for j=1:1:10 A(i, j)=0; endendD=A;disp(D);3、 程序代码A=255*rand(50);for i=1:1:50 for j=1:1:50 if A(i,j)128 A(i,j)=255; else A(i,j)=0; end endenddisp(A);4、 程序: A=2.4+sqrt(0.2)*randn(3,4) 实验二 Simulink仿真平台的基本操作一、实验目的l 了解SIMULINK程序设计的基本特点,熟悉MATLAB软件运行环境l 掌握创建、保存、打开SIMULINK文件及S函数的方法l 掌握变量等有关概念,具备初步的将一般数学问题转化为对应的计算机模型并进行处理的能力二、实验内容及步骤1.用Simulink建模的方法实现一个求绝对值模块,输入为幅度为3,频率为1Hz的正弦信号。正弦信号由sine wave输入,scope同时观测输入信号和求绝对值后的两路信号。2.为了看清楚Simulink调用S函数的内部过程,可修改S函数以便被调用时能够在Matlab命令窗口中显示出调用时刻的函数变量值的情况。将S函数文件ch2example5fun.m修改并另存为ch2example5funB.m,修改的部分内容如下:程序代码ch2example5funB.mfunctionsys,x0,str,ts=ch2example5funB(t,x,u,flag)% 连续系统状态方程;% x=Ax+Bu% y=Cx+Du% 定义A,B,C,D矩阵A=010;001;-4-6-3;B=0;0;1;C=040;D=0;%-显示调用该S函数时,调用标志,仿真时间,系统状态,输入信号flagtxu%-以下程序代码和ch2example5fun.m中的对应部分相同(略)同时,还需要把ch2example5.mdl中的S函数模块参数中设置关联S函数文件名相应修改为ch2example5funB,仿真时间段设定为0秒到1秒,为了显示调用简明,可选择仿真算法为固定步长的,步长为0.1秒。仿真执行完成后,在命令窗口中将显示出Simulink每次调用S函数时的调用标志、仿真时间、系统状态和输入信号的当前值。仿真完成后记录Simulink每次调用S函数时的调用标志、仿真时间、系统状态和输入信号的当前值并分析显示结果。3、 实验代码及仿真结果1、2、 程序代码:functionsys,x0,str,ts=ch2example5funB(t,x,u,flag)A=0 1 0;0 0 1;-4 -6 -3;B=0;0;1;C=0 4 0;D=0;flagtxuswitch flag, case 0 sys,x0,str,ts=mdlInitializeSizes(A,B,C,D); case 1 sys=mdlDerivatives(t,x,u,A,B,C,D); case 3 sys=mdlOutputs(t,x,u,A,B,C,D); case 2,4,9 sys=; otherwise error(Unhandled flag=,num2str(flag);endfunction sys,x0,str,ts=mdlInitializeSizes(A,B,C,D)sizes=simsizes;sizes.NumContStates =3;sizes.NumDiscStates =0;sizes.NumOutputs =1;sizes.NumInputs =1;sizes.DirFeedthrough =0;sizes.NumSampleTimes =1;sys=simsizes(sizes);str=;x0=0;0;0;ts=0 0;function sys=mdlDerivatives(t,x,u,A,B,C,D)sys=A*x+B*u;function sys=mdlOutputs(t,x,u,A,B,C,D)sys=C*x;实验结果:flag =0 t = x = u =flag =3 t =0 x =0 0 0 u =NaNflag =2 t =0 x =0 0 0 u =-3flag =1 t =0 x =0 0 0 u =-3flag =3 t =0.1000 x =-0.0005 -0.0135 -0.2565 u =NaNflag =2 t =0.1000 x =-0.0005 -0.0135 -0.2565 u =-3flag =1 t =0.1000 x =-0.0005 -0.0135 -0.2565 u =-3flag =3 t =0.2000 x =-0.0035 -0.0485 -0.4328 u =NaNflag =2 t =0.2000 x =-0.0035 -0.0485 -0.4328 u =-3flag =1 t =0.2000 x =-0.0035 -0.0485 -0.4328 u =-3flag =3 t =0.3000 x =-0.0107 -0.0976 -0.5393 u =NaNflag =2 t =0.3000 x =-0.0107 -0.0976 -0.5393 u =-3flag =1 t =0.3000 x =-0.0107 -0.0976 -0.5393 u =-3flag =3 t =0.4000 x =-0.0233 -0.1544 -0.5870 u =NaNflag =2 t =0.4000 x =-0.0233 -0.1544 -0.5870 u =-3flag =1 t =0.4000 x =-0.0233 -0.1544 -0.5870 u =-3flag =3 t =0.5000 x =-0.0417 -0.2134 -0.5868 u =NaNflag =2 t =0.5000 x =-0.0417 -0.2134 -0.5868 u =-3flag =1 t =0.5000 x = -0.0417 -0.2134 -0.5868 u =-3flag =3 t =0.6000 x =-0.0660 -0.2704 -0.5490 u =NaNflag =2 t =0.6000 x =-0.0660 -0.2704 -0.5490 u =-3flag =1 t =0.6000 x =-0.0660 -0.2704 -0.5490 u =-3flag =3 t =0.7000 x =-0.0957 -0.3221-0.4833 u =NaNflag =2 t =0.7000 x =-0.0957 -0.3221 -0.4833 u =-3flag =1 t =0.7000 x =-0.0957 -0.3221 -0.4833 u =-3flag =3 t =0.8000 x =-0.1302 -0.3663 -0.3987 u =NaNflag =2 t =0.8000 x =-0.1302 -0.3663 -0.3987 u =-3flag =1 t =0.8000 x =-0.1302 -0.3663 -0.3987 u =-3flag =3 t =0.9000 x =-0.1686 -0.4014 -0.3029 u =NaNflag =2 t =0.9000 x =-0.1686 -0.4014 -0.3029 u =-3flag =1 t =0.9000 x =-0.1686 -0.4014 -0.3029 u =-3flag =3 t =1 x =-0.2101 -0.4267 -0.2025 u =NaNflag =2 t =1 x =-0.2101 -0.4267 -0.2025 u =-3flag =9 t =1 x =-0.2101 -0.4267 -0.2025 u =-3实验三 S函数编写Simulink基本模块一、实验目的l 了解SIMULINK程序设计的基本特点,熟悉MATLAB软件运行环境。l 掌握用S函数编写SIMULINK基本模块的方法。l 掌握reshape模块的转换功能。二、实验内容及步骤1. 用S函数实现一个信号切换开关,对两路输入信号进行选择并输出。信号切换开关有三个输入端,其中二个是传输信号输入端,一个是切换控制信号端。切换开关通过控制信号电平与设计门限值相比较来判断选择其中一个输入信号作为输出。显然,信号切换开关是一个无记忆系统。在S函数中的输出方程计算部分,通过条件语句或逻辑语句即可实现该功能。在信号切换开关模型中,首先以Mux模块将三个输入信号复用到一条信号在线,再传入S函数,设S函数的传入信号为u(1),u(3),控制信号为u(2),比较门限参数为threshold,也可采用条件语句实现。请参照实例2.9完成S函数的编写,测试系统和仿真结果可参照下图,并将自行完成的S函数与Simulink的原有模块Switch加以对比。2. 以22维矩阵信号为例掌握reshape模块的转换功能,测试模型如下图所示。仿真时间从0到4秒,固定步长为1秒,则总共仿真5个时间点。仿真完毕后,在Matlab的命令窗口下,用whos查看变量结果。完成仿真后,分析下面测试模型的转换过程及生成的变量结果。三、实验代码及仿真结果1、源代码:function sys,x0,str,ts=ch3xitilfun(t,x,u,flag)switch flag, case 0 sizes=simsizes; sizes.NumContStates=0; sizes.NumDiscStates=0; sizes.NumOutputs=1; sizes.NumInputs=-1; sizes.DirFeedthrough=1; sizes.NumSampleTimes=1; sys=simsizes(sizes); str=; x0=; ts=-1 0; case 3 sys=u(1)*(u(2)=0)+u(3)*(u(2)0); case 1,2,4,9 sys=; otherwise error(Unhandled flag=,num2str(flag);end 2、实验四 通信模块建模仿真(一)一、实验目的l 了解SIMULINK程序设计的基本特点,熟悉SIMULINK环境。l 掌握通信基本模块滤波器、信源模型、信号统计参数的建模仿真方法。二、实验内容及步骤1. 采用Simulink基本模块Discrete Filter以及Signal Processing Blockset工具箱的Digital Filter两个模块实现实例3.3。仿真模型中用Repeating Sequence模块作为输入信号源,设置系统采样时间为1秒,Digital Filter模块的初始状态设置为零。仿真采用固定步长类型,算法采用离散(discrete)算法。滤波器模块的分子分母分别设置为a和b,并在命令窗口输入a和b的值。执行仿真,并分析两个模块实现的结果是否相同?2. 产生一信号秒。用统计库(Statistics)中的模块估计该信号的直流功率、交流功率、最大值和最小值,并与理论计算的结果比较。统计库模块是针对离散时间信号的,所以需要对输入信号进行采样,设采样率为10000Hz。三、实验代码及仿真结果1、结果:2、实验五 通信模块建模仿真(二)一、实验目的l 了解SIMULINK程序设计的基本特点,熟悉SIMULINK环境。l 掌握信号统计参数、信道模型的建模仿真方法。二、实验内容及步骤1.试用MATLAB编程方式产生一个100Hz的方波,并用FFT指令计算其频谱,作出功率谱密度,并与理论结果进行对比。并用Simulink方式重做上题,并用统计模块在时域和频域同时计算信号的功率,看两者计算结果是否一致?验证帕斯瓦尔定理。2.对实例3.7的模型,请修改其中AWGN Channel的加入噪声参数模式,如以SNR模式或方差模式加入等,再仿真观察检测输出的SNR结果。说明AWGN Channel模块中不同噪声加入模式之间的关系。三、实验代码及仿真结果1、S函数代码: % ch5xiti1A.m% 方波功率谱理论结果作图clear;f=100; % HzT=1/f; % 方波周期A=1; % 方波幅度Omega=2*pi*f;idx=1;% 功率谱数组下标m=7; %作图谐波数for n=-m:m psd(idx)=4*A2/(n+eps)2*(cos(n*pi)-1)2; idx=idx+1;endstem(-m*f:f:m*f,psd/(2*pi)2,);%以频率为单位的功率谱axis(-m-1)*f (m+1)*f -0.1 0.5);grid on;xlabel(频率 Hz);ylabel(PSD); % ch5xiti1B.m% 方波功率谱数值分析结果作图 clear;f=100; % HzT=1/f; % 方波周期A=1; % 方波幅度Omega=2*pi*f;fs=2000; % Hz 采样频率Ts=1/fs; % 采样时间间隔T_end=2; % 计算结束时间t=0:1/fs:T_end;squarewave=A*sign(sin

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论