ImageVerifierCode 换一换
格式:PPT , 页数:192 ,大小:2.98MB ,
资源ID:8942665      下载积分:20 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/8942665.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(电机控制基于Simulink的仿真(课堂PPT).ppt)为本站上传会员【精****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

电机控制基于Simulink的仿真(课堂PPT).ppt

1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,电机控制课程设计:,MATLAB/Simulink,设计,仪器科学与电气工程学院,MATLAB/Simulink,设计,主讲:段清明,仪器科学与电气工程学院,电机控制课程设计,1,1 Simulink,简介,Simulink,是一个用来对动态系统进行建模、仿真和分析的软件包。,使用,Simulink,来建模、分析和仿真各种动态系统,(,包括,连续系统,、,离散系统,和,混合系统,),,将是一件非常轻松的事情。它提供了一种图形化的交互环境,只需用鼠标拖动的方法便能迅速地建立起系统框图模型,甚至不需要编写一行代码

2、利用,Simulink,进行系统的建模仿真,其最大的优点是易学、易用,并能依托,MATLAB,提供的丰富的仿真资源。,提供了仿真库的扩充和定制机制,Simulink,的开放式结构允许用户扩展仿真环境的功能:采用,MATLAB,、,FORTRAN,和,C,代码生成自定义模块库,并拥有自己的图标和界面。,与,MATLAB,工具箱的集成,由于,Simulink,可以直接利用,MATLAB,的诸多资源与功能,因而用户可以直接在,Simulink,下完成诸如数据分析、过程自动化、优化参数等工作。,Simulink,应用领域,2 Simulink,启动及模型建立,Simulink,的启动主要有以下两种

3、方法:,在,MATLAB,的命令窗口中输入,simulink,结果是在桌面上出现一个,Simulink Library Browser,的窗口。,单击,MATLAB,主窗口的快捷按钮 ,打开,Simulink Library Browser,窗口。,Simulink,模型窗口的建立,在,Simulink,中打开一个空白的模型窗口的方法:,选中,Simulink,菜单系统中的,File|New|Model,菜单项后,会生成一个,Simulink,窗口;,单击,Simulink,工具栏中的“新建模型”图标;,在,MATLAB,的命令窗口中选择,File|New|New Model,菜单项;,启动,

4、Simulink,,建立系统模型的基本操作,依次表示新建、打开,系统模型文件,依次表示新建、打开与,保存系统模型文件,Simulink,的模块库,Simulink,的模块库能够对系统模块进行有效的管理与组织可以直接将模块库中的模块拖动或者拷贝到用户的系统模型中以构建动态系统模型。,模块搜索,模块描述,系统模块,系统模块库,Simulink,公共模块库,Simulink,中最为基础、最为通用的模块库,它可以被应用到不同的专业领域中。,连续模块,continuous,、非连续模块,discontinuous,离散模块,discrete,、查找表模块,Look-up Table,数学运算,Math

5、Operations,模型验证模块,Model Verification,模型扩充工具,Model-Wide Utilities,端口和子系统模块,Ports&Subsystems,、,信号属性模块,Signal Attributes,信号路由模块,Signal Routing,、接收模块,Sinks,输入模块,Sources,用户自定义函数模块,User-Defined Functions,Simulink,的部分专业模块库,DSP Blockset,数字信号处理工具包,Fixed-Point Blockset,定点运算控制系统仿真工具包,Power System Blockset,电力电动

6、系统工具包,Dials&Gauges Blockset,交互图形和控制面板设计工具包,Communications Blockset,通讯系统工具包,CDMA Reference Blockset CDMA,CDMA,通讯系统设计和分析工具包,Nonlinear Control Design Blockset,非线性控制设计工具箱,Motorola DSP Developers Kit,Motorola DSP,开发工具箱,TI DSP Developers Kit,TI DSP,开发工具箱,对,Simulink,库浏览器的基本操作有:,(1),使用鼠标左键单击系统模块库,如果模块库为多层结构

