simulink动态系统建模仿真 第 章

合集下载

SIMULINK仿真基础

SIMULINK仿真基础
• 偏置模块(Bias):在输入数据的基础上加上一个偏置常数, 然后输出。
• 增益模块(Gain)与滑块增益模块(Slider Gain):在输入信 号基础上乘以一个设定的数据,然后输出。
• 叉乘模块(Product)和叉除模块(Divide)、元素相乘 (Product of Elements)
• 点乘模块(Dot Product) • 符号函数(Sign)、绝对值模块(Abs)、取反模块(Unary
10、Sinks(信号接受模块组)
• 输出到工作空间模块( Out1):用来反映整个系统的输出端,在系统 直接仿真时,这样的输出将自动在Matlab工作空间中生成变量。
• 终结模块(Terminator):用来终结输出信号,在仿真时可以避免 由于某些模块的输出端无连接而导致的警告。
• 输出数据到文件模块(To File):将模块输入的数据输出到.mat文 件当中
可变时间延迟模块(Variable Transport Delay):输入信号 延时一个可变时间再输出
2、 Discrete(离散模块组)
• 单位延迟模块(Unit Delay):一个采样周期的延时 • 积分延迟(Integer Delay):对信号进行N步信号延迟 • 离散时间积分模块(Discrete-time Integrator):离散信号
• 动态斜率限制模块(Rate Limiter Dynamic):类似于斜率 限制模块,上下限可由外部信号确定。
4、Logic and Bit Operations(逻辑运算模块组)
• 逻辑运算模块(Logical Operator) • 关系运算符(Relational Operator) • 区间测试模块(Interval Test)和动态区间测试模块

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

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

第9章 使 用 子 系 统 (6) Action子系统。Action子系统具有使能子系统和函 数调用子系统的交叉特性,其只能限制一个采样时间,即连 续采样时间、离散采样时间或继承采样时间。Action子系统 必须由If模块或Switch Case模块执行,与这些子系统模块连 接的所有Action子系统必须具有相同的采样时间。用户可以 通过在子系统内放置Action端口模块的方式来创建Action子 系统,子系统图标会自动反映执行Action子系统的模块类型, 也就是If模块或Switch Case模块。
第9章 使 用 子 系 统 (3) 触发子系统(Triggered Subsystem)。触发子系统只有 在驱动子系统触发端口的信号的上升沿或下降沿到来时才会 执行,触发信号沿的方向由Trigger端口模块中的Trigger type参数决定。Simulink限制放置在触发子系统内的模块类 型,这些模块不能明确指定采样时间,也就是说,子系统内 的模块必须具有-1值的采样时间,即继承采样时间,因为触 发子系统的执行具有非周期性,即子系统内模块的执行是不 规则的。用户可以通过在子系统内放置Trigger模块的方式来 创建触发子系统。
第9章 使 用 子 系 统
ቤተ መጻሕፍቲ ባይዱ
图9-1
第9章 使 用 子 系 统
图9-2
第9章 使 用 子 系 统 用户可以在子系统窗口中添加组成子系统的模块。例如, 图9-3中的子系统包含了一个Sum模块,两个Inport模块和一 个Outport模块,这个子系统表示对两个外部输入求和,并 将结果通过Outport模块输出到子系统外的模块。此时的子 系统图标也变成图9-3中的右图所示。
第9章 使 用 子 系 统
图9-9
第9章 使 用 子 系 统

第8章simulin命令行仿真技术

第8章simulin命令行仿真技术

第8章 Simulink命令行仿真技术
add_line('sys','oport','iport', 'autorouting','on') : 与 add_line('sys','oport','iport') 命 令 类 似 , 只 是 加 入 的 连 线 方式可以由'autorouting'的状态控制:'on'表示连线环绕 模块,而'off'表示连线为直线(缺省状态)。
gcb gcs gcbh bdroot simulink
从系统模型中删除指定连线 获取系统模型中的参数 设置系统模型中的参数 获得当前模块的路径名
获得当前系统模型的路径名 获得当前模块的操作句柄
获得最上层系统模型的名称 打开Simulink的模块库浏览器
第8章 Simulink命令行仿真技术
使用上面的命令便可以生成和编辑动态系统的 Simulink模型,由于使用命令行方式建立的Simulink系 统模型与使用图形建模方式建立的系统模型没有什么 大的分别,因此这里仅简单介绍各个命令的使用,而 不再给出使用这些命令所建立的系统模型框图。
delete_line('sys', 'oport', 'iport') 2) 功能描述 在系统模型中加入或删除指定连线。 add_line('sys', 'oport', 'iport'):在系统模型'sys'中给定
模块的输出端口与指定模块的输入端口之间加入直线。 'oport'与'iport'分别为输出端口与输入端口(包括模块的 名称、模块端口编号)。

