文档详情

simulink仿真环境

第***
实名认证
店铺
PPT
435KB
约27页
文档ID:49288408
simulink仿真环境_第1页
1/27

Simulink仿真环境 Simulink是一个以MATLAB为基础的软件包,用于对动态 系统进行建模和仿真学习目标】 ● 熟悉Simulink的操作环境 ● 掌握绘制系统模型的方法 ● 掌握子系统模块的建立与封装技术 ● 了解S函数的功能与设计方法初识Simulink—— 一个简单的仿真实例在MATLAB的命令窗口输入Simulink,或单击MATLAB主窗 口工具栏上的“Simulink”命令按钮即可启动Simulink Simulink启动后会显示如图所示的Simulink模块库浏览器 (Simulink Library Browser)窗口1.模型元素 一个典型的Simulinnk模型包括以下3种元素 ● 信号源(Source) ● 被模拟的系统模块 ● 信号输出(Sink)2.仿真步骤 (1)建立系统仿真模型,包括添加模块、设置模块参数、 进行模块连接等操作 (2)设置仿真参数 (3)启动仿真并分析仿真结果3.仿真实例 利用Simulink仿真曲线 正弦信号由信号源模块库(Sources)中的Sine Wave模块 提供,求和用数学运算模块库(Math Operations)中的 数学函数模块(Add)产生,再用信号输出模块库(Sinks )中的示波器模块(Scope)输出波形 (1)打开一个名为untitled的模型编辑窗口 (2)将所需模块添加到模型中。

(3)用连线将各个模块连接起来组成系统仿真模型 (4)设置模块参数并连接各个模块组成仿真模型模型建好后,将模型以模型文件的格式( 扩展名为.mdl)存盘5)设置系统仿真参数6)仿真操作 仿真模型的建立Simulink的基本模块 模块是构成系统仿真模型的基本单元构建系统仿真模型主 要涉及Simulink模块的操作 • 基本模块库 • 专业模块库模块操作 1.添加与删除模块 2.选取模块 3.复制模块 4.模块外形的调整 5.模块名的处理模块的连接 1.连接两个模块 2.模块间连线的调整 3.连线的分支 4.标注连线系统的仿真与分析模块的参数和属性设置 1.模块的参数设置 2.模块的属性设置 ① Description:对该模块在模型中的用法进行说明 ② Priority:规定该模块在模型中相对于其他模块执行的优先 顺序 ③ Tag:用户为模块添加的文本格式的标记 “Block Annotation”选项卡中指定在该模块的图标下显示模块 的哪个参数Callbacks”选项卡中指定当对该模块实施某 种操作时需要执行的MATLAB命令或程序设置仿真参数 打开系统仿真模型,从模型编辑窗口的“Simulation”菜单中选择 “Configuration Parameters”命令,打开一个仿真参数对话框,在其中 可以设置仿真参数。

在此对话框中,仿真参数设置被分为8类 ● Solver类:用于设置仿真起始和停止时间,选择微分方程求解算法并 为其规定参数,以及选择某些输出选项 ● Data Import/Export类:用于管理工作空间数据的导入和导出 ● Optimization类:用于设置仿真优化模式 ● Diagnostics类:用于设置在仿真过程中出现各类错误时发出警告的等 级 ● Hardware Implementation类:用于设置实现仿真的硬件 ● Model Referencing类:用于设置参考模型 ● Simulation Target类:用于设置仿真模型目标 ● HDL Coder类:用于设置通过自动代码生成技术将设计算法生成HDL 代码的方法1.Solver类设置 (1)设置仿真起始和停止时间(Simulink time) (2)仿真算法的选择(Solver options) 在“Type”编辑框中设定算法类别:固定步长(Fixed-step)和 变步长(Variable-step)算法,在“Solver”编辑框中选择具 体算法2.Data Import/Export类设置 ① 矩阵形式。

MATLAB把矩阵的第一列默认为时间向量,后 面的每一列对应每一个输入端口,矩阵的第一行表示某一 时刻各输入端口的输入状态另外,也可以把矩阵分开来 表示,即MATLAB默认的表示方法[t,u],其中t是一维时 间列向量,表示仿真时间,u是和t长度相等的n维列向量 (n表示输入端口的数量),表示状态值例如,在命令 窗口中定义t和u: t=(0:0.1:10)'; u=[sin(t),cos(t).*sin(t),exp(-2*t).*sin(t)];② 包含时间数据的结构形式结构变量包含若干个成员,对 结构成员的引用格式为:结构变量名.成员名在结构中 必须有成员:time和signals在time成员中包含一个列向 量,表示仿真时间;在signals成员中包含一个数组,数组 中的每个元素对应一个输入端口,并且每个元素必须包含 一个名字同样不能改变的values成员,values成员也包含 一个列向量,对应于输入端口的输入数据例如,对于上 例,若改为包含数据的结构输入,则命令格式如下: t=(0:0.1:10)'; A.time=t; A.signals(1).values=sin(t); A.signals(2).values=cos(t).*sin(t); A.signals(3).values=exp(-2*t).*sin(t); (2)保存到工作空间(Save to workspace) 在Save to workspace栏中,可以选择的选项有:Time(时 钟)、States(状态)、Output(输出端口)、Final state(最终状态)和Signal logging(信号)。

