已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第三章仿真工具SIMULINK SIMULINK是用来进行动态系统建模 仿真和分析的软件包 3 1SIMULINK概述 SIMULINK为用户提供了用方框图进行系统建模的窗口 它有着丰富的模块库 在做仿真时 用户只需利用鼠标的点击与拖曳功能 将模块库中的各种标准模块复制到SIMULINK的模型窗口中 就可以轻而易举在完成模型的创建 在SIMULINK环境中 用户可以在仿真进程中改变感兴趣的参数 实时地观察系统行为的变化 它还有Scop模块与其它的画图模块 在进行仿真的同时 就可以观看到仿真结果 与传统的仿真软件采用微分方程或者差分方程建模相比 它具有更直观形象 更简单方便与更灵活的优点 2 启动与退出 在MATLAB命令窗口中输入 simulink 命令然后回车 选择工具栏中的选项即可进入simulink模块库浏览器 直接从MATLAB命令窗口中选取 File Edit Model 也可进入SIMULINK仿真环境 模型完成后 利用Save或Saveas命令将模型文件存盘 扩展名为 mdl 后即可 退出simulink 只要关闭所有模型编辑窗口和模块浏览器即可 3 6 2SIMULINK模块库浏览器 一 模块库浏览器界面 SIMULINK模块库浏览器界面可分为5部分 菜单栏区 其主菜单有 文件 File 编辑 Edit 查看 View 帮助 Help 等4项 File 含New 新建模型或者库 open 打开 Close 关闭 和Preferences 属性设置 4项 Edit 含Addtothecurrentmodel 添加到当前模型 Find 查找 和Findnext 查找下一个 3项 View 由toolbar 工具栏 statusbar 状态栏 description 文字说明栏 stayontop 将浏览器放在桌面最上层 View collapseentirebrowser 模块库压缩显示 expandentirebrowser 模块库展开显示 Largeicons 大图标 Smallicons 小图标 Showparametersforselection 显示所选模块的参数 Help 帮助 4 工具栏区 含4个按钮 是新建与打开按钮 是将模块放在桌面最上层按钮 Find是用来查找模块库中的模块按钮 文字说明区 对所选模块的文字说明 模块库区 含模块库及其相应的模块组 状态栏区 即最下方显示Ready区 用来显示浏览器状态 5 二 基本模块库的分类及其用途 SIMULINK有13类基本模块库 分别为 Continuous 连续模块组 Discontinuities 非连续模块组 Discrete 离散模块组 Look UpTables 表格模块组 MathOperations 数学运算模块组 ModelVerification 模型检验模块组 Model WideUtilities 公用模块组 Ports Subsystems 端口与子系统模块组 SignalAttributes 信号属性模块组 SignalRouting 信号传输选择模块组 Sinks 输出模块组 Sources 信号源模块组 User DefinedFunctions 用户定义函数模块组 等 6 包含7个基本模块 分为连续时间线性系统与连续时间延迟两种 子模块组的名称和用途见表3 1 1 Continuous 连续模块组 7 表3 1连续模块组子模块的名称及用途 8 包含25个基本模块 包括数学运算 向量运算 复数与向量间的转换运算4种 其子模块组的名称和用途见表3 2 2 MathOperations 数学运算模块组 9 表3 3数学运算模块组子模块的名称及用途 10 表3 3续数学运算模块组子模块的名称及用途 11 表3 3续数学运算模块组子模块的名称及用途 12 共有15个基本模块 包括信号传输与信号存储 访问两种 其子模块组的名称和用途见表3 3 3 SignalRouting 信号传输选择模块组 13 表3 3信号传输选择模块组子模块的名称及用途 14 表3 3续信号传输选择模块组子模块的名称及用途 15 共有9个基本模块 包括模型及子系统输出 数据观察器与仿真控制3种 其子模块组的名称和用途见表3 3 4 Sinks 输出模块组 及其用途 16 表3 4输出模块组子模块的名称及用途 17 18个基本模块 包括模型及子系统输入与信号发生器两种 其子模块组的名称和用途见表3 5 5 Sources 信号源模块组 及其用途 18 表3 5信号源模块组子模块的名称及用途 19 表3 5续信号源模块组子模块的名称及用途 20 三 部分专业模块库简介 Mathworks公司还提供了一系列与SIMULINK一起使用的专业模块库 主要有 ControlSystemToolbox 控制系统工具箱 CommunicationsBlockset 通信系统仿真模块 DSPBlockset 数字信号处理工具箱 FuzzyLogicToolbox 模糊逻辑控制工具箱 NeuralNetworkBlockset 神经网络工具箱 SimulinkExtras 补充Simulink公共模块库 Stateflow 用来对复杂的事件驱动系统进行建模和仿真 Real TimeWorkshop 简称RTW 可以直接将simulink模型框图和Stateflow的状态图转换成高效优化的程序代码 21 6 3用SIMULINK建立系统模型 建立简单模型的步骤 建立模型窗口 将功能模块从模块库中复制到模型窗口 对模块进行连接 构成所需要的系统模型 SIMULINK模型在视觉上表现为直观的方框图 在文件上则是扩展名为mdl的ASCII代码 在数学上表现为微分方程或差分方程 在行为上则模拟了实际系统的动态特性 22 一 模块的复制 移动与删除 模块的复制包括两种 一是从模块库中将标准模块复制到模型窗口中 另一种是在模型窗口中将模型再复制 1 模块的复制 从模块库中复制标准模块 从模块库中选中所需模块 按住鼠标左键不放 将模块拖至模型窗口再松开鼠标左键则完成了复制 在模型窗口中再复制有3种方法 选中待复制模块 运行 Edit Copy 然后将光标移至将要粘贴的地方 再运行 Edit Paste 就完成复制 或者选中待复制模块 直接用Ctrl C然后再Ctrl V也可以 用鼠标选取待复制模块后 按住 Ctrl 键不放 把该模块拖至目标位置后 松开左键即完成复制 用鼠标选取待复制模块后 按住鼠标右键不放 把该模块拖至目标位置后 松开右键即完成复制 23 将光标置于待移动的模块图标上 按住鼠标左键不放 把该模块拖至目标位置后 松开左键就完成了移动 2 模块的移动 选中模块 按Delete键就可删除或点击鼠标右键 选择Cut也可对模块进行剪切 3 模块的删除 用鼠标选择模块图标 再将鼠标移到模块对象四周的控制小块处 当鼠标指针变成指向四周的小箭头时 按住鼠标左键不放 拖至合适大小即可 四 模块外形调整 1 改变模块对象大小 24 在Simulink中 模块输入端口位于模块左侧 输出端口位于模块右侧 但有时需要对其方向进行改变 方法是 用鼠标选中模块对象 利用 Format FlipBlock 快捷键Ctrl I 可将模块顺时针旋转180 或者利用 Format RotateBlock 快捷键Ctrl R 或将模块顺时针旋转90 2 改变模块对象的方向 Format菜单中的 ForegroundColor 命令可以改变模块的前景颜色 BackgroundColor 命令可以改变模块的背景颜色 而模型窗口的颜色可以通过 ScreenColor 命令来改变 此外 还可以选择 Format Showdropshadow 为模块生成阴影等 3 颜色设定 25 将构成一个系统的所有环节模块复制到模型窗口后 还必须将所有的模块图标用信号线连接起来才能够描述一个控制系统的系统模型 五 模块的连接 信号线具有连接功能模块的作用 连接两个模块时 用鼠标左键选取模块 点击该输入或输出端口 看到光标变成十字形后 拖曳十字图形符号到另个一个端口 鼠标指针将变成双十字形 然后松开鼠标左键 一根最简单的信号线就将两模块连接起来了 连线的箭头表示信号的流向 26 为了对动态系统进行正确的仿真与分析 必须设置正确的系统模块参数与系统仿真参数 模块的内部参数设置时只需在模型窗口中 双击待修改参数模块的图标 就可以打开标准功能模块内部参数设置对话框 然后改变对话框中相关栏目的数据便可 六 模块内部参数修改 当系统中各模块的参数设置完毕后 可设置合适的系统仿真参数以进行动态系统的仿真 27 欲建立此简单系统的模型 需要如下的系统模块 信号源模块组Sources中的SineWave模块 产生一个正弦波信号 数学运算模块组MathOperations中的Gain模块 将信号乘上一个常数 即信号增益 输出模块组Sinks中的Scope模块 图形方式显示结果 28 对系统中各模块参数以及系统仿真参数进行正确设置之后 单击系统模型编辑器上的Play图标 黑色三角 或选择Simulation菜单下的Start便可以对系统进行仿真分析 仿真结束后双击Scope模块以显示系统仿真的输出结果 运行仿真 29 30 创建一个新的模型窗口 从信号源模块组 数学运算模块组 连续模块组和输出模块组库中分别找出所需要的阶跃信号模块 求和器模块 线性传递函数模块和示波器模块 分别复制到模型窗口中 将各模块按要所需构建的模型连接起来 修改模块名称 加上信号线标注 模型标注等 按要求重新设置各模块内部参数 存盘 31 阶跃信号模块的参数对话框设置中有4个项 Steptime 为阶跃信号产生的时间 Initialvalue 为阶跃信号初始值 Finalvalue 为阶跃信号终了值 Sampletime 为采样时间 传递函数模块参数设置对话框中 Numerator 栏是传递函数分子多项式系数向量 Denominator 栏是传递函数分母多项式系数向量 注意 当多项式缺项时 必须将对应系数的 0 输入 不能遗漏 32 图6 28二阶系统单位阶跃响应仿真结果 33 例6 3 34 6 4仿真参数设置 在对系统模型中各个模块进行合适的参数设置之后 需要对系统仿真参数进行必要的设置以开始仿真 在模型窗口中选择 Simulation 菜单下的 Simulationparameters 就会出现一个对话框 仿真参数设置共有5个选项 分别是Solver WorkspaceI O Diagnostics Advanced和RTW 35 Solver中包含3部分设置 Simulationtime 仿真时间 Solveroptions 仿真器选项 和Outputoptions 输出选项设置 1 Solver选项及其设置 Simulationtime 仿真时间 包括仿真起始时间和停止时间 它们的差即代表仿真时间 在缺省情况下 Simulink默认的仿真起始时间为0s 仿真结束时间为10s Solveroptions 仿真器选项 Type项用来选择变步长或固定步长仿真器 右栏用于选择仿真器的算法 固定步长仿真器在仿真过程中 其步长是不变的 变步长解法可以在仿真过程中根据要求调整运算步长 在采用变步长解法时 应先指定一个容许误差限 在Relativetolerance和Absolutetolerance中设置 使得当误差超过误差限时自动修正仿真步长 36 Relativetolerance 相对误差限 是规定了每个状态相对于步长的误差大小 用百分比来表示一个状态值 默认值是1e 3 即状态的计算值要精确到0 1 Absolutetolerance 绝对误差限 是一个阈误差值 当测量的状态值接近零时 代表可接受误差 如果将其设定为auto 则将每个状态的初始绝对误差限设置在1e 6 Maxstepsize用于设置最大步长 在默认情况下为 auto 并按下式计算步长 最大步长 终止时间 起始时间 50 但这样的取法对于仿真时间较长的系统则可能带来取样点过于稀疏 而使仿真结果失真 一般建议对于仿真时间不超过15s的采用默认值即可 对于超过15s的每秒至少保证5个采样点 对于超过100s的 每秒至少保证3个采样点 最大步长的选取直接关系到系统仿真结果的准确性 37 Outputoptions 输出选项设置 包括Refineoutput 细化输出 Produceadditionaloutput 产生附加输出 和Producespecifiedoutputonly 只产生指定输出 3项 Refineoutput 细化输出 可以根据仿真的步长除了在采样点输出值外 在曲线稀疏处自动增加输出点 以细化曲线 使曲线更加平滑 从而保证系统不失真 如果细化系数定为2 则在每段时间步长的中间插入一个平滑数据 如果是3 则会在每段时间步长的1 3 2 3位置上各插入一个数据 细化因子越大 细化程度越高 曲线越平滑 从而曲线的失真度越小 用户可以在refinefactor设置仿真时间区间插入的输出点数 产生更光滑的输出曲线 改变精细因子比减小仿真步长更有效 细化输出只能在变步长模式中才能使用 并且在ode45效果最好 38 Produceadditionaloutput 产生附加输出 允许用户直接指定产生输出的点 一旦选择了该项 它的右边会出现一个输出时间编辑框 用户可以指定额外的仿真输出点 既可以是一个时间向量也可以是表达式 这个选项会改变仿真的步长以使其和指定的附加输出时间一致 Producespecifiedoutputonly 只产生指定输出 只在指定的时间点上产生输出 这种方式改变仿真步长经使时间步长与指定输出时刻一致 在比较不同的仿真时 要确保在同一个时刻产生输出 就要采用这种方式 39 主要设置SIMULINK与MATLAB工作空间交换数据的有关选项 2 WorkspaceI O选项及其设置 Loadfromworkspace 从工作空间读取数据 用来设置从MATLAB工作空间获取变量的性质 可以从工作空间获取时间和输入变量 虽然Simulink提供了多种系统输入信号 但并不能完全满足需要 Simulink允许使用用户自定义的信号作为系统输入信号 一般地 时间变量定义为t 输入变量定义为u 在Loadformworkspace框中 用户可以设置Matlab中的变量作为系统输入信号或系统状态初始值 如下所述 1 Input 用来设置系统输入信号 其格式为 t u 其中t u均为列向量 t为输入信号的时间向量 u为相应时刻的信号取值 可以使用多个信号输入 如 t u1 u2 输入信号与Simulink的接口由Inport模块 In1模块 实现 40 Savetoworkspace 将数据写入工作空间 用来设置往MATLAB工作空间写入的变量类型和变量名 选中变量类型前的复选框使相应的变量有效 包括输出时间变量 Time 输出系统模型中所有的状态变量 States 输出系统模型中所有由Outport模块 即Out1模块 表示的信号 output 和输出系统模型中的最终状态变量取值 即最后仿真时刻处的状态值 Finalstate Saveoption 存储选项 用来设置载入的保存状态的有关选项 Limitdatapointstolast 用来设定存往MATLAB工作空间变量的规模 对于向量而言即其维数 对于矩阵而言即其秩 Decimation用来设置存往MATLAB工作空间的变量的频度 1为默认值 表示每点都传送 建议一般不要改动此项设置 Format用来选择数据格式 2 xInitialstate 用来设置系统状态变量初始值 初始值xInitial可为行向量 注意 使用xInitialstate所设置状态变量初始值会自动覆盖系统模块中的设置 另外 输入信号与状态变量需要按照系统模型中Inport模块 即In1模块 的顺序进行正确设置 41 主要用于设置仿真过程中对编译与调试异常的错误处理方式 相当于C语言中的编译设置 3 Diagnostics选项及其设置 Simulationoption Consistencychecking 一致性检验 是个调试工具 用于设置一致性检验错误的处理方法 该错误主要和S函数有关 会导致系统性能严重降低 降到40 因此通常都关闭该项 以免影响仿真速度 即选择 none Boundchecking 边界检验 用来检验在仿真过程中模块是否把数据写出了分配的内存 如果激活了该项 在每次仿真模块时对每个模块都执行该检验 会大大降低执行性能 因此 为了避免不必要的性能降低 最好在用户确定模型中包含有编写错误的S函数时才激活该检验 Configurationoptions SIMULINK提供了几类异常事件 仅对这几类异常事件进行处理 42 6 5仿真结果的观察 控制系统仿真后 观察输出信号的方法大致有3种 将仿真结果输入到输出模块组Sinks中的 Scope示波器 Display 数学显示器中查看图形或者数据 将仿真结果信息返回到MATLAB命令窗口里 再利用绘图命令绘制出图形 将仿真结果信息输入到 ToWorkspace 模块中 再用绘图命令在MATLAB窗口里绘制出图形 43 Scope模块是观察仿真结果的主要工具 Scope模块可以有多个显示坐标 每个端口一个 所有坐标有共同的时间坐标和各自独立的y坐标 当用户启动仿真时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公务员面试即兴面试题及答案
- 公务员考试双缝干涉实验试题及答案
- 公务员考试试卷试题及答案
- 云南税务遴选题库及答案
- 2025年襄阳市襄城区总工会公开招聘工会协理员1人参考题库含答案详解(精练)
- 2026年江苏省泰州市单招职业适应性考试题库完美版
- 2026年山东职业学院单招职业技能测试必刷测试卷及答案1套
- 2025年河南省省直及部分省辖市事业单位招聘考试真题试卷 公共基础知识及答案详解(典优)
- 2025广西桂林市卫生健康委员会直属事业单位直接考核招聘高层次专业技术人员63人参考题库及答案详解(新)
- 2026年苏州百年职业学院中单招综合素质考试题库完美版
- 小学生乘坐电梯安全课件
- 河南省郑州市行知中学、一八联合国际学校、南塘中学等联考2024-2025学年九年级上学期期中物理试卷
- 水利工程施工监理规范(SL288-2014)用表填表说明及示例
- 形势与政策补考2-国开(XJ)-参考资料
- 巨人通力电梯NOVA GKE调试说明书故障代码GPN15 GVN15-GKE - 51668093D01-2022
- 2024建筑施工拉杆式悬挑脚手架安全技术规程
- YYT 0631-2008 牙科材料 色稳定性的测定
- 学校运动队组建方案(2篇)
- GB/T 25849-2024移动式升降工作平台设计、计算、安全要求和试验方法
- 中考数学《圆的综合》综合检测试卷及答案解析
- 农业生态与环境保护教案
评论
0/150
提交评论