动态系统Simulink建模与仿真-完整版

合集下载

第五章 Simulink系统建模与仿真

第五章 Simulink系统建模与仿真
第五章 Simulink建模与仿真
本章重点
Simulink基本结构 Simulink模块 系统模型及仿真
一、Simulink简介
Simulink 是MATLAB 的工具箱之一,提供交互式动态系统
建模、仿真和分析的图形环境
可以针对控制系统、信号处理及通信系统等进行系统的建 模、仿真、分析等工作 可以处理的系统包括:线性、非线性系统;离散、连续及 混合系统;单任务、多任务离散事件系统。
从模块库中选择合适的功能子模块并移至编辑窗口中,按 设计要求设置好各模块的参数,再将这些模块连接成系统 Simulink的仿真过程就是给系统加入合适的输入信号模块 和输出检测模块,运行系统,修改参数及观察输出结果等
过程
二、Simulink的基本结构
Simulink窗口的打开
命令窗口:simulink 工具栏图标:
三、Simulink模型创建
7、信号线的标志
信号线注释:双击需要添加注释的信号线,在弹出的文本编辑 框中输入信号线的注释内容
信号线上附加说明:(1) 粗线表示向量信号:选中菜单Forma t|Wide nonscalar lines 即可以把图中传递向量信号的信号线用粗 线标出;(2)显示数据类型及信号维数:选择菜单Format|Port data types 及Format|Signaldimensions,即可在信号线上显示前 一个输出的数据类型及输入/输出信号的维数;(3) 信号线彩 色显示:选择菜单Format|Sample Time Color,SIMULINK 将用 不同颜色显示采样频率不同的模块和信号线,默认红色表示最 高采样频率,黑色表示连续信号流经的模块及线。
同一窗口内的模块复制: (1)按住鼠标右键,拖动鼠标到目标

第3章 Simulink建模与仿真

第3章  Simulink建模与仿真

将仿真数据写入 mat 文件 将仿真数据写入. mat文件 将仿真数据输出到 将仿真数据输出到 Matlab 工作空间 MATLAB 工作空间 使用 Matlab 使用MATLAB 图形显示数据 图形显示数据
图3.10 系统输出模块库及其功能
第3章 Simulink建模与仿真
模块功能说明:
模块功能说明: 有限带宽白噪声
求取输入信号的数学函数值 对输入信号进行内插运算
求取输入信号的数学函数值 对输入信号进行内插运算 输入信号的一维线性内插
输入信号的一维线性内插
输入信号的二维线性内插 输入信号的二维线性内插 输入信号的 n 维线性内插 输入信号的n维线性内插
M函数(对输入进行运算输出结果) M 函数,对输入进行运算输出结果 多项式求值
第3章 Simulink建模与仿真
模块功能说明: 模块功能说明 : 连续信号的数值微分 连续信号的数值微分 输入信号的连续时间积分 输入信号的连续时间积分 单步积分延迟,输出为前一个输入 单步积分延迟,输出为前一个输入 线性连续系统的状态空间描述 线性连续系统的状态空间描述
线性连续系统的传递函数描述 线性连续系统的传递函数描述 对输入信号进行固定时间延迟 对输入信号进行固定时间延迟 对输入信号进行可变时间延迟 对输入信号进行可变时间延迟 线性连续系统的零极点模型 线性连续系统的零极点模型
合并输入信号块控制信息 信号组合器信号组合器 信号探测器信号探测器 信号维数改变器 选择或重组信号 信号线属性修改 输入信号宽度
信号维数改变器 选择或重组信号 信号线属性修改 输入信号宽度
第3章 Simulink建模与仿真
模块功能说明: 对信号进行分配
Target模块库:主要提供各种用来进行独立可执行代码 或嵌入式代码生成,以实现高效实时仿真的模块。它 们和RTW、TLC有着密切的联系。 (6) Stateflow库:对使用状态图所表达的有限状态 机模型进行建模仿真和代码生成。有限状态机用来描 述基于事件的控制逻辑,也可用于描述响应型系统。