7、则单击“,+,”,号载入库。,(2),使用鼠标右键单击系统模块库,,可在单独的窗口,打开库。,(3),使用鼠标左键单击系统模块,在模块描述栏中,显示此模块的描述,。,(4),使用鼠标右键单击系统模块,可以得到:,系统模块的帮助信息,;,将系统模块插入到系统模型中,;,查看系统模块的参数设置,;,以及,回到系统模块的上一层库,。,此外还可以进行以下操作,:,(1),使用鼠标左键选择并拖动系统模块,并将其拷贝到系统模型中。,(2),在模块搜索栏中搜索所需的系统模块。,例:,简单系统的输入为一个正弦波信号,输出为此正弦波信号与一个常数的乘积。要求建立系统模型,并以图形方式输出系统运算结果。,已知系

8、统的数学描述为,系统输入:,u,(,t,)=sin,t,t,0,系统输出:,y,(,t,)=a,u,(,t,),a,0,相关操作:,模块库,Sine Wave,来自,sources;Gain,来自,Math Operations,;,Scope,来自,Sinks,连接方法,(1),拖动对应端口进行连接,(2),单击起始模块后,按,Ctrl,键再单击目标模块,模块复制,传统方式,Ctrl+C/Ctrl+V,、或,Ctrl,键再拖动模块,模块插入,对于单输入单输出模块,只需将这个模块移到线上就可以自动连接。,连线操作,连线分支,使用鼠标右键单击需要分支的信号连线(光标变成“,+”,),然后拖动到目

9、标模块。,使用鼠标左键单击并拖动以改变信号连线的路径。,按下,Shift,键的同时,在信号连线上单击鼠标左键并拖动,可以生成新的节点。,在节点上使用鼠标左键单击并拖动,可以改变信号连线路径。,信号组合,在利用,Simulink,进行系统仿真时,在很多情况下,需要将系统中某些模块的输出信号(一般为标量)组合成一个向量信号,并将得到的信号作为另外一个模块的输入。,来自,Signal Routing,的,Bus Creator,3 Simulink,模型仿真,系统模块参数设置与系统仿真参数设置,双击系统模块,打开系统模块的参数设置对话框。,在参数设置对话框中设置合适的模块参数。,设置合适的系统仿真参

10、数以进行动态系统的仿真,在,Simulation,菜单的,Simulation parameters.,子菜单中进行设置,如仿真时间等,运行仿真,单击系统模型编辑器上的,Play,图标,(,黑色三角,),或选择,Simulation,菜单下的,Start,便可以对系统进行仿真分析。,仿真结束后双击,Scope,模块以显示系统仿真的输出结果,4 Simulink,子系统介绍,Simulink,提供的子系统功能可以大大地增强,Simulink,系统模型框图的可读性。,子系统可以理解为一种“容器”,此容器能够将一组相关的模块封装到一个单独的模块中,并且与原来系统模块组的功能一致。,子系统建立方法,(

11、2,种,),在已有的系统模型中建立子系统:,首先框选待封装的区域,即在模型编辑器背景中单击鼠标左键并拖动,选中需要放置到子系统中的模块与信号(或在按下,Shift,键的同时,用鼠标左键单击所需模块);然后选择,Edit,菜单下的,Create Subsystem,,即可建立子系统。,建立空的子系统:,Subsystems,模块库中的模块建立子系统。这样建立的子系统内容为空,然后双击子系统对其进行编辑。,子系统操作,在,生成子系统之后,用户可以对子系统进行各种与系统模块相类似的操作,这时子系统相当于具有一定功能的系统模块。例如,子系统的命名、子系统视图的修改、子系统的显示颜色等等。当然子系统也有

12、其特有的操作,如子系统的显示(用鼠标左键双击子系统模块即可打开子系统)、子系统的封装等等。,Inport,输入模块与,Outport,输出模块,在系统模型中建立子系统时,,Simulink,会自动生成,Inport,模块(,Sources,模块库中的,In1,模块)与,Outport,模块(,Sinks,模块库中的,Out1,模块)。,Inport,模块作为子系统的输入端口,,Outport,作为子系统的输出端口,它们被用来完成子系统和主系统之间的通讯。,Inport,和,Outport,用来对信号进行传递,不改变信号的任何属性;另外,信号标签可以越过它们进行传递。如果需要建立多输入多输出的子

