第8章 SIMULINK 仿真
SIMULINK仿真

后面的每一列对应每一个输入端口,矩阵的第一行表示某 一时刻各输入端口的输入状态。另外,也可以把矩阵分开 来表示,即MATLAB默认的表示方法[t,u],其中t是一维 时间列向量,表示仿真时间,u是和t长度相等的n维列向 量(n表示输入端口的数量),表示状态值。例如,在命 令窗口中定义t和u:
条件执行子系统分为
1.使能子系统
使能子系统表示子系统在由控制信号控制时,控制信号由 负变正时子系统开始执行,直到控制信号再次变为负时结 束。控制信号可以是标量也可以是向量。
建立使能子系统的方法是:打开Simulink模块库中的Ports & Subsystems模块库,将Enable模块复制到子系统模型 中,则系统的图标发生了变化。
阵、结构和包含时间的结构3种选择。“Limit data points to last”用来限定保存到工作空间中 的数据的最大长度。 输出选项(Output options)有: ① Refine output(细化输出) ② Produce additional output(产生附加输出) ③ Produce specified output only(仅在指定 的时刻产生输出)
4.1 初识Simulink—— 一个简单的仿 真实例
在MATLAB的命令窗口输入Simulink,或单击MATLAB主 窗口工具栏上的“Simulink”命令按钮即可启动Simulink。 Simulink启动后会显示如图4.1所示的Simulink模块库浏览 器(Simulink Library Browser)窗口。
U (s)
Kp
Ki s
Kd s
Matlab系列之Simulink仿真教程

交互式仿真
Simulink支持交互式 仿真,用户可以在仿 真运行过程中进行实 时的分析和调试。
可扩展性
Simulink具有开放式 架构,可以与其他 MATLAB工具箱无缝 集成,从而扩展其功 能。
Simulink的应用领域
指数运算模块
用于实现信号的指数运算。
减法器
用于实现两个信号的减法 运算。
除法器
用于实现两个信号的除法 运算。
对数运算模块
用于实现信号的对数运算。
输出模块
模拟输出模块
用于将模拟信号输出 到外部设备或传感器。
数字输出模块
用于将数字信号输出 到外部设备或传感器。
频谱分析仪
用于分析信号的频谱 特性。
波形显示器
控制工程
Simulink在控制工程领域 中应用广泛,可用于设计 和分析各种控制系统。
信号处理
Simulink中的信号处理模 块可用于实现各种信号处 理算法,如滤波器设计、 频谱分析等。
通信系统
Simulink可以用于设计和 仿真通信系统,如调制解 调、信道编码等。
图像处理
Simulink中的图像处理模 块可用于实现各种图像处 理算法,如图像滤波、边 缘检测等。
用于将时域信号转换为频域信号,如傅里叶变换、 拉普拉斯变换等。
03 时域变换模块
用于将频域信号转换为时域信号,如逆傅里叶变 换、逆拉普拉斯变换等。
04
仿真过程设置
仿真时间的设置
仿真起始时间
设置仿真的起始时间,通 常为0秒。
步长模式
选择固定步长或变步长模 式,以满足不同的仿真需 求。
Simulink仿真操作基本教程

◼ 在 Simulink 模 型 或 模 块 库 窗
口内,用鼠标左键单击所需 模块图标,图标四角出现黑 色小方点,表明该模块已经 选中。
c) 模块拷贝及删除
◼ 在模块库中选中模块后,按 住鼠标左键不放并移动鼠标 至目标模型窗口指定位置, 释放鼠标即完成模块拷贝。
◼ 模块的删除只需选定删除的 模块,按Del键即可。
a) 启动Simulink。
➢ 单击MATLAB Command窗口工具条上的Simulink图标,或者
在MATLAB命令窗口输入simulink,即弹出图示的模块库窗 口界面(Simulink Library Browser)。该界面右边的窗口给出 Simulink所有的子模块库。
➢ 常用的子模块库有 Sources( 信 号 源 ) , Sink( 显 示输出),Continuous(线性连 续系统),Discrete(线性离 散系统),Function & Table (函数与表格),Math(数学 运算), Discontinuities (非 线性),Demo(演示)等。
图9-15 定步长算法
图9-16 变步长算法
第一章 Simulink动态仿真
① Solver页 ➢ Error Tolerance(误差限度): 算法的误差是指当前状态值与当前
状态估计值的差值,分为Relative tolerance(相对限度)和Absolute tolerance(绝对限度),通常可选auto。
第一章 Simulink动态仿真
a) 启动Simulink
① 用鼠标右键点击Simulink菜单项,则弹出一菜单条,点击该菜单
条即弹出该子库的标准模块窗口.如单击左图中的【Sinks】,出现 “Open the ‘Sinks’Library”菜单条,单击该菜单条,则弹出右图所 示的该子库的标准模块窗口。
unit8和unit16在simulink中的使用