Simulink建模与仿真(精华版)

Simulink建模与仿真(精华版)
综上所述,Simulink就是一种开放性的,用来模拟线性或非线 性的以及连续或离散的或者两者混合的动态系统的强有力的系 统级仿真工具。
上 页 下3 页
Simulink的特点:
(1)丰富的可扩充的预定义模块库 ; (2)交互式的图形编辑器来组合和管理直观的模块图 ; (3)以设计功能的层次性来分割模型,实现对复杂设计的管理; (4)通过Model Explorer 导航、创建、配置、搜索模型中的任
Simulink 仿真基础
1 Simulink的概述 2 基本操作 3 基本模块 4 建模方法 5 系统仿真举例
1
3.1 Simulink的概述
Simulink已经成为动态系统建模和仿真领域中应用最为广泛的软件之 一。Simulink可以很方便地创建和维护一个完整的模块,评估不同的 算法和结构,并验证系统的性能。由于Simulink是采用模块组合方式 来建模,从而可以使得用户能够快速、准确地创建动态系统的计算机 仿真模型,特别是对复杂的不确定非线性系统,更为方便。
Accelerator,Rapid Accelerator)来决定以解释性的方式运行 或以编译C代码的形式来运行模型 ; (8)图形化的调试器和剖析器来检查仿真结果,诊断设计的性 能和异常行为 ; (9)可访问MATLAB从而对结果进行分析与可视化,定制建模环境, 定义信号参数和测试数据; (10)模型分析和诊断工具来保证模型的一致性,确定模型中的错误。
说明 输入信号的积分运算 输入信号的微分运算 实现线性状态空间系统模型 实现线性传递函数系统模型 实现零-极点表达式的传递函数模型 输出前一个时间步的输入值 对输入信号进行传输延时后再输出 对输入信号进行可变时间的传输延时后再输出
⑤ 决定所有无显示设定采样时间的模块的采样时间; ⑥ 分配和初始化用于存储每个模块的状态和输入当前值的存储空间。

第二讲 Simulink建模与仿真

第二讲 Simulink建模与仿真

三、模块的参数和特性设臵
Simulink中几乎所有模块 的参数(Parameter)都允许 用户进行设臵。只要双击要设 臵参数的模块就会弹出设臵对 话框,如右图所示。这是正弦 波模块的参数设臵对话框,您 可以设臵它的幅值、频率、相 位、采样时间等参数。模块参 数还可以用set-param命令修 改,这在后面将会讲到。
图1
调整模块的方向
图2
模块的阴影效果
五、模块名的处理
(1) 模块名的显示与否 选定模块,选取菜单Format下的Hide Name,模块名就会被隐藏, 同时Hide Name改为Show Name。选取Show Name就会使模块隐藏的名 字显示出来. (2) 修改模块名 用鼠标左键单击模块名的区域,这时会在此处出现编辑状态的光 标,在这种状态下能够对模块名随意修改。 模块名和模块图标中的字体也可以更改,方法是选定模块,在菜 单Format下选取Font,这时会弹出Set Font的对话框,在对话框中选 取想要的字体。 (3) 改变模块名的位臵 模块名的位臵有一定的规律,当模块的接口在左右两侧时,模块 名只能位于模块的上下两侧,缺省在下侧:当模块的接口在上下两侧 时,模块名只能位于模块的左右两侧,缺省在左侧。 因此模块名只能从原位臵移到相对的位臵。可以用鼠标拖动模块 名到其相对的位臵;也可以选定模块,用菜单Format下的Flip Name 实现相同的移动。
b) ode23:二/三阶龙格-库塔法,它在误差限要求不高和求解的问题不 太难的情况下,可能会比ode45更有效。也是一个单步解法器。
c) ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下 通常比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻 输出时,它需要以前多个时刻的解。