MatlabSimulink系统建模和仿真

MatlabSimulink系统建模和仿真

图:电容的充电、放电过程的仿真结果。在充电仿真中,输出信号 为系统的零状态响应。在放电过程仿真中,输出信号为系统的零输 入响应。 如果要仿真系统输入信号为任意函数的情况,只需要修改仿 真程序中的输入信号设臵即可。
“实例2.3”单摆运动过程的建模和仿真。 (1)单摆的数学模型 设单摆摆线的固定长度为l ,摆线的质量忽略不计,摆锤质 量为m ,重力加速度为g ,设系统的初始时刻为t=0 ,在任 意 t 0 时刻摆锤的线速度为v(t) ,角速度为 w(t ) ,角位移 为 (t ) 。以单摆的固定位臵为坐标原点建立直角坐标系, 水平方向为x 轴方向。如下图所示。
图:电容的充电电路以及等价系统
(1)数学分析
首先根据网络拓扑和元件伏安特性建立该电路方程组
dy (t ) i (t ) C dt
dy (t ) 1 1 x(t ) y (t ) dt RC RC
y(t ) x(t ) Ri (t )
并化简得
该方程也称为系统的状态方程。在方程中,变量y 代表电 容两端的电压,是电容储能的函数。本例中它既是系统的 状态变量,又是系统的输出变量。
7.1 Matlab编程仿真的方法
7.1.1 概述 通过编程的形式建立计算机仿真模型是最基本的 计算机建模方法。Matlab编程仿真过程就是用编 写脚本文件或函数文件来描述数学模型,并实现 计算机数值求解的过程。 我们把外界对系统产生作用的物理量称为输入 信号或激励,把由于系统内部储存的能量称为系 统的状态,而将系统对外界的作用物理量称为系 统的输出信号或响应。
图:模拟真实示波器显示的调幅仿真波形,仿真中考虑了输 入信号与示波器扫描不同步,载波相位噪声以及加性信道噪 声的影响
7.1.3 连续动态系统的Matlab编程仿真 7.1.3.1 几个实例

《MATLAB Simulink 电力系统建模与仿真(第2版)》第1章 MATLAB基本知识

《MATLAB Simulink 电力系统建模与仿真(第2版)》第1章 MATLAB基本知识

键盘按键 Home End esc del
backspace Alt+ backspace
说明 Ctrl+a,光标置于当前行开头 Ctrl+e,光标置于当前行末尾
Ctrl+u,清除当前输入行 Ctrl+d,删除光标处的字符 Ctrl+h,删除光标前的字符
恢复上一次的删除
第1章 MATLAB基本知识
第1章 MATLAB基本知识
1.2 MATLAB工作环境 1. 菜单和工具栏
【File】菜单 New:用于建立新的.m文件、图形、模型和图形用户界面。 Open:用于打开的.m文件、.fig文件、.mat文件、.mdl文 件、.cdr文件等。 Close Command Window:关闭命令窗口。 Import Data:用于向工作空间导入数据。 Save Workplace As:将工作空间的变量存储在某一文件中。 Set path:打开搜索路径设置对话框。 Preferences:打开环境设置对话框。
第1章 MATLAB基本知识
当前MATLAB对PC机系统的要求为:
支持SSE2指令集的Intel或者AMD处理器; 仅安装MATLAB需要1GB的硬盘空间,典型安装需要 3~4GB; 最小1GB的内存空间,推荐2GB;
2. 安装过程
安装前的设置(包括填写安装密钥、选择安装类 型及确定安装目录等) 安装MATLAB和相应模块 激活MATLAB三个阶段
第1章 MATLAB基本知识
1.4.2 常用运算和基本数学函数
MATLAB中常用的运算符号
算术运算符 + * ^ \
./ 或 .\
说明 加 乘
乘方 反斜杠或左除
数组除
算术运算符 -

第7章SIMULINK仿真操作

第7章SIMULINK仿真操作