13、系统,则需要使用多个,Inport,模块与,Outport,模块,而且最好使用合适的名称对,Inport,模块与,Outport,模块进行命名。,5 Simulink,与,Matlab,的接口设计,由,MATLAB,工作空间变量设置系统模块参数,模块参数可以是常量也可以工作空间变量,直接使用,MATLAB,工作空间中的变量设置模块参数。,使用变量的表达式设置模块参数。,例如,如果,a,是定义在,MATLAB,中的变量,则表达式,a,、,a2+5,、,exp(a),等均可以作为系统模块的参数,将信号输出到,MATLAB,工作空间中,使用示波器模块,Scope,的输出信号,可以使用户对输出的信号进

14、行简单的定性分析。,使用,Sinks,模块库中的,To Workspace,模块,可以轻易地将信号输出到,MATLAB,工作空间中。信号输出的名称在,To Workspace,模块的对话框中设置,此对话框还可以设置输出数据的点数、输出的间隔,以及输出数据的类型等。其中输出类型有三种形式:数组、结构以及带有时间变量的结构。仿真结束或暂停时信号被输出到工作空间中。,使用工作空间变量作为系统输入信号,Simulink,与,MATLAB,的数据交互是相互的,除了可以将信号输出到,MATLAB,工作空间中之外,用户还可以使用,MATLAB,工作空间中的变量作为系统模型的输入信号。使用,Sources,模

15、块库中的,From Workspace,模块可以将,MATLAB,工作空间中的变量作为系统模型的输入信号。此变量的格式如下所示:,t=0:0.1:10;,x=sin(t);,input=t,x;,系统输入信号,input,的作用相当于,Sources,模块中的,Sine Wave,模块,向量与矩阵,Simulink,所使用的信号可以是标量也能够传递和使用向量信号。例如,向量增益可以作用在一个标量信号上,产生一个向量输出。,Simulink,最重要的特性就是支持矩阵形式的信号,它可以区分行和列向量并传递矩阵。通过对模块做适当的配置,可以使模块能够接受矩阵作为模块参数。,MATLAB Functi

16、on,与,Function,模块,除了使用上述的方式进行,Simulink,与,MATLAB,之间的数据交互,用户还可以使用,Functions and Tables,模块库中的,Function,模块(简称为,Fcn,模块)或,Functions and Tables,模块库中的,MATLAB Function,模块(简称为,MATLAB Fcn,模块)进行彼此间的数据交互。,Fcn,模块一般用来实现简单的函数关系,在,Fcn,模块中:,(1),输入总是表示成,u,,,u,可以是一个向量。,(2),可以使用,C,语言表达式,例如,sin(u1)+cos(u2),。,(3),输出永远为一个标量

17、2),可以使用,C,语言表达式,例如,sin(u1)+cos(u2),。,(3),输出永远为一个标量。,MATLAB Fcn,一般用来调用,MATLAB,函数来实现一定的功能,在,MATLAB Fcn,模块中:,(1),所要调用的函数只能有一个输出(可以是一个向量)。,(2),单输入函数只需使用函数名,多输入函数输入需要引用相应的元素,如,mean,、,sqrt,、,myfunc(u(1),u(2),。,(3),在每个仿真步长内都需要调用,MATLAB,解释器。,使用,Fcn,模块与,MATLAB Fcn,模块进行,Simulink,与,MATLAB,之间的数据交互。,使用,Fcn,与,

18、MATLAB Fcn,模块进行数据交互,函数表达式,Matlab,函数,MATLAB,函数,6 Scope,高级使用技术,打印输出,参数设置,视图整体缩放,Y,轴缩放,视图自动缩放,X,轴缩放,保存当前坐标轴设置,恢复坐标轴设置,悬浮,Scope,开关,悬浮时信号选择,去除坐标轴选择,1)Scope,的参数设置,使用,Scope,模块的参数设置选项卡能够对系统仿真输出结果显示进行更多的控制,而不仅仅是上述的简单控制。图,36,、图,37,所示分别为,Scope,模块参数设置选项卡中的,General,选项卡与,Data History,选项卡。,Scope,模块的,General,选项卡,坐标

