Simulink动态系统建模与仿真ppt课件

上传人:资****亨 文档编号:135535793 上传时间:2020-06-16 格式:PPT 页数:114 大小:5.35MB
返回 下载 相关 举报
Simulink动态系统建模与仿真ppt课件_第1页
第1页 / 共114页
Simulink动态系统建模与仿真ppt课件_第2页
第2页 / 共114页
Simulink动态系统建模与仿真ppt课件_第3页
第3页 / 共114页
Simulink动态系统建模与仿真ppt课件_第4页
第4页 / 共114页
Simulink动态系统建模与仿真ppt课件_第5页
第5页 / 共114页
点击查看更多>>
资源描述

《Simulink动态系统建模与仿真ppt课件》由会员分享,可在线阅读,更多相关《Simulink动态系统建模与仿真ppt课件(114页珍藏版)》请在金锄头文库上搜索。

1、 第1章Simulink基础 1 1Simulink简介1 2运行Simulink演示程序1 3建立一个简单的Simulink模型1 4保存Simulink模型1 5打印及HTML报告1 6打印边框编辑器1 7Simulink参数设置 1 1Simulink简介Simulink是一个用来建模 仿真和分析动态系统的软件包 它基于MATLAB的框图设计环境 支持线性系统和非线性系统 可以用连续采样时间 离散采样时间或两种混合的采样时间进行建模 它也支持多速率系统 也就是系统中的不同部分具有不同的采样速率 为了创建动态系统模型 Simulink提供了一个建立模型方块图的可视的图形用户接口 GUI 用

2、户可以在这个可视窗口中通过单击和拖动鼠标操作来完成系统建模 利用这个接口 用户可以像用笔在草纸上绘制模型一样 只要构建出系统的方块图即可 这与以前的仿真软件包要求解算微分方程和编写算法语言程序不同 它提供的是一种更快捷 更直接明了的方式 而且用户可以立即看到系统的仿真结果 Simulink中包括了许多实现不同功能的模块库 在Simulink6 6中共有16个模块库 这些模块库把各种功能不同的模块分类存放 如Sources 输入源模块库 Sinks 输出模块库 MathOperations 数学模块库 以及线性模块和非线性模块等各种组件模块库 用户也可以自定义和创建自己的模块 利用这些模块 用户

3、可以创建层级式的系统模型 可以自上而下或自下而上地阅读模型 也就是说 用户可以浏览最顶层的系统 然后用鼠标双击模型中的子系统模块 打开并查看该子系统模型 这不仅方便了工程人员的设计 而且可以使自己的模型方块图功能更清晰 结构更合理 创建了系统模型后 用户可以利用Simulink菜单或在MATLAB命令窗口中键入命令的方式选择不同的积分方法来仿真系统模型 对于交互式的仿真过程 使用菜单是非常方便的 但要运行大量的仿真 使用命令行方法则更为有效 例如 执行蒙特卡洛仿真或想要扫描某一范围的参数值时 可以在命令行中输入变参数值 观察参数值改变后的系统输出 此外 利用示波器模块或其他的显示模块 用户可以

4、在仿真运行的同时观察仿真结果 而且可以在仿真运行期间改变仿真参数 并同时观察改变后的仿真结果 最后的结果数据可以输出到MATLAB工作区进行后续处理 或利用命令行命令在图形窗口中绘制仿真曲线 Simulink中的模型分析工具包括线性化工具和调整工具 这可以从MATLAB命令行获取 MATLAB及其工具箱内还有许多其他的适用于不同工程领域的分析工具 由于MATLAB和Simulink是集成在一起的 因此无论何时用户都可以在这两个环境中仿真 分析和修改模型 Simulink系统建模的主要特性如下 框图式建模 Simulink提供了一个图形化的建模环境 通过鼠标单击和拖拉操作Simulink模块 用

5、户可以在图形化的可视环境中进行框图式建模 支持非线性系统 支持混合系统仿真 即系统中包含连续采样时间和离散采样时间的系统 支持多速率系统仿真 即系统中存在以不同速率运行的组件 Simulink建立的系统模型可以是层级模型 因此用户可以采用自下而上或自上而下的方式建立模型 并一层一层地查看各级模型 用户可以根据需要建立自定义子系统 并把自定义子系统内的模块进行封装 封装后的自定义子系统具有与Simulink内嵌模块同样的属性 并可由用户设置模块的属性参数 所有的自定义子系统均可在系统模型中使用 MATLAB与Simulink集成在一起 因此 无论何时在这两个环境中的任一环境下都可以建模 分析和仿