Direct Lookup Table (n-D) x
2-D T(u)
Lookup Table (n-D)
xdat y ydat Lookup Table Dynamic
图7-16 查表模块库(Lookup Tables)及其功能说明
(6)User-Defined Functions模块库
u
fcn
图7-15 数学运算模块库(Math operations)及其功能说明
(5)查表模块库(Lookup Tables)
2-D T[k] cos(2*pi*u) Cosine Interpolation (n-D) Lookup Table using PreLookup u k f PreLookup Index Search Sine sin(2*pi*u) Lookup Table (2-D) 2-D T(k,f)
Product
Product of Elements
Real-Imag to Reshape Rounding Complex Function sin -u u+Ts
Slider Gain
Subtract
Sum of Trigonometric Unary Minus Weighted Elements Function Sample Time Math
7.1.1 SIMULINK的窗体介绍
由于SIMULINK是基于MATLAaB环境之上的 高性能系统及仿真平台。 因此,必须首先运行MATLAB,然后才能启 动SIMULINK并建立系统的仿真模型。
图7-1 两种启动SIMULINK方法的图示说明
图7-2 Simulink库浏览器窗口
7.1.2 一个MATLAB/SIMULINK库自带的 演示实例

第三章 matlab的simulink建模与仿真

第三章 matlab的simulink建模与仿真

3、其它子系统
可配置子系统,代表用 户定义库中的任意模块, 只能在用户定义库中使用。 函数调用子系统。
for循环
3)在一个仿真时间步长内,simulink可以多次进出一 个子系统。 原子子系统:
1)子系统作为一个“实际”的模块,需顺序连续执行。
2)子系统作为整体进行仿真。
3)子系统中的模块在子系统中被排序执行。
建立原子子系统:
1)先建立一空的原子子系统。
2)先建立子系统,再强制转换成原子子系统。
Edit/block parameters
在enabled subsystem
triggered subsystem
enabled and triggered subsystem中。
1)早期simulink版本中,enable和triggered信号需要从 signal&system中调用。
2)simulink后期版本中,在上述模块中含这两个信号。 3)一个系统中不能含多个enable和triggered信号。 4)其它子系统可看成某种形式的条件执行子系统。
3.4创建simulink模型(简单入门)
一、启用simulink并建立系统模型 启动simulink: (1)用命令方式:simulink (2)
二、simulink模块库简介 1、simulink公共模块库 Continuous(连续系统)
连续信号数值积分 输入信号连续时间积分
单步积分延迟,输出为前一输入
动态模型:描述系统动态变化过程
静态模型:平衡状态下系统特性值之间的关系
二、计算机仿真
1、仿真的概念
以相似性原理、控制理论、信息技术及相关领域 的有关知识为基础,以计算机和各种专用物理设备为工 具,借助系统模型对真实系统进行实验研究的一门综合 性技术。 2、仿真分类 实物仿真:建造实体模型 数学模型:将数学语言编制成计算机程序 半实体模型:数学物理仿真

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

