电机控制基于Simulink的仿真.ppt
上传人:可爱****乐多 上传时间:2024-09-09 格式:PPT 页数:192 大小:5.5MB 金币:10 举报 版权申诉
预览加载中,请您耐心等待几秒...

电机控制基于Simulink的仿真.ppt

电机控制基于Simulink的仿真.ppt

预览

免费试读已结束,剩余 182 页请下载文档后查看

10 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

MATLAB/Simulink设计1Simulink简介提供了仿真库的扩充和定制机制Simulink的开放式结构允许用户扩展仿真环境的功能:采用MATLAB、FORTRAN和C代码生成自定义模块库,并拥有自己的图标和界面。与MATLAB工具箱的集成由于Simulink可以直接利用MATLAB的诸多资源与功能,因而用户可以直接在Simulink下完成诸如数据分析、过程自动化、优化参数等工作。Simulink应用领域2Simulink启动及模型建立Simulink模型窗口的建立启动Simulink,建立系统模型的基本操作Simulink的模块库Simulink公共模块库Simulink的部分专业模块库对Simulink库浏览器的基本操作有:例:简单系统的输入为一个正弦波信号,输出为此正弦波信号与一个常数的乘积。要求建立系统模型,并以图形方式输出系统运算结果。已知系统的数学描述为系统输入:u(t)=sint,t≥0系统输出:y(t)=au(t),a≠0相关操作:连线操作信号组合在利用Simulink进行系统仿真时,在很多情况下,需要将系统中某些模块的输出信号(一般为标量)组合成一个向量信号,并将得到的信号作为另外一个模块的输入。3Simulink模型仿真4Simulink子系统介绍子系统建立方法(2种)子系统操作在生成子系统之后,用户可以对子系统进行各种与系统模块相类似的操作,这时子系统相当于具有一定功能的系统模块。例如,子系统的命名、子系统视图的修改、子系统的显示颜色等等。当然子系统也有其特有的操作,如子系统的显示(用鼠标左键双击子系统模块即可打开子系统)、子系统的封装等等。Inport输入模块与Outport输出模块在系统模型中建立子系统时,Simulink会自动生成Inport模块(Sources模块库中的In1模块)与Outport模块(Sinks模块库中的Out1模块)。Inport模块作为子系统的输入端口,Outport作为子系统的输出端口,它们被用来完成子系统和主系统之间的通讯。Inport和Outport用来对信号进行传递,不改变信号的任何属性;另外,信号标签可以越过它们进行传递。如果需要建立多输入多输出的子系统,则需要使用多个Inport模块与Outport模块,而且最好使用合适的名称对Inport模块与Outport模块进行命名。5Simulink与Matlab的接口设计将信号输出到MATLAB工作空间中使用示波器模块Scope的输出信号,可以使用户对输出的信号进行简单的定性分析。使用Sinks模块库中的ToWorkspace模块,可以轻易地将信号输出到MATLAB工作空间中。信号输出的名称在ToWorkspace模块的对话框中设置,此对话框还可以设置输出数据的点数、输出的间隔,以及输出数据的类型等。其中输出类型有三种形式:数组、结构以及带有时间变量的结构。仿真结束或暂停时信号被输出到工作空间中。使用工作空间变量作为系统输入信号Simulink与MATLAB的数据交互是相互的,除了可以将信号输出到MATLAB工作空间中之外,用户还可以使用MATLAB工作空间中的变量作为系统模型的输入信号。使用Sources模块库中的FromWorkspace模块可以将MATLAB工作空间中的变量作为系统模型的输入信号。此变量的格式如下所示:>>t=0:0.1:10;>>x=sin(t);>>input=[t',x'];系统输入信号input的作用相当于Sources模块中的SineWave模块向量与矩阵Simulink所使用的信号可以是标量也能够传递和使用向量信号。例如,向量增益可以作用在一个标量信号上,产生一个向量输出。Simulink最重要的特性就是支持矩阵形式的信号,它可以区分行和列向量并传递矩阵。通过对模块做适当的配置,可以使模块能够接受矩阵作为模块参数。MATLABFunction与Function模块除了使用上述的方式进行Simulink与MATLAB之间的数据交互,用户还可以使用FunctionsandTables模块库中的Function模块(简称为Fcn模块)或FunctionsandTables模块库中的MATLABFunction模块(简称为MATLABFcn模块)进行彼此间的数据交互。Fcn模块一般用来实现简单的函数关系,在Fcn模块中:(1)输入总是表示成u,u可以是一个向量。(2)可以使用C语言表达式,例如sin(u[1])+cos(u[2])。(3)输出永远为一个标量。(2)可以使用C语言表达式,例如sin(u[1])+cos(u[2])。(3)输出永远为一个标量。MATLABFcn一般用来调用MATLAB函数来实现一定的功能