MatlabchSmulink动态仿真集成环境.ppt_第1页
MatlabchSmulink动态仿真集成环境.ppt_第2页
MatlabchSmulink动态仿真集成环境.ppt_第3页
MatlabchSmulink动态仿真集成环境.ppt_第4页
MatlabchSmulink动态仿真集成环境.ppt_第5页
免费预览已结束,剩余103页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2020 3 25 1 109 Smulink动态仿真集成环境 本章主要内容如下 6 1Simulink基本操作6 2模块库和系统仿真6 3子系统创建与封装6 4Simulink仿真举例 2020 3 25 2 109 Smulink动态仿真集成环境 Simulink中的 Simu 一词表示可用于计算机仿真 而 Link 一词表示它能进行系统连接 即把一系列模块连接起来 构成复杂的系统模型 作为MATLAB的一个重要组成部分 Simulink由于它所具有的上述的两大功能和特色 以及所提供的可视化仿真环境 快捷简便的操作方法 而使其成为目前最受欢迎的仿真软件 本章主要介绍Simulink的基本功能和基本操作方法 并通过举例介绍如何利用Simulink进行系统建模和仿真 2020 3 25 3 109 Smulink动态仿真集成环境 6 1Simulink基本操作利用Simulink进行系统仿真的步骤是 启动Simulink 打开Simulink模块库打开空白模型窗口 建立Smulink仿真模型 设置仿真参数 进行仿真 输出仿真结果 2020 3 25 4 109 6 1Simulink基本操作 2 可以通过单击MATLAB主窗口工具条上的Simulink图标打开 6 1 1Simulink启动1 在MATLAB命令窗口中输入simulink 2020 3 25 5 109 3 在MATLAB命令窗口中输入simulink3桌面上出现一个用图标形式显示的Library simulink3的Simulink模块库窗口 2020 3 25 6 109 4 可以通过单击MATLAB主窗口菜单选择File New Model 弹出一个Untitled的Simulink模型窗口 再选择View ShowLibraryBrowser 弹出SimulinkLibraryBrower模块库窗口 2020 3 25 7 109 6 1 1启动Simulink常用的子模块库Sources 信号源 Sink 显示输出 Continuous 线性连续系统 Discrete 线性离散系统 Function Table 函数与表格 Math 数学运算 Discontinuities 非线性 Demo 演示 2020 3 25 8 109 启动Simulink每个子模块库中包含同类型的标准模型 这些模块可直接用于建立系统的Simulink框图模型 可按以下方法打开子模块库 用鼠标左键点击某子模块库 如 Continuous Simulink浏览器右边的窗口即显示该子模块库包含的全部标准模块 2020 3 25 9 109 启动Simulink用鼠标右键点击Simulink菜单项 则弹出一菜单条 点击该菜单条即弹出该子库的标准模块窗口 如单击左图中的 Sinks 出现 Openthe Sinks Library 菜单条 单击该菜单条 则弹出右图所示的该子库的标准模块窗口 2020 3 25 10 109 6 1Simulink基本操作6 1 1启动Simulink打开空白模型窗口模型窗口用来建立系统的仿真模型 只有先创建一个空白的模型窗口 才能将模块库的相应模块复制到该窗口 通过必要的连接 建立起Simulink仿真模型 也将这种窗口称为Simulink仿真模型窗口 打开一个空白模型窗口的方法 在MATLAB主界面中选择 File New Model 菜单项 单击模块库浏览器的新建图标 选中模块库浏览器的 File New Model 菜单项 2020 3 25 11 109 6 1 2建立Simulink仿真模型打开Simulink模型窗口 Untitled 选取模块或模块组在Simulink模型或模块库窗口内 用鼠标左键单击所需模块图标 图标四角出现黑色小方点 表明该模块已经选中 模块拷贝及删除在模块库中选中模块后 按住鼠标左键不放并移动鼠标至目标模型窗口指定位置 释放鼠标即完成模块拷贝 模块的删除只需选定删除的模块 按Del键即可 2020 3 25 12 109 6 1Simulink基本操作6 1 2建立Simulink仿真模型模块调整改变模块位置 大小 改变模块方向使模块输入输出端口的方向改变 选中模块后 选取菜单Format RotateBlock 可使模块旋转900 2020 3 25 13 109 6 1 2建立Simulink仿真模型模块参数设置用鼠标双击指定模块图标 打开模块对话框 根据对话框栏目中提供的信息进行参数设置或修改 例如双击模型窗口的传递函数模块 弹出图示对话框 在对话框中分别输入分子 分母多项式的系数 点击OK键 完成该模型的设置 如右下图所示 2020 3 25 14 109 6 1 2建立Simulink仿真模型模块的连接模块之间的连接是用连接线将一个模块的输出端与另一模块的输入端连接起来 也可用分支线把一个模块的输出端与几个模块的输入端连接起来 连接线生成是将鼠标置于某模块的输出端口 显一个十字光标 按下鼠标左键拖动鼠标置另一模块的输入端口即可 分支线则是将鼠标置于分支点 按下鼠标右键 其余同上 连接线 左键 分支线 右键 2020 3 25 15 109 6 1 2建立Simulink仿真模型模块文件的取名和保存选择模型窗口菜单File Saveas后弹出一个 Saveas 对话框 填入模型文件名 按保存 s 即可 说明 模块的修改 调整 连接通常只能在仿真模型窗口中进行 不要直接对模块库中的模块进行修改或调整 2020 3 25 16 109 6 1Simulink基本操作6 1 3系统仿真运行Simulink模型窗口下仿真步骤打开Simulink仿真模型窗口 或打开指定的 mdl文件 设置仿真参数 在模型窗口选取菜单 Simulation Parameters 弹出 SimulationParameters 对话框 设置仿真参数 然后按 OK 即可 说明 若不设置仿真参数 则采用Simulink缺省设置 2020 3 25 17 109 6 1Simulink基本操作6 1 3系统仿真运行Simulink模型窗口下仿真步骤仿真运行和终止 在模型窗口选取菜单 Simulation Start 仿真开始 至设置的仿真终止时间 仿真结束 若在仿真过程中要中止仿真 可选择 Simulation Stop 菜单 也可直接点击模型窗口中的 或 启动 或停止 仿真 2020 3 25 18 109 6 1Simulink基本操作6 1 3系统仿真运行MATLAB命令窗口下的仿真运行在Matlab命令窗口下可直接运行一个已存在的Simulink模型 t x y sim model timespan option ut 其中 t为返回的仿真时间向量 x为返回的状态矩阵 y为返回的输出矩阵 model为系统Simulink模型文件名 timespan为仿真时间 option为仿真参数选择项 由simset设置 ut为选择外部产生输入 ut T u1 u2 un 说明 上述参数中 若省略timespan option ut则由框图模型的对话框SimulationParameters设置仿真参数 back 2020 3 25 19 109 6 2模块库和系统仿真6 2 1Simulink模块库Sources库也可称为信号源库 该库包含了可向仿真模型提供信号的模块 它没有输入口 但至少有一个输出口 双击图标即弹出该库的模块图 在该图中的每一个图标都是一个信号模块 这些模块均可拷贝到用户的模型窗里 用户可以在模型窗里根据自己的需要对模块的参数进行设置 但不可在模块库里进行模块的参数设置 2020 3 25 20 109 Sources库SineWave 产生幅值 频率可设置的正弦波信号 双击图标 认定该模块已拷贝到用户模型窗 以下均如此 弹出正弦波的参数设置框图 图中参数为Simulink默认值 用户可根据需要对这些参数重新设置 幅值 频率为2 基准为0 5 其波形如下图所示 2020 3 25 21 109 Sources库Step 产生幅值 阶跃时间可设置的阶跃信号 双击图标 弹出阶跃信号的参数设置框图 图中参数为Simulink默认值 当设置幅值为0 8 阶跃时间为1秒时 阶跃波形如下图所示 2020 3 25 22 109 In1 输入端口Constant 常数信号SignalGenerator 信号发生器 产生任意波形Ramp 斜坡信号SineWave 正弦波信号Step 阶跃信号RepeatingSequence 重复信号PulseGenerator 脉冲发生器Ground 搁置一个未连接的输入端口Clock 时钟信号 生成当前仿真时钟FromWorkspace 来自MATLAB的工作空间FromFile mat 来自数据文件 信号源模块 Sources 2020 3 25 23 109 6 2 1Simulink模块库Sinks库该库包含了显示和写模块输出的模块 双击即弹出该库的模块图 数字表 显示指定模块的输出数值 X Y绘图仪用同一图形窗口 显示X Y坐标的图形 需先在参数对话框中设置每个坐标的变化范围 当X Y分别为正 余弦信号时 其显示图形如下 2020 3 25 24 109 6 2 1Simulink模块库Sinks库 示波器 显示在仿真过程产生的信号波形 双击该图标 弹出示波器窗如右图所示 分别管理X Y X和Y轴向变焦 取当前窗中信号最大 最小值为纵坐标的上下限 把当前轴的设置保存为该示波器的缺省设置 打开示波器属性对话框 设置为浮动示波器 2020 3 25 25 109 Sinks库示波器属性对话框 设置Y轴个数 设置显示的时间范围 选择轴的标注方法 确定显示频度 每隔n 1个数据点显示一次 确定显示点的时间间隔 缺省为0表示连续显示 示波器属性对话框General页 2020 3 25 26 109 Sinks库示波器属性对话框 示波器属性对话框Datahistory页 设定缓冲区接受数据的长度 勾选为缺省状态 其值为5000 确定示波器数据是否保存到MATLAB工作空间 若勾选则为保存 且需确定变量名和保存格式 缺省时 不被勾选 2020 3 25 27 109 Scope 示波器 显示信号曲线 XYGraph 显示二维X Y图形 Out1 输出端口Display 数字显示模块ToWorkspace 工作空间写入模块ToFile mat 写文件模块Terminator 终止一个未连接的输出端口StopSimulation 仿真终止模块 输入信号非零 强制终止正在进行的仿真过程 Sinks 输出模块 2020 3 25 28 109 例6 1 示波器应用示例 Simulink仿真模型如左图所示 示波器输入为3 Y轴个数为3 右图为该示波器显示的三路输入信号的波形 2020 3 25 29 109 6 2 1Simulink模块库Continuous库该库包含描述连续函数的模块 双击即弹出下图 微分环节 其输出为其输入信号的微分 如下图为输入斜坡信号时微分环节的输出 2020 3 25 30 109 Continuous库 积分环节 其输出为其输入信号的积分 双击该模块 弹出积分器的参数对话框 可设置积分器的复位 积分上限和下限等 当设置为信号下跳过零复位 积分器限幅为 5时 积分器对谐波输入的输出如图所示 2020 3 25 31 109 6 2 1Simulink模块库Continuous库 分子分母为多项式形式的传递函数 双击该模块 弹出传递函数的参数对话框 设置框图中的参数后 该传递函数显示如下 2020 3 25 32 109 6 2 1Simulink模块库Continuous库 零极点增益形式的传递函数 双击该模块 弹出传递函数的参数对话框 设置框图中的参数后 该传递函数显示如下 2020 3 25 33 109 Integrator 积分器Derivative 微分器State Space 线性系统状态空间模型Transfer Fcn 线性传递函数模型Zero Pole 以零极点表示的传递函数模型Memory 存储上一时刻的状态值TransportDelay 输入信号延时一个给定时间再输出VariableTransportDelay 输入信号延时一个可变时间再输出 连续模块 Continuous 2020 3 25 34 109 6 2 1Simulink模块库Math库该库包含描述一般数学函数的模块 双击即弹出右图 该库中模块的功能就是将输入信号按照模块所描述的数学运算函数计算 并把运算结果作为输出信号输出 2020 3 25 35 109 6 2 1Simulink模块库Math库 加法器 该模块为求和装置 求和器形状 输入信号个数和符号可设置 如下边框图 若设置如框图 则模块显示为 2020 3 25 36 109 6 2 1Simulink模块库Math库 符号函数 该模块的输出为输入信号的符号 下图为对正弦信号经符号运算后的波形 2020 3 25 37 109 Math库 实现一个数学函数 下图为该函数的参数设置框 点击函数设置的下拉窗口 可选择所需要的函数 选定函数后 该模块图标将显示所选函数 如选择 Square 则模块图标变为 2020 3 25 38 109 Sum 加减运算Product 模块输入的乘除运算DotProduct 点乘运算Gain 比例运算MathFunction 包括指数函数 对数函数 求平方等常用数学函数TrigonometricFunction 三角函数 包括正弦 余弦 正切等MinMax 最小值或最大值运算 数学模块 Mathoperations 2020 3 25 39 109 Abs 取绝对值Sign 给出符号函数RoundingFunction取整函数CombinatorialLogic 组合逻辑模块LogicalOperator 逻辑运算RelationalOperator 关系运算ComplextoMagnitude Angle 由复数输入转为幅值和相角输出ComplextoReal Imag 由复数输入转为实部和虚部输出Magnitude AngletoComplex 由幅值和相角输入合成复数输出Real ImagtoComplex 由实部和虚部输入合成复数输出 2020 3 25 40 109 6 2 1Simulink模块库Signals Systems库 信号分路器 将混路器输出的信号依照原来的构成方法分解成多路信号 信号汇总器将多路信号依照向量的形式混合成一路信号 2020 3 25 41 109 9 其他模块组 CommBlockest 通信系统仿真模块集CDMABlockest CDMA模块集DSPBlockest 数字信号处理模块集DialandGaugesBlockest 表盘模块集NonlinearControlDesignBlockest 非线性系统设计模块集PowerSystemsBlockest 电力系统模块集VirtualRealityToolbox 虚拟现实工具箱一组和工具箱配套的模块集 ControlBlockest 控制系统模块集NeuralNetworkBlockest 神经网络工具箱SystemBlockest 系统辨识工具箱 6 2 1Simulink模块库其他模块组 2020 3 25 42 109 例子 构建一个对正弦波进行积分运算的模型 并显示该正弦及其积分的结果 1 打开一个新的窗口 找到相应的模块 并将它们移到模型中去 需要的模块有 输入源模块中的正弦波模块 接收器模块中的示波器模块 连续系统模块组中的积分 Integrator 模块 信号路线模块组的信号混路 Mux 模块2 连接模块 3 设置参数 运行仿真 观察示波器中的波形 4 以file name为文件名保存模型 2020 3 25 43 109 6 2 2Simulink环境下的仿真运行仿真参数对话框点击Simullink模型窗simulation菜单下的Parameters命令 弹出仿真参数对话框如右图所示 它共有5页 用得较多的主要是Solver页和WorkspaceI O页 Solver页Simulationtime 仿真时间 设置Starttime 仿真开始时间 和Stoptime 仿真终止时间 可通过页内编辑框内输入相应数值 单位 秒 另外 用户还可以利用Sinks库中的Stop模块来强行中止仿真 2020 3 25 44 109 Solver页Solveroptions 仿真算法选择 定步长算法在Fixedstepsize编辑框中指定步长或auto由计算机自动确定离散系统一般默认地选择定步长算法 在实时控制中则必须选用定步长算法 变步长算法连续系统仿真一般选择ode45 步长范围使用auto项 2020 3 25 45 109 ode45 缺省值 四 五阶龙格 库塔法 适用于大多数连续或离散系统 但不适用于刚性系统 它是单步解法器 也就是 在计算y tn 时 它仅需要最近处理时刻的结果y tn 1 一般来说 面对一个仿真问题最好是首先试试ode45 ode23 二 三阶龙格 库塔法 它在误差限要求不高和求解的问题不太难的情况下 可能会比ode45更有效 也是一个单步解法器 ode113 是一种阶数可变的解法器 它在误差容许要求严格的情况下通常比ode45有效 ode113是一种多步解法器 也就是在计算当前时刻输出时 它需要以前多个时刻的解 变步长模式解法器有 ode45 ode23 ode113 ode15s ode23s ode23t ode23tb和discrete 2020 3 25 46 109 ode15s 是一种基于数字微分公式的解法器 也是一种多步解法器 适用于刚性系统 当用户估计要解决的问题是比较困难的 或者不能使用ode45 或者即使使用效果也不好 就可以用ode15s ode23s 它是一种单步解法器 专门应用于刚性系统 在弱误差允许下的效果好于ode15s 它能解决某些ode15s所不能有效解决的stiff问题 ode23t 是梯形规则的一种自由插值实现 这种解法器适用于求解适度stiff的问题而用户又需要一个无数字振荡的解法器的情况 ode23tb 是TR BDF2的一种实现 TR BDF2是具有两个阶段的隐式龙格 库塔公式 discrtet 当Simulink检查到模型没有连续状态时使用它 2020 3 25 47 109 固定步长模式解法器有 ode5 ode4 ode3 ode2 ode1和discrete ode5 缺省值 是ode45的固定步长版本 适用于大多数连续或离散系统 不适用于刚性系统 ode4 四阶龙格 库塔法 具有一定的计算精度 ode3 固定步长的二 三阶龙格 库塔法 ode2 改进的欧拉法 ode1 欧拉法 discrete 是一个实现积分的固定步长解法器 它适合于离散无连续状态的系统 2020 3 25 48 109 Solver页ErrorTolerance 误差限度 算法的误差是指当前状态值与当前状态估计值的差值 分为Relativetolerance 相对限度 和Absolutetolerance 绝对限度 通常可选auto Outputoptions 输出选择项 Refineoutput 细化输出 Produceadditionaloutput 产生附加输出 Producespecifiedoutputonly 只产生指定输出 2020 3 25 49 109 WorkspaceI O页这个页面的作用是定义将仿真结果输出到工作空间 以及从工作空间得到输入和初始状态 Loadfromworkspace 勾选相应方框表明从工作空间获得输入或初始状态 若勾选Input 则工作空间提供输入 且为矩阵形式 输入矩阵的第一列必须是升序的时间向量 其余列分别对应不同的输入信号 t 0 0 1 10 u cos t sin t 如在指令窗中输入 且在模型窗中的模型为 2020 3 25 50 109 WorkspaceI O页这个页面的作用是定义将仿真结果输出到工作空间 以及从工作空间得到输入和初始状态 Savetoworkspace 勾选相应方框表明保存输出到MATLAB工作空间 time和output为缺省选中的 即一般运行一个仿真模型后 在MATLAB工作空间都会增加两个变量tout yout 变量名可以设置 Saveoptions 存储选项 存储数据到工作空间的格式 可选数组 构架数组 包含时间数据的构架数组 2020 3 25 51 109 Simulink中的LTIViewer在Simulink中建立的仿真模型也可直接输入到LTIViewer中进行分析 具体方法如下 在Simulink模型窗建立起仿真模型 线性系统 点击Simulink模型窗上的 Tool Linearanalysis 在弹出的界面中将输入输出接点分别复制到仿真模型的输入和输出 仿真模型的输入输出接点 2020 3 25 52 109 Simulink中的LTIViewer再次点击SIMULINK模型窗上的Tool Linearanalysis 打开LTIViewer仿真界面 点击该界面上Simulink GetLinearizedModel选项 即画出系统的阶跃响应曲线 表明SIMULINK中的仿真模型已和LTIViewer相连接 因此可利用LTIViewer对该系统进行分析 LTIViewer获取模型窗中模型 LTIViewer绘制的阶跃响应曲线 2020 3 25 53 109 Simulink中的LTIViewer如果在Simulink模型窗对已输入到LTIViewer中的模型进行了修改 应重复步骤 3 重新装入模型 并删除掉旧模型 方法是点击LTIViewer仿真界面上的 Edit Deletesystems 在弹出的对话框中 进行模型的删除 模型的删除 back 2020 3 25 54 109 6 3子系统创建与封装在建立的Simulink系统模型比较大或很复杂时 可将一些模块组合成子系统 这样可使模型得到简化 便于连线 可提高效率 便于调试 可生成层次化的模型图表 用户可采取自上而下或自下而上的设计方法 将一个创建好的子系统进行封装 也就是使子系统象一个模块一样 例如可以有自己的参数设置对话框 自己的模块图标等 这样就使子系统使用起来非常方便 2020 3 25 55 109 6 3子系统创建与封装6 3 1子系统的创建通过子系统模块来建立子系统在Simulink库浏览器 有一个子系统 Subsystems 的库模块 有的版本在Signals Systems子库里 点击该图标即可看到不同类型的子系统模块 子模块库 MATLAB6 0版 MATLAB6 5版 2020 3 25 56 109 通过子系统模块来建立子系统下面以PID控制器子系统创建 说明子系统的创建过程 将子系统库模块中的Subsystem模块复制到模型窗 如下图双击该图标即打开该子系统的编辑窗口 如右图 子系统模块复制到模型窗 原始子系统模块的内部结构型窗 2020 3 25 57 109 PID控制器子系统创建过程 将组成子系统的模块填加到子系统编辑窗口 将模块按设计要求连接 2020 3 25 58 109 PID控制器子系统创建过程 设置子系统各模块参数 可以是变量 修改in1和out1模块下面的标签 关闭子系统的编辑窗口 返回模型窗口 修改子系统的标签 PID 该PID子系统即可作为模块在构造系统模型时使用 2020 3 25 59 109 6 3子系统创建与封装6 3 1子系统的创建组合已存在的模块来建立子系统如果现有的模型已经包含了需要转化成子系统的模块 就可以通过组合这些模块的方式建立子系统 步骤如下 确定需建立Subsystem的模型 被选中的均标记有黑块 圈选欲建子系统的模块 2020 3 25 60 109 组合已存在的模块来建立子系统点击模型窗Edit菜单下的CreateSubsystem命令 则所选定的模型组合自动转化成子系统 双击该图标 可打开该子系统窗口 改写输入输出符号 关闭子系统编辑窗口 设置子系统标签 则系统模型如下图所示 2020 3 25 61 109 6 3子系统创建与封装6 3 2子系统的封装子系统可以建立自己的参数设置对话框 以避免对子系统内的每个模块分别进行参数设置 因此在子系统建立好以后 需对其进行封装 子系统封装的基本步骤如下 设置好子系统中各模块的参数变量 定义提示对话框及其特性 定义被封装子系统的描述和帮助文档 定义产生模块图标的命令 2020 3 25 62 109 6 3子系统创建与封装6 3 2子系统的封装设置子系统参数变量 将原子系统中的常数改为变量 其中饱和环节的上 下限分别设为au ab 需打开该环节的参数设置框 2020 3 25 63 109 6 3 2子系统的封装产生提示对话框选择需要封装的子系统 从模型窗口的Edit菜单选择MaskSubsystem命令 即弹出封装编辑器 2020 3 25 64 109 产生提示对话框该编辑器分为四页 MATLAB6 5版 Icon 图标 页Parameters 参数页 Initialiation 初始化 页Documentation 文档 页其中对于子系统封装最关键的是Parameters项 用于设置参数变量及其类型等 2020 3 25 65 109 6 3 2子系统的封装产生提示对话框Parameters页 Add Delete Up Down 提示符 变量名 直接输入变量名 变量的类型为数值 变量的数值可在线调节 2020 3 25 66 109 产生提示对话框假定子系统 Nonlinearsystem 的参数变量名已由封装编辑器全部输入 双击该子系统图标 即弹出如图所示子系统的参数设置框图 如图所示逐栏输入与变量所对应的参数 即完成对该子系统的参数设置 2020 3 25 67 109 6 3子系统创建与封装6 3 3条件子系统使能子系统该子系统当使能端控制信号为正时 系统处于 允许 状态 否则为 禁止 状态 使能 控制信号可以为标量 也可以为向量 当为标量信号时 只要该信号大于零 子系统就开始执行 当为向量信号时 只要其中一个信号大于零 也 使能 子系统 2020 3 25 68 109 例6 3 积分分离式PID控制器 这种PID控制器可以让控制器中的积分项在系统响应进入稳态时投入运行 以提高稳态精度 而在系统响应处于瞬态过程时 将积分项断开以改善系统动态响应质量 积分分离式PID控制器建立如图所示 使能模块的控制信号为delta与abs e 的差值 delta为一很小的正数 当偏差e的绝对值小于delta时 控制器的积分项才投入使用 从而实现了控制器中的积分项的分离控制 2020 3 25 69 109 6 3 3条件子系统触发子系统触发子系统只在触发事件发生的时刻执行 所谓触发事件也就是触发子系统的控制信号 一个触发子系统只能有一个控制信号 在Simulink中称之为触发输入 a 触发子系统模块 b 触发子系统模型 触发事件有4种类型 即上升沿触发 下降沿触发 跳变触发和回调函数触发 双击触发子系统中的触发器模块 Trigger 在弹出的对话框中可选择触发类型 2020 3 25 70 109 触发子系统应用的一个示例 触发器设为下降沿触发 正弦输入经触发控制后 成为阶梯波 如图所示 系统仅在脉冲信号的下降沿导通 并保持导通时刻的输入值至下一个脉冲下降沿 back 2020 3 25 71 109 6 4Simulink仿真举例6 4 1悬吊式起重机动力学仿真悬吊式起重机动力学方程 由 2 3 式去掉P 则有 2020 3 25 72 109 6 4 1悬吊式起重机动力学仿真悬吊式起重机动力学Simulink仿真为便于建模 将起重机动力学方程改写为 2020 3 25 73 109 悬吊式起重机动力学Simulink仿真在运行仿真模型前 须先计算出k1 k2和lmp 设mt 50kg mp 270kg l 4m c 20N m s 在MATLAB指令窗输入以下指令 l 4 c 20 mp 270 mt 50 I mp l 2 计算吊重转动惯量lmp l mp k1 1 mt mp k2 mp l I mp l 2 2020 3 25 74 109 悬吊式起重机动力学Simulink仿真设置仿真时间为200s 启动Simulink仿真 则由小车位移示波器和吊重摆角示波器 可观察到系统在初始状态x 0 0 0 0 01rad s 作用下x 的变化过程曲线 悬吊式起重机小车位移 悬吊式起重机吊重摆角 back 2020 3 25 75 109 Simulink仿真实例 2020 3 25 76 109 Simulink仿真实例 2020 3 25 77 109 例题2 力 质量系统 要拉动一个箱子 拉力f 1N 箱子质量为M 1kg 箱子与地面存在摩擦力 b 0 4N m s 其大小与车子的速度成正比 Simulink仿真实例 2020 3 25 78 109 其运动方程式为 拉力作用时间为2s 建构的模型为 Simulink仿真实例 2020 3 25 79 109 因有摩擦力存在 箱子最终将会停止前进 Simulink仿真实例 2020 3 25 80 109 例题3 力 弹簧 阻尼系统 假设箱子与地面无摩擦存在 箱子质量为M 1kg 箱子与墙壁间有线性弹簧 k 1N m 与阻尼器 b 0 3N ms 1 阻尼器主要用来吸收系统的能量 吸收系统的能量转变成热能而消耗掉 现将箱子拉离静止状态2cm后放开 试求箱子的运动轨迹 Simulink仿真实例 2020 3 25 81 109 运动方程式为 构建的模型为 Simulink仿真实例 2020 3 25 82 109 因有阻尼器存在 故箱子最终会停止运动 Simulink仿真实例 2020 3 25 83 109 例题4 下图所示简单的单摆系统 假设杆的长度为L 且质量不计 钢球的质量为m 单摆的运动可以以线性的微分方程式来近似 但事实上系统的行为是非线性的 而且存在粘滞阻尼 假设粘滞阻尼系数为bkg ms 1 Simulink仿真实例 2020 3 25 84 109 选取b 0 03 g 9 8 L 0 8 m 0 3 所构建的模型 单摆系统的运动方程式为 Simulink仿真实例 2020 3 25 85 109 Simulink仿真实例 2020 3 25 86 109 例题5 蹦极跳系统 当你系着弹力绳从桥上跳下来时 会发生什么 这里 以蹦极跳作为一个连续系统的例子 自由下落的物体满足牛顿运动定律 F ma 假设绳子的弹性系数为k 它的拉伸影响系统的动力响应 如果定义人站在桥上时绳索下端的初始位置为0位置 x为拉伸位置 那么用b x 表示绳子的张力 Simulink仿真实例 2020

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论