19、系标签,坐标系数目,显示时间范围,悬浮,Scope,开关,Scope,模块的,Data history,选项卡,信号显示点数限制,保存信号至工作空,间变量,下面简单介绍一下各选项卡的功能与使用。,1),坐标系数目,(,Number of axes,),功能描述:在一个,Scope,输出模块中使用多个坐标系窗口同时输出多个信号。在默认设置下,,Scope,模块仅显示一个坐标系窗口。,2),悬浮,Scope,开关,(,Floating scope,),功能描述:将,Scope,模块切换为悬浮,Scope,模块。,3),显示时间范围,(,Time range,),功能描述:设置信号显示的时间范围。注

20、意:信号显示的时间范围与系统仿真时间范围并不等同,并且坐标系所示的时间范围并非为绝对时间,而是指相对时间范围,坐标系的左下角的时间偏移(,Time offset,)给出了时间的起始偏移量(即显示时间范围的起始时刻)。,4),坐标系标签,(,Tick labels,),功能描述:确定,Scope,模块中各坐标系是否带有坐标轴标签。,下方坐标系使用标签(,bottom axis only,)以及都不使用标签(,none,)。用户最好使用标签,这有利于对信号的观察理解,.,5),信号显示点数限制,(,Limit data points to last,),功能描述:限制信号显示的数据点的数目,,Sc

21、ope,模块会自动对信号进行截取以显示信号的最后,n,个点(这里,n,为设置的数值)。,6),保存信号至工作空间变量,(Save data to workspace),功能描述:将由,Scope,模块显示的信号保存到,Matlab,工作空间变量中,以便于对信号进行更多的定量分析。数据保存类型有三种:带时间变量的结构体(,structure with time,)、结构体(,structure,)以及数组变量(,Array,)。这与前面所介绍的,Sinks,模块库中的,To workspace,模块类似。,此外,在,Scope,模块中的坐标系中单击鼠标右键,选择弹出菜单中坐标系属性设置命令(,a

22、xes properties,),将弹出下图所示的坐标系属性设置对话框。用户可以对,Scope,模块的坐标系标题与显示信号范围进行合适的设置,以满足仿真输出结果显示的需要。,坐标系属性设置对话框,设置信号显,示幅值范围,坐标系标题:一,般采用信号名称,7 S,函数的设计和调用,S,函数是,扩展,Simulink,功能,的强有力工具,它使用户可以利用,MATLAB,、,C,语言、,C+,语言等程序创建自己定义的,Simulink,模块。,C,,,C+,,,Ada,,,and Fortan S-Functions,需要编译为,Mex,文件,就和其它,MEX,文件一样,,Simulink,可以随时动

23、态的调用这些文件。,S,函数使用的是,一种比较特殊的调用格式,,可以和,Simulink,求解器交互式操作。,S-Functions,功能非常全面,适用于连续、离散以及混合系统。,S,函数允许用户向模型中添加自己编写的模块,只要按照一些简单的,规则,,就可以在,S-Functions,添加设计算法。在编写好,S-Functions,之后就可以在,S-Functions,模块中添加相应得函数名,也可以通过封装技术来订制自己的交互界面。,S,函数的调用,在,Simulink,使用,S-Functions,的方法就是从,Simulink,中的,User-Defined Functions,模块库中向

24、Simulink,模型文件窗口中拖放,S-Function,模块,。然后在,S-Functions,模块的对话框中的,S-Functions Name,框中输入,S,函数的文件名,,在,S-Functions Parameters,框中输入,S,函数的,参数值,。,在点击,edit,的选项后可以编辑,S,函数的代码部分,利用,S,函数实现需要的功能主要是代码部分的修改。,对于代码部分的修改,可以使用,MATLAB,语言按照,S-Functions,的格式来编写代码。,MATLAB,提供了一个模板文件,方便,S-Function,的编写,该模板文件位于,MATLAB,根目录,toolbox/S