同载入数 据的形式一样,保存数据也有矩阵、结构和包含时间数据 的结构3种形式 (3)保存选项(Save options) 在保存选项栏中的“Format”下拉列表中有矩阵、结构和包含 时间的结构3种选择Limit data points to last”用来限定 保存到工作空间中的数据的最大长度 输出选项(Output options)有: ① Refine output(细化输出) ② Produce additional output(产生附加输出) ③ Produce specified output only(仅在指定的时刻产生输 出)仿真结果分析 为了观察仿真结果的变化轨迹可以采用3种方法 (1)把输出结果送给Scope模块或者XY Graph模块 Scope模块显示系统输出量对于仿真时间的变化曲线,XY Graph模块显示送到该模块上的两个信号中的一个对另一 个的变化关系 (2)把仿真结果送到输出端口并作为返回变量,然后使用 MATLAB命令画出该变量的变化曲线 (3)把输出结果送到To Workspace模块,从而将结果直接 存入工作空间,然后用MATLAB命令画出该变量的变化曲 线。

例】利用Simulink仿真求I = 首先打开一个模型编辑窗口,将所需模块添加到模型中 设置模块参数并连接各个模块组成仿真模型设置系统仿真停止时间为2s单击模型编辑窗口中的Start simulation按钮或选择模型编辑窗口Simulation菜单中的Start 命令开始系统仿真系统仿真结束后,显示模块Display,显 示仿真结果为4系统仿真实例 【例】有初始状态为0的二阶微分方程y“ + 1.5y' + 10y = 2u'(t) + 10u(t), 其中u(t)是单位阶跃函数,试建立系统模型并仿真 方法1:用微分/积分器直接构造求解微分方程的模型 把原微分方程改写为 y“ = 2u' (t) + 10u(t) − 1.5y' − 10y u经微分作用得u',y“经积分作用得y',y'再经积分模块作用就得y,而u' 、u、y'和y经代数运算又产生y“,据此可以建立系统模型并仿真 (1)利用Simulink模块库中的基本模块建立系统模型(2)设置系统仿真参数 在模型编辑窗口的 Simulation stop time栏把仿 真的停止时间设置为5 (3)仿真操作子系统与封装子系统把功能上有关的一些模块集中到一起保存,能够完成 几个模块的功能。

子系统的建立 1.通过Subsystem模块建立子系统 新建一个仿真模型,打开Simulink模块库中的Ports & Subsystems模块库,将Subsystem模块添加到模型编辑 窗口中双击Subsystem模块打开一个Subsystem窗口, 窗口中已经自动添加了一个输入模块和输出模块(表示子 系统的输入端口和输出端口)将要组合的模块插入到输 入模块和输出模块中间,一个子系统就建好了若双击该 Subsystem模块,则打开原来的子系统内部结构窗口 2.通过已有的模块建立子系统 先选择要建立子系统的模块,不包括输入端口和输出端口 选择模型编辑窗口Edit菜单中的Create Subsystem命令, 这样,子系统就建好了,原来的模块变为子系统的图标先建立PID控制器的模型选中模型中所有模块,使用模型编辑窗口Edit菜单中的Create Subsystem命令建立子系统,模型将被一个Subsystem模块取代子系统的封装 所谓子系统的封装(Masking),就是为子系统定制对话框 和图标,使子系统本身有一个独立的操作界面,把子系统 中的各模块的参数对话框合成一个参数设置对话框,在使 用时不必打开每个模块进行参数设置。

选中所要封装的子系统,再选择模型编辑窗口Edit菜单中的 “Mask Subsystem”命令,这时将出现封装编辑器(Mask Editor)对话框 1.Icon选项卡的参数设置 主要设置封装模块的图标 (1)“Drawing commands”编辑框 该编辑框主要用来建立封装图标,并且可以在封装图标中显示文本、图 形、图像或传递函数 ① 显示文本在封装图标中显示文本的函数有4个:disp、text、fprintf 和port_ lable ② 显示传递函数在图标中显示传递函数使用dpoly函数,显示零极点模 型的传递函数使用droots函数 (2)设置封装图标特性 在Drawing commands编辑框左边的下拉式列表中,可以分 别对图标的各种特性进行设置 ① Frame设置图标的边框 ② Transparency设置图标的透明度 ③ Rotation设置图标是否跟模块一起翻转 ④ Units设置在“Drawing commands”编辑框中使用命令“plot” 和“text”时的坐标系2.Parameters选项卡的参数设置 Parameters选项卡主要用来确定被封装子系统的内部变量和 对话框中输入量之间的联系。

“Prompt”和“Variable”编辑框分别用来指定用户需要设置的变 量提示符和变量名 “Type”下拉式列表框用于指定控件类型,即控制封装后的子 系统参数设置对话框所提供的设置参数的方式,提供的控 件类型有“Edit”、“Checkbox”和“Popup” 3.Initialization选项卡的参数设置 Initialization 选项卡用于设置初始化命令初始化命令的设置在对话框左 边的“Initialization commands”编辑框内进行初始化命令主要用来定 义封装子系统的变量 初始化的命令由MATLAB中的表达式组成,其中包括MATLAB函数、操 作符和封装子系统工作区中定义的变量 对于封装工作区定义的变量,通过初始化命令和模块的参数相联系,也 就是说模块的参数在获取数据时,先读取封装工作区的变量值,再通 过初始化命令来取值 4.Documentation选项卡的参数设置 Documentation选项卡用于设置封装类型、描述文本和帮助文本 “Mask type”编。

下载提示
相似文档
正为您匹配相似的精品文档
相关文档