SIMULINK仿真环境 (2).ppt
SIMULINK仿真环境,MATLAB 建模与仿真哈尔滨理工大学机械动力工程学院,2023/11/8,机械专业研究生课程蔺勇智制作,本章主要内容,SIMULINK仿真环境简介SIMULINK启动与界面说明SIMULINK模块库简介基于数学模型的仿真分析步骤SIMULINK机械仿真举例,2023/11/8,机械专业研究生课程蔺勇智制作,SIMULINK仿真环境简介,SIMULINK仿真环境是美国MathWorks软件公司专门为MATLAB设计提供的结构图编程与系统仿真的专用软件工具。该仿真环境下的用户程序其外观就是控制系统的结构图,操作就是依据结构图作系统仿真。利用SIMULINK提供的输入信号(信号源模块)对结构图所描述的系统施加激励,利用SIMULINK提供的输出装置(输出口模块)获得系统的输出响应。即数据或时间响应曲线成为图形化、模块化方式的控制系统仿真,这不能不说是控制系统仿真工具的一大突破性的进步。SIMULINK不仅提供了各种标淮的结构图模块库,提供了开放的结构图模块设计方法,便于用尸设计自己的专用模块,还提供广几种系统文件(S函数)的设汁方法,使得系统仿真工作更加方便灵活。,返回,2023/11/8,机械专业研究生课程蔺勇智制作,SIMULINK启动与界面说明,启动方法有两种:直接在MATLAB命令平台上键入命令:Simulink在MATLAB工具栏上点击其启动后的界面如下所示:,返回,2023/11/8,机械专业研究生课程蔺勇智制作,SIMULINK模块库简介,SIMULINK模块库的所有模块图形,现在详细的介绍一下这些模块的功能。,返回,2023/11/8,机械专业研究生课程蔺勇智制作,1.连续模块库 2.非连续模块库3.离散模块库 4.逻辑和位操作模块库5.查找表模块库 6.数学模块库7.模型检测模块库 8.模型扩充模块库9.端口和子系统模块库 10.信号属性模块库11.信号路线模块库 12.接受器模块库13.输入源模块库 14.用户自定义模块库,2023/11/8,机械专业研究生课程蔺勇智制作,1、连续模块库(Continuous),2023/11/8,机械专业研究生课程蔺勇智制作,连续模块的中文解释如下所示:Continuous库中的各模块Derivative 输入对时间的导数Integrator 对信号进行积分State-Space 实现线性状态空间系统TransferFcn 实现线性传递函数TransferDelay 以给定的时间量延迟输入VariableTransferDelay 以可变的时间量延迟输入Zero-Pole 实现用零极点形式表示的 传递函数,返回,2023/11/8,机械专业研究生课程蔺勇智制作,Discontinuities库中的各模块Backlash 模拟有间隙系统的行为Coulomb&ViscousFriction模拟在零点出不连续,在 其他地方有线性增益的系统DeadZone 提供输出为零的区域DeadZoneDynamic动态提供输出为零的区域HitCrossing检测信号上升沿、下降沿以及与指定值得 比较结果,输出零或一Quantizer 以指定的间隔离散化输入RateLimiter限制信号的变化速度Relay 在两个常数中选出一个作为输出Saturation 限制信号的变化范围SaturationDynamic动态限制信号的变化范围WraptoZero输入大于门限则输出零,小于则直接输出,2023/11/8,机械专业研究生课程蔺勇智制作,Discontinuities库中的各模块图型,返回,2023/11/8,机械专业研究生课程蔺勇智制作,Discrete库中的模块Difference 差分器DifferenceDerivative计算离散时间导数DiscreteFilter 实现IIR和FIR滤波器DiscreteState-Space 实现用离散状态方程描述的系统DiscreteTransferFcn实现离散传递函数DiscreteZero-Pole 实现以零极点形式描述的离散传 递函数Discrete-timeIntegrator 执行信号的离散时间积分First-OrderHold 实现一阶采样保持IntegerDelay 将信号延迟多个采样周期,2023/11/8,机械专业研究生课程蔺勇智制作,Memory 从前一时间步输出模块的输入TappedDelay 延迟N个周期,然后输出所有延迟 数据TransferFcnFirstOrder 离散时间传递函数TransferFcnLeadorLag超前或滞后传递函数,主要有零极 点树木决定TransferFcnRealZero 有实数零点,没有极点的传递函数UnitDelay 将信号延迟一个采样周期WeightedMovingAverage 加权平均Zero-OrderHold 零阶保持,返回,2023/11/8,机械专业研究生课程蔺勇智制作,Math库中的模块Abs 输出输入的绝对值Add 对信号进行加法或减法运算AlgebraicConstant 将输入信号抑制为零Assignment 赋值Bias 给输入加入偏移量ComplextoMagnitude-Angle输出复数输入信号的相角和幅值ComplextoReal-Image 输出复数输入信号的实部和虚部Divide 对信号进行乘法或除法运算DotProduct 产生点积Gain 将模块的输入乘以一个数值Magnitude-AngletoComplex由相角和幅值输入输出一个复数 信号,2023/11/8,机械专业研究生课程蔺勇智制作,MathFunction 数学函数MatrixConcatenation 矩阵串联MinMax 输出信号的最小或最大值MinMaxRunningResettable输出信号的最小或最大 值,带复位功能Polynomial 计算多项式的值Product 产生模块各输入的简积 或商ProductofElements 产生模块各输入的简积 或商Real-ImagtoComplex 由实部和虚部输入输出 复数信号Reshape 改变矩阵或向量的维数RoundingFunction 执行圆整函数Sign 指明输入的符号,2023/11/8,机械专业研究生课程蔺勇智制作,SineWaveFunction 输出正弦信号SliderGain 使用滑动器改变标量增益Subtract 对信号进行加法或减法运算SumofElements 生成输入的和TrigonometricFunction 执行三角函数UnaryMinus 对输入取反WeightedSampleTimeMath 对信号经过加权时间采样的 值进行加、减、乘、除运算,2023/11/8,机械专业研究生课程蔺勇智制作,Math库中的部分模块示意图,返回,2023/11/8,机械专业研究生课程蔺勇智制作,Sources库中模块Band-LimitedwhiteNoise 给连续系统引入白噪声ChirpSignal 产生一个频率递增的正弦 波(线性调频信号)Clock 显示并提供仿真时间Constant 生成一个常量值CounterFree-Running 自运行计数器,计数溢出 时自动清零CounterLimited 有限计数器,可自定义计 数上限DigitalClock 生成有给定采样间隔的仿 真时间FromFile 从文件读取数据,2023/11/8,机械专业研究生课程蔺勇智制作,FromWorkspace 从工作空间中定义的矩阵中读 取数据Ground 地线,提供零电平PulseGenerator 生成有规则间隔的脉冲In1 提供一个输入端口Ramp 生成一连续递增或递减的信号RandomNumber 生成正态分布的随机数RepeatingSequence 生成一重复的任意信号RepeatingSequenceInterpolated生成一重复的任意信号,可以插值RepeatingSequenceStair 生成一重复的任意信号,输出的是离散值SignalBuilder 带界面交互的波形设计SignalGenerator 生成变化的波形,2023/11/8,机械专业研究生课程蔺勇智制作,SineWave 生成正弦波Step 生成一阶跃函数UniformRandomNumber生成均匀分布的随机数,返回,2023/11/8,机械专业研究生课程蔺勇智制作,Sinks库中模块Display 显示输入的值FloatingScope 显示仿真期间产生的信号,浮点格式Out1 提供一个输出端口Scope 显示仿真期间产生的信号StopSimulation 当输入为非零时停止仿真Terminator 终止没有连接的输出端口ToFile 向文件中写数据ToWorkspace 向工作空间中的矩阵写入数据XYGraph 使用Matlab的图形窗口显示信号的 X-Y图,2023/11/8,机械专业研究生课程蔺勇智制作,Sinks库中模块示例图,返回,2023/11/8,机械专业研究生课程蔺勇智制作,仿真步骤:应用Simulink对传动机构进行仿真的步骤:动力学模型标准化。把传动机构的微分方程或者传递函数简化为基本环节的组合形式,用控制方框图来表示。构成动力学仿真模型。从Simulink工具箱中找出所需要的环节,按照控制方框图的结构连接构成仿真模型。为仿真模型添加输入信号和观察记录设备。,基于数学模型的仿真分析,返回,2023/11/8,机械专业研究生课程蔺勇智制作,设置仿真参数:打开simulation菜单,在simulation parameters参数表设置仿真参数。点击“开始”按钮进行仿真。改变输入信号或者机构参数分析系统的动力学性能。记录仿真结果。,2023/11/8,机械专业研究生课程蔺勇智制作,SIMULINK机械仿真举例,(1)齿轮传动仿真(阻尼-质量系统)1.把传动机构的微分方程或者传递函数简化为基本环节的组合形式,用控制方框图来表示。,2.从Simulink工具箱中找出所需要的环节,按照控制方框图的结构连接构成仿真模型。上图所示需要一个传递函数,一个增益,一个积分环节。所以操作如下:,返回,2023/11/8,机械专业研究生课程蔺勇智制作,打开Simulink,新建一个仿真工作窗口,从信号源模块中拖出一个常数信号(根据实验要求定义)、从连续系统模块库中拖出积分环节和传递函数,从数学运算模块库中拖出常数增益模块,最后从输出模块库中拖出示波器模块。将其连接起来,构成仿真系统。,2023/11/8,机械专业研究生课程蔺勇智制作,根据控制方程图中传递函数和增益的参数修改相应的参数。这里详细介绍一下传递函数参数的修改方法:双击传递函数模块,出现如下图1所示的图框,修改参数如图2所示。修改参数后如图3所示。,图1,图2,图3,2023/11/8,机械专业研究生课程蔺勇智制作,为了简化仿真模块,建议把部分控制模块封装成子系统,用子系统定义相关参数。操作方法为:选择传递函数模块、增益及积分环节,右键选择Create Subsystem,将此3个模块封装成子系统。,2023/11/8,机械专业研究生课程蔺勇智制作,将封装后的子系统增加一个输出,并将各模块改下名字(QL为转角、wL为角速度、M为扭矩等)。修改后子系统如下所示:,选择 GEAR模块,鼠标右键选择Mask Subsystem定义子系统,从而可以在双击后选择Parameters设置仿真参数。,2023/11/8,机械专业研究生课程蔺勇智制作,再次双击GEAR组合模块,此时可以在双击后的窗口中直接输入相关的参数。,2023/11/8,机械专业研究生课程蔺勇智制作,其次,要定义示波器,为了进行仿真结果的分析,选择3个口的示波器选择方法是双击示波器,选择 定义3个输入口。,最后连接所有接口,连接后的仿真模块如下所示。,2023/11/8,机械专业研究生课程蔺勇智制作,进行仿真、记录结果并进行分析,2023/11/8,机械专业研究生课程蔺勇智制作,(2)丝杠螺母传动仿真(质量-阻尼系统),2023/11/8,机械专业研究生课程蔺勇智制作,(3)同步齿形带仿真(弹簧-质量-阻尼系统),2023/11/8,机械专业研究生课程蔺勇智制作,2023/11/8,机械专业研究生课程蔺勇智制作,以上为MATLAB仿真分析的简要讲解,如果想要深入学习希望大家可以多查找些资料,多做些练习。谢谢大家耐心听讲!,