6、真用户模型 1 2运行Simulink演示程序Simulink自带了许多模型演示程序 这些演示程序分别说明了利用Simulink模块搭建的功能不同的模型系统 这里以房屋热力学系统模型为例介绍系统模型的组成及功能 以使读者对Simulink有一个基本认识 1 2 1运行房屋热力学系统演示模型首先运行MATLAB 在MATLAB的命令窗口内键入下列命令 如图1 1所示 mdl sldemo househeat open system mdl 图1 2 图1 2显示的是房屋热力学系统模型的全貌 在模型图的最右侧有一个标注为PlotResults 系统曲线图 的模块 它实际上实现的就是示波器功能 双击

7、该模块 可以打开示波器 在这个例程中 示波器中显示的是Indoorvs OutdoorTemp 室内与室外温度 和HeatCost 加热费用 三条曲线 为了仿真这个模型系统 首先需要设置仿真参数 这里利用演示模型中已设置好的仿真参数进行仿真 选择Simulation菜单下的Start命令 或者单击Simulink工具栏上的 开始 按钮 系统开始按照模型中设置的参数进行仿真 仿真结果曲线将显示在示波器中 当打开加热器时 系统会自动计算加热所需要的费用 并将加热费用 HeatCost 曲线在示波器中显示出来 而室内温度 IndoorTemp 也同时显示在示波器中 若要停止仿真 可选择Simulat

8、ion菜单下的Stop命令 或者单击Simulink工具栏上的 停止 按钮 仿真结束后 选择File菜单下的Close命令关闭模型 图1 3是显示在示波器中的房屋热力学系统模型仿真结果曲线 图1 3 1 2 2房屋热力学系统模型说明演示程序使用Simulink模块建立了简单的房屋热力学系统模型 该模型使用Simulink中子系统模型的概念来简化模型图 并创建了可重用系统 Simulink中的子系统是一组由Subsystem 子系统 模块表示的模块组 房屋热力学系统模型包括5个子系统 Thermostat 恒温器 子系统 House 房屋 子系统 Heater 加热器子系统 Fahrenheit

9、toCelsius 将华氏温度转换为摄氏温度 子系统和CelsiustoFahrenheit 将摄氏温度转换为华氏温度 子系统 模型最前端的 SetPoint 模块是常值模块 它设置了屋内的恒温值 这里给出的缺省值是70华氏度 经过计算后可转换为摄氏度 图1 4显示的是恒温器子系统模型 双击模型中的 Thermostat 模块 可打开该子系统 模型中的恒温器 Thermostat 系统设置为70华氏度 这个温度受户外温度的影响 并按照幅值为15华氏度 基值温度为50华氏度的正弦波变化 这个模型模拟了每天的温度波动 该子系统由一个继电器模块组成 该模块将模块输入与阈值相比较 并输出指定的 打开

10、值和 关闭 值 它实际上控制了加热器系统的打开和关闭时间 图1 4 图1 5显示的是加热器子系统模型 双击模型中的 Heater 模块 可打开该子系统 图1 5 加热器子系统是一个常值空气流速子系统 子系统中的Mdot值在sldemo househeat data m文件中设置 它表示空气流速 Mdot 1kg s 3600kg h 该子系统的打开和关闭由其输入端的恒温器子系统的输出信号进行控制 当加热器打开时 它以常值的空气流动速率Mdot吹进温度为Theater的热空气 缺省时 Theater等于50摄氏度 即122华氏度 加热器子系统的热流速公式如下 图1 6显示的是房屋子系统模型 双击