unit8和unit16在simulink中的使用
Simulink是一种用于模拟和仿真的软件工具,它可以帮助工程师和科学家快速构建和仿真复杂的系统。
它提供了一种可视化的方法来构建模型,并且可以使用不同的单元来构建模型。
其中,Unit8和Unit16是Simulink中常用的两种单元。
Unit8是一种8位数据类型,它可以表示256个不同的值,从0到255。
它可以用于表示较小的数值,如温度、压力等。
Unit8可以用于模拟和仿真中,可以用来表示较小的数值,如温度、压力等。
Unit16是一种16位数据类型,它可以表示65536个不同的值,从0到65535。
它可以用于表示较大的数值,如电压、电流等。
Unit16可以用于模拟和仿真中,可以用来表示较大的数值,如电压、电流等。
Unit8和Unit16在Simulink中都有重要的作用,它们可以用来表示不同的数值,从而帮助工程师和科学家快速构建和仿真复杂的系统。
此外,它们还可以用于模拟和仿真中,可以用来表示不同的数值,从而更好地模拟和仿真系统。
总之,Unit8和Unit16是Simulink中常用的两种单元,它们可以用来表示不同的数值,从而帮助工程师和科学家快速构建和仿真复杂的系统。
它们还可以用于模拟和仿真中,可以用来表示不同的数值,从而更好地模拟和仿真系统。
MATLAB使用Simulink 进行建模与仿真方法

方法/步骤
第一步:我们打开MATLAB软件,然后 在命令窗口中输入simulink或点击左 上角的【新建】,然后选择 【simulink Model】,如下图所示。
方法/步骤
第二步:此时将进入如下图所示的 Simulink界面,我们点击工具栏中的 【Library Browser】,如下图所示。
方法/步骤
第五步:基本的仿真模型需要信号发 生装置,我们可以选择如下图所示的 各种信号发生器,如正弦波信号发生 器,我们将其拖动到仿真模型框图。
方法/步骤
第六步:有了信号发生装置,作为一 个合理的仿真模型则必有信号接收与 显示装置,如下图所示,我们可以选 择Scope进行波形显示。
方法/步骤
第七步:我们选择好基本的输入输出 装置后,如下图所示,我们在仿真模 型框图中布局好装置位置并进行连线。
方法/步骤
第八步:仿真模型连线完毕后,检查 无误后我们就可以按下【Run】按钮, 运行我们的仿真程序了,如下图所示, 我们可以在显示器件中观察仿真结果, 并进行模型调整与修改。
注意事项
Simulink是 MATLAB很强大的系统建模、仿真和分析功能组件,上述方法、步骤只介绍了使用 Simulink搭建最基础的输入输出模型。
参考资料:Matlab/Simulink通信系统建模与仿真实例分析
《Matlab/Simulink通信系统建模与仿真实例分析》是2008年清华大学出版的一本图书,作者是 邵玉斌。
参考资料:基于matlab/simulink的通信系统建模与仿真(十三五)
《基于matlab/simulink的通信系统建模与仿真(十三五)》是2017年10月北京航空航天大学出 版社出版的图书,作者张瑾,周原,姚巧鸽,赵静。本书以MATLAB R2016a为平台,通过大量的 MATLAB、Simulink仿真实例,加深读者对通信系统原理的理解。
精通matlab6.5版 8. SIMULINK交互式仿真集成环境