simulink动态系统建模仿真 第 章

simulink动态系统建模仿真 第 章

第9章 使 用 子 系 统
Action子系统至多执行一次,利用Output端口模块的 Output when disabled参数,Action子系统也可以控制是否 保持输出值,这是与使能子系统类似的地方。
Action子系统与函数调用子系统类似,因为函数调用子 系统在任何给定的时间步内可以执行多于一次,而Action子 系统至多执行一次。这种限制就表示Action子系统内可以放 置非周期性的模块,而且也可以控制状态和输出的行为。
第9章 使 用 子 系 统
2.非虚拟子系统 (1) 原子子系统(Atomic Subsystem)。原子子系统与虚拟 子系统的主要区别在于,原子子系统内的模块作为一个单个 单元执行,Simulink中的任何模块都可以放在原子子系统内, 包括以不同速率执行的模块。用户可以在虚拟子系统内通过 选择Treat as atomic unit选项来创建原子子系统。
第9章 使 用 子 系 统
第9章 使用子系统
9.1 创建子系统 9.2 创建条件执行子系统 9.3 控制流语句
第9章 使 用 子 系 统
9.1 创 建 子 系 统
当用户模型的结构非常复杂时,可以通过把多个模块 组合在子系统内的方式来简化模型的外观。利用子系统创建 模型有如下优点:
减少了模型窗口中显示的模块数目,从而使模型外观结 构更清晰,增强了模型的可读性;
第9章 使 Biblioteka 子 系 统(4) 函数调用子系统(Function-Call Subsystem)。函数调 用子系统类似于用文本语言(如M语言)编写的S-函数,只不 过它是通过Simulink模块实现的。用户可以利用Stateflow图、 函数调用生成器或S-函数执行函数调用子系统。Simulink限 制放置在函数调用子系统内的模块类型,这些模块不能明确 指定采样时间,也就是说,子系统内的模块必须具有-1值的 采样时间,即继承采样时间,因为函数调用子系统的执行具 有非周期性。用户可以通过把Trigger端口模块放置在子系统 内,并将Trigger type参数设置为function-call的方式来创建 函数调用子系统。

Simulink仿真教程

Simulink仿真教程
Parameters设置仿真参数。
仿真技术
back
第15页,共63页。
9.2 模块库和系统仿真
9.2.1 Simulink模块库
1. Sources库
也可称为信号源库,该库包含了可向 仿真模型提供信号的模块。它没有输 入口,但至少有一个输出口。
双击图标 图:
即弹出该库的模块
➢ 在该图中的每一个图标都是一个信号 模块,这些模块均可拷贝到用户的模 型窗里。用户可以在模型窗里根据自 己的需要对模块的参数进行设置(但 不可在模块库里进行模块的参数设
➢ 常 用 的 子 模 块 库 有 Sources( 信 号 源 ) , Sink( 显 示 输 出 ),Continuous( 线 性 连 续 系 统 ) , Discrete ( 线 性 离 散 系 统 ) , Function & Table(函数与表格), Math(数学运算), Discontinuities (非线性),Demo(演示)等。
➢ 在MATLAB主界面中选择【File:NewModel】菜单项; ➢ 单击模块库浏览器的新建图标 ; ➢ 选中模块库浏览器的【File : New Model】菜单项。
所打开的空白模型窗口如图所示。
仿真技术
第7页,共63页。
9.1.2 建立Simulink仿真模型 a) 打开Simulink模型窗口(Untitled) b) 选取模块或模块组 在Simulink模型或模块库窗口内,用
仿真技术
第18页,共63页。
9.2.1 Simulink模块库
2. Sinks 库
该库包含了显示和写模块输出的模块。 双击 即弹出该库的模块图:

:数字表,显示指定模块的输出数
值。

Simulink动态系统建模与仿真第5章

Simulink动态系统建模与仿真第5章

