第6讲-matlab工具箱介绍与仿真基础_第1页
第6讲-matlab工具箱介绍与仿真基础_第2页
第6讲-matlab工具箱介绍与仿真基础_第3页
第6讲-matlab工具箱介绍与仿真基础_第4页
第6讲-matlab工具箱介绍与仿真基础_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第六讲matlab工具箱,matlab工具箱已经成为一个系列产品,matlab主工具箱和各种工具箱(toolbox)。,一、工具箱简介,功能型工具箱通用型功能型工具箱主要用来扩充matlab的数值计算、符号运算功能、图形建模仿真功能、文字处理功能以及与硬件实时交互功能,能够用于多种学科。,领域型工具箱专用型领域型工具箱是学科专用工具箱,其专业性很强,比如控制系统工具箱(ControlSystemToolbox);信号处理工具箱(SignalProcessingToolbox);财政金融工具箱(FinancialToolbox)等等。只适用于本专业。,Matlab常用工具箱,MatlabMainToolboxmatlab主工具箱ControlSystemToolbox控制系统工具箱CommunicationToolbox通讯工具箱FinancialToolbox财政金融工具箱SystemIdentificationToolbox系统辨识工具箱FuzzyLogicToolbox模糊逻辑工具箱Higher-OrderSpectralAnalysisToolbox高阶谱分析工具箱,ImageProcessingToolbox图象处理工具箱LMIControlToolbox线性矩阵不等式工具箱ModelpredictiveControlToolbox模型预测控制工具箱-AnalysisandSynthesisToolbox分析工具箱NeuralNetworkToolbox神经网络工具箱OptimizationToolbox优化工具箱PartialDifferentialToolbox偏微分方程工具箱RobustControlToolbox鲁棒控制工具箱,SignalProcessingToolbox信号处理工具箱SplineToolbox样条工具箱StatisticsToolbox统计工具箱SymbolicMathToolbox符号数学工具箱SimulinkToolbox动态仿真工具箱SystemIdentificationToolbox系统辨识工具箱WaveleToolbox小波工具箱等等,例如:控制系统工具箱,连续系统设计和离散系统设计状态空间和传递函数以及模型转换时域响应(脉冲响应、阶跃响应、斜坡响应)频域响应(Bode图、Nyquist图)根轨迹、极点配置,优化工具箱,线型规划和二次规划求函数的最大值和最小值多目标优化约束条件下的优化非线型方程求解,1.MATLAB求解优化问题的主要函数,优化函数的输入变量,使用优化函数或优化工具箱中其它优化函数时,输入变量见下表:,优化函数的输出变量下表:,控制参数options的设置,(3)MaxIter:允许进行迭代的最大次数,取值为正整数.,Options中常用的几个参数的名称、含义、取值如下:,(1)Display:显示水平.取值为off时,不显示输出;取值为iter时,显示每次迭代的信息;取值为final时,显示最终结果.默认值为final.,(2)MaxFunEvals:允许进行函数评价的最大次数,取值为正整数.,例:opts=optimset(Display,iter,TolFun,1e-8)该语句创建一个称为opts的优化选项结构,其中显示参数设为iter,TolFun参数设为1e-8.,控制参数options可以通过函数optimset创建或修改。命令的格式如下:,(1)options=optimset(optimfun)创建一个含有所有参数名,并与优化函数optimfun相关的默认值的选项结构options.,(2)options=optimset(param1,value1,param2,value2,.)创建一个名称为options的优化选项参数,其中指定的参数具有指定值,所有未指定的参数取默认值.,(3)options=optimset(oldops,param1,value1,param2,value2,.)创建名称为oldops的参数的拷贝,用指定的参数值修改oldops中相应的参数.,用Matlab解无约束优化问题,其中(3)、(4)、(5)的等式右边可选用(1)或(2)的等式右边。函数fminbnd的算法基于黄金分割法和二次插值法,它要求目标函数必须是连续函数,并可能只给出局部最优解。,常用格式如下:(1)x=fminbnd(fun,x1,x2)(2)x=fminbnd(fun,x1,x2,options)(3)x,fval=fminbnd(.)(4)x,fval,exitflag=fminbnd(.)(5)x,fval,exitflag,output=fminbnd(.),主程序为wliti1.m:f=2*exp(-x).*sin(x);fplot(f,0,8);%作图语句xmin,ymin=fminbnd(f,0,8)f1=-2*exp(-x).*sin(x);xmax,ymax=fminbnd(f1,0,8),例2对边长为3米的正方形铁板,在四个角剪去相等的正方形以制成方形无盖水槽,问如何剪法使水槽的容积最大?,解,先编写M文件fun0.m如下:functionf=fun0(x)f=-(3-2*x).2*x;,主程序为wliti2.m:x,fval=fminbnd(fun0,0,1.5);xmax=xfmax=-fval,运算结果为:xmax=0.5000,fmax=2.0000.即剪掉的正方形的边长为0.5米时水槽的容积最大,最大容积为2立方米.,命令格式为:(1)x=fminunc(fun,X0);或x=fminsearch(fun,X0)(2)x=fminunc(fun,X0,options);或x=fminsearch(fun,X0,options)(3)x,fval=fminunc(.);或x,fval=fminsearch(.)(4)x,fval,exitflag=fminunc(.);或x,fval,exitflag=fminsearch(5)x,fval,exitflag,output=fminunc(.);或x,fval,exitflag,output=fminsearch(.),2、多元函数无约束优化问题,标准型为:minF(X),3fminunc为中型优化算法的步长一维搜索提供了两种算法,由options中参数LineSearchType控制:LineSearchType=quadcubic(缺省值),混合的二次和三次多项式插值;LineSearchType=cubicpoly,三次多项式插,使用fminunc和fminsearch可能会得到局部最优解.,说明:,fminsearch是用单纯形法寻优.fminunc的算法见以下几点说明:,1fminunc为无约束优化提供了大型优化和中型优化算法。由options中的参数LargeScale控制:LargeScale=on(默认值),使用大型算法LargeScale=off(默认值),使用中型算法,2fminunc为中型优化算法的搜索方向提供了4种算法,由options中的参数HessUpdate控制:HessUpdate=bfgs(默认值),拟牛顿法的BFGS公式;HessUpdate=dfp,拟牛顿法的DFP公式;HessUpdate=steepdesc,最速下降法,例3minf(x)=(4x12+2x22+4x1x2+2x2+1)*exp(x1),1、编写M-文件fun1.m:functionf=fun1(x)f=exp(x(1)*(4*x(1)2+2*x(2)2+4*x(1)*x(2)+2*x(2)+1);2、输入M文件wliti3.m如下:x0=-1,1;x=fminunc(fun1,x0);y=fun1(x),3、运行结果:x=0.5000-1.0000y=1.3029e-10,3.用fminsearch函数求解,输入命令:f=100*(x(2)-x(1)2)2+(1-x(1)2;x,fval,exitflag,output=fminsearch(f,-1.22),运行结果:x=1.00001.0000fval=1.9151e-010exitflag=1output=iterations:108funcCount:202algorithm:Nelder-Meadsimplexdirectsearch,信号处理工具箱数字和模拟滤波器设计、应用及仿真谱分析和估计FFT、DCT等变换参数化模型,学科前沿最新的工具箱,模糊控制逻辑工具箱友好的交互设计界面,自适应神经-模糊学习、聚类以及Sugeno推理神经网络工具箱神经网络系统具有集体运算的能力和自适应的学习能力。具有很强的容错性和鲁棒性,善于联想、综合和推广。,matlab6功能扩充的工具箱有:控制系统工具箱、图象处理工具箱、神经元网络工具箱、信号处理工具箱、simulink仿真工具箱Matlab6新增工具箱有:虚拟现实工具箱电力系统工具箱仪器仪表控制工具箱报告编辑工具箱,工具箱的扩充功能:,用户可以修改工具箱中的函数,更为重要的是用户可以通过编制m文件来任意地添加工具箱中原来没有的工具函数。此功能充分体现了matlab语言的开发性。,二、通用工具箱,Matlab主工具箱前面课程所介绍的数值计算、符号运算、绘图以及句柄绘图都是matlab主工具箱的内容,是matlab的基本部分,也是我们课程的重点。Matlab主工具箱位于:c:matlabtoolboxmatlabmatlab主工具箱是任何版本的matlab都不可缺少的。,除toolboxmatlab之外的工具箱,在比较完整的专业版matlab语言中有20多个工具箱。这些工具箱是需要单独选择购买的。matlab主工具箱共有21个函数库datafun数据分析函数库sonnds声音处理函数库dde动态数据交换函数库elfun初等数学函数库specmat特殊矩阵函数库,elmat初等矩阵和时间函数库funfun函数功能和数学分析函数库general通用命令函数库graphics通用图形函数库iofun底层输入输出函数库lang语言结构函数库matfun矩阵线性代数函数库ops运算符和逻辑函数库plotxy二维绘图函数库plotxyz三维绘图函数库,color颜色和光照函数库polyfun多项式函数库sparfun稀疏矩阵函数库strfun字符串函数库demosmatlab演示函数库matlab6新增函数库:uitools图形界面函数库datatypes数据类型函数库graphics句柄绘图函数库graph3d三维绘图,各函数库中的函数可用help函数库名查询,或type函数名方法查询例:helpplotxyTwodimensionalgraphics.ElementaryX-Ygraphs.plot-Linearplot.loglog-Log-logscaleplot.semilogx-Semi-logscaleplot.semilogy-Semi-logscaleplot.fill-Drawfilled2-Dpolygons.,SpecializedX-Ygraphs.polar-Polarcoordinateplot.bar-Bargraph.stem-Discretesequenceorstemplot.stairs-Stairstepplot.errorbar-Errorbarplot.hist-Histogramplot.rose-Apass-Compassplot.feather-Featherplot.fplot-Pet-Comet-liketrajectory.,Graphannotation.title-Graphtitle.xlabel-X-axislabel.ylabel-Y-axislabel.text-Textannotation.gtext-Mouseplacementoftext.grid-Gridlines.SeealsoPLOTXYZ,GRAPHICS.,helpspecmatcompan-Companionmatrix.gallery-Severalsmalltestmatrices.hadamard-Hadamardmatrix.hankel-Hankelmatrix.hilb-Hilbertmatrix.invhilb-InverseHilbertmatrix.magic-Magicsquare.pascal-Pascalmatrix.toeplitz-Toeplitzmatrix.vander-Vandermondematrix.,2.符号运算工具箱,主要功能以符号为对象的数学。在大学教学中,符号数学是各专业都能用到的。符号运算无须事先对独立变量赋值,运算结果以标准的符号形式表达。特点:运算对象可以是没赋值的符号变量可以获得任意精度的解,3.Simulink动态仿真工具箱,simulink工具箱简介simulink是实现动态系统建模、仿真和分析的一个集成环境,使得matlab的功能得到进一步扩展,它可以非常容易的实现可视化建模,把理论研究和工程实践有机的结合在一起。大部分专用工具箱只要以matlab主包为基础就能运行,有少数工具箱(通讯工具箱、信号处理工具箱等)则要求有simulink工具箱的支持。,由于matlab和simulink是集成在一起的,因此用户可以在两种环境下对自己的模型进行仿真、分析和修改。不需要命令行编程,由方框图来产生m文件(s函数)当创建好的框图保存后,相应的m文件就自动生成,这个.m文件包含了该框图的所有图形及数学关系信息。框图表示比较直观,容易构造,运行速度较快。,Simulink提供了大量的系统模块,包括信号、运算、显示和系统等多方面的功能。为了创建大型系统,Simulink提供了系统分层排列的功能,类似于巢式系统设计。模型创建完成后,可以启动系统的仿真功能分析系统的动态特性。Simulink内置的分析工具包括各种仿真算法、系统线性化、寻求平衡点等。仿真结果可以以图形的方式显示在示波器窗口,便于用户观察系统的输出结果。,Simulink优点适应面广:包括线性、非线性系统;离散、连续系统结构和流程清晰:都以方块图的形式呈现仿真精细、更贴近实际,simulink的模型:simulink模型在视觉上表现为方框图,在文件上则是扩展名为m的ASCII代码(matlab6以后的版本扩展名改为mdl);在数学上体现为一组微分方程或差分方程;在行为上模拟了物理器件构成的实际系统的动态特性。simulink的一般结构:,输入,系统,输出,仿真原理当在框图视窗中进行仿真的同时,matlab实际上是运行保存于simulink内存中s函数的映象文件,而不是解释运行该m文件。s函数并不是标准m文件,它是m文件的一种特殊形式。结构图创建方法一个动态系统的创建过程,就是一个方框图的绘制过程,具体步骤:在matlab命令窗口键入simulink,选则File菜单New选项,出现一个新窗口,即可绘制结构图。,MATLAB7.0中的形式为:,例:模拟一个微分方程x=-2x+u,.,方框图绘制完毕,一个动态系统模型也就创建好了。选择File菜单Save保存图形,就自动生成一个可在matlab命令窗口运行的m文件。然后就可用simulation菜单中start开始仿真了。,仿真结果:,t,x,y=sim(sim5,20);plot(t,y),plot(t,yout),X+0.2x+0.4x=0.2u(t),示波器中的图像,三、工具箱和工具箱函数的查询办法,matlab的目录结构目录树c:matlabbinc:matlabexternc:matlabsimulinkc:matlabtoolboxcommc:matlabtoolboxcontrolc:matlabtoolboxsymbolic,.,matlabbin该目录包含matlab系统运行文件,matlab帮助文件及一些必需的二进制文件。matlabextern包含MATLAB与C,FORTRAN语言的交互所需的函数定义和连接库。matlabsimulink包含建立simulinkMEX-文件所必需的函数定义及接口软件。matlabtoolbox各种工具箱,MathWorks公司提供的商品化matlab工具箱有30多种。toolbox目录下的子目录数量是随安装情况而变的。,2.工具箱matlabtoolbox工具箱在windows下由目录检索得到。也可以在matlab下得到,启动matlab后cd_.matlab缺省目录是bin,回到matlab目录下cd_toolbox,dir工具箱清单.compile

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论