资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,CH5、SIMULINK仿真根底,在工程实际中,控制系统的结构往往很复杂,如果不借助专用的系统建模软件,那么很难准确地把一个控制系统的复杂模型输入计算机,对其进行进一步的分析与仿真。,1990年,Math Works软件公司为MATLAB提供了新的控制系统模型图输入与仿真工具,并命名为SIMULAB,该工具很快就在控制工程界获得了广泛的认可,使得仿真软件进入了模型化图形组态阶段。但因其名字与当时比较著名的软件SIMULA类似,所以1992年正式将该软件更名为SIMULINK。,SIMULINK的出现,给控制系统分析与设计带来了福音。顾名思义,该软件的名称呼明了该系统的两个主要功能:Simu仿真和Link连接,即该软件可以利用鼠标在模型窗口上绘制出所需要的控制系统模型,然后利用SIMULINK提供的功能来对系统进行仿真和分析。,第一节 SIMULINK简介,SIMULINK是MATLAB软件的扩展,它是实现动态系统建模和仿真的一个软件包,它与MATLAB语言的主要区别在于,其与用户交互接口是基于Windows的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。,所谓模型化图形输入是指SIMULINK提供了一些按功能分类的根本的系统模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,通过对这些根本模块的调用,再将它们连接起来就可以构成所需要的系统模型以.mdl文件进行存取,进而进行仿真与分析。,SIMULINK的最新版本是SIMULINK4.0包含在MATLAB6.0里,MATLAB5.3里的版本为3.0版,它们的变化不大。,一、什么是SIMULINK,2、在MATLAB命令窗口中输入simulink3,结果是在桌面上出现一个用图标形式显示的Library:simulink3的Simulink模块库窗口。,二、SIMULINK的启动,1、在MATLAB命令窗口中输入simulink,结果是在桌面上出现一个称为Simulink Library Browser的窗口,在这个窗口中列出了按功能分类的各种模块的名称。,当然用户也可以通过MATLAB主窗口的快捷按钮来翻开Simulink Library Browser窗口。,两种模块库窗口界面只是不同的显示形式,用户可以根据各人喜好进行选用,一般说来第二种窗口直观、形象,易于初学者,但使用时会翻开太多的子窗口。,三、SIMULINK的模块库介绍,SIMILINK模块库按功能进行分类,包括以下8类子库:,Continuous连续模块,Discrete离散模块,Function&Tables函数和平台模块,Math数学模块,Nonlinear非线性模块,Signals&Systems信号和系统模块,Sinks接收器模块,Sources输入源模块,1、连续模块Continuous continuous.mdl,Integrator:输入信号积分,Derivative:输入信号微分,State-Space:线性状态空间系统模型,Transfer-Fcn:线性传递函数模型,Zero-Pole:以零极点表示的传递函数模型,Memory:存储上一时刻的状态值,Transport Delay:输入信号延时一个固定时间再输出,Variable Transport Delay:输入信号延时一个可变时间再输出,2、离散模块Discrete discrete.mdl,Discrete-time Integrator:离散时间积分器,Discrete Filter:IIR与FIR滤波器,Discrete State-Space:离散状态空间系统模型,Discrete Transfer-Fcn:离散传递函数模型,Discrete Zero-Pole:以零极点表示的离散传递函数模型,First-Order Hold:一阶采样和保持器,Zero-Order Hold:零阶采样和保持器,Unit Delay:一个采样周期的延时,3、Function&Tables函数和平台模块 function.mdl,Fcn:用自定义的函数表达式进行运算,MATLAB Fcn:利用matlab的现有函数进行运算,S-Function:调用自编的S函数的程序进行运算,Look-Up Table:建立输入信号的查询表线性峰值匹配,Look-Up Table(2-D):建立两个输入信号的查询表线性峰值匹配,4、Math数学模块 math.mdl,Sum:加减运算,Product:乘运算,Dot Product:点乘运算,Gain:比例运算,Math Function:包括指数函数、对数函数、求平方、开根号等常用数学函数,Trigonometric Function:三角函数,包括正弦、余弦、正切等,MinMax:最值运算,Abs:取绝对值,Sign:符号函数,Logical Operator:逻辑运算,Relational Operator:关系运算,Complex to Magnitude-Angle:由复数输入转为幅值和相角输出,Magnitude-Angle to Complex:由幅值和相角输入合成复数输出,Complex to Real-Imag:由复数输入转为实部和虚部输出,Real-Imag to Complex:由实部和虚部输入合成复数输出,5、Nonlinear非线性模块 nonlinear.mdl,Saturation:饱和输出,让输出超过某一值时能够饱和。,Relay:滞环比较器,限制输出值在某一范围内变化。,Switch:开关选择,当第二个输入端大于临界值时,输出由第一个输入端而来,否那么输出由第三个输入端而来。,Manual Switch:手动选择开关,6、Signal&Systems信号和系统模块 sigsys.mdl,In1:输入端。,Out1:输出端。,Mux:将多个单一输入转化为一个复合输出。,Demux:将一个复合输入转化为多个单一输出。,Ground:连接到没有连接到的输入端。,Terminator:连接到没有连接到的输出端。,SubSystem:建立新的封装Mask功能模块,7、Sinks接收器模块 sinks.mdl,Scope:示波器。,XY Graph:显示二维图形。,To Workspace:将输出写入MATLAB的工作空间。,To File(.mat):将输出写入数据文件。,8、Sources输入源模块 sources.mdl,Constant:常数信号。,Clock:时钟信号。,From Workspace:来自MATLAB的工作空间。,From File(.mat):来自数据文件。,Pulse Generator:脉冲发生器。,Repeating Sequence:重复信号。,Signal Generator:信号发生器,可以产生正弦、方波、锯齿涉及随意波。,Sine Wave:正弦波信号。,Step:阶跃波信号。,四、SIMULINK简单模型的建立及模型特点,1、简单模型的建立 exp5_1.mdl,1建立模型窗口,2将功能模块由模块库窗口复制到模型窗口,3对模块进行连接,从而构成需要的系统模型,2、模型的特点,在,SIMULINK,里提供了许多如,Scope,的接收器模块,这使得用,SIMULNK,进行仿真具有像做实验一般的图形化显示效果。,SIMULINK,的模型具有层次性,通过底层子系统可以构建上层母系统。,SIMULINK,提供了对子系统进行封装的功能,用户可以自定义子系统的图标和设置参数对话框。,第二节 SIMULINK功能模块的处理,模块库中的模块可以直接用鼠标进行拖曳选中模块,按住鼠标左键不放而放到模型窗口中进行处理。,在模型窗口中,选中模块,那么其4个角会出现黑色标记。此时可以对模块进行以下的根本操作。,移动:选中模块,按住鼠标左键将其拖曳到所需的位置即可。假设要脱离线而移动,可按住shift键,再进行拖曳。,复制:选中模块,然后按住鼠标右键进行拖曳即可复制同样的一个功能模块。,删除:选中模块,按Delete键即可。假设要删除多个模块,可以同时按住Shift键,再用鼠标选中多个模块,按Delete键即可。也可以用鼠标选取某区域,再按Delete键就可以把该区域中的所有模块和线等全部删除。,功能模块的根本操作,包括模块的移动、复制、删除、转向、改变大小、模块命名、颜色设定、参数设定、属性设定、模块输入输出信号等。,转向:为了能够顺序连接功能模块的输入和输出端,功能模块有时需要转向。在菜单,Format,中选择,Flip Block,旋转180度,选择,Rotate Block,顺时针旋转90度。或者直接按,Ctrl+F,键执行,Flip Block,,按,Ctrl+R,键执行,Rotate Block。,改变大小:选中模块,对模块出现的4个黑色标记进行拖曳即可。,模块命名:先用鼠标在需要更改的名称上单击一下,然后直接更改即可。名称在功能模块上的位置也可以变换180度,可以用,Format,菜单中的,Flip Name,来实现,也可以直接通过鼠标进行拖曳。,Hide Name,可以隐藏模块名称。,颜色设定:,Format,菜单中的,Foreground Color,可以改变模块的前景颜色,,Background Color,可以改变模块的背景颜色;而模型窗口的颜色可以通过,Screen Color,来改变。,参数设定:用鼠标双击模块,就可以进入模块的参数设定窗口,从而对模块进行参数设定。参数设定窗口包含了该模块的根本功能帮助,为获得更详尽的帮助,可以点击其上的help按钮。通过对模块的参数设定,就可以获得需要的功能模块。,属性设定:选中模块,翻开Edit菜单的Block Properties可以对模块进行属性设定。包括Description属性、Priority优先级属性、Tag属性、Open function属性、Attributes format string属性。其中Open function属性是一个很有用的属性,通过它指定一个函数名,那么当该模块被双击之后,Simulink就会调用该函数执行,这种函数在MATLAB中称为回调函数。,模块的输入输出信号:模块处理的信号包括标量信号和向量信号;标量信号是一种单一信号,而向量信号为一种复合信号,是多个信号的集合,它对应着系统中几条连线的合成。缺省情况下,大多数模块的输出都为标量信号,对于输入信号,模块都具有一种“智能的识别功能,能自动进行匹配。某些模块通过对参数的设定,可以使模块输出向量信号。,例exp5_2.mdl exp5_3.mdl,第三节 SIMULINK线的处理,exp5_4.mdl,改变粗细:线所以有粗细是因为线引出的信号可以是标量信号或向量信号,中选中Format菜单下的Wide Vector Lines时,线的粗细会根据线所引出的信号是标量还是向量而改变,如果信号为标量那么为细线,假设为向量那么为粗线。选中Vector Line Widths那么可以显示出向量引出线的宽度,即向量信号由多少个单一信号合成。,设定标签:只要在线上双击鼠标,即可输入该线的说明标签。也可以通过选中线,然后翻开Edit菜单下的Signal Properties进行设定,其中signal name属性的作用是标明信号的名称,设置这个名称反映在模型上的直接效果就是与该信号有关的端口相连的所有直线附近都会出现写有信号名称的标签。,线的折弯:按住Shift键,再用鼠标在要折弯的线处单击一下,就会出现圆圈,表示折点,利用折点就可以改变线的形状。,线的分支:按住鼠标右键,在需要分支的地方拉出即可以。或者按住Ctrl键,并在要建立分支的地方用鼠标拉出即可。,SIMULINK模型的构建是通过用线将各种功能模块进行连接而构成的。用鼠标可以在功能模块的输入与输出端之间直接连线。所
展开阅读全文