第2章simulink 仿真技术
MATLABSimulink模型建立与仿真指南
![MATLABSimulink模型建立与仿真指南](https://img.taocdn.com/s3/m/d94a5eed185f312b3169a45177232f60ddcce7c3.png)
MATLABSimulink模型建立与仿真指南第一章:MATLAB与Simulink简介MATLAB是一种高级的数值计算和科学分析的编程语言,由MathWorks开发。
它提供了强大的数学函数库和绘图工具,使得用户可以进行复杂的数值计算和数据可视化。
Simulink是MATLAB的扩展,是一种用于建立和仿真动态系统的图形化环境。
在MATLAB中,用户可以通过命令行或脚本文件进行计算。
而在Simulink中,用户可以利用图形化界面来搭建系统模型,并进行仿真。
Simulink提供了丰富的预置模块库,用户只需将这些模块连接起来,即可构建复杂的系统模型。
第二章:Simulink模型的基本组成Simulink模型由多个部分组成,包括输入信号、输出信号和系统组件。
输入信号可以是手动输入的常数,也可以是来自其他模型的信号。
输出信号是用户对系统模型感兴趣的结果。
系统组件即模型中的各个模块,这些模块可以完成各种功能,如乘法、滤波、逻辑运算等。
第三章:模型建立与仿真流程1. 确定系统模型的目标和需求:在建立模型之前,需要明确系统模型的目标和需求。
这些可能包括系统的输入输出关系、稳定性要求、性能要求等。
2. 模型建立:根据系统的目标和需求,选择合适的系统组件,并将其连接起来,构建系统模型。
可根据需要进行参数设置,以适应不同的场景。
3. 仿真设置:在进行仿真之前,需要设置仿真参数。
这些包括仿真时间、仿真步长等。
仿真时间指定了仿真的时间范围,仿真步长指定了仿真的时间间隔。
4. 仿真运行:设置好仿真参数后,可以运行仿真。
Simulink将逐步模拟系统的行为,并输出仿真结果。
第四章:Simulink模型调试与优化在进行仿真时,可能会发现模型存在问题,如输出不符合预期、系统不稳定等。
这时需要对模型进行调试和优化。
1. 系统调试:可以通过数据观察、信号域分析等方法,定位系统问题。
更换输入信号、输出信号,或调整模型参数,可以帮助发现问题。
simulink仿真说明
![simulink仿真说明](https://img.taocdn.com/s3/m/36b39608763231126edb1178.png)
Simulink是Simulation和link仿真链接。
是一个附加组件,为用户提供了一个建模与仿真的工作平台,由于许多功能是基于MATLAB平台的。
必须在MATLAB环境中运行,也把他称为一个MATLAB的工具箱。
以前MATLAB仿真编程是在文本窗口中进行的。
输入函数是命令和MATLAB 函数,在simulink 中与用户的交互接口是基于windows的模型化图形输入,用户可以通过单击拖动鼠标的方式绘制和组织系统,并完成对系统的仿真。
因此对于我们来说只需知道这些功能模块的输入输出、功能以及图形界面的使用方法。
就可以用鼠标和键盘进行仿真。
三种方法进入Simulink1、在MATLAB菜单栏中单击FILE,在下拉菜单的NEW选项中单击MODEL.2、在MATLAB工具栏中单击彩色图标,然后在打开的模型库浏览器窗口中单击‘新建文件‘3、在MATLAB命令窗口中输入Simulink,然后在打开的模型库浏览器窗口中单击‘新建文件‘。
一、模块的提取左键拖曳右键add to二、模块的移动放大和缩小移动:左键拖曳选中后用方向键脱离线移动按住shift 然后拖曳缩放 : 点击模块四个角拖曳三、复制粘贴和删除和windows一样删除选择clear四、模块的旋转:右键点击然后选择Flip block 顺时针转180度 rotate block顺时针90度。
五、模块名的修改移动:单击该模块名出现一个小框可以像文本一样修改移动还可以右键单击然后Hide name六、模块参数设置:双击七、模块连接:光标的箭头对准模块的输出端变成+后按下左键拖曳到另一个输入端松开左键。
八、连线的弯折开始画线时,在需要弯折的地方松开鼠标停顿一下,然后继续按下鼠标左键改变方向即可。
移动光标指向要移动的线段,然后拖动鼠标即可删除选中要删除的部分,然后delete直流电动机的直接启动新建一个simulink 仿真平台打开simulink然后点击新建打开simpowersystems的加号在electrical source中选择D C Voltage Source拖曳到仿真平台Elements里面选BreakerConnectors 里面选择Ground output把电源正端接到断路器的1端,电源负端接地。
【优】Simulink仿真技术最全PPT
![【优】Simulink仿真技术最全PPT](https://img.taocdn.com/s3/m/66a4d93db14e852459fb5765.png)
• 示波器的工具栏 u(t)输入:Step time设为0.
建立Simulink模型应该养成添加模型注释的良好习惯。
• 坐标轴的范围调整 打开Simulink模块库浏览器;
连续系统通常都是用微分方程描述的系统,而现实中的多数实际系统也都是连续变化的。
第六讲 Simulink仿真技术
本章主要介绍一个针对动态系统进行建 模、仿真与分析的工具——Simulink。
Simulink简介 模型的建立 Simulink中的系统模型 子系统的创建和封装 Simulink仿真的应用
1. Simulink简介
1)什么是Simulink:
Simulink是Matlab软件的扩展,它是实现动态系 统建模和仿真的一个软件包。
由于非线性系统不利于系统分析和设计,通常 我们都是将非线性近似为线性系统,所以我们 重点学习线性系统。
线性系统
要对线性系统建模,通常都要使用到积分模块。
• 积分模块的功用:
例: 利用阶跃信号进 行复位积分。 操作步骤: ➢ 构造Simulink
模型,保存为
➢ 双击积分模块,在弹出的对话框中在External reset 中选择rising选项,在Initial condition source下拉列 表中选择
仿真精细、贴近实际:它提供了大量特种函数 模块为用户摆脱理想化假设的无奈提供了途径。
3)Simulink使用入门:
打开Simulink模块库浏览器;
查看各种信源模块; 创建模型窗口; 添加所需的模块; 连接模块直间的信号线 ; 进行仿真:『Simulink: Start』
simulink 仿真教程(从入门到入土)+报告(真)
![simulink 仿真教程(从入门到入土)+报告(真)](https://img.taocdn.com/s3/m/598fdc03ff00bed5b9f31d68.png)
Simulink仿真摘要:simulink作为matlab的衍生模组,具有强大的仿真能力。
原则上你可以将任意具有明确映射关系的物理量进行仿真模拟。
对于相互间关系不明确的物理量,则可以通过输入输出数据的采集,然后通过模糊控制的方案替代明确的映射关系。
本文主要针对的是以电焊机电路为主,其他仿真为辅的教程性质的文章。
关键词:matlab Simulink 仿真电焊机教程第一章初识软件 (2)1.1 simulink 简介 (2)1.2 simulink基础页面 (2)1.3 常用库的介绍 (3)1.3.1 simulink库 (4)1.3.1.1 常用模块库 (4)1.3.1.2 其他常用子库模块 (6)1.3.2 电气库Simscape (7)1.3.2.1 Electrical库 (7)1.3.2.2 Specialized Technology库 (8)1.4模块连接 (9)第二章简单仿真系统的建立 (11)2.1传递函数S信号仿真 (11)2.1.1 运放环节的等效替代 (11)2.1.2 等效变换 (12)2.1.3 逻辑仿真 (13)2.2电气库仿真 (13)2.3子系统和模块的建立 (15)2.3.1 子系统的建立 (15)2.3.2 模块的建立 (16)第三章复合仿真 (18)3.1 m函数模块 (18)3.1.1 简单编程 (18)3.1.2 部分函数介绍 (19)3.2 整体模型 (21)3.3 仿真注意事项 (22)3.3.1 注意事项1 (22)3.3.2 注意事项2 (23)3.3.3 注意事项3 (24)3.3.4 注意事项4 (24)结语 (25)第一章初识软件Matlab作为一块应用广泛的软件,在许多领域中具有广泛的应用,所以掌握matlab的一些基础运用是一个很有用的技能。
Matlab广泛应用于数字图像处理,程序控制,仿真模拟等多个领域之中。
这款软件的核心基础在于强大的矩阵计算能力,无论是程序处理还是仿真计算,其本质就是通过矩阵运算的方式得出解。
Matlab系列之Simulink仿真教程
![Matlab系列之Simulink仿真教程](https://img.taocdn.com/s3/m/9db17007777f5acfa1c7aa00b52acfc789eb9fa0.png)
交互式仿真
Simulink支持交互式 仿真,用户可以在仿 真运行过程中进行实 时的分析和调试。
可扩展性
Simulink具有开放式 架构,可以与其他 MATLAB工具箱无缝 集成,从而扩展其功 能。
Simulink的应用领域
指数运算模块
用于实现信号的指数运算。
减法器
用于实现两个信号的减法 运算。
除法器
用于实现两个信号的除法 运算。
对数运算模块
用于实现信号的对数运算。
输出模块
模拟输出模块
用于将模拟信号输出 到外部设备或传感器。
数字输出模块
用于将数字信号输出 到外部设备或传感器。
频谱分析仪
用于分析信号的频谱 特性。
波形显示器
控制工程
Simulink在控制工程领域 中应用广泛,可用于设计 和分析各种控制系统。
信号处理
Simulink中的信号处理模 块可用于实现各种信号处 理算法,如滤波器设计、 频谱分析等。
通信系统
Simulink可以用于设计和 仿真通信系统,如调制解 调、信道编码等。
图像处理
Simulink中的图像处理模 块可用于实现各种图像处 理算法,如图像滤波、边 缘检测等。
用于将时域信号转换为频域信号,如傅里叶变换、 拉普拉斯变换等。
03 时域变换模块
用于将频域信号转换为时域信号,如逆傅里叶变 换、逆拉普拉斯变换等。
04
仿真过程设置
仿真时间的设置
仿真起始时间
设置仿真的起始时间,通 常为0秒。
步长模式
选择固定步长或变步长模 式,以满足不同的仿真需 求。
第二章 simulink 仿真技术
![第二章 simulink 仿真技术](https://img.taocdn.com/s3/m/c660adcbda38376baf1fae0d.png)
第2章 Simulink仿真技术
2.子系统的封装
simulink的子系统封装技术可以实现对子系统中的多个模块的必要参数设置。 1)子系统的封装 封装子系统指的是将已经建立好的具有一定功能,且功能完全一致的模块封 装在一起。通过定义用户自己的图标、参数设置对话框以及帮助文档等等, 可以使封装后的子系统与simulink中内置的系统模块具有相同的操作:双击 封装后的子系统模块以打开模块参数设置对话框进行参数设置,将系统仿真 所需要的参数传递到子系统之中;同时可以查看模块的帮助文档以获得子系 统输入输出关系、子系统功能以及模块描述等帮助信息。除此之外,封装后 的子系统还拥有自己的工作区。 封装子系统具有如下特点: (1)自定义子系统模块及其图标。 (2)用户双击封装后的图标时显示子系统参数设置对话框。 (3)用户自定义子模块帮助文档。 (4)封装后的子系统模块拥有自己的工作区。 使用封装的子系统技术具有如下优点: (1)向子系统模块中传递参数,屏蔽不需要用户看到的细节。 (2)“隐藏”子系统模块中不需要过多展现的内容。 (3)保护子系统模块中的内容,防止模块实现被随意篡改。
图 2-3信源子库的模块 (3)点击“新建”图标,打开一个名为untitled的空白模型窗口,如图2-4 所示。
图2-4 simulink的新建模型窗
第2章 Simulink仿真技术
(4)用鼠标指向所需的信源模块(如正弦信源Sine Wave),按上鼠标左 键,把它拖至untitled窗,就生成一个正弦波信源复制品,如图2-5所示。
图 2-7 创立完毕的模型窗 (7)为进行仿真,双击示波器模块,打开示波器显示屏,如图2-8所示。 (8)点击模型窗中“仿真启动”图标,或选用菜单【simulink:Start】, 于是仿真开始。如图2-8所示。
第2章Simulink仿真入门
![第2章Simulink仿真入门](https://img.taocdn.com/s3/m/8031ab7e1711cc7931b7162b.png)
第2章Simulink仿真入门Simulink是基于MATLAB的图形仿真设计环境。
它支持:1、线性和非线性系统;2、连续时间系统、离散时间系统;3、多进程的。
使用图形的系统模块对动态系统进行描述,并在此基础上采用MATLAB引擎对动态系统在时域进行求解。
MATLA计算引擎主要对系统微分方程和差分方程求解。
MATLAB主要求解的是数值解。
1) SIMULINK重要求解常微分方程等,求解这些问题的解主要用到数值计算方法,那么数值解和通常所说的解析解有什么不同?(什么是数值解)1. 解析解:所谓的解析解是一种包含分式、三角函数、指数、对数甚至无限级数等基本函数的解的形式。
用来求得解析解的方法称为解析法〈analytic techniques、analytic methods〉,解析法即是常见的微积分技巧,例如分离变量法等。
解析解为一封闭形式〈closed-form〉的函数,因此对任一独立变量,我们皆可将其带入解析函数求得正确的相依变量。
2. 数值解:当无法借由微积分技巧求得解析解时,这时便只能利用数值分析的方式来求得其数值解了。
数值方法变成了求解过程重要的媒介。
在数值分析的过程中,首先会将原方程式加以简化,以利后来的数值分析。
例如,会先将微分符号改为差分符号等。
然后再用传统的代数方法将原方程式改写成另一方便求解的形式。
这时的求解步骤就是将一独立变量带入,求得相依变量的近似解。
因此利用此方法所求得的相依变量为一个个分离的数值〈discrete values〉,不似解析解为一连续的分布,而且因为经过上述简化的动作,所以可以想见正确性将不如解析法来的好。
2.1simulink基本操作上机操作,主要包括:*模块的操作:选择(一个或多个)模块标签*信号线:模块间连接;线段的移动;节点的移动;分支信号线、删除信号线,信号线标签,信号线的折叠2.2 运行仿真及参数简介仿真前,必须对各种参数进行配置。
通过下面两方法来设置仿真参数:1、simulation-configuration parameters来设置仿真参数;2、模型窗口的空白处右击,弹出simulation-configuration parameters打开。
第二章 Simulink仿真基础
![第二章 Simulink仿真基础](https://img.taocdn.com/s3/m/5d1174f00342a8956bec0975f46527d3240ca617.png)
2、Simulink的文件操作
Simulink模型的文件为MDL模型文件,其扩展 名为“.mdl”,是以ASCⅡ码形式存储的。
1. 新建文件 2. 打开文件
3、Simulink的模型窗口
模型窗口由菜单、工具栏、模型浏览器窗口、 模型框图窗口以及状态栏组成。
4、模块的操作
• 1. 对象的选定 • 2. 模块的复制 • 3. 模块的移动 • 4. 模块的删除 • 5. 改变模块大小 • 6. 模块的翻转 • 7. 模块名的编辑
பைடு நூலகம்、信号线的操作
• 1. 模块间连线 • 2. 信号线的分支和折曲
• 3. 信号线文本注释(label) • 4. 在信号线中插入模块
6、Simulink的基本模块
Simulink模型通常由三部分组成:输入信号源 (Source)、系统(System)以及接收模块(Sink) 。
输入
系
信号
统
源
接收 模块
Browser)窗口。 (2)新建一个空白模型窗口。 (3)打开Simulink下的Source子模块库。 (4)用鼠标将“Sine Wave”(正弦信号)拖放到的空白
窗口。 (5)将接收模块库“Sinks”的“Scope”模块(示波器)
拖放到窗口。 (6)完成两个模块间的信号线连接。 (7)开始仿真。 (8)保存模型。
转换函数模块
结束语
谢谢大家聆听!!!
33
信道编码的差错控制和纠错模块
Interleaving模块库
交织
Modulation模块库
连续相位调制 网格编码调制
RF Impairments模块库
Sequence Operations模块库
Simulink使用基本
![Simulink使用基本](https://img.taocdn.com/s3/m/792e9342b8f67c1cfbd6b875.png)
0.3911 - 1.0609i
-0.7822
第2章 Simulink使用基础
2.4 MATLAB的基本绘图功能
MATLAB作为高性能、交互式的科学计算工具,具 有非常友好的图形界面,这使得MATLAB的应用非常 广泛;同时MATLAB也提供了强大的绘图功能,这使 得 用 户 可 以 通 过 对 MATLAB 内 置 绘 图 函 数 的 简 单 调 用,便可迅速绘制出具有专业水平的图形。在利用 Simulink进行动态系统仿真时,图形输出可以使设计者 快速地对系统性能进行定性分析,故可大大缩短系统 开发时间。
第2章 Simulink使用基础
3. 举例分析 【例2.4】 求多项式的根。
解 : 在 MATLAB 的 命 令 窗 口 中 依 次 输 入 以 下 命 令,即可求出其根。
>> p=[3 0 2 3]; >>rootp=roots(p)
% rootp为多项式的根
>>rootp =
0.3911 + 1.0609i
3⎤ 6⎥⎦
⎡1 B = ⎢⎢0
⎢⎣2
2⎤ 3⎥⎥ 1⎥⎦
>>C=
7 11
16 29
如果矩阵A为方阵,A的p次方可以用A^p表示。如果 p是一个正整数,那么这个幂可以由矩阵的连续相乘定 义。当p=0时,其结果为与A相同的矩阵;当p<0时, 只 有 在 A 的 逆 存 在 时 才 可 定 义 A^p , 其 意 义 为 inv(A)^(-p)。
第2章 Simulink使用基础
【例2.3】
若
A
=
⎡1 ⎢⎣− 1
2⎤ 5⎥⎦
B
=
⎡7 ⎢⎣1
simulink仿真
![simulink仿真](https://img.taocdn.com/s3/m/990cde21b4daa58da0114a38.png)
信源 系统 星宿
利用Simulink进行系统仿真的步骤是: 1、启动Simulink,打开Simulink模块库 2、打开空白模型窗口; 3、建立Smulink仿真模型; 4、设置仿真参数,进行仿真; 5、输出仿真结果。
(二)、模块的编辑 1、添加模块 2、选取模块 3、复制与删除模块 模块的复制包括两种:一是从模块库中将标准 模块复制到模型窗口中,另一种是在模型窗口中将 模型再复制。选中模块,按Delete键就可删除或点 击鼠标右键,选择Cut也可对模块进行剪切 4、模块的移动 将光标置于待移动的模块图标上,按住鼠标左 键不放,把该模块拖至目标位置后,松开左键就完 成了移动。 5、改变模块对象大小 用鼠标选择模块图标,再将鼠标移到模块对象 四周的控制小块处,当鼠标指针变成指向四周的小
箭头时,按住鼠标左键不放,拖至合适大小即可。 6、改变模块对象的方向 在Simulink中,模块输入端口位于模块左侧, 输出端口位于模块右侧,但有时需要对其方向进 行改变。方法是:用鼠标选中模块对象,利用 “Format →Flip Block”(快捷键Ctrl +I)可将模块顺 时针旋转180°;或者利用“Format →Rotate Block”(快捷键Ctrl +R)或将模块顺时针旋转90°。 7、颜色设定 Format菜单中的“Foreground Color”命令可以 改变模块的前景颜色,“Background Color”命令 可以改变模块的背景颜色;而模型窗口的颜色可 以通过“Screen Color”命令来改变。此外,还可 以选择“Format →Show drop shadow”为模块生 成阴影等。
In1
Pulse Generator
输入端口模块(同端口与子系统模块中In1)
第二章SIMULINK仿真基础
![第二章SIMULINK仿真基础](https://img.taocdn.com/s3/m/e60732fa59eef8c75ebfb34f.png)
Van Der pol方程的仿 真结果
第二章 SIMULINK仿真基础
带x-y示波器第二的章 SSIiMmULuINlKi仿n真k基模础 型
x-y示波器的显示
第二章 SIMULINK仿真基础
带示波器的第S二i章mSuIMlUiLnINkK模仿真型基础
默认示波器显示
第二章 SIMULINK仿真基础
如上得到的数学模型如图所示。
(三)仿真
在模型窗口的simulation菜单中选择start,就开始仿真。 双击scope模块,可以看到仿真的结果。上述惯性环节的阶跃 响应仿真结果如图所示。
(四)模型保存
在模型窗口中的file菜单下,有save菜单,使用该 菜单可以将模型保存为一个文件,待下次使用时打开, 也可以使用save as菜单改名保存文件。MATLAB5.0以 后版本保存的文件扩展名为.mdl,以前的版本为.m文件。
>> t0=0;tf=20;tol=1e-6; y0=[-0.2;-0.7]; >> [t,y]=ode45('vdpol',[0 20],y0); >> subplot(1,2,1);plot(t,y), legend('y1','y2'), >> subplot(1,2,2);plot(y(:,1), y(:,2))
第二章 SIMULINK仿真基础
3、 Function&Tables(函数和平台模块) function.mdl
Fcn:用自定义的函数(表达式)进行运算 MATLAB Fcn:利用matlab的现有函数进行运算 S-Function:调用自编的S函数的程序进行运算 Look-Up Table:建立输入信号的查询表(线性峰值匹配) Look-Up Table(2-D):建立两个输入信号的查询表(线性峰值匹配)
第2章simulink 仿真技术(12ji)
![第2章simulink 仿真技术(12ji)](https://img.taocdn.com/s3/m/610bb8f94afe04a1b071de58.png)
1)什么是simulink模型
simulink模型通常包含3种“组件”:
信源(Source)、系统(System)以及信宿(Sink)。 图2-11示出了这种模型的一般性结构。
信源
2)模型文件的操作
系统
信宿
图2-11 simulink模型的一般性结构
模型文件的操作主要有4个:新建、打开、存盘和打印。
(4)“ode15s”:属于NDFs算法,用于解决刚性
(stiff)问 题,它是一种多步算法 。当ode45、
ode113无法解决问题时,可以尝试采用ode15s去
7)模块的旋转 缺省状态下的模块总是输入端在左,输出端在右, 通过选用【Format:Flip Block】, 可以将选定模块旋转180°; 而选用【Format:Rotate Block】, 可以将选取模块旋转90°。
8)模块名的操作 修改模块名: 点击模块名,将在原名字的四周出现一个编 辑框。此时,就可对模块名进行修改。 当修改完毕,将光标移出编辑框,点击即结 束修改。 模块名字体设置: 选用菜单【Format:Font】,打开字体对话 框后,根据需要设置。
2)模块的复制 如果需要几个同样的模块,可以使用按住 鼠标右键并拖动基本模块可进行拷贝。也 可以在选中所需的模块后,使用【Edit】菜 单上的【Copy】和【Paste】。 3)模块的移动 方法:选取中需移动模块,按住鼠标左键 将模块拖到合适的地方即可。 4)模块的删除 在选中待删除模块后,按鼠标右键,在弹出 的子菜单中单击Clear可以完成。
多项式传递函数:分子分母以多项式表
示的传递函数
零极点传递函数:以零极点表示的传递函数
2) 非线性系统(Discontinuities)模块库 主要用于模拟各种非线性环节
第二讲Simulink建模与仿真PPT课件
![第二讲Simulink建模与仿真PPT课件](https://img.taocdn.com/s3/m/c95643bf1eb91a37f1115ce2.png)
(2) 模块间连线的调整
如图1,这种调整模块间连线位置的情况采用鼠标简单拖动 的办法实现。即先把鼠标移到需要移动的线段的位置,按住 鼠标左键,移动鼠标到目标位置,释放鼠标左键。
还有一种情况如图2所示,要把一条直线分成斜线段。调整 方法和前一种情况类似,不同之处在于按住鼠标之前要先按 下Shift键,出现小黑方框之后,鼠标点住小黑方框移动,移 动好后释放Shift键和鼠标。
一、选取模块
当选取单个模块时,只要用鼠标在模块上单击即可,这时模块的角上 出现黑色的小方块。选取多个模块时,在所有模块所占区域的一角按 下鼠标左键不放,拖向该区域的对角,在此过程中会出现虚框,当虚 框包住了要选的所有模块后,放开鼠标左键,这时在所有被选模块的 角上都会出现小黑方块,表示模块被选中了。此过程如下图所示。
模块名和模块图标中的字体也可以更改,方法是选定模块,在菜单 Format下选取Font,这时会弹出Set Font的对话框,在对话框中选 取想要的字体。
(3) 改变模块名的位置
模块名的位置有一定的规律,当模块的接口在左右两侧时,模块名 只能位于模块的上下两侧,缺省在下侧:当模块的接口在上下两侧时, 模块名只能位于模块的左右两侧,缺省在左侧。
模块参数设置对话
每个模块都有一个内容相同的特性(Properties)设置对 话框,如下图所示。
它包括如下几项: (1) 说明(Description)
是对该模块在模型中用法的注释。 (2) 优先级(Priority)
规定该模块在模型中相对于其他模块 执行的有限顺序。优先级的数值必须 是整数或不输入数值,这时系统会自 动选取合适的优先级。优先级的数值 越小(可以是负整数),优先级越高。 (3) 标记(Tag) 用户为模块添加的文本格式的标记。 (4) 调用函数(Open function) 当用户双击该模块时调用的Matlab函 数。 (5) 属性格式字符串(Attributes format string)
SIMULINK仿真基础PPT课件
![SIMULINK仿真基础PPT课件](https://img.taocdn.com/s3/m/e1cb21f1aaea998fcc220eef.png)
系统建模与仿真
2021/2/10
➢Pulse Generator:脉冲发生器模块产生脉冲信号,可以 设置幅度、周期、宽度等信息。
➢Singal Builder:信号构造模块,在模块窗口双击此模块 在弹出的对话框中绘制信号,即可构造出所需的信号。
➢Ramp:斜坡信号模块,产生斜坡信号。 ➢Sine Wave:正弦波信号模块,产生正弦波信号。 ➢Step:阶跃信号模块,产生阶跃信号。 ➢Repeating Sequence:重复信号模块,可构造重复输入
离散时间积离分散器 时间积分器
离散信号离的散一信阶号保的持一器阶保持器
单位延迟
单位延迟
离散信号的零阶保持器
离散信号的零阶保持器
16
系统建模与仿真
系统建模与仿真
长春理工大学机电工程学院
2021/2/10
模块功能说模 明: 块功能说明: 求取信号的绝对值
求取信号的绝对值
输出强制系统输入为零的代数状态
输出强制系统输入为零的代数状态
按位逻辑运算按位逻辑运算
数学运算库及其功能
逻辑真值查找逻辑真值查找
输出输 输入 出复 输数入的复 幅数 值与 的相 幅位值与相位
输出输 系统 出输 系入统的输 实入 部或 的虚 实部部或虚部
点乘运算
点乘运算
信号增益
信号增益
信号逻辑运算信号逻辑运算
幅值幅 与相 值位 与转相化位 为转 复数 化形 为式复数形式
MATLABSimulink与液压控制系统仿真——第1~2章
![MATLABSimulink与液压控制系统仿真——第1~2章](https://img.taocdn.com/s3/m/58e83adc360cba1aa811daa6.png)
关键词: 液压伺服控制系统;仿真;稳定性 MATLAB/Simulink;
与
其
� 物理学;
他
� 电工学;
课
� 液压传动与控制;
程
� 机械工程控制基础;
的
� MATLAB/Simulink与系统仿真分析
联
� 现代控制理论; � 系统辨识;
系
� 3)液压油易受污染,并可能造成执行机构的堵塞。
�
应该指出的一点是近年来机电系统有了很大的发
展,其执行机构功率大、惯性小,因此在某些方面有代
替液压伺服系统的趋势。但液压伺服系统也在不断向前
发展,在未来的日子里,这两种系统都将会以各自的特
点在相应的技术领域中发挥作用。
应
的
统
系
伺 服
压
液
1.4
用
1.5
定和校正连接起来,是本书的重点,希望读者重视,切实
掌握。
系
统
与
环
1、准确数学系统模型(自动控制系统);
境
2、已知输出,辨识系统模型(系统辨识);
3、不确定数学模型(模糊、概率设计、人工神经网络)
研究系统除了研究系统的实体、属
性和活动外,还需要研究系统的环境, 考察环境和系统之间的相互作用及对系 统活动的影响。因此研究系统首先应确 定系统实体,即包括哪些对象,确定系 统与环境的边界,这样可以清楚地了解 环境的变化对系统的影响。例如在研究 恒温系统时,往往要考虑环境温度的影 响;研究电系统中,常常要考虑电压波 动;在研究机械系统中,要常常把温度、 摩擦力等其他非线性因素当作干扰对系 统的影响加以考虑。研究系统的重要内 容是探讨系统及输入、输出三者之间的 动态关系。
Simulink仿真入门到精通(二)Simulink模块
![Simulink仿真入门到精通(二)Simulink模块](https://img.taocdn.com/s3/m/b78fbe6000f69e3143323968011ca300a6c3f6c8.png)
Simulink仿真⼊门到精通(⼆)Simulink模块2.1 Simulink模块的组成要素⽤户构建系统模型时⽆需直接⾯对成千上万⾏的代码,⽽是通过模块化图形界⾯以模块化的⽅式构建,能够使理解变得容易,让⼤脑减负。
通过层次化模块分布将系统功能模块化,⽽将每个功能的细节隐藏在模块内部。
模块的构成元素1. 输⼊/输出端⼝:作为模块之间传递数据的纽带,连接输⼊信号和输出信号。
2. 模块外观:通常为矩形或圆形,上⾯带有说明⽂字或图像并显⽰有输出/输出端⼝名。
3. 模块对话框:双击模块外观后弹出的参数GUI,可以在参数控件上进⾏参数设置。
Ctrl+R顺时针旋转90°模块的属性及参数1. gcb:获取当前被选中的模块2. gcbh:获取当前被选中的模块的句柄3. get(handle):获取模块的属性信息4. inspect(handle):通过属性观察器⽅式罗列模块的属性信息5. get_param(block,prop_string):获取block模块的prop_string属性值6. set_param(block,prop_string,prop_value):将block模块的prop_string属性的值设为prop_value。
prop_string,prop_value可以多对出现>> new_system('mymodel')>> open_system('mymodel')>> gcbans ='mymodel/Constant'>> get(gcbh)Path: 'mymodel'Name: 'Constant'Tag: ''Description: ''Type: 'block'Parent: 'mymodel'Handle: 1.8170e+03HiliteAncestors: 'none'RequirementInfo: ''FontName: 'auto'FontSize: -1FontWeight: 'auto'FontAngle: 'auto'Selected: 'on'MaskType: ''......常⽤属性列表属性名作⽤说明Path模块在模型中的路径Name模块的名字ShowName模块的名字是否显⽰出来BlockType模块的类型名Handle模块的句柄,double数据表⽰Position模块的边框在当前模型中的位置ForegroundColor模块的前景⾊BackgroundColor模块的背景⾊Sample Time模块的采样时间FontAngle字体斜度FontName字体名FontSize字体⼤⼩FontWeight字体粗度......>> set_param(gcbh,'BackgroundColor','yellow')>> set_param(gcbh,'ForegroundColor','red')set_param/get_param的第⼆个参数使⽤的不是提⽰标签,⽽是参数的变量名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1)Variable-step可变步长类型算法
这类仿真算法可以自动调整步长,并通过减小 步长来提高计算的精度,并提供零点检测(Zero Crossing Detection)功能。属于Variable-step的 仿真算法有:ode45、ode23、ode113、ode15s、 ode23s、ode23t、ode23tb以及discrete。
(2)在参数设置对话框中根据系统的要求在相应 的参数选 项中设置合适的参数。
2.3 仿真算法及仿真参数设置 从模型编辑窗口的Simulation菜单中选择 Configuration parameters命令,打开一个仿真 参数对话框。仿真参数对话框包含5个可以相互 切换的选项卡:
(1) Solver选项卡:用于设置仿真起始和停止时间, 选择微分方程求解算法并为其规定参数,以及 选择某些输出选项。
(2) “Solver options”栏为选择算法的操作, 包括许多选项。
“type”栏的下拉式选择框中可选择 变步长(Variable-step)算法 固定步长(Fix-step)算法。
在SIMULINK 的仿真过程中选择合适的算法是很 重要的,仿真算法是求常微分方程、传递函数、状 态方程解的数值计算方法。
多位开关:根据第一输入的状态,选择开关的 输出
选择器:建立输入和输出信号间的匹配连接关系
信号合成:将几个输入信号联合成为一个 向量信号
可控开关:根据门槛电压,选择开关的输出 6) 仪器仪表(Sinks)模块库
用于观察信号和记录波形 数字显示:将信号以数字方式显示
信号终端:用以封闭信号 将输入的时间和信号记入后缀名为.mat 的文件 将信号写入工作空间,以便用matlab命令 处理
5)模块的插入 插入一个模块,只需将这个模块移到线上就其他的模块,只能先删除连线,放置块, 然后再重新连线。具体操作如图2-16所示。
图2-16 系统模块的插入
6)模块大小的改变 为改变模块大小,首先选中该模块,待模块柄出 现之后,将光标指向适当的柄,按下鼠标并拖动, 然后释放。
8) 用户自定义函数(User-Defined Functions)模块库 可在系统模型中插入数学公式、M函数、S函数 自定义数学表达式
调用Matlab函数 调用由S函数编写的程序
3.simulink模型窗的组成
(1)工具条:最左边的几个图标具有标准Windows的 相应操作功能。
(2)状态栏:以图2-10为例,自左至右的文字表示: ①“Ready”表示模型已准备就绪而等待仿真指令。 ②“100%”表示编辑窗模型的显示比例。 ③仿真历经的时刻为“T=0”。 ④仿真所选取用的积分算法是“ode45”。此外仿真过程中, 在状态栏的空白格中还会出现动态信息。
图2-10 模型窗的组成
(3)菜单栏: 主要包含【File】【Edit】【View】 【Simulation】【Format】【Tools】几项主 要菜单项。
4.Simulink的退出 为了退出Simulink,只要关闭所有模型编辑窗口和 Simulink模块库浏览器窗口即可。
2.2 simulink基本操作
2.1.1 Simulink的启动与退出 1.Simulink的启动
启动simulink之前必须首先运行MATLAB,然后 才能启动simulink并建立系统模型。 启动simulink过程: (1) 执行File→new,在弹出的子菜单选Model, 进入Simulink模型编辑窗口
(2)双击MATLAB主工具栏的 按 钮,则打开 Simulink模型库浏览器 (Simulink Library Browser)
2.模块操作 Simulink的模块库提供了大量模块。操作方法如 下: 1)单击模块库浏览器中Simulink前面的“+”号,
将看到Simulink模块库中包含的子模块库 2)单击所需要的子模块库,在右边的窗口中将看
到相应的基本模块 3)选择所需基本模块,可用鼠标将其拖到模型编 辑窗口。
系统模块进行操作的基本方法 :
7)模块的旋转 默认状态下的模块总是输入端在左,输出端在右,
通过选用【Format:Flip Block】/按Ctrl I 可以将选定模块旋转180°;
而选用【Format:Rotate Block】/按Ctrl R 可以将选取模块旋转90°。
8)模块名的操作 修改模块名:
点击模块名,将在原名字的四周出现一个编 辑框。此时,就可对模块名进行修改。
解算器(Solver)对话框的参数设置
最基本的参数设定包括仿真的起始时间与终 止时间,仿真的步长大小与解算问题的算法 等。
(1) “Simulation time”栏为设置仿真时间 在“Start time”与“Stop time”旁的编辑框内
分别输入仿真的起始时间与停止时间,单位 是“秒”。
(2) Date Import/Export选项卡:用于管理对 MATLAB工作空间的输入和输出。
(3) Diagnostics选项卡:用于设置在 仿真过程中出现各类错误时发出警告 的等级。
(4)Real-time Workshop选项卡: 用于设置若干实时工具中的参数。如 果没有安装实时工具箱,则将不出现 该选项卡。
第二章 simulink仿真技术
2.1simulink介绍 2.2 simulink基本操作 2.3 仿真算法及仿真参数设置 2.4 运行仿真 2.5 创建simulink子系统
2.1 simulink介绍
Simulink是MATLAB最重要的组件之一,它提供一 个动态系统建模、仿真和综合分析的集成环境。在该 环境中,无需大量书写程序,而只需要通过简单直观 的鼠标操作,就可构造出复杂的系统。
利用模型编辑窗口,可以通过鼠标的拖放操作创建
一个模型。
模型创建完成后,从模型编辑窗口的 File菜单项中选择Save或Save As命令, 可以将模型以模型文件的格式(扩展名为.mdl)存 入磁盘。
如果要对一个已经存在的模型文件进行编辑修改, 需要打开该模型文件,其方法是:
●在MATLAB命令窗口直接输入模型文件名(不要 加扩展名.mdl);
1.模型概念和文件操作
1)什么是simulink模型
simulink模型通常包含3种“组件”:
信源(Source)、系统(System)以及信宿(Sink)。
图2-11示出了这种模型的一般性结构。
信源
系统
信宿
图2-11 simulink模型的一般性结构 2)模型文件的操作 模型文件的操作主要有4个:新建、打开、存盘和打印。
斜坡函数:限制输入信号的上升和下降的变化率
滞环控制:模拟带滞环特性的继电器环节
饱和限制:设置输出的正负限幅值,模拟环节的 饱和特性
2) 离散系统(Discrete)模块库 主要用于构建离散控制系统的仿真模型,各模 块功能基本上与连续系统模块库相对应
3) 数学运算(Math Operations)模块库 取绝对值:取输入信号的绝对值或模 计算点积:输出两个输入信号的点积 逻辑运算:与、或、非等逻辑运算符
乘法运算:对输入信号做乘法算符 比较运算:>、<、=等算符 信号综合:综合多路信号
4) 端口和子系统(Ports and Subsystems)模块库 子系统:表示在另一系统之内的子系统
5) 信号分配(Signal Routing)模块库 信号分解:将一个向量信号分解输出
手动开关:双击该开关,开关输出在两个输入 信号间切换
隐藏模块名:
点中模块后,选用菜单【Format:Hide Name】,可以隐藏模块名。与此同时,菜 单也变为【Format:Show Name】。
3.设置模块参数
为了对动态系统进行正确的仿真与分析,必须设置 正确的系统模块参数与系统仿真参数。
模块参数的设置方法如下:
(1)双击模块,打开模块的参数设置对话框。 参数设置对话框包括系统模块的简单描述、模块的 参数选项等信息。注意,不同系统模块的参数设置 不同。
7) 信号源(Sources)模块库 用于产生系统的激励信号,也可从工作空间 或.mat文件读入信号 从工作空间读入信号
从.mat文件读入信号
接地端
脉冲发生器:产生规则的脉冲信号
斜坡输出:产生按一定斜率上升或下降的斜坡信号
正弦波信号:产生一个幅值和频率可调的正弦 波
阶跃信号:产生幅值、起始时间可调的阶跃信号
多项式传递函数:分子分母以多项式表 示的传递函数
零极点传递函数:以零极点表示的传递函数
2) 非线性系统(Discontinuities)模块库 主要用于模拟各种非线性环节
间隙:模拟间隙非线性环节(如齿轮)
库伦和粘滞摩擦:模拟含有粘滞和静摩擦 特性的非线性环节 死区:设定死区范围
阶梯信号:根据输入产生阶梯信号
(2)“ode23”:也是一种一步算法。在容许误差和 计算略带刚性的问题方面,该算法比ode45 要好。
(3)“ ode113” ( Adams) :ode113 是一种多步算法, 也就是需要知道前几个时间点的值,才能计算出当 前时间点的值。在误差要求很严时,ode113 算法较 ode45 更适合。
当修改完毕,将光标移出编辑框,点击即结 束修改。 模块名字体设置: 选用菜单【Format:Font】,打开字体对话 框后,根据需要设置。
改变模块名的位置:
移动模块名的另一种方法是:点击模块名, 出现编辑框后,可用鼠标拖,如果模块的输 入输出端位于其左右两侧,则模块名默认位 于模块下方;否则位于模块的左外侧。
(4)“ode15s”:属于NDFs算法,用于解决刚性 (stiff)问 题,它是一种多步算法 。当ode45、 ode113无法解决问题时,可以尝试采用ode15s去求解, 但ode15s法运算精度较低。
2)模块的复制 如果需要几个同样的模块,可以使用按住