您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > matlab > MATLAB基础_1
1MATLAB基础及控制系统辅助设计武汉大学动机学院2007.42第一部分MATLAB基础及其基本应用第二部分模糊控制系统设计—模糊逻辑工具箱应用模糊逻辑控制系统特点模糊逻辑控制系统基本结构原理使用GUI工具建立FIS系统与Simulink一起工作MATLAB基础MATLAB的程序设计MATLAB控制系统工具箱及其应用SIMULINK与水轮机调节系统的仿真本部分讨论MATLAB的基本知识及用于控制系统仿真和简单辅助分析的基本方法。选取的实例主要为水轮机调节系统。本部分主要讨论MATLAB模糊逻辑工具箱在模糊控制系统设计中的应用。3第三部分神经网络与应用—神经网络工具箱应用本部分主要讨论MATLAB神经网络工具箱及其GUI工具的应用。感知器(Perceptron)线性神经网络(Linearnetwork)BP网络(BackPropagationnetwork)径向基函数网络(RadialBaseFunctionnetwork,RBF)神经网络图形用户界面应用神经网络Simulink模型设计4第一部分MATLAB基础及其基本应用第一章MATLAB基础参考教材:《MATLAB控制系统辅助设计…工程师工具软件应用系列》欧阳黎明编著,国防工业出版社。《Matlab神经网络与应用》,董长虹编著,国防工业出版社。《Matlab模糊逻辑工具箱的分析与应用》,闻新等编著,科学出版社。其它相关教材51.1MATLAB与控制系统仿真1.1.1控制系统与系统仿真一般来说,控制系统仿真过程可以分为五个步骤:(1)系统建模:根据要分析的控制系统,建立相应的数学模型。(2)仿真算法:找到合适的仿真算法。MATLAB已经被确认为准确、可靠的科学计算标准软件。(3)仿真语言:应用仿真语言编写计算程序。MTLAB语言有非常突出的优点,是控制系统仿真首选的仿真语言。(4)仿真计算:根据初步的仿真结果对该数学模型进行验证。(5)系统仿真:进行系统仿真,并认真地分析仿真的结果。仿真算法、仿真语言和仿真程序构成了数字仿真软件。确认数学模型的正确性、仿真算法的可行性、仿真程序的准确性和可靠性,最后编制成一个成熟的仿真软件。6控制系统仿真在教学实践中应用越来越普遍。•对于改进教学效果、给学生提供形象化的信息、激发学生的学习兴趣、提高学生的自学能力、加强学生对授课内容的理解等无疑是十分有益的。有利于对学生分析问题的能力和解决问题的能力的培养。•学生掌握了系统仿真的方法以后,不但使他加强了对所学课程的理解,同时还便于钻研一些他本人感兴趣的问题,有利于部分学有余力的学生进一步自学的要求。•在美国和欧洲大学中,九十年代将MATLAB正式列入了电气工程专业研究生和本科生的教学计划,MATLAB是必须掌握的基本工具。•在设计研究单位和工业界,MATLAB也成为工程师们应该掌握的一种工具,是被认作进行高效研究、开发的首选软件工具。71.1.2MATLAB及其课程学习MATLAB具有计算机语言的属性,因此可以看作是一种使用方便、语句效率很高、更接近于人们思维和表达习惯的一种计算机语言。MATLAB更可以被认为是一种进行科学研究的强有力工具。理由是具有由各领域顶尖科学家参与开发的、功能丰富的工具箱。在这些工具箱的支持下,人们在各个研究领域几乎都可以找到它的应用。与学习其它课程有所不同,MATLAB牵扯面极广,几乎涉及现代科学的所有领域,因此,学习MATLAB必须与个人所从事的学科相结合。与学习计算机语言类似,必须勤于实践。挖掘其功能为科学研究服务,主要要靠自己努力。本课程主要侧重于怎样做,仅在必要时简要说明为什么。81.1.3MATLAB的发展史MATLAB名字由MATrix和LABoratory两词的前三个字母组合而成。那是20世纪七十年代,时任美国新墨西哥大学计算机科学系主任的CleveMoler出于减轻学生编程负担的动机,为学生设计了一组调用LINPACK和EISPACK矩阵软件工具包库程序的的“通俗易用”的接口,此即用FORTRAN编写的萌芽状态的MATLAB。1984年由Little、Moler、SteveBangert合作成立MathWorks公司,并把MATLAB正式推向市场。从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。1997年仲春,MATLAB5.0版问世,紧接着是5.1、5.2,以及和1999年春的5.3版。当前的最新版为7.x。现今的MATLAB拥有更丰富的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。91.1.4MATLAB语言的主要特点(1)具有丰富的数学功能包括矩阵各种运算。如:正交变换、三角分解、特征值、常见的特殊矩阵等。包括各种特殊函数。如:贝塞尔函数、勒让德函数、伽码函数、贝塔函数、椭圆函数等。包括各种数学运算功能。如:数值微分、数值积分、插值、求极值、方程求根、FFT、常微分方程的数值解等。(2)具有很好的图视系统可方便地画出两维和三维图形。图形用户界面GUI制作工具,可以制作用户菜单和控件。使用者可以根据自己的需求编写出满意的图形界面。高级图形处理。如:色彩控制、句柄图形、动画等。101.1.3MATLAB语言的主要特点(续)(3)可以直接处理声言和图形文件。(4)具有若干功能强大的应用工具箱。(5)使用方便,具有很好的扩张功能。声言文件。如:WAV文件(例:wavread,sound等)。图形文件。如:bmp、gif、pcx、tif、jpeg等文件。对于控制系统的应用如:SIMULINK、Control、NeuralNetwork、FuzzyLogic等多种工具箱。可以把M文件转变为独立于平台的EXE可执行文件。使用MATLAB语言编写的程序可以直接运行,无需编译。MATLAB的应用接口程序API是MATLAB提供的十分重要的组件,由一系列接口指令组成。用户就可在FORTRAN或C中,把MATLAB当作计算引擎使用。111.1.3MATLAB语言的主要特点(续)(6)具有很好的帮助功能提供十分详细的帮助文件(PDF、HTML、demo文件)。联机查询指令:help指令(例:helpelfun,helpexp,helpsimulink),lookfor关键词(例:lookforfourier)。121.2MATLAB简介1.2.1MATLAB的基本结构及环境就其使用效果而言,MATLAB可以被认为是一种解释性编程语言。其优点在于语法简单,程序易于调试,交互性,且单一语句的效率很高。正因为如此,它被称为第四代编程语言。在图1-2-1中的语言内核及编译控制程序运行部分提供了该语言的运行环境。图1-2-1从外部表现来说,在Windows98/2000/XP系统环境下安装好MATLAB后,双击MATLAB图标或从“开始”菜单打开MATLAB,即可进入MATLAB集成环境,也就是MATLAB命令窗(MATLABCommandWindow)。在后台,与该命令窗对应的是其工作空间(Workspace)。MATLAB的所有变量,运算结果均存贮在这个空间中,并由该空间管理我们所有输入的命令和函数调用。命令窗外形如图1-2-2所示。131.2.2MATLAB的主要功能MATLAB发展至今,已不仅仅是单纯矩阵运算的数学处理软件,其开放式的结构吸引了许多优秀人才编写M函数和工具箱,目前已经渗透到了工程计算和设计的各个领域。其中与控制系统设计与仿真相关的功能大致有以下各项:一.数值计算及分析(1)向量、矩阵的运算分析。(2)复数运算及分析(3)微分方程的求解(4)稀疏矩阵的运算(5)特殊函数的计算机分析(6)快速傅里叶变换及信号处理矩阵计算(7)数据分析及统计计算二.程序语言及算法实现(1)程序流程控制语句(2)C语言产生器14(3)文件管理三.MATLAB绘图功能(1)二维图形绘制(2)特殊坐标图形绘制及修改(3)三维坐标图形绘制四.MATLAB与高级语言接口(1)MATLAB与C语言接口及库函数(2)MATLAB与C++语言接口及库函数(3)MATLAB编译器五.Simulink建模与仿真六.功能强大的工具箱(1)控制系统工具箱(ControlSystemToolbox)(2)鲁棒控制工具箱(RobustControlToolbox)(3)模型预测控制工具箱(ModelPredictiveControlToolbox)(4)mu分析与校正工具箱(muAnalysisandSysthesisToolbox)(5)多变量系统频域设计工具箱(Multi-VariableFrequencyDesignToolbox)15(6)定量反馈控制工具箱(QuantitativeFeedbackTheoryToolbox)(7)频域系统辨识工具箱(FrequencyDomainSystemIdentifica-tionToolbox)(8)系统辨识工具箱(SystemIdentificationToolbox)(9)神经网工具箱(NeuralNetworkToolbox)(10)小波分析工具箱(WaveletToolbox)(11)最优化工具箱(OptimizationToolbox)(12)偏微分方程工具箱(PartialDifferentialEquationToolbox)(13)信号处理工具箱(SignalProcessingToolbox)(14)图像处理工具箱(1mageProcessingToolbox)(15)扩展符号数学工具箱(ExtendedSymbolicMathToolbox)1.2.3MATLAB的主要管理命令help命令:helpexp,helpsimulink等;lookfor命令:lookfor关键词,例:lookforfourier;demo:运行演示程序;16who命令:列出当前工作空间的变量;whos命令:列出当前工作空间的变量(长表);clear命令:清除工作空间的所有变量;save和load命令:在MATLAB的CommandWindow中可以方便地将数据存成文件,也可以随时调用数据文件。这可通过选择CommandWindow的菜单项File\SaveWorkspaceAs…来实现。注意,所有MATLAB的数据文件后缀名必须为mat,即:XXX.mat。数据的存储和调用,除了菜单操作之外,还可以直接在工作空间中输入命令。键入命令save,则将工作空间中所有变量存入到磁盘上的MATLAB.mat文件中,当MATLAB再被运行时,键入命令1oad,则将这些变量从MATLAB.mat文件中调出并重新装入到MATLAB的工作空间中去。17save和1oad命令的后边也可以跟文件名和指定的变量名,若仅是直接使用save和load命令,则只能将所有变量存入到MATLAB.mat文件中和从MATLAB.mat文件中将所有变量重新装人工作空间,而加上文件名和指定的变量名后可实现好几种功能,如:Savesy将所有变量存入到sy.mat文件中;1oadsy将变量从sy.mat文件中调出来,放入当前的工作空间中;若欲存入指定的变量到某个文件中,可使用savesyxy;loadsyxy将存入的指定变量x,y从sy.mat文件中重新调出到当前工作空间中。此外,SIMULINK也可产生.mat文件,其调用方法与上述方法相同。1.2.4MATLAB的基本使用方法有三种方法使用MATLAB:(1)演草纸式的数学运算18用MATLAB进行数学运算,就像在计算器上算算术一样简单方便。因此,MATLAB被誉为“演草纸式的科学计算语言”。例如,在MATLAB的CommandWindow下可以极为方便地进行下列算术运算:4+6+2↙ans=12注意,输入who↙命令可检查在工作空间中所建立的变量名。当前工作空间中的变量ans为默认变量,这意味着如果我们没有指定变量的话
本文标题:MATLAB基础_1
链接地址:https://www.777doc.com/doc-7027701 .html