25、imulink/blocks,下,模板函数的代码如下:,function sys,x0,str,ts=sfuntmpl(t,x,u,flag),switch flag,case 0,sys,x0,str,ts=mdlInitializeSizes;,case 1,sys=mdlDerivatives(t,x,u);,case 2,sys=mdlUpdate(t,x,u);,case 3,sys=mdlOutputs(t,x,u);,case 4,sys=mdlGetTimeOfNextVarHit(t,x,u);,case 9,sys=mdlTerminate(t,x,u);,otherwis

26、e,error(Unhandled flag=,num2str(flag);,end,function sys,x0,str,ts=mdlInitializeSizes,sizes=simsizes;,sizes.NumContStates =0;,sizes.NumDiscStates =0;,sizes.NumOutputs =0;,sizes.NumInputs =0;,sizes.DirFeedthrough=1;,sizes.NumSampleTimes=1;,sys=simsizes(sizes);,x0 =;,str=;,ts =0 0;,function sys=mdlDeri

27、vatives(t,x,u),sys=;,function sys=mdlUpdate(t,x,u),sys=;,function sys=mdlOutputs(t,x,u),sys=;,function sys=mdlGetTimeOfNextVarHit(t,x,u),sampleTime=1;,sys=t+sampleTime;,function sys=mdlTerminate(t,x,u),sys=;,M,文件,S-Functions,可用的子函数说明如下:,(,1,),mdlInitializeSizes,:定义,S-Function,模块的基本特性,包括采样时间、连续或者离散状态

28、的初始条件和,sizes,数组。,(,2,),mdlDerivatives,:计算连续状态变量的微分方程。,(,3,),mdlUpdate,:更新离散状态、采样时间和主时间同步的要求。,(,4,),mdlOutputs,:计算,S-Function,的输出。,(,5,),mdlGetTimeOfNextVarHit:,计算下一个采样时间点的绝对时间。,(,6,),mdlTerminate,:结束仿真任务。,S-function,默认的,4,个输入参数,t,、,x,、,u,和,flag,,他们的次序不能变动,各自代表的意义是:,t,:表示当前仿真时刻,是采用绝对计量的时间值,是从仿真开始模型运行

29、时间的计量值。,x,:模块的状态向量,包括连续状态向量和离散状态向量。,u,:模块的输入向量。,flag,:执行不同操作的标记变量。,S-Function,默认的,4,个返回参数为,sys,、,x0,、,str,和,ts,,他们的次序也不能改变,代表的意义为:,sys,:通用返回函数;,x0,:初始状态值,当,flag,的值为,0,时才有效;,str,:没有明确定义,是,Math Works,为将来应用所作的保留。,ts,:一个,m2,矩阵,它的两列分别表示采样时间间隔和偏移。,8,使用命令操作对系统进行仿真,支持命令窗口运行仿真的函数有,4,个,即,sim,、,simset,、,simget

30、和,set_param,。,(,1,),sim,函数,sim,函数的作用是运行一个由,Simulink,建立的模型,,其调用格式为:,t,x,y =sim(modname,timespan,options,ut);,其中,,,t,为返回的仿真时间向量;,x,为返回的状态矩阵;,y,为返回的输出矩阵;,modname,为系统,Simulink,模型文件名;,timespan,为仿真时间;,options,为仿真参数选择项,由,simset,设置;,ut,为选择外部产生输入,ut=T,u1,u2,un,。,说明,上述参数中,若省略,timespan,options,ut,则由框图模型的对话框,S

31、imulation Parameters,设置仿真参数。,(,2,),simset,函数,simset,函数用来为,sim,函数,建立或编辑仿真参数或规定算法,并把设置结果保存在一个结构变量中。它有如下,4,种用法:,(a)options=simset(property,value,),:把,property,代表的参数赋值为,value,,结果保存在结构,options,中。,(b)options=simset(old_opstruct,property,value,),:把已有的结构,old_opstruct(,由,simset,产生,),中的参数,property,重新赋值为,value

32、结果保存在新结构,options,中。,(c)options=simset(old_opstruct,new_opstruct),:用结构,new_opstruct,的值替代已经存在的结构,old_opstruct,的值。,(d)simset,:显示所有的参数名和它们可能的值。,(3)simget,函数,simget,函数用来获得模型的参数设置值。如果参数值是用一个变量名定义的,,simget,返回的也是该变量的值而不是变量名。如果该变量在工作空间中不存在,(,即变量未被赋值,),,则,Simulink,给出一个出错信息。该函数有如下,3,种用法:,(a)struct=simget(mod

33、name),:返回指定模型,model,的参数设置的,options,结构。,(b)value=simget(modname,property),:返回指定模型,model,的参数,property,的值。,(c)value=simget(options,property),:获取,options,结构中的参数,property,的值。如果在该结构中未指定该参数,则返回一个空阵。,用户只需输入能够唯一识别它的那个参数名称的前几个字符即可,对参数名称中字母的大小写不作区别。,(4)set_param,函数,set_param,函数的功能很多,这里只介绍如何用,set_param,函数设置,Sim

34、ulink,仿真参数以及如何开始、暂停、终止仿真进程或者更新显示一个仿真模型。,(a),设置仿真参数,调用格式为,:,set_param(modname,property,value,),其中,modname,为设置的模型名,,property,为要设置的参数,,value,是设置值。这里设置的参数可以有很多种,而且和用,simset,设置的内容不尽相同,相关参数的设置可以参考有关资料。,(b),控制仿真进程,调用格式为,:,set_param(modname,SimulationCommand,cmd),其中,mode,为仿真模型名称,而,cmd,是控制仿真进程的各个命令,包括,start,

35、stop,、,pause,、,comtinue,或,update,。,在使用这两个函数的时候,需要注意必须先把模型打开。,第,7,章,Simulink,的应用,7.1 Simulink,工作平台的启动,7.2 Simulink,仿真原理,7.3 Simulink,模块库,7.4,仿真模型的建立和模块参数及属性的设置,7.5,其他应用模块集及,Simulink,扩展库,7.1 Simulink,工作平台,启动,Simulink,,通常有两种方法:,(,1,)在,MATLAB,命令窗口中直接输入,Simulink,命令;,(,2,)在,MATLAB,工具栏上单击,Simulink,按钮,如图,

36、7.1,所示。,图,7.1,启动,Simulink,这样就可打开了,Simulink,的,Simulink Library Brower(,库模块浏览器,),,如图,7.2,所示。在菜单栏中执行,File/New/Model,命令,就建立了一个名为,untitled,的模型窗口,如图,7.3,所示。在建立了空的模块窗口后,用户可以在此窗口中创建自己需要的,Simulink,模型。,图,7.2,库模块浏览器,图,7.3,新建的空白模块窗口,7.2,Simulink,的仿真原理,7.2.1 Simulink,仿真模块,通常,,Simulink,仿真系统包括输入,(Input),、状态,(state

37、s),和输出,(Output),三个部分。,输入模块,:即信号源模块,包括常数字信号源和用户自定义信号;,状态模块,:即被模拟的系统模块,是系统建模的核心和主要部分;,输出模块,:即信号显示模块,它能够以图形方式、文件格式进行显示。,注意,:在设计一个模型时,必须先确定这三个部分的意,以及它们之间的联系;,Simulink,的仿真模型并非一定要完全包括这三个部分,它可以缺少其中一个或者两个;,Simulink,的状态模块可以是连续的、离散的,或者它们二者的结合。,7.2.2 Simulink,仿真过程,1,初始化阶段,对模型的参数进行估计,得到它们实际计算的值。,展开模型的各个层次;,按照更新

38、的次序对模型进行排序;,确定那些显式化的信号属性,并检查每个模块是否能够接受连接它们输入端的信号;,确定所有非显式的信号采样时间模块的采样时间;,分配和初始化存储空间,以便存储每个模块的状态和当前值的输出。,2,模型执行阶段,模型仿真是通过数值积分来进行完成的,计算数值积分可以采用以下两步来进行:,按照秩序计算每个模块的积分;,根据当前输入和状态来决定状态的微分,得到微分矢量,然后把它返回给解法器,以计算下一个采样点的状态矢量。在每一个时间步中,,Simulink,依次解决下列问题:,按照秩序更新模块的输出;,按照秩序更新模块的状态;,检查模块连续状态的不连续点;,计算下一个仿真时间步的时间。

39、7.3.1,连续模块库,(Continuous),在连续模块,(Continuous),库中包括了常见的连续模块,这些模块如图所示。,7.3 Simulink,模块库,在库模块浏览器中单击,Simulink,前面的,“,+”,号,就能够看到,Simulink,的模块库,如图,7.2,所示。,4.,传递函数模块,(Transfer Fcn),功能:,用执行一个线性传递函数。,5.,零极点传递函数模块,(Zero-Pole),功能:,用于建立一个预先指定的零点、极点,并用延迟算子,s,表示的连续。,6,存储器模块,(Memory),功能:,保持输出前一步的输入值。,7,传输延迟模块,(Trans

40、port Delay),功能:,用于将输入端的信号延迟指定的时间后再传输给输出信号。,8,可变传输延迟模块,(Variable Transport Delay),功能:,用于将输入端的信号进行可变时间的延迟。,1.,积分模块,(Integrator),:,功能:,对输入变量进行积分。说明:模块的输入可以是标量,也可以是矢量;输入信号的维数必须与输入信号保持一致。,2.,微分模块,(Derivative),功能:,通过计算差分,u/,t,近似计算输入变量的微分。,3.,线性状态空间模块,(State-Space),功能:,用于实现以下数学方程描述的系统:,7.3.2,离散模块库,(Discret

41、e),离散模块库,(Discrete),主要用于建立离散采样的系统模型,包括的主要模块,如图所示。,1,零阶保持器模块,(Zero-Order-Hold),功能:,在一个步长内将输出的值保持在同一个值上。,2,单位延迟模块,(Unit Delay),功能:,将输入信号作单位延迟,并且保持一个采样周期相当于时间算子,z,-1,。,3,离散时间积分模块,(Discrete Time Integrator),功能:,在构造完全离散的系统时,代替连续积分的功能。使用的积分方法有:向前欧拉法、向后欧拉法、梯形法。,4,离散状态空间模块,(Discrete State Space),功能:,用于实现如下数

42、学方程描述的系统:,5,离散滤波器模块,(Discrete Filter),功能:,用于实现无限脉冲响应,(IIR),和有限脉冲响应,(FIR),的数字滤波器。,6,离散传递函数模块,(Discrete Transfer Fcn),功能:,用于执行一个离散传递函数。,7,离散零极点传递函数模块,(Discrete Zero-Pole),功能:,用于建立一个预先指定的零点、极点,并用延迟算子,z,-1,表示的离散系统。,8,一阶保持器模块,(First Order Hold),功能:,在一定时间间隔内保持一阶采样。,7.3.3,函数与表格模块库,(Function&Table),函数与表格模块库

43、Function&Table),主要实现各种一维、二维或者更高维函数的查表,另外用户还可以根据自己需要创建更复杂的函数。该模块库包括多个主要模块、如图,7.7,所示。,1.,一维查表模块,(Look-Up Table),一维查表模块,(Look-Up Table),实现对单路输入信号的查表和线性插值。,2,二维查表模块,(Look-Up Table 2-D),功能:,根据给定的二维平面网格上的高度值,把输入的两个变量经过查表、插值,计算出模块的输出值,并返回这个值。,说明:对二维输入信号进行分段线性变换。,3,自定义函数模块,(Fcn),功能:,用于将输入信号进行指定的函数运算,最后计算出