11、模型中的 House 模块 可打开该子系统 内部温度和外部温度均传送到该子系统 并由该子系统经过转换后更新和输出内部温度 房屋子系统用来计算房间的温度变动 它考虑了加热器的热流和环境中的热量损失 热量损失及温度的时间导数方程分别如下 其中 Mair 房内的空气质量 Req 房屋的等效热电阻 图1 6 图1 7 房屋热力学系统是一个很典型的系统 它包括了模型创建过程中通常需要完成的工作 主要有 1 运行模型仿真时需要指定仿真参数 并利用Start命令开始仿真 2 用户可以把一组相关的模块组包含在一个模块中 这个模块称为子系统模块 3 在sldemo househeat模型中 所有的子系统都利用封

12、装特性创建了自定义图标 用户也可以利用封装特性为模块创建自定义的图标 并设计模块对话框 4 Scope模块与实际的示波器模块一样可以显示图形输出 读者可以试一试下面的几种方法 在示波器中察看模型的不同参数设置是如何影响响应曲线的 每个Scope模块可以设置多个信号显示窗口 用户可以控制每个窗口中显示的信号数目 并设置显示的信号范围 如果需要 用户也可以放大显示信号曲线 在每个信号显示区域内 水平轴代表的是时间值 垂直轴代表的是信号值 标有SetPoint 在模型的左上角 的Constant 常值 模块用来设置所希望的温度值 打开该模块 并将温度值重新设置为80度 看看室内温度和加热费用是如何变

13、化的 也可以调整室外温度 ArgOutdoorTemp模块 看看它对仿真结果有何影响 打开标有DailyTempVariation 每日温度变化 的SineWave 正弦波 模块 改变Amplitude 幅值 参数 调整每日的温度变化值 观察输出曲线的变化 1 2 3其他Simulink演示程序Simulink还提供了其他演示程序 用以说明Simulink中的各种建模和仿真概念 用户可以从MATLAB的命令窗口中打开这些演示程序 首先在MATLAB命令窗口的左下角单击Start按钮 打开Start菜单 如图1 8所示 在菜单中选择Demos命令 MATLAB的帮助浏览器会显示Simulink的

14、Demos选项面板 单击Simulink显示演示程序的目录 双击这些条目就可以启动相应的演示程序 如图1 9所示 图1 8 图1 9 1 3建立一个简单的Simulink模型本节引导读者创建一个如图1 10所示的简单的Simulink模型 模型中的输入是一个正弦波信号 该信号经过增益器放大5倍 图1 10 图1 10中用两个示波器显示波形 标注为Scope的示波器用来显示经过放大后的正弦波信号 标注为Scope1的示波器用来显示原正弦波信号和经过放大的正弦波信号的比较波形 为了创建系统模型图 首先在MATLAB命令窗口中键入Simulink命令 或者单击工具条上的 Simulink 按钮 打开

15、Simulink库浏览器 如图1 11所示 从图中可以看到 Simulink库浏览器是一个以树状结构排列的浏览器 在Simulink目录下列举的是Simulink的模块库 不同功能的模块分类存放在各个模块库中 关于Simulink模块库中各模块的功能 读者可以参看附录C Simulink模块简介 图1 11 接下来 在Simulink库浏览器的工具条上选择 新建 按钮 将打开一个空白的模型创建窗口 如图1 12所示 图1 12 为了创建图1 10所示的模型 需要在Simulink模块库中选择如下模块 SineWave模块 Sources库 Scope模块 Sinks库 Gain模块 MathO

16、perations库 Mux模块 SignalsRouting库 现在 将模块拷贝到模型窗口中 在Simulink库浏览器中单击Sources库 选中SineWave 正弦波 模块 如图1 13所示 或者在Sources库上单击鼠标右键 在弹出的快捷菜单中选择 OpentheSouresLibrary 命令 打开Library Simulink Sources库窗口 选中SineWave模块 如图1 14所示 单击SineWave模块并将其拖动到模型窗口中 如图1 15所示 然后释放鼠标 图1 13 图1 14 按照这种方法 依次在Sinks库 MathOperations库和SignalsRouting库中将Scope模块 Gain模块和Mux模块 即图1 16中有两个输入和一个输出的模块 拷贝到模型窗口中 并移动模块将其排列在适当位置 如图1 16所示 图1 15 图1 16 在连接模块之前 先介绍一下模块上的 符号 该符号用来表示进出模块的信号端口 其中 指向模块的 符号表示模块的输入端口 指出模块的 符号表示模块的输出端口 信号由输出端口传出 并经由 信号线 传递到下一个模块的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号