第5章 Simulink仿真设置
定步长连续算法可以用来处理包含连续状态和离散状态 的模型。从理论上来说,定步长连续算法也能够处理包含非 连续状态的模型,但是,这会增加仿真计算时的不必要开销。 因此,若模型中没有状态或只有离散状态,则即使选择了定 步长连续算法,Simulink通常还会使用定步长离散算法进行 求解。
首先选择需要设置仿真参数的模型,然后在模型窗口的 Simulation菜单下选择Configuration Parameters命令,打开 Configuration Parameters对话框,如图5-1所示。
第5章 Simulink仿真设置
在Configuration Parameters对话框内用户可以根据自 己的需要进行参数设置。当然,除了设置参数值外,也可以 把参数指定为有效的MATLAB表达式,这个表达式可以由 常值、工作区变量名、MATLAB函数以及各种数学运算符 号组成。参数设置完毕后,可以单击Apply按钮应用设置, 或者单击OK按钮关闭对话框。如果需要的话,也可以保存 模型,以保存所设置的模型仿真参数。
第5章 Simulink仿真设置
定步长连续算法; 变步长连续算法; 定步长离散算法; 变步长离散算法。
第5章 Simulink仿真设置
1. 定步长连续算法 这种算法在仿真时间段(由起始时间到终止时间)内以等 间隔时间步来计算模型的连续状态。它使用数值积分算法计 算系统的连续状态,每个算法使用不同的积分方法,用户可 以根据需要选择最适合自己模型的算法,当然,这需要了解 不同积分算法之间的优缺点。使用定步长连续算法进行仿真 的仿真结果的准确度和仿真时间取决于仿真步长的大小,仿 真步长越小,结果越准确,仿真步长越大,仿真时间也就越 长。
第5章 Simulink仿真设置 5.2.1 设置仿真时间

simulink动态系统建模仿真 第9章

simulink动态系统建模仿真 第9章

第9章 使 用 子 系 统 9.1.1 Simulink子系统定义 子系统定义 1.虚拟子系统 . 虚拟子系统在模型中提供了图形化的层级显示。它简化 了模型的外观,但并不影响模型的执行,在模型执行期间, Simulink会平铺所有的虚拟子系统,也就是在执行之前就扩 展子系统。这种扩展类似于编程语言,如C或C++中的宏操 作。
第9章 使 用 子 系 统
图9-1
第9章 使 用 子 系 统
图9-2
第9章 使 用 子 系 统 用户可以在子系统窗口中添加组成子系统的模块。例如, 图9-3中的子系统包含了一个Sum模块,两个Inport模块和一 个Outport模块,这个子系统表示对两个外部输入求和,并 将结果通过Outport模块输出到子系统外的模块。此时的子 系统图标也变成图9-3中的右图所示。
第9章 使 用 子 系 统 (4) 函数调用子系统(Function-Call Subsystem)。函数调 用子系统类似于用文本语言(如M语言)编写的S-函数,只不 过它是通过Simulink模块实现的。用户可以利用Stateflow图、 函数调用生成器或S-函数执行函数调用子系统。Simulink限 制放置在函数调用子系统内的模块类型,这些模块不能明确 指定采样时间,也就是说,子系统内的模块必须具有-1值的 采样时间,即继承采样时间,因为函数调用子系统的执行具 有非周期性。用户可以通过把Trigger端口模块放置在子系统 内,并将Trigger type参数设置为function-call的方式来创建 函数调用子系统。
第9章 使 用 子 系 统
9.2 创建条件执行子系统
条件执行子系统也是一个子系统,但在模型中是否执行 条件子系统则取决于其他条件信号。这个控制子系统执行的 信号称为控制信号,控制信号在单独的控制输入端口进入子 系统。 当用户想要建立复杂的模型,而且模型中某些组件的执 行依赖于其他组件时,条件执行子系统就非常有用了。

Simulink动态系统建模与仿真