44、模块的输出值。,说明:输入的数学表达式应符合,C,语言编程规范;与,MATLAB,中的表达式有所不同,不能完成矩阵运算。,4,MATLAB,函数模块,(MATLAB Fcn),功能:,对输入信号进行,MATLAB,函数及表达式的处理。,说明:模块为单输入模块;能够完成矩阵运算。,注意:从运算速度角度,,Math function,模块要比,Fcn,模块慢。当需要提高速度时,可以考虑采用,Fcn,或者,S,函数模块。,5,S-,函数模块,(S-Function),功能:,按照,Simulink,标准,编写用户自己的,Simulink,函数。它能够将,MATLAB,语句、,C,语言等编写的函数放在

45、Simulink,模块中运行,最后计算模块的输出值。,7.3.4,数学模块库,(Math),数学模块库,(Math),包括多个数学运算模块,如图,7.8,所示。,3.,矢量的点乘模块,(Dot Product),功能:,矢量的点乘模块,(Dot Product),用于实现输入信号的点积运算。,4.,增益模块,(Gain),功能:,增益模块,(Gain),的作用是把输入信号乘以一个指定的增益因子,使输入产生增益。,1.,求和模块,(Sum),功能:,求和模块,(Sum),用于对多路输入信号进行求和运算,并输出结果。,2.,乘法模块,(Product),功能:,乘法模块,(Product),用于

