1、Simulink交互式仿真 作者: 日期:19 个人收集整理 勿做商业用途第 8 章 Simulink交互式仿真Simulink是一个进行动态系统建模、仿真和综合分析的集成软件包。它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。Simulink有两大特征:一,建模借助鼠标交互实现;二,模型运作以时间流方式进行。所以即使比较熟悉MATLAB工作环境和编程模式的读者,在初入Simulink领地时,也不免感到生疏。为帮助读者亲身跨过Simulink门槛,本章第2节以算例形式对建模的数学基础、基本器件、操作手法、工作平台进行了细节性的描述。就详细程度而言,尤以
2、本章第一个算例为最,初学者切莫跳过。像MATLAB编程需要函数、子函数、条件分支、循环控制一样,Simulink建模,尤其是创建较复杂的模型,就必须有简装子系统、精装子系统、使能子系统、触发子系统、循环子系统。本章的第3、4、5节就专门阐述这些子系统创建、工作机理、以及应用示例。从时间角度分,Simulink模型有连续和离散之分。本章除第6节用于专述纯离散系统和采样离散系统建模外,其余章节所涉的内容对连续、离散两种系统都适用。已建Simulink模型的运行、仿真分析,即可以通过鼠标手工操纵 ,也可以借助一组指令自动操控。鼠标操纵法的特点是:该法只能在Simulink模型窗中实施,参数的设置必须
3、由“人”通过对话窗进行。而指令自动操控法可以摆脱Simulink模型窗,在执行过程中无须人工参与.本章第7节的内容就是为Simulink模型的指令自动操控而设计的。本章第8节是出于Simulink模型解算的数值问题而编写的。该节还给出了消减仿真模型中“代数环困扰”的具体方法。就像MATLAB编程中用户常常需要编写“供自己专用的模块化函数那样,在Simulink建模中,用户也会需要创建一些“供自己专用的模块”,即S函数模块。有关S函数模块的创建在本章的最后一节介绍。在这引言结束之前,本书读者再次诚恳地建议读者:对待本章的算例,一定要“眼、脑、手并用,一定要在机器具体运作,切忌停留于“翻阅”.为读
4、者参照需要,本章所有算例中带exm前缀的MDL模型文件和相关的M文件都存放在随书光盘的mfile目录上.8.1 引导8.1.1 Simulink模型本质和一般结构(1)Simulink块图模型的本质(2) Simulink模型的一般结构8.1.2 创建块图模型的方法和基本环境(1)(2)(3)图 8.1-2 Simulink库浏览器的组成(4)(5)8.2 连续系统建模8.2.1 微分方程建模和积分模块 1 微分方程块图模型的创建和操作细节【例8。2-1】在图8。21所示的系统中,已知质量kg,阻尼N。sec/m,弹簧系数N/m,且质量块的初始位移m,其初始速度m/sec,要求创建该系统的Si
5、mulink模型,并进行仿真运行。图8。2-1 弹簧-质量阻尼系统(1)(2)(3)图8.22 复制进建模所需的各种库模块后的模型编辑器图 8。2-3 常用模块子库的库藏(4)(5)图8.2-4 经模型窗内模块再复制后的模型编辑器(6)(7)图 8。2-5 经布局和增益模块方向反转的模型草图(8)图 8.26 完成前馈通路连接的模型草图图 8。27 完成Gian模块的输入输出口信号线的连接(9)图8。2-8 改变Gain模块的增益图8.2-9 完成连线和增益设置后的模型窗(10)图 8。210 实现初始位移0。05设置的设置窗(11)(12)图8.2-11 完全符合题给要求的系统仿真模型图8.
6、2-12 默认设置下示波器显示的信号曲线(13)图8。2-13 经纵轴范围自动调整后显示的信号曲线 2 创建微分方程的向量化块图模型【例8.22】利用模块的向量处理能力,建立例8。2-1系统的Simulink仿真模型。(1)(2)图8。2-13 示波器参数设置对话框图8。2-14 上显示窗的纵坐标范围设置(3)(4)图8.2-15 利用库模块处理向量信号的能力构件的仿真模型图8。2-16 exm080202。mdl运行后显示的曲线(5)(6)图8。217 在仿真参数配置窗中把最大步长修改为0.14 3 积分模块(a)(b)图8。218 积分模块的默认外形和最多端口外形(1)(2)8.2.2 状
7、态空间建模 1 状态空间模块及其建模应用图8.219 状态空间库模块的图标【例8。23】在图8.220所示的倒立摆(Inverted Pendulum)系统中,定义状态变量,输出量.输入量由全状态反馈产生,倒立摆系统的动态由式(8。29)的状态方程(State Equation)描述。试用Simulnk块图模型研究该系统在初始条件下的动态响应.图 8。2-20 倒立摆示意图 (8.2-9)其中,。(1)图8。2-21 用状态空间模块构建的解题模型(2)图 8.222 状态空间模块参数设置对话窗(3)图8.2-23 倒立摆的摆角和小车位移的动态曲线 2 模型内存和模型浏览器(1)图8.224 模
8、型浏览器和模型内存(2)【例8。24】基于式(8。214),借助状态空间StateSpace模块构建例8。23倒立摆系统的解题模型(参见图8.221)。(1)图 8。225 据式(8。214)构造的解题模型(2)(3)图 8。2-26 选中“模型内存节点形成的操控区(4)8.2.3 传递函数建模及模型内存的操控 1 单位脉冲信号的近似实现(1)近似单位脉冲的设计准则(2)借助阶跃函数合成近似单位脉冲(3)借助脉冲发生器生成近似单位脉冲 2 传递函数模块和非零初始系统建模图8。2-27 传递函数库模块的图标【例8.2-5】已知图8.21所示弹簧质量阻尼系统中,质量kg,阻尼N。sec/m,弹簧系数N/m,质量块的初始位移m,初始速度m/sec,方向与位移一致的外力,是单位阶跃函数。要求创建该系统的Simulink模型,并进行仿真运行.图8。228 借助传递函数模块构建的模型(1)根据物理规律建立理论传递函数模型(2)构建图8.228所示Simulink传递函数模型的关键步骤(3)仿真运行图8。229 在外力作用下质量块的位移曲线