第八第八章章 SIMULINK SIMULINK 交互式仿真集成环境交互式仿真集成环境8.1 引导SIMULINK 是一个进行动态系统建模、仿真和综合分析的集成软件包。
它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。
在SIMULINK 提供的图形用户界面GUI 上,只要进行鼠标的简单拖拉操作就可构造出复杂的仿真模型。
它外表以方块图形式呈现,且采用分层结构。
从建模角度讲,这既适于自上而下(Top-down )的设计流程(概念、功能、系统、子系统、直至器件),又适于自下而上(Bottum-up ) 逆程设计。
从分析研究角度讲,这种SIMULINK 模型不仅能让用户知道具体环节的动态细节,而且能让用户清晰地了解各器件、各子系统、各系统间的信息交换,掌握各部分之间的交互影响。
在SIMULINK 环境中,用户将摆脱理论演绎时需做理想化假设的无奈,观察到现实世界中摩擦、风阻、齿隙、饱和、死区等非线性因素和各种随机因素对系统行为的影响。
在SIMULINK 环境中,用户可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。
由于SIMULINK 环境使用户摆脱了深奥数学推演的压力和烦琐编程的困扰,因此用户在此环境中会产生浓厚的探索兴趣,引发活跃的思维,感悟出新的真谛。
在MATLAB6.x 版中,可直接在SIMULINK 环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP 、电力系统等诸多领域,所涉内容专业性极强。
本书无意论述涉及工具包的专业内容,而只是集中阐述:SIMULINK 的基本使用技法和相关的数值考虑。
节8.1虽是专为SIMULINK 初学者写的,但即便是熟悉SIMULINK 以前版本的读者也值得快速浏览这部分内容,因为新版的界面、菜单、工具条、模块库都有较大的变化。
第8.2节比较详细地阐述建模的基本操作:通用模块的具体化设置、信号线勾画、标识、模型窗参数设置。
simulink仿真

信源 系统 星宿
利用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)
MATLABSimulink仿真(最精简)