46、实现对多路输入的乘积、商、矩阵乘法或者模块的转置等。,5.,常用数学函数模块,(Math Function),功能:,用于执行多个通用数学函数,其中包含,exp,、,log,、,log10,、,square,、,sqrt,、,pow,、,reciprocal,、,hypot,、,rem,、,mod,等。,6.,三角函数模块,(Trigonometric Function),功能:,用于对输入信号进行三角函数运算,共有,10,种三角函数供选择。,7.,特殊数学模块,特殊数学模块中包括求最大最小值模块,(MinMax),、取绝对值模块,(Abs),、符号函数模块,(Sign),、取整数函数模块,(

47、Rounding Function),等。,8.,数字逻辑函数模块,数字逻辑函数模块包括复合逻辑模块,(Combinational Logic),、逻辑运算符模块,(Logical Operator),、位逻辑运算符模块,(Bitwise Logical Operator),等。,9.,关系运算模块,(Relational Operator),关系符号包括:,=(,等于,),、,(,不等于,),、,(,小于,),、,(,大于,),、,=(,大于等于,),等。,10.,复数运算模块,复数运算模块包括计算复数的模与幅角,(Complex to Magnitude-Angle),、由模和幅角计算复数

48、Magnitude-Angle to Complex),、提取复数实部与虚部模块,(Complex to Real and Image),、由复数实部和虚部计算复数,(Real and Image to Complex),。,7.3.5,非线性模块,(Nonlinear),非线性模块,(Nonlinear),中包括一些常用的非线性模块,如图,7.9,所示。,1.,比率限幅模块,(Rate Limiter),功能:,用于限制输入信号的一阶导数,使得信号的变化率不超过规定的限制值。,2,饱和度模块,(Saturation),功能:,用于设置输入信号的上下饱和度,即上下限的值,来约束输出值。,3

