《MATLAB Simulink与控制系统仿真(第3版)》的课件 第3章 Simulink仿真
《Simulink与控制系统仿真(第3版)》的课件 线性系统状态空间分析和非线性系统分析
11.2 非线性系统概述
含有非线性元件或环节的系统称为非线性系统。非线性特性包括 许多类型,典型的静态非线性特性包括死区非线性、饱和非线性、 间隙非线性和继电非线性。
采用MATLAB绘制相轨迹图
绘制相轨迹图的实质是求解微分方程的解。求解微分方程数 值解的算法有多种,MATLAB提供了求解微分方程的函数组, 常用的有ode45,它采用的计算方法是变步长的龙格-库塔4/5 阶算法。 ode45()常用的调用格式如下: [t, y]=ode45(odefun, tspan, y0) 在用户自己编写的MATLAB函数中既可以描述线性系统特性, 也可以描述非线性系统特性。
Relay:继电非线性; Saturation:饱和非线性; Saturation Dynamic:动态饱和非 线性;
Wrap To Zero:环零非线性。
11.3 相平面法
应用相平面法分析一阶尤其是二阶非线性控制系统,弄清非线性系统的稳定 性、稳定域等基本属性以及解释极限环等特殊现象,具有非常直观形象的效 果。 由于绘制二维以上的相轨迹十分困难,因此相平面法对于二阶以上的系统几 乎无能为力,这是相平面法的局限。
11.2.3 Simulink中的非线性模块
Backlash:间隙非线性; Coulomb&Viscous Friction:库仑 和黏度摩擦非线性;
Dead Zone:死区非线性; Dead Zone Dynamic:动态死区 非线性;
Hit Crossing:冲击非线性; Quantizer:量化非线性; Rate Limiter:比例限制非线性; Rate Limiter Dynamic:动态比例 限制非线性;
第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库:对使用状态图所表达的有限状态 机模型进行建模仿真和代码生成。有限状态机用来描 述基于事件的控制逻辑,也可用于描述响应型系统。
《MATLAB Simulink与控制系统仿真(第3版)》的课件 第2章 MATLAB计算基础
2.9 MATLAB程序设计
MATLAB程序类型包括三种:一种是在命令窗口下执行的脚本 M文件;另外一种是可以存取的M文件,即程序文件;最后一 种是函数(function)文件。脚本M文件和程序文件中的变量都 将保存在工作区中,这一点与函数文件是截然不同的。
laplace变换函数的格式为:
L=laplace(F) ilaplace拉氏反变换函数的常用格式为:
F=ilaplace(L) MATLAB提供了符号运算工具箱(Symbolic Math Toolbox),
可方便地进行Z变换和Z反变换,进行Z变换的函数是ztrans,进 行Z反变换的函数是iztrans。
2.3.3 MATLAB命令窗口
2.3.4 MATLAB工作空间
2.3.5 MATLAB文件管理
2.3.6 MATLAB帮助使用
2.4 MATLAB数值计算
控制系统仿真是系统仿真的一个重要分支,它是一门涉及自 动控制理论、计算数学、计算机技术、系统辨识、控制工程 以及系统科学的综合性新型学科。它为控制系统的分析、计 算、研究、综合设计以及控制系统的计算机辅助教学等提供 了快速、经济、科学及有效的手段。
控制系统仿真就是以控制系统模型为基础,采用数学模型替 代实际控制系统,以计算机为工具,对控制系统进行实验、 分析、评估及预测研究的一种技术与方法。
控制系统仿真通过控制系统的数学模型和计算方法,编写程 序运算语句,使之能自动求解各环节变量的动态变化情况, 从而得到关于系统输出和所需要的中间各变量的有关数据、 曲线等,以实现对控制系统性能指标的分析与设计。
MATLABSimulink与控制系统仿真(第3版)
2.3 MATL AB桌 面操作环境
2.4 M AT L A B 数值计算
2.5 关系 运算和逻 辑运算
2.6 符 号运算
2 MATLAB计算基础
2.7 复数 和复变函 数运算
2.8 M AT L A B 常用绘图 命令
2.9 M AT L A B 程序设计
2.2.1 MATLAB发展历程
2.2.3 MATLAB常用工具箱
B
2.7.3 Z变换及其 反变换
C
2 MATLAB计算基础
2.7 复数和复变函数运算
2.9.1 MATLAB程序类型
2.9.3 MATLAB程序基本设 计原则
2 MATLAB计算基础
2.9 MATLAB程序设计
2.9.2 MATLAB程序流程控 制
05
ONE
3 SimulinLeabharlann 仿真3 Simulink仿真
1.5 MATLAB/Simulink 下的控制系统仿真
https:///
1
1.5.1 MATLAB适合控制系统 仿真的特点
2
1.5.2 Simulink适合控制系统 仿真的特点
04
ONE
2 MATLAB计算基础
2 MATL AB计算基础
2.1 引 言
2.2 M AT L A B概述
4.5 MATLAB/Simulink 在模型中的应用
4.2 动态过程微分方程描 述
4.4 数学模型描述
4.6 系统模型转换及连接
4 控制系统数学模型
4.7 非线性数学模型的线 性化
4.8 综合实例及 MATLAB/Simulink应用
4 控制系统数学模型
4.4.1 传递函 数模型
控制系统Simulink仿真PPT课件(MATLAB学习资料)
积分环节的幅值与 成反比,相角恒为-
时,幅相特性从虚轴
处出发,
沿负虚轴逐渐趋于坐标原点,程序如下:
g=tf([0,1],[1,0]); nichols(g); grid on
运行程序输出如图6-14曲线②所示。
。当
在Simulink中积分环节的使用如如图6-15所示。 运行仿真输出图形如图6-10所示。
• 频域法是基于频率特性或频率响应对系统进行分析和设计的一种图解 方法,故又称为频率响应法,频率法的优点较多,具体如下:
• 首先,只要求出系统的开环频率特性,就可以判断闭环系统是否稳定。 • 其次,由系统的频率特性所确定的频域指标与系统的时域指标之间存
在着一定的对应关系,而系统的频率特性又很容易和它的结构、参数 联系起来。因而可以根据频率特性曲线的形状去选择系统的结构和参 数,使之满足时域指标的要求。 • 此外,频率特性不但可由微分方程或传递函数求得,而且还可以用实 验方法求得。这对于某些难以用机理分析方法建立微分方程或传递函 数的元件(或系统)来说,具有重要的意义。因此,频率法得到了广泛 的应用,它也是经典控制理论中的重点内容。
• 2)由于对数可将乘除运算变成加减运算。当绘制由多个环节串联而成的系统的对数坐标图 时,只要将各环节对数坐标图的纵坐标相加、减即可,从而简化了画图的过程。
• 3)在对数坐标图上,所有典型环节的对数幅频特性乃至系统的对数幅频特性均可用分段直 线近似表示。这种近似具有相当的精确度。若对分段直线进行修正,即可得到精确的特性曲 线。
其频率特性为:
一阶复合微分环节幅相特性的实部为常数1,虚部与 成正比,如图5-26曲线①所示。 不稳定一阶复合微分环节的传递函数为:
其频率特性为:
一阶复合微分环节的奈奎斯特曲线图编 程如下: clc,clear,close all g=tf([1,1],[0 1]);
Simulink3运行仿真Simulink教学课件
SIMULINK 3SIMULINK 3运行仿真运行仿真介绍两种Simulink运行仿真的方法3.1使用窗口运行仿真3.2 使用MATLAB 命令运行仿真本章内容和学习目的掌握以上两种运行仿真的方法3.1 使用窗口运行仿真1. 设置仿真参数优点人机交互性强不必记住繁琐的命令语句即可进行操作。
使用窗口运行仿真主要可以完成以下一些操作。
3. 启动仿真4. 停止仿真5. 中断仿真6. 仿真诊断2. 应用仿真参数仿真参数和算法选择的设置仿真参数和算法设置后使之生效选择命令运行仿真选择命令停止仿真可以在中断点继续启动仿真而停止仿真则不能在仿真中若出现错误Simulink将会终止仿真并在仿真诊断对话框中显示错误信息1. 设置仿真参数选择菜单选项【SimulationParameters】可以对仿真参数及算法进行设置共有五个∠羁▉6?解法设置Solver??工作间I/OWorkspace I/O??诊断页Diagnostics??高级设置Advanced??实时工具对话框Real-Time Workshop??解法设置Solver讲??工作间I/OWorkspace I/O讲??诊断页Diagnostics不讲自学??高级设置Advanced不讲自学??实时工具对话框Real-Time Workshop不讲自学设置起始和终止时间选择积分分解法指定求解参数和选择输出选项管理MATLAB工作间的输入输出项选择在仿真中警告信息的等级对仿真的一些高级配置进行设置对实时工具中若干参数进行设置。
若没有安装实时工具不出现此框。
1解法设置页当选中菜单选项【SimulationParameters】后出现参数及算法等设置页。
再点击【Solver】则出现解法设置页。
解法设置页包括三项内容设置仿真的启动时间和终止时间选择算法并指定参数选择输出项仿真时间仿真解法各种解法说明见下页默认解法ode45变步长解法ode45ode23ode113ode15discrete定步长解法ode5ode4ode3ode2ode1discrete最大步长初始步长输出选项用户用来控制仿真输出个数的对话框共有三个菜单选项定义输出产生附加输出产生指定输出。
第三章 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、仿真分类 实物仿真:建造实体模型 数学模型:将数学语言编制成计算机程序 半实体模型:数学物理仿真
MatlabSimulink仿真.ppt
2.3 模块的连接
连接两个模块
先移动光标到输出端,光标键头会变成十字形光标,这时按住鼠标左 键,移动鼠标到另一个模块的输入端,当十字形光标出现重影时,释 放鼠标左键就完成了连接
Sine Wave
Scope
Sine Wave1
Scope1
Sine Wave2
Scope2
-15-
2.3 模块的连接
-6-
1.2 Simulink的启动与退出
-7-
1.2 Simulink的启动与退出
-8-
1.2 Simulink的启动与退出
-9-
1.2 Simulink的启动与退出
-10-
1 Simulink操作基础 2 系统仿真模型 3 系统的仿真 4 使用命令操作对系统进行仿真 5 子系统及其封装技术 6 S函数的设计与应用
1 Out1
-0.5 Constant
Product1
eu
Math Fu n cti o n
Product2
1 s
Integrator1
2 Out2
-23-
2.4 模块的参数和属性设置
-24-
2.5 Simulink的几类基本模块
输入源模块
Model & Subsystem Inputs
1
unti tl ed.m at
2.1 Simulink仿真模型概述
Simulink仿真模型在视觉上表现为直观的方框图, 其扩展名为.mdl,在数学上体现了一组微分方程 或差分方程,在物理上模拟了物理器件构成的实 际系统的动态特性
模块是构成系统仿真模型的基本单元。从宏观角 度上看,simulink模型通常包含了3类模块:信源 (source)、系统(system)和信宿(sink)。
华东交通大学 教材 MATLAB Simulink与控制系统仿真 王正林(第3版) 电子工业出版社matlab第3章 matlab第3章
解:步骤1:新建一个模型窗口
图3.5 正弦信号输出到示波器中的模型
图3.6 示波器中的仿真结果
11
Simulink 模块图形的保存
在模型窗口选择 edit → copy model to clipboard(复制模型到 剪贴板)→ 粘贴到 word 等文件中。 对于已经建立的 *.mdl 模型,选择 file→print 打印成 pdf 格 式文件,再复制到word中。
12
scope波形显示模块实际上也是一种figure窗口,不过matlab把 scope的菜单栏隐藏起来,只提供了几个有限的参数设置。 可以在打开 mdl 文件后,在 matlab 的命令行输入指令恢复显示 scope的figure菜单栏:
>> set(0,'showhiddenhandles','on'); >> set(gcf,'menubar','figure');
(3)线的分支:按住鼠标右键,在需要分支的地方拉出即可。
或按住 Ctrl 键并在要建立分支的地方用鼠标拉出即可。
33
3.5 Simulink 仿真设置
编辑好仿真程序后,应设置仿真操作参数,以便进行仿真。 单击菜单simulation→configuration parameters,弹出设置窗口。 包括仿真器参数(solver)设置、工作空间数据导入/导出 (Data Import/Export)设置等。
34
图3.11 Simulink设置窗口
35
3.5.1 仿真器参数设置
一般使用默认设置即可。 1、仿真时间设置 仿真开始时间(start time)、仿真结束时间(stop time) 一般仿真开始时间设为0,结束时间视情况而定。 2、仿真步长模式设置(type)
自控原理课件 第3章-MATLAB与SIMULINK简介
第3章 MATLAB与SIMULINK简介
(4)输入下列命令,按[Enter]键,指令被执行, command window窗中显示以下内容: 》det(A) ans= -360 (5)输入下列命令,按[Enter]键,指令被执行, command window窗中显示以下内容: 》inv(A) Ans= 0.1472 -0.1444 0.0639 -0.0611 0.0222 0.1056 -0.o194 0.1889 -0.1028
第3章 MATLAB与SIMULINK简介
3.1.6 MATLAB 的基本规定 1.数值的表示 MATLAB的数值采用十进制,可以带小数点或 负号。以下表示都合法。 0 -100 0.008 12.752 1.8e-6 8.2e52 2.变量命名规定 (1)变量名、函数名:字母大小写表示不同的变 量名。如A和a表示不同的变量名;sin 是MATLAB定义的正弦函数,而Sin、SIN等都不 是。 (2)变量名的第一个字母必须是英文字母,最多 可包含31个字符(英文、数字和下连字符)。如A21 是合法的变量名,而3A21是不合法的变量名。
第3章 MATLAB与SIMULINK简介
Save Workspace As 将MATLAB工作空间中的所 有变量存为MAT文件 Show Workspace 调用工作空间浏览器 Show Graphics Property Editor调用图形对象属性 编辑器 Show GUI Layout Tool 调用图形用户界面制作 工具 Set Path 调用路径浏览器 Preferences 调用MATLAB指令窗环境设置卡 Print Setup 打印设置 Print 打印工作窗中的内容 Print Selection 打印指令窗中所选定的内容 Exit MATLAB 退出MATLAB
3《MATLAB Simulink与控制系统仿真(第3版)》的课件 第3章 Simulink仿真
3.4.3 Simulink模块间的连线处理
(1)改变粗细:线所以有粗细是因为线引出的信号可以是标量信号或向量信号, 当选中Format菜单下的Wide Vector Lines时,线的粗细会根据线所引出的信号是 标量还是向量而改变,如果信号为标量则为细线,若为向量则为粗线。选中 Vector Line Widths则可以显示出向量引出线的宽度,即向量信号由多少个单一信 号合成。 (2)设定标签:只要在线上双击鼠标,即可输入该线的说明标签。也可以通过 选中线,然后打开Edit菜单下的Signal Properties进行设定,其中Signal name属性 的作用是标明信号的名称,设置这个名称反映在模型上的直接效果就是与该信 号有关的端口相连的所有直线附近都会出现写有信号名称的标签。 (3)线的折弯:按住Shift键,再用鼠标在要折弯的线处单击一下,就会出现圆 圈,表示折点,利用折点就可以改变线的形状。 (4)线的分支:按住鼠标右键,在需要分支的地方拉出即可,或者按住Ctrl键 并在要建立分支的地方用鼠标拉出即可。
3.3.1 Simulink模块库分类
Simulink模块库按功能分为16类子模块库
3.4 Simulink功能模块的处理
图3.8 “功能模块参数设置”对话框
图3.10 “示波器属性”对话窗框
3.4.2 Simulink模块的基本操作
(1)移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离线而移动,可按住Shift键再进行拖 曳。 (2)复制:选中模块,按住鼠标右键进行拖曳即可复制同样的一个功能模块。 (3)删除:选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按 Delete键即可;也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。 (4)转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单Format中选择Flip Block旋转180°,选择Rotate Block顺时针旋转90°;或者直接按Ctrl+F组合键执行Flip Block,按Ctrl+R组合键执 行Rotate Block。 (5)改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。 (6)模块命名:先用鼠标在需要更改的名称上单击一下,然后直接更改即可。名称在功能模块上的位置也可以 变换180°,可以用Format菜单中的Flip Name来实现,也可以直接通过鼠标进行拖曳。Hide Name可以隐藏模块名 称。 (7)颜色设定:Format菜单中的Foreground Color可以改变模块的前景颜色,Background Color可以改变模块的背 景颜色,而模型窗口的颜色可以通过Screen Color来改变。 (8)参数设定:用鼠标双击模块就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包 含了该模块的基本功能帮助,为获得更详尽的帮助,可以单击其上的“Help”按钮。通过对模块的参数设定,就 可以获得需要的功能模块。 (9)属性设定:选中模块,打开Edit菜单的Block Properties可以对模块进行属性设定,包括对Description、 Priority、Tag、Open function、Attributes format string等属性的设定。其中Open function属性是一个很有用的属性, 通过它指定一个函数名,当模块被双击之后,Simulink就会调用该函数并执行,这种函数在MATLAB中称为回调 函数。 (10)模块的输入/输出信号:模块处理的信号包括标量信号和向量信号。标量信号是一种单一信号,而向量信号 为一种复合信号,是多个信号的集合,它对应着系统中几条连线的合成。默认情况下,大多数模块的输出都为标 量信号,对于输入信号,模块都具有一种“智能”的识别功能,能自动进行匹配。某些模块通过对参数的设定, 可以使模块输出向量信号。
第三章 Simulink基础
共有解法器(solver)、工作空间输入输 出(workspace I/O)、诊断(Diagnostics)、高级 属性(Advanced) 和实时工作室(real-time workshop)等5个画面。 解法器:用于设置仿真开始时间和终止时间, 解法器类型(定步长和变步长两类)和具 体的解算算法、最大最小步长、容许误差
数学运算模块(math)
求绝对值或求模 建立逻辑真值表 求复数的幅值与相角 求复数的实部和虚部 求点乘(内积) 增益(对输入信号乘上一个常数) 逻辑操作符 由幅值与相角求复数 数学运算函数
求极大与极小值 对输入信号求积或商 比较操作符 取整操作 取输入的正负符号 以滑动形式改变增益 对输入信号求代数和 三角函数
timespan:仿真的时间信息,有三种格式: [tFinal]指定仿真停止时间,仿真开始时间缺省值 为0; [tStart tFinal]指定仿真开始和停止时间 [tStart OutputTimes tFinal] 要输出的时间 Options:由simset设置的仿真参数 ut:外部输入的数据
定步长类型包括: Discrete --纯离散定步长算法 ode5--ode45定步长算法 ode4--四阶龙格库塔法 ode3--bogacki-shampine算法 ode2--二阶龙格库塔法 ode1--欧拉算法
变步长类型包括: Discrete--纯离散变步长算法 Ode45--显式龙格库塔4、5阶一步算法 Ode23--显式龙格库塔2、3阶一步算法 Ode15s--基于数值微分的变阶多步算法 Ode113--普通变阶多步算法 Ode23s--2阶一步算法 Ode23t--内插梯形法则算法 Ode23tb--梯形法则-二阶反向数值微分算法
s +3 1 ⋅ G(s) = 2 s + 4s +8 s +3
《SIMULINK仿真》PPT课件
• • • • • • • • • • • • •
(4)Discrete(离散系统模块库) 模块包括描述离散时间系统的模块,其中主要模块有: Difference(差分); Discrete Derivative(离散微分); Discrete Filter(离散滤波器); Discrete State-Space(离散状态空间模型); Discrete Transfer Fcn(离散传递函数); Discrete Zero-Pole(以零极点表示的离散传递函数模型); Discrete Time Integrator(离散时间积分器); First-Order Hold(一阶采样和保持器) Integer Delay(整数延迟); Zero-Order Hold(零阶采样和保持器); Unit Delay(单位延迟);
4.1.3 SIMULINK界面窗口介绍
SIMULINK模型创建窗口
Simulink的工作原理
• • • • • 仿真包括以下几个步骤。 (1)模型编译 (2)连接 (3)仿真执行 一般仿真模型都采用数值积分来仿真 的,相邻两个时间点的长度为步长,步长 的大小取决于求解器的类型。
4.1.4 SIMULINK的常用模块库
• • • • • • • • • •
(11)Sources(输入源模块库) Band-Limited White Noise(带宽限制的白噪声); Clock(时钟信号); Constant(常数信号); Pulse Generator(脉冲发生器); Repeating Sequence(重复序列信号); Signal Generator(信号发生器); Sine Wave(正弦波信号); Random Number(随机数); Step(阶跃波信号);
控制系统MATLAB仿真与应用第3章
3.1 二维图形
3.1.1 基本二维图形
【例3-3】 利用M文件编辑器,创建名为figgrid.m的M文件,并写入: for i = 1:5
for j = :6 A(i,j) = i + j;
end end x = 0.2:0.2:1; figure(1) subplot(2,2,1); plot(A,x,'LineWidth',1.5); subplot(2,2,2); plot(x,A,'LineWidth',1.5); B=reshape(1:30,5,6); subplot(2,2,3); plot(A,B,'LineWidth',1.5); subplot(2,2,4); plot(B,A,'LineWidth',1.5); 运行M文件,结果如图所示。
机械工业出版社 CHINA MACHINE PRESS
3.1 二维图形
3.1.1 基本二维图形
【例3-5】plot指令使用示例5。 输入参数为向量时,利用函数plot可绘制多条曲线。 利用M文件编辑器,创建名为fig.m的M文件,并写入: clear all x = -pi:pi/10:pi; y = [sin(x); sin(x+3); sin(x+5)]; z = [cos(x); cos(x+3); cos(x+5)]; figure; plot(x, y, 'r:*',x,z,'g-.v'); 输出结果如图所示。
机械工业出版社 CHINA MACHINE PRESS
3.1 二维图形
3.1.1 基本二维图形
《Simulink仿真》PPT课件
单击模块,拖曳模块到合适的位置,松开鼠标按键
旋转模块
适应实际系统的方向,调 整整个模型的布置
方法1:选中模块,选择菜单命令[Diagram>Rotate &
Flip>Clockwise/Counterclockwise],模块&标签顺/逆时针旋转 90°;选择菜单命令[Diagram>Rotate & Flip>Flip Block],
启动Simulink有如下3种方式:
在MATLAB的命令窗口直接键入 命令simulink;
用鼠标左键单击MATLAB工具条 上的按钮;
在MATLAB菜单上选择【File】| 【New】|【Model】选项
精选课件ppt
8
7.2.2 Simulink的工作环境
精选课件ppt
9
7.3 模型的创建
精选课件ppt
3
7.1 初识Simulink
典型的Simulink模型包括:
元素1:信号源(Source) 元素2:被模拟的系统模块 元素3:信号输出(Sink)
仿真步骤
建立系统仿真模型
包括添加模块、 设置模块参数、 进行模块连接等操作
设置仿真参数 启动仿真 分析仿真结果
精选课件ppt
discrete 针对非连续系统(离散系统)的特殊算法
ode5
采用 Dormand-Prince 的算法,即固定步长的 ode45 算法
ode4 固定
ode3 步长类
ode2 算法
ode1
采用固定步长的 4 阶 Runge-Kutta 算法 采用固定步长的 Bogacki-Shampine 算法 采用固定步长的 2 阶 Runge-Kutta 算法,也称 Heun 算法 固定步长的 Eular 算法
最新MATLAB-SIMULINK讲解完整版教学讲义PPT
第3章 SIMULINK应用基础
具体到电力系统仿真而言,原来的MATLAB编程仿真 是在文本命令窗口中进行的,编制的程序是一行行的命令和 MATLAB函数,不直观也难以与实际电力模型建立形象的 联系。在SIMULINK环境中,电力系统元器件的模型都用框 图来表达,框图之间的连线表示了信号流动的方向。对用户 而言,只要熟悉了SIMULINK仿真平台的使用方法以及模型 库的内容,就可以使用鼠标和键盘绘制和组织系统模型,并 实现系统的仿真,完全不必从头设计模型函数或死记那些复 杂的函数。
MATLAB-SIMULINK讲解完整 版
第3章 SIMULINK应用基础
3.1 SIMULINK仿真环境
SIMULINK是MATLAB的一个分支产品,主要用来实现 对工程问题的模型化及动态仿真。SIMULINK体现了模块化 设计和系统级仿真的思想,采用模块组合的方法使用户能够 快速、准确地创建动态系统的计算机模型,使得建模仿真如 同搭积木一样简单。SIMULINK现已成为仿真领域首选的计 算机环境。
适的位置,松开鼠标按键; 方法 2:选中模块,使用[Edit>Copy]及[Edit>Paste]命令
第3章 SIMULINK应用基础
单击模块,拖曳模块到合适的位置,松开鼠标按键
方法 1:选中模块,选择菜单命令[Format>Rotate Block], 模块顺时针旋转 90°;选择菜单命令[Format>Flip Block],
模块顺时针旋转 180°; 方法 2:右键单击目标模块,在弹出的快捷菜单中进行与
方法 1 同样的菜单项选择 方法 1:先按住“Ctrl”键,再单击模块,拖曳模块到合
SIMULINK 仿真平台窗
口中 可对多个模块同时进
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作者:王正林 王胜开等 联系邮箱:wa_2003@
本书8年的发展历程
第1版,2005.7月出版 第2版,2008.7月出版 第3版,2012.1月出版
第3章 SIMULINK仿真
3.6 Simulink仿真举例
求解微分方程的Simulink模型
信号叠加的Simulink模型
3.7 Simulink自定义功能模块
自定义功能模块的创建有以下两种方法。 (1)一种方法是采用Signal&Systems 模块库中的Subsystem功能模块,利用其编辑区设 计组合新的功能模块。 (2)另一种方法是将现有的多个功能模块组合起来,形成新的功能模块。 自定义功能模块的封装 首先选中Subsystem功能模块,再打开Edit菜单中的Mask Subsystem进入mask的编辑窗口, 可以看出有3个标签页。 1.Icon标签页 它用于设定功能模块外观,最重要的部分是Drawing Commands,在该区域内可以用disp 指令设定功能模块的文字名称,用plot指令画线,用dpoly指令画转换函数。 2.Initialization标签页 它用于设定输入数据窗口(Prompt List),它主要用来设计输入提示(prompt)以及对应 的变量名称(variable)。在prompt栏上输入变量的含义,其内容会显示在输入提示中。 variable是仿真要用到的变量,该变量的值一直存于mask workspace中,因此可以与其他 程序相互传递。 3.Documentation标签页 它用于设计该功能模块的文字说明,主要针对完成的功能模块来编写相应的说明文字和 Help。
3.8 S函数设计与应用
S-Function是系统函数(System Function)的简称,是一个动态 系统的计算机语言描述。在MATLAB中,用户可以选择用M文 件编写,也可以用C或mex文件编写,在这里只给大家介绍如何 用M文件编写S-Function,使用C语言或mex文件编写的方法与 M文件编写的方法基本类似。 S-Function提供了扩展Simulink模块库的有力工具,它采用一种 特定的调用语法,实现函数和Simulink解法器之间的交互。 S-Function最广泛的用途是定制用户自己的Simulink模块。它的 形式十分通用,能够支持连续系统、离散系统和混合系统。
3.2.1 Simulink的启动与退出
Simulink的启动有两种方式:一种是启动MATLAB后,单击 MATLAB主窗口的快捷按钮 来打开Simulink Library Browser 窗口;另一种是在MATLAB命令窗口中输入“Simulink”,
3.2.2 Simulink建模仿真
一个典型的Simulink模型由以下三种类型的模块构成: 信号源模块 信号源为系统的输入,它包括常数信号源、函数信号发生器( 如正弦波和阶跃函数等)以及用户自己在M模块作为仿真的中心模块,它是Simulink仿真建模所要解决 的主要部分。 输出显示模块
3.5 Simulink仿真设置
图3.11 Simulink设置窗口
3.5.2 工作空间数据导入/导出设置
(1)Load from workspace:选中前面的复选框即可从MATLAB工 作空间获取时间和输入变量,一般时间变量定义为t,输入变量 定义为u。Initial state用来定义从MATLAB工作空间获得的状态 初始值的变量名。 (2)Save to workspace:用来设置存在MATLAB工作空间的变量 类型和变量名,可以选择保存的选项有:时间、端口输出、状 态和最终状态。选中选项前面的复选框并在选项后面的编辑框 输入变量名,就会把相应数据保存到指定的变量中。常用的输 出模块为信号与系统模块库(Signals & Systems)中的Out1模 块和输出方式库(Sink)中的To Workspace模块。 (3)Save options:用来设置存往工作空间的有关选项
3.2 Simulink仿真概述
Simulink是MATLAB软件的扩展,它是实现动态系统建模和 仿真的一个软件包,它与MATLAB语言的主要区别在于它与 用户交互接口是基于Windows的模型化图形输入的,从而使得 用户可以把更多的精力投入到系统模型的构建而非语言的编 程上。 所谓模型化图形输入是指Simulink提供了一些按功能分类的基 本系统模块,用户只需要知道这些模块的输入、输出及模块 的功能,而不必考察模块内部是如何实现的。通过对这些基 本模块的调用,再将它们连接起来就可以构成所需要的系统 模型(以.mdl文件进行存取),进而进行仿真与分析。
3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8
引言 SIMULINK仿真概述 SIMULINK的模块库简介 SIMULINK功能模块的处理 SIMULINK仿真设置 SIMULINK仿真举例 SIMULINK自定义功能模块 S函数设计与应用
内容提要
Simulink的出现给控制系统分析与设计带来了福 音。它有两个主要功能:Simu(仿真)和Link( 连接),即该软件可以利用鼠标在模型窗口上绘 制出所需要的控制系统模型,然后利用Simulink 提供的功能来对系统进行仿真和分析。 通过本章,读者对Simulink的基本模块和功能有 一个全面了解,并能熟练Simulink的基本操作, 为使用Simulink进行控制系统仿真打下基础。
3.4.3 Simulink模块间的连线处理
(1)改变粗细:线所以有粗细是因为线引出的信号可以是标量信号或向量信号, 当选中Format菜单下的Wide Vector Lines时,线的粗细会根据线所引出的信号是 标量还是向量而改变,如果信号为标量则为细线,若为向量则为粗线。选中 Vector Line Widths则可以显示出向量引出线的宽度,即向量信号由多少个单一信 号合成。 (2)设定标签:只要在线上双击鼠标,即可输入该线的说明标签。也可以通过 选中线,然后打开Edit菜单下的Signal Properties进行设定,其中Signal name属性 的作用是标明信号的名称,设置这个名称反映在模型上的直接效果就是与该信 号有关的端口相连的所有直线附近都会出现写有信号名称的标签。 (3)线的折弯:按住Shift键,再用鼠标在要折弯的线处单击一下,就会出现圆 圈,表示折点,利用折点就可以改变线的形状。 (4)线的分支:按住鼠标右键,在需要分支的地方拉出即可,或者按住Ctrl键 并在要建立分支的地方用鼠标拉出即可。
3.3.1 Simulink模块库分类
Simulink模块库按功能分为16类子模块库
3.4 Simulink功能模块的处理
图3.8 “功能模块参数设置”对话框
图3.10 “示波器属性”对话窗框
3.4.2 Simulink模块的基本操作
(1)移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。若要脱离线而移动,可按住Shift键再进行拖 曳。 (2)复制:选中模块,按住鼠标右键进行拖曳即可复制同样的一个功能模块。 (3)删除:选中模块,按Delete键即可。若要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按 Delete键即可;也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。 (4)转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单Format中选择Flip Block旋转180°,选择Rotate Block顺时针旋转90°;或者直接按Ctrl+F组合键执行Flip Block,按Ctrl+R组合键执 行Rotate Block。 (5)改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。 (6)模块命名:先用鼠标在需要更改的名称上单击一下,然后直接更改即可。名称在功能模块上的位置也可以 变换180°,可以用Format菜单中的Flip Name来实现,也可以直接通过鼠标进行拖曳。Hide Name可以隐藏模块名 称。 (7)颜色设定:Format菜单中的Foreground Color可以改变模块的前景颜色,Background Color可以改变模块的背 景颜色,而模型窗口的颜色可以通过Screen Color来改变。 (8)参数设定:用鼠标双击模块就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包 含了该模块的基本功能帮助,为获得更详尽的帮助,可以单击其上的“Help”按钮。通过对模块的参数设定,就 可以获得需要的功能模块。 (9)属性设定:选中模块,打开Edit菜单的Block Properties可以对模块进行属性设定,包括对Description、 Priority、Tag、Open function、Attributes format string等属性的设定。其中Open function属性是一个很有用的属性, 通过它指定一个函数名,当模块被双击之后,Simulink就会调用该函数并执行,这种函数在MATLAB中称为回调 函数。 (10)模块的输入/输出信号:模块处理的信号包括标量信号和向量信号。标量信号是一种单一信号,而向量信号 为一种复合信号,是多个信号的集合,它对应着系统中几条连线的合成。默认情况下,大多数模块的输出都为标 量信号,对于输入信号,模块都具有一种“智能”的识别功能,能自动进行匹配。某些模块通过对参数的设定, 可以使模块输出向量信号。