Simulink动态系统建模与仿真第3章
第3章 Simulink信号操作
第3章 Simulink信号操作
3.1 信号基础 3.2 信号及示波器管理器 3.3 显示信号 3.4 多维数组信号的连接 3.5 信号组操作 3.6 复合信号
第3章 Simulink信号操作
3.1 信 号 基 础
3.1.1 信号属性及分类 信号是模型仿真时出现在Simulink模块输出端的数值流。
第3章 Simulink信号操作
8.信号术语汇编 表3-1概述了Simulink用户接口和文档中用来描述信号的 术语。
第3章 Simulink信号操作
术语 复信 号 数据 类型 矩阵 实信 号 标量 信号 总线
信号 传递
信号 尺寸
测试 点 向量 纯虚 信号 宽度
表 3-1 信 号 术 语
含义 信号值是复数 的信号 用来在 Simulink 内部表示信号值的格式 二维信号数组 信号值是实数 (对应于复数)的信号 含有一个元素 的数组,也就 是有一个元素的 一维或二维数 组 由 Mux 模块或 Demux 模块创建的信号 Simulink 用来确定信号和模块属性的过程,这些属性包括数据类 型、 信号标签、采样 时间、信号维 数等 信号所包含的元素个数,二维信号的大小通常表示为 M × N,M 是组成信号的列数, N 是组成信号的行数 只有在仿真期 间才可访问的 信号 一维信号数组 表示其他信号 或信号组的信 号 向量信号的大 小
第3章 Simulink信号操作
以Sources模块库中的Constant模块为例,这个模块输出 一个等于其Constant value参数值的常值信号,表3-3说明了 Constant value参数的维数和Interpret Vector Parameters as 1-D参数的设置值如何确定了Constant模块输出的维数。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第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的方式来创建 函数调用子系统。
第9章 使 用 子 系 统
(6) Action子系统。Action子系统具有使能子系统和函 数调用子系统的交叉特性,其只能限制一个采样时间,即连 续采样时间、离散采样时间或继承采样时间。Action子系统 必须由If模块或Switch Case模块执行,与这些子系统模块连 接的所有Action子系统必须具有相同的采样时间。用户可以 通过在子系统内放置Action端口模块的方式来创建Action子 系统,子系统图标会自动反映执行Action子系统的模块类型, 也就是If模块或Switch Case模块。
第9章 使 用 子 系 统
(8) For-子系统。For-子系统在每个模型时间步内可执 行固定的循环次数,循环次数可以由外部输入给定,或者由 For Iterator模块内部指定。用户可以通过在子系统内放置For Iterator模块的方式来创建For-子系统。For-子系统也可以通 过选择For Iterator模块内的参数来存取当前循环的次数。 For-子系统在给定时间步内限制循环次数上与While-子系统 类似。
第9章 使 用 子 系 统
(5) 触发使能子系统(Enabled and Triggered Subsystem)。 触发使能子系统在系统被使能且驱动子系统触发端口的信号 的上升沿或下降沿到来时才执行,触发边沿的方向由Trigger 端口模块中的Trigger type参数决定。Simulink限制放置在触 发使能子系统内的模块类型,这些模块不能明确指定采样时 间,也就是说,子系统内的模块必须具有-1值的采样时间, 即继承采样时间,因为触发使能子系统的执行具有非周期性。 用户可以通过把Trigger端口模块和Enable模块放置在子系统 内的方式来创建触发使能子系统。
第9章 使 用 子 系 统
(3) 触发子系统(Triggered Subsystem)。触发子系统只有 在驱动子系统触发端口的信号的上升沿或下降沿到来时才会 执行,触发信号沿的方向由Trigger端口模块中的Trigger type参数决定。Simulink限制放置在触发子系统内的模块类 型,这些模块不能明确指定采样时间,也就是说,子系统内 的模块必须具有-1值的采样时间,即继承采样时间,因为触 发子系统的执行具有非周期性,即子系统内模块的执行是不 规则的。用户可以通过在子系统内放置Trigger模块的方式来 创建触发子系统。
第9章 使 用 子 系 统
(7) While-子系统。While-子系统在每个时间步内可以 循环多次,循环的次数由While Iterator模块中的条件参数控 制。用户可以通过在子系统内放置While Iterator模块的方式 来创建While-子系统。While-子系统与函数调用子系统相同 的地方在于它在给定的时间步内可以循环多次,不同的是它 没有独立的循环指示器(如Stateflow图),而且,通过选择 While Iterator模块中的参数,While-子系统还可以存取循环 次数,通过设置States when starting参数还可以控制当子系 统开始执行时状态是否重置。
在简化模型外观结构图的基础上,保持了各模块之间的 函数关系;
可以建立层级方块图,Subsystem模块是一个层级,组 成子系统的其他模块在另一层上。
第9章 使 用 子 系 统
9.1.1 Simulink子系统定义 1.虚拟子系统 虚拟子系统在模型中提供了图形化的层级显示。它简化
了模型的外观,但并不影响模型的执行,在模型执行期间, Simulink会平铺所有的虚拟子系统,也就是在执行之前就扩 展子系统。这种扩展类似于编程语言,如C或C++中的宏操 作。
第9章 使 用 子 系 统
(2) 使能子系统(Enabled Subsystem)。使能子系统的动作 类似原子子系统,不同的是它只有在驱动子系统使能端口的 输入信号大于零时才会执行。用户可以通过在子系统内放置 Enable模块的方式来创建使能子系统,并通过设置使能子系 统内Enable端口模块中的States when enabling参数来配置子 系统内的模块状态。此外,利用Outport输出模块的Output when disabled参数可以把使能子系统内的每个输出端口配 置为保持输出或重置输出。
相关文档
最新文档