49、量化模块,(Quantizer),功能:,用于把输入信号由平滑状态变成台阶状态。,4,死区输出模块,(Dead Zone),功能:,在规定的区内没有输出值。,5,继电模块,(Relay),功能:,继电模块,(Relay),用于实现在两个不同常数值之间进行切换。,6,选择开关模块,(Switch),功能:,根据设置的门限来确定系统的输出。,7.3.6,信号与系统模块库,(signals&Systems),信号与系统模块库,(signals&Systems),包括的主要模块如图,7.11,所示。,1.Bus,信号选择模块,(Bus Selector),功能:,用于得到从,Mux,模块或其它模块引

50、入的,Bus,信号。,2.,混路器模块,(Mux),功能:,把多路信号组成一个矢量信号或者,Bus,信号。,3.,分路器模块,(Demux),功能:,把混路器组成的信号按照原来的构成方法分解成多路信号。,4.,信号合成模块,(Merge),功能:,把多路信号进行合成一个单一的信号。,5.,接收,/,传输信号模块,(From/Goto),功能:,接收,/,传输信号模块,(From/Goto),常常配合使用,,From,模块用于从一个,Goto,模块中接收一个输入信号,,Goto,模块用于把输入信号传递给,From,模块。,6,初始值设定模块,(IC),功能:,初始值设定模块,(IC),用于设定与

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服