Simulink动态系统建模与仿真
dQ Mdot C
第1章 Simulink基础
其中: dQ ——从加热器到房屋的热流速; dt C——常压下的空气热容量;
Mdot——通过加热器的空气质量流速(kg/h);
Theater ——加热器的热空气温度; Troom ——房屋当前的空气温度。
Simulink系统建模的主要特性如下: 框图式建模。Simulink提供了一个图形化的建模环境,通过 鼠标单击和拖拉操作Simulink模块,用户可以在图形化的可视环 境中进行框图式建模。 支持非线性系统。 支持混合系统仿真,即系统中包含连续采样时间和离散采样 时间的系统。
第1章 Simulink基础
第1章 Simulink基础
Simulink中包括了许多实现不同功能的模块库。在 Simulink 6.6中共有16个模块库,这些模块库把各种功能不 同的模块分类存放,如Sources(输入源模块库)、Sinks(输出 模块库)、Math Operations(数学模块库)以及线性模块和非线 性模块等各种组件模块库。用户也可以自定义和创建自己的 模块。利用这些模块,用户可以创建层级式的系统模型,可 以自上而下或自下而上地阅读模型,也就是说,用户可以浏 览最顶层的系统,然后用鼠标双击模型中的子系统模块,打 开并查看该子系统模型。这不仅方便了工程人员的设计,而 且可以使自己的模型方块图功能更清晰,结构更合理。
标有Set Point(在模型的左上角)的Constant(常值)模块用来设置所希 望的温度值,打开该模块,并将温度值重新设置为80度,看看室内温度 和加热费用是如何变化的。也可以调整室外温度(Arg Outdoor Temp模 块),看看它对仿真结果有何影响。
打开标有Daily Temp Variation(每日温度变化)的Sine Wave(正弦波) 模块,改变Amplitude(幅值)参数,调整每日的温度变化值,观察输出曲 线的变化。

动态系统建模仿真工具Simulink

动态系统建模仿真工具Simulink

五、PID控制模块的实现 2. 选中控制算法各模块后,建立子系统并对其进行封装,设定相应的三个参数及模型描述。

五、PID控制模块的实现 3. PID控制模块的实际使用。

双击该模块,直接设置三个参数值既可实现 PID控制算法。

五、PID控制模块的实现 4. 为了便于在其他仿真模型中应用该模块,可以把我们建立的PID控制模块填加到系统模型库中。

以后使用时就可直接调用。

打开Matlab6p1\Toolbox\Simulink\Blocks\simulink3.mdl 进入其中的连续模块中,把PID 控制模块复制到该模块中。

注意:复制前先去掉模块的锁定状态。

Simulink动态系统建模与仿真

Simulink动态系统建模与仿真
第1章 Simulink基础
第1章 Simulink基础
1.1 Simulink简介
1.2 运行Simulink演示程序
1.3 建立一个简单的Simulink模型 1.4 保存Simulink模型 1.5 打印及HTML报告 1.6 打印边框编辑器
1.7 Simulink参数设置
第1章 Simulink基础
框图式建模。Simulink提供了一个图形化的建模环境,通过
鼠标单击和拖拉操作Simulink模块,用户可以在图形化的可视环 境中进行框图式建模。
支持非线性系统。
支持混合系统仿真,即系统中包含连续采样时间和离散采样 时间的系统。
第1章 Simulink基础
支持多速率系统仿真,即系统中存在以不同速率运行的
组件。 Simulink建立的系统模型可以是层级模型,因此用户可 以采用自下而上或自上而下的方式建立模型,并一层一层地 查看各级模型。 用户可以根据需要建立自定义子系统,并把自定义子系 统内的模块进行封装,封装后的自定义子系统具有与 Simulink内嵌模块同样的属性,并可由用户设置模块的属性 参数。所有的自定义子系统均可在系统模型中使用。 MATLAB与Simulink集成在一起,因此,无论何时在这 两个环境中的任一环境下都可以建模、分析和仿真用户模型。
器)子系统、House(房屋)子系统、Heater(加热器子系统)、
Fahrenheit to Celsius(将华氏温度转换为摄氏温度)子系统和Celsius to Fahrenheit(将摄氏温度转换为华氏温度)子系统。
模型最前端的“Set Point”模块是常值模块,它设置了屋内的
恒温值,这里给出的缺省值是70华氏度,经过计算后可转换为摄 氏度。