Format--Foreground Color改模块前景 颜色;
Format--Background Color改模块背景 颜色;
Format-- Screen Color改模型窗口的颜 色。
19
8.3.3 simulink功能模块的处理
8.参数设定:双击模块, 从而对模块进行参 数设定。 9.属性设定:选中模块,Edit--Block Properties
1.将仿真结果信号输入到输出模块
(1)“Scope”示波器
(2)“XY Graph”二维X-Y图形显示器
(3)“Display”数字显示器中,直接查看。
34
6.5 观察Simulink的仿真结果
2.将仿真结果信号输入到“To Workspace”模
块中,再用绘图命令在MATLAB命令窗口里
绘制出图形。
8
8.3.1 SIMULINK的模块库
1. 常用元件模块
9
8.3.1 SIMULINK的模块库
2. 连续模块
10
8.3.1 SIMULINK的模块库
3. 离散模块
11
8.3.1 SIMULINK的模块库
4. 数学模块
12
8.3.1 SIMULINK的模块库
5.输入源模块
13
8.3.2 simulink模型的建立
本章目标
了解Simulink基本模块的性质
掌握系统仿真的方法
1
主要内容
8.1 Simulink与系统仿真
8.2 Simulink的使用 8.3 Simulink的基本模块 8.4 功能模块的处理 8.5 设置仿真参数
8.6 观察Simulink的仿真结果
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4 模块参数设置
用鼠标双击指定模块图标,打开模块对话框,根据 对话框栏目中提供的信息进行参数设置或修改。 ➢ 例如双击模型窗口的scope模块,弹出图示对话框, 在对话框中分别输入横轴个数、时间范围,等, 点击OK键,完成该模型的设置,如右下图所示:
5 模块的连接
模块之间的连接是用连接线将一个模块的输出端与 另一模块的输入端连接起来;也可用分支线把一个 模块的输出端与几个模块的输入端连接起来。
2 模块拷贝及删除
在模块库中选中模块后,按住鼠标左键不放并移 动鼠标至目标模型窗口指定位置,释放鼠标即完 成模块拷贝。
模块的删除只需选定删除的模块,按Del键即可。
3 模块调整
改变模块位置、大小:选中模块,拖至新的位置;选中 模块进行大小的缩放。
改变模块方向
➢ 使模块输入输出端口的方向改变。选中模块后, 选 取 菜 单 Format→RotateBlock , 可 使 模 块 旋 转 900。 Format→FlipBlock,旋转1800
长算法两类。定步长支持的算法可在Fixed step size编辑框 中指定步长或选择auto,由计算机自动确定步长,离散系 统一般默认地选择定步长算法,在实时控制中则必须选用 定步长算法;变步长支持的算法如图9-16所示,对于连续 系统仿真一般选择ode45,步长范围使用auto项。
图9-15 定步长算法
1 Sources库
也可称为信号源库,该库包
含了可向仿真模型提供信号
的模块。它没有输入口,但 至少有一个输出口。
双击图标 的模块图:
即弹出该库
➢ 在该图中的每一个图标都是一 个信号模块,这些模块均可拷 贝到用户的模型窗里。用户可 以在模型窗里根据自己的需要 对模块的参数进行设置(但不 可在模块库里进行模块的参数 设置).
[说明] ➢ 上述参数中,若省略timespan,option,ut则由框图模型的
对话框Simulation Parameters设置仿真参数。
back
8.3.2 仿真参数设置
1、仿真参数对话框 点击Simullink模型窗simulation菜单下的Parameters命令,弹出 仿真参数对话框如右图所示。用得较多的主要是Solver页和 Workspace I/O页。
5、Sources(输入源模块) sources.mdl P266
Constant:常数信号。 Clock:时钟信号。 From Workspace:来自MATLAB的工作空间。 From File(.mat):来自数据文件。 Pulse Generator:脉冲发生器。 Repeating Sequence:重复信号。 Signal Generator:信号发生器,可以产生正弦、方波、锯齿 波及随意波。 Sine Wave:正弦波信号。 Step:阶跃波信号。
连接线生成是将鼠标置于某模块的输出端口(显一 个十字光标) ,按下鼠标左键拖动鼠标至另一模块 的输入端口即可。 分支线则是将鼠标置于分支点, 按下鼠标右键,其余同上。
连接线(左键)
分支线(右键)
8.2 Simulink的基本模块
SIMILINK模块库按功能进行分类,包括以下8类子库: Continuous(连续模块) Discrete(离散模块) Function&Tables(函数和平台模块) Math(数学模块) Nonlinear(非线性模块) Signals&Systems(信号和系统模块) Sinks(显示模块) Sources(输入源模块)
示波器属性对话框Data history页
【例8-1】示波器应用示例。Simulink仿真模型如左图所示,示波器输 入为3(Y轴个数为3)。右图为该示波器显示的三路输入信号的波形.
Signals & Systems 库
:信号分路器 。
将混路器输出的信号依照原来的构成方法分解 成多路信号。
:信号汇总器
② Workspace I/O页
这个页面的作用是定义将仿真结果输出到工作空间,以及从工作 空间得到输入和初始状态。
1、 Math(数学模块)
Sum:加减运算 Product:乘运算 Dot Product:点乘运算 Gain:比例运算 Math Function:包括指数函数、对数函数、求平方、开根号 等常用数学函数
Trigonometric Function:三角函数,包括正弦、余弦、正切 等
MinMax:最值运算 Abs:取绝对值 Sign:符号函数
按钮。 (3)在MATLAB命令窗口File菜单中选择New菜单项下的Model命令。
2. Simulink的退出 为了退出Simulink,只要关闭所有模型窗口和Simulink模块库窗 口即可。
8.1.2 Simulink窗口 1.simulink库浏览器窗口 2.simulink模型构建窗口
➢ 示波器属性对话框
设置Y轴个数 设置显示的时间范围
选择轴的标注方法
确定显示频度(每隔n-1个 数据点显示一次) 确定显示点的时间间隔(缺 省为0表示连续显示)
示波器属性对话框General页
➢ 示波器属性对话框
设定缓冲区接受 数据的长度,勾选 为缺省状态,其值 为5000
确定示波器数据 是否保存到 MATLAB 工 作 空 间。若勾选则为 保存,且需确定 变量名和保存格 式(缺省时,不被 勾选)
① Solver页
➢ Simulation time(仿真时间): 设置Start time(仿真开始 时间)和Stop time(仿真终止时间)可通过页内编辑框 内输入相应数值,单位“秒”。另外,用户还可以利用Si nks库中的Stop模块来强行中止仿真。
① Solver页 ➢ Solver options(仿真算法选择): 分为定步长算法和变步
Real-Imag to Complex:由实部和虚部输入合成复数输出
2、Signal Routing(信号通路模块)
Mux:将多个单一输入转化为一个复合输出。 Demux:将一个复合输入转化为多个单一输出。 3、Ports&Subsystems(端口与子系统) SubSystem:建立新的封装(Mask)功能模块
将多路信号依照向量的形式混合成一路信号。
(a)
(b)
8.3 系统仿真运行
1. Simulink模型窗口下仿真 步骤 ① 打开Simulink仿真模型窗口,或打开指定的.mdl文件; ② 设置仿真参数:在模型窗口选取菜单【Simulation: Parameters】,弹出 “Simulation Parameters” 对话框, 设置仿真参数,然后按【OK】即可;
SubSystem Examples: 子系统实例
4、Sinks(显示模块或接收器模块) sinks.mdl
Scope:示波器。
XY Graph:显示二维图形。
To Workspace:将输出写入MATLAB的工作空 间。
To File(.mat):将输出写入数据文件。
Ground:连接到没有连接到的输入端。 Terminator:连接到没有连接到的输出端。
参数对话框中设置每个坐标的变
化范围),当X、Y分别为正、余
弦信号时,其显示图形如下:
示波器:显示在仿真过程产生的信号波形。双 击该图标,弹出示波器窗如右图所示:
打开示波器 属性对话框
分别管理X-Y、 X和Y轴向变焦
取当前窗中信号 最大、最小值为
纵坐标的上下限
设置为浮动示 波器
把当前轴的设置 保存为该示波器 的缺省设置
图9-16 变步长算法
① Solver页 ➢ Error Tolerance(误差限度): 算法的误差是指当前状
态值与当前状态估计值的差值,分为Relative tolerance (相对限度)和Absolute tolerance(绝对限度),通常 可选auto。
➢ Output options(输出选择 项):有Refine output(细 化输出)、Produce additi onal output(产生附加输 出)、Produce specified o utput only(只产生指定 输出)。
① Sine Wave:产生幅值、频率可设置的正弦波信号。 ➢ 双击图标 (认定该模块已拷贝到用户模型窗, 以下均如此),弹出正弦波的参数设置框图。图中参 数为Simulink默认值,用户可根据需要对这些参数 重新设置。
➢ 幅值、频率为2,基准为 0.5,其波形如下图所示:
② Step:产生幅值、阶跃时间可设置的阶跃信号。
➢ 双击图标
,弹出阶跃信号的参数设置框图。图中参数为
Simulink默认值。
➢ 当设置幅值为0.8,阶跃时间 为1秒时,阶跃波形如下图 所示:
2 Sinks 库
该库包含了显示和写模块输出的 模块。双击 即弹出该库的模 块图:
①
:数字表,显示指定模
块的输出数值。
②
:X-Y绘图仪用同一图形窗
口,显示X-Y坐标的图形(需先在
所谓模型化图形输入是指SIMULINK提供了一些按功 能分类的基本的系统模块,用户只需要知道这些模块 的输入输出及模块的功能,而不必考察模块内部是如 何实现的,通过对这些基本模块的调用,再将它们连 接起来就可以构成所需要的系统模型(以.mdl文件进 行存取),进而进行仿真与分析。
利用Simulink进行系统仿真的步骤是
Logical Operator:逻辑运算
Relational Operator:关系运算
Complex to Magnitude-Angle:由复数输入转为幅值和相角 输出
Magnitude-Angle to Complex:由幅值和相角输入合成复数 输出
Complex to Real-Imag:由复数输入转为实部和虚部输出