您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文化 > Simulink仿真技术.
第六讲Simulink仿真技术本章主要介绍一个针对动态系统进行建模、仿真与分析的工具——Simulink。Simulink简介模型的建立Simulink中的系统模型子系统的创建和封装Simulink仿真的应用1.Simulink简介1)什么是Simulink:Simulink是Matlab软件的扩展,它是实现动态系统建模和仿真的一个软件包。它与Matlab语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。2)Simulink的主要优点:适应面广:该系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。结构和流程清晰:它外表以方块图形呈现,且采用分层结构,即适于自上而下的设计流程(概念、功能、系统、子系统,直至器件),又适于自下而上的逆程设计。仿真精细、贴近实际:它提供了大量特种函数模块为用户摆脱理想化假设的无奈提供了途径。3)Simulink使用入门:打开Simulink模块库浏览器;查看各种信源模块;创建模型窗口;添加所需的模块;连接模块直间的信号线;进行仿真:『Simulink:Start』2.模型的建立:1)模型的概念:一个典型的Simulink模型由信源、系统及信宿等3部分组成,它们的关系如下图所示:信源提供系统的输入信号;系统是对仿真对象的数学抽象;信宿是收信号的的部分,用户可以把它送到“示波器”中显示出来,或者保存到相应的mat文件中去。信元系统信宿2)模块的操作模块的选定(被选定的模块四个角处会出现小黑块,这种小黑块称为柄)模块的复制模块的移动模块的删除改变模块大小模块的旋转模块名的操作3)信号线的操作产生连线:•水平或垂直线的产生•斜线的产生•连线的移动和删除信号线的分支和折曲:•分支的产生•信号线的折曲•折点的移动插入模块:信号线的标识:添加、修改、移动、复制、删除。4)对模型的注释:建立Simulink模型应该养成添加模型注释的良好习惯。方法:在模型编辑窗任意位置双击鼠标左键,将弹出一个编辑窗,可以在其中写入注释内容。备注:模型说明只支持英文,不能含有汉字。5)常用的模型库:模块库浏览器中的Simulink结点下包含了搭建一个Simulink模型所需的基本模块。下面主要对其中的Sources模块库、Sinks模块库进行介绍。Sources模块库:信号发生模块,主要用于给Simulink仿真模型提供输入信号。•SineWave模块•FromWorkspace模块•FromFile模块Sinks模块库:常用的离散模块,主要功能是接收信号,并且将接收到的信号显示出来。•示波器的工具栏•坐标轴的范围调整6)仿真的配置选择Simulink|ConfigurationParameters进行配置。3.Simulink中的系统模型1)连续系统模型连续系统通常都是用微分方程描述的系统,而现实中的多数实际系统也都是连续变化的。利用Simulink仿真时,通常使用Continuous、MathOperations和Nonlinear模块库中的模块。由于非线性系统不利于系统分析和设计,通常我们都是将非线性近似为线性系统,所以我们重点学习线性系统。线性系统要对线性系统建模,通常都要使用到积分模块。•积分模块的功用:例:利用阶跃信号进行复位积分。操作步骤:构造Simulink模型,保存为eg_6_2.mdl双击积分模块,在弹出的对话框中在Externalreset中选择rising选项,在Initialconditionsource下拉列表中选择external选项,单击OK按钮完成参数设置。设置scope模块运行仿真查看结果连续系统应用实例:一个由二阶微分方程,u(t)是单位阶跃函数,系统的初始状态是0。求解该微分方程的模型。按照对该系统建模方法的不同,可以采用两种方法来搭建仿真模型:方法一:利用积分模块构建微风方程求解模型方法二:采用传递函数模块来建立仿真模型)(2.0)(4.0)(2.0)('''tutxtxtx•利用积分模块构建微风方程求解模型核心思想:x''经积分作用得x',x'再经积分模块作用就得到x。而x和x'经代数运算又产生x''。将原方程改写为:利用模块构建模型eg_6_3.mdl)(4.0)(2.0)(2.0)('''txtxtutx模块配置:u(t)输入:Steptime设为0.Gain增益参数:0.2,0.2,0.4求和模块:listofsigns:+--模型窗:stoptime:20仿真操作:start对方程两边进行Laplace变换,得:经整理得:根据此式,利用传递函数模块构造求解微分方程的模型:eg_6_4.mdl。•采用传递函数模块来建立仿真模型)(2.0)(4.0)(2.0)('''tutxtxtx)(2.0)(4.0)(2.0)('''2sUsXssXsXs4.02.02.0)()()(2sssUsXsG模块配置:u(t)输入:Steptime设为0.G(s)模块:分子:0.2;分母:10.20.4运行仿真。2)离散时间系统模型离散系统通常都是用差分方程来描述的,而在实验中,都是采用离散采样。利用Simulink建模时,通常使用Discret模块库、Mathoperation模块库、Sink模块库和Source模块库的模块。4.子系统的创建和封装Simulink提供的子系统功能,可以大大的增强Simulink系统模型框图的可读性。1)子系统的创建:在已有的系统模型中创建子系统:框选需要封装的区域,右键单击,选择CreateSubsystem。在已有的系统模型中新建子系统:方法类似。2)子系统的封装所谓子系统的封装(Masking),就是为子系统定制对话框和图标,使子系统本身有一个独立的操作界面,把子系统中的各模块的参数对话框合成一个参数设置对话框,在使用时不必打开每个模块进行参数设置,这样使子系统的使用更加方便。子系统的封装过程很简单,先选中所要封装的子系统,再选择模型编辑窗口Edit菜单中的Masksubsystem命令,这时将出现封装编辑器(MaskEditor)对话框。MaskEditor对话框中共包括4个选项卡:IconParametersInitializationDocumentation子系统的封装主要就是对这4个参数进行设置。Unmask:解除封装5.Simulink在信号处理仿真中的应用Simulink提供了强大的信号处理工具,这些工具是信号仿真工作,与那中自己写代码实现算法的仿真相比,变得非常轻松。Simulink信号处理工具包对信号的处理基于两种基本单元。一种是基于采样信号,另一种是基于帧信号。基于采样的信号大家都比较熟悉,默认情况下,Simulink的所有信号都是基于采样的。。大多数实时的数字信号处理系统都采用基于帧的处理方式,以提高系统性能。这里,每帧包含相邻的多个或者一组信号采样。采用基于帧的处理方式更适合多数的数字信号处理算法,另外也可以降低系统对数据采集硬件的要求。1)Simulink在数字信号处理仿真模块2)数字信号处理仿真举例——卡尔曼滤波器本章小结:熟悉Simulink的各模块会使用Simulink搭建简单的模型并进行仿真
本文标题:Simulink仿真技术.
链接地址:https://www.777doc.com/doc-3194652 .html