动态系统仿真Simulink-精品文档

动态系统仿真Simulink-精品文档

二、基本使用
• 1、Simulink的启动 • 1). 命令窗口中键入simulink • 2). file菜单中选择new命令的model • 3). 工具栏中,按按钮 • 4).模型窗口file菜单选择new命令的model
2019/2/25
2. 仿真一个简单的模型
• • • • • • • 仿真一个温度计放入水中,显示的变化。 1)仿真建立模型:惯性环节 1/(Ts+1) T=10s 2)搭建这个模型:使用simulink 3)开始仿真:a.开始/结束时间 b.仿真方法 4)看看显示/修改模型参数
2019/2/25
E 从文件读数
• 至少有两行,单调递增的时间,其 它行为对应数据。文本文件或mat文件。 对数据文件没有描述的时间,采用线性 插值的方法得到中间数据。使用这个模 块可以设定任意的输入曲线,对测试试 验数据十分有用。需要注意输入输入不 能过于稀少,免得导致仿真的精度降低 。
2019/2/25
2019/2/25
3.基本操作
• • • • 1)选择(多个)/复制模型 2)连线/移动 3)修改模型参数 4)模型名字修改 5)旋转模型 6)保存文件 7)打印
2019/2/25
三、模型介绍
只介绍一些经典模块 • 1、数据源部分: • A常数模块 B阶跃模块 • B信号发生器 • 只接受输入的数字,不接受变量 • D时钟 • 输出仿真中的当前时间,以秒为单位。在 记录数据序列中需要这个模块。
4、线性系统
• • • • 1)增益 输出为输入与增益的乘积。 2)加法 对输入作求和(差)操作,输入可以使两 个或者多个。操作使用+-+-系统给出。 • 3)传递函数 • 分子分母多项式形式。分母的阶次必须大 于分子的阶次,初始值条件为0。

simulink动态系统建模仿真 第2章

simulink动态系统建模仿真 第2章

第2章 Simulink模块操作 4.是否显示模块名称 . 如果用户想要隐藏模块的名称,可先选中这个模块,然 后选择Format菜单下的Hide Name命令,即可隐藏该名称。 之后,若再选中这个模块,该命令将变为Show Name,选 择这个命令后,会显示被隐藏的模块名称。
第2章 Simulink模块操作 5.显示模块阴影 . 用户可以为模型中的模块添加阴影,以使整个模型的外 观更漂亮一些。选择Format菜单下的Show Drop Shadow命 令,可以为选中的模块添加阴影,阴影的颜色将与模块的前 景色相同。之后,再次选中这个模块,该命令将改变为 Hide Drop Shadow,选择这个命令,则会取消模块的阴影。 图2-10是添加阴影后的模型图。
第2章 Simulink模块操作
表 2-2
参 数 ScreenColor BackgroundColor ForegroundColor
控制模块方块图的参数
定 模型方块图的背景色 模块和标注的背景色 模块和标注的前景色 义
第2章 Simulink模块操作 用户可以把这些参数设置为如下任一值: 'black','white','red','green','blue','cyan','magenta', 'yellow','gray','lightBlue','orange','darkGreen'。 '[r, g, b]':这里,r、g和b是颜色分量中的红、绿和蓝分 量,范围为0.0~1.0。 例如,下面的命令把当前选择的系统或子系统的背景色 设置为淡绿色: set_param (gcs, 'ScreenColor', '[0.3, 0.9, 0.5]') 用户也可以选择Format菜单下的Show Drop Shadow命 令为所选模块添加阴影。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档