CH6、SMUL|NK仿真基础 在工程实际中,控制系统的结构往往很复杂,如果不借助 专用的系统建模软件,则很难准确地把一个控制系统的复 杂模型输入计算机,对其进行进一步的分析与仿真。 >1990年, Math Works软件公司为 MATLAB提供了新的控 制系统模型图输入与仿真工具,并命名为 SIMULAB,该 具很快就在控制工程界获得了广泛的认可,使得仿真软件 进入了模型化图形组态阶段。但因其名字与当时比较著名 的软件 SIMULA类似,所以1992年正式将该软件更名为 S|MUL|NK。 >SMUL|NK,该软件的名称表明了该系统的两个主要功能 sinu(仿真)和Link(连接),即该软件可以利用鼠标在 模型窗口上绘制出所需要的控制系统模型,然后利用 SIMULINK提供的功能来对系统进行仿真和分析
CH6、SIMULINK仿真基础 ➢ 在工程实际中,控制系统的结构往往很复杂,如果不借助 专用的系统建模软件,则很难准确地把一个控制系统的复 杂模型输入计算机,对其进行进一步的分析与仿真。 ➢ 1990年,Math Works软件公司为MATLAB提供了新的控 制系统模型图输入与仿真工具,并命名为SIMULAB,该工 具很快就在控制工程界获得了广泛的认可,使得仿真软件 进入了模型化图形组态阶段。但因其名字与当时比较著名 的软件SIMULA类似,所以1992年正式将该软件更名为 SIMULINK。 ➢ SIMULINK,该软件的名称表明了该系统的两个主要功能: Simu(仿真)和Link(连接),即该软件可以利用鼠标在 模型窗口上绘制出所需要的控制系统模型,然后利用 SIMULINK提供的功能来对系统进行仿真和分析
第 SⅠ MULINK简介 什么是 SIMULINK 口 SIMULINK是 MATLAB软件的扩展,它是实现动态系 统建模和仿真的一个软件包,它与 MATLAB语言的主要 区别在于,其与用户交互接口是基于 Windows的模型化 图形输入 口所谓模型化图形输入是指SⅠ MULINK提供了一些按功 能分类的基本的系统模块,用户只需知道这些模块的输 入输出及模块的功能,而不必考察模块内部是如何实现 的,通过对这些基本模块的调用,再将它们连接起来就 可以构成所需要的系统模型(以mdl文件进行存取), 进而进行仿真与分析
第一节 SIMULINK简介 ❑SIMULINK是MATLAB软件的扩展,它是实现动态系 统建模和仿真的一个软件包,它与MATLAB语言的主要 区别在于,其与用户交互接口是基于Windows的模型化 图形输入。 ❑所谓模型化图形输入是指SIMULINK提供了一些按功 能分类的基本的系统模块,用户只需知道这些模块的输 入输出及模块的功能,而不必考察模块内部是如何实现 的,通过对这些基本模块的调用,再将它们连接起来就 可以构成所需要的系统模型(以.mdl文件进行存取), 进而进行仿真与分析。 一、什么是SIMULINK
SIMULINK是一个进行动态系统建模、仿真和综合分析 的集成软件包。它可以处理的系统包括:线性、非线性 系统;离散、连续及混合系统;单任务、多任务离散事 件系统。 在 SIMULINK环境中,用户可观察到摩擦、风阻、齿隙、 饱和、死区等非线性因素和各种随机因素对系统行为的 影响。还可以在仿真进程中改变感兴趣的参数,实时地 观察系统行为的变化。 在 MATLAB6x版中,可直接在SMULⅠNK环境中运作的 工具包很多,已覆盖通信、控制、信号处理、电力系统 等诸多领域,所涉内容专业性极强
❖ SIMULINK是一个进行动态系统建模、仿真和综合分析 的集成软件包。它可以处理的系统包括:线性、非线性 系统;离散、连续及混合系统;单任务、多任务离散事 件系统。 ❖ 在SIMULINK环境中,用户可观察到摩擦、风阻、齿隙、 饱和、死区等非线性因素和各种随机因素对系统行为的 影响。还可以在仿真进程中改变感兴趣的参数,实时地 观察系统行为的变化。 ❖ 在MATLAB6.x版中,可直接在SIMULINK环境中运作的 工具包很多,已覆盖通信、控制、信号处理、电力系统 等诸多领域,所涉内容专业性极强
二、 SIMULINK的启动 1、在 MATLAB命令窗口中输入 simulink 结果是在桌面上出现一个称为 Simulink Library browser的窗口,在这 个窗口中列出了按功能分类的各种模块的名称 当然用户也可以通过 MATLAB主窗口的快捷按钮来打开 Simulink Library browser窗口。 2、在 MATLAB命令窗口中输入 simulink3 结果是在桌面上出现一个用图标形式显示的 Library: simulink3的 Simulink模块库窗口。 两种模块库窗口界面只是不同的显示形式,用户可以根据各人 喜好进行选用,一般说来第二种窗口直观、形象,易于初学者, 但使用时会打开太多的子窗口
2、在MATLAB命令窗口中输入simulink3 结果是在桌面上出现一个用图标形式显示的Library :simulink3的 Simulink模块库窗口。 二、SIMULINK的启动 1、在MATLAB命令窗口中输入simulink 结果是在桌面上出现一个称为Simulink Library Browser的窗口,在这 个窗口中列出了按功能分类的各种模块的名称。 当然用户也可以通过MATLAB主窗口的快捷按钮来打开Simulink Library Browser窗口。 两种模块库窗口界面只是不同的显示形式,用户可以根据各人 喜好进行选用,一般说来第二种窗口直观、形象,易于初学者, 但使用时会打开太多的子窗口
SⅠ MULINK的公共模块库 SIMILINK模块库按功能进行分类,包括以下子库: Continuous(连续模块) discontinuous(非线性模块) Discrete(离散模块) look up tables(查询表模块) Math operations(数学模块) Model verification(模型检测) Model- wide utilities(模型扩展功能模块) Ports& Systems(端口和子系统模块) Signal attribute信号描述模块) Signal routing(信号路由模块) Sinks(接收器(输出显示)模块) Sources(信号源模块) User- defined functions(自定义模块)
三、SIMULINK的公共模块库 SIMILINK模块库按功能进行分类,包括以下子库: Continuous(连续模块) disontinuous (非线性模块) Discrete(离散模块) look up tables(查询表模块) Math operations(数学模块)Model verification(模型检测) Model-wide Utilities(模型扩展功能模块) Ports&Systems(端口和子系统模块) Signal attributes(信号描述模块) Signal routing(信号路由模块) Sinks(接收器(输出显示)模块)Sources(信号源模块) User-defined functions(自定义模块)
1、 Continuous(连续模块) Derivative:输入信号微分 Integrator:输入信号积分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出 Zero-Pole:以零极点表示的传递函数模型
1、 Continuous(连续模块) Derivative:输入信号微分 Integrator:输入信号积分 State-Space:线性状态空间系统模型 Transfer-Fcn:线性传递函数模型 Transport Delay:输入信号延时一个固定时间再输出 Variable Transport Delay:输入信号延时一个可变时间再输出 Zero-Pole:以零极点表示的传递函数模型
2、 Discontinuities(非线性模块) Backlash:死区间隙 Coulomb& Viscous friction:库仑粘滞摩擦信号 Dead zone:死区信号 Hit Crossing:将信号与特定的偏移值比较 Quantizer;量化器 Rate Limiter;信号上升、下降速率控制器 Reay:滞环比较器,限制输出值在某一范围内变化 Saturation:饱和信号,让输出超过某一值时能够饱和
2、Discontinuities (非线性模块) Backlash:死区间隙 Coulomb &Viscous Friction:库仑粘滞摩擦信号 Dead Zone:死区信号 Hit Crossing:将信号与特定的偏移值比较 Quantizer;量化器 Rate Limiter;信号上升、下降速率控制器 Relay:滞环比较器,限制输出值在某一范围内变化。 Saturation:饱和信号,让输出超过某一值时能够饱和
3、 Discrete(离散模块) Discrete Transfer-Fcn:离散传递函数模型 Discrete zero-Pole:以零极点表示的离散传递函数模型 Discrete Filter:IR与FIR滤波器 Discrete State- Space:离散状态空间系统模型 Discrete- - time Integrator:离散时间积分器 First-Order hold:一阶采样和保持器 Memory:单步积分延迟,输出为前一个输入 Unit Delay:一个采样周期的延时 Zero- Order hold:零阶采样和保持器
3、 Discrete(离散模块) Discrete Transfer-Fcn:离散传递函数模型 Discrete Zero-Pole:以零极点表示的离散传递函数模型 Discrete Filter:IIR与FIR滤波器 Discrete State-Space:离散状态空间系统模型 Discrete-time Integrator:离散时间积分器 First-Order Hold:一阶采样和保持器 Memory:单步积分延迟,输出为前一个输入 Unit Delay:一个采样周期的延时 Zero-Order Hold:零阶采样和保持器
4、Look- up Tables(查询表模块) Direct Look-Up Table(n-D):表数据选择器(从表中选数) Interpolation(n-D) using PreLook-Up:对输入信号进行内 插 运算 Look- Up Table:对输入信号进行一维线性内插运算 Look-Up Table(2-D):对输入信号进行二维线性内插运算 Look- Up Table(n-D):对输入信号进行n维线性内插运算 PreLook-Up Index Search:查找输入信号所在范围
4、Look-up Tables(查询表模块) Direct Look-Up Table (n-D):表数据选择器(从表中选数) Interpolation (n-D) using PreLook-Up:对输入信号进行内 插 运算 Look-Up Table:对输入信号进行一维线性内插运算 Look-Up Table(2-D):对输入信号进行二维线性内插运算 Look-Up Table (n-D):对输入信号进行n维线性内插运算 PreLook-Up Index Search:查找输入信号所在范围
5、 (Math Operations(数学模块 Abs:取绝对值 Algebraic Constraint:输出强制系统输入为零的代数状态 Assignment:对信号进行分配 Bitwise Logical Operator:按位逻辑运算 Combinatorial Logic:逻辑真值查找 Complex to Magnitude- Angle:输出输入复数的幅值与相位 Complex to Rea-mag:输出系统输入的实部或虚部 Dot product:点乘运算 Gain:比例运算(信号增益)
5、 Math Operations(数学模块) Abs:取绝对值 Algebraic Constraint:输出强制系统输入为零的代数状态 Assignment:对信号进行分配 Bitwise Logical Operator:按位逻辑运算 Combinatorial Logic:逻辑真值查找 Complex to Magnitude-Angle:输出输入复数的幅值与相位 Complex to Real-Imag:输出系统输入的实部或虚部 Dot Product:点乘运算 Gain:比例运算(信号增益)