1、计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 第第6章章 MATLAB及其仿真应用及其仿真应用 MATLAB是当今国际上公认的在科技领域方面是当今国际上公认的在科技领域方面最为优秀的应用软件和开发环境。最为优秀的应用软件和开发环境。在欧美各高等院校,在欧美各高等院校,MATLAB已经成为应用线已经成为应用线性代数、自动控制理论、数据统计、数字信号处性代数、自动控制理论、数据统计、数字信号处理、时间序
2、列分析、动态系统仿真、图形处理等理、时间序列分析、动态系统仿真、图形处理等高级课程的基本数学工具,是硕士生、博士生必高级课程的基本数学工具,是硕士生、博士生必须掌握的基本技能。须掌握的基本技能。在设计研究单位和工业部门,在设计研究单位和工业部门,MATLAB已经超已经超出实验室,广泛用于研究和解决具体的工程问题。出实验室,广泛用于研究和解决具体的工程问题。本资料由-校园大学生创业网-提供http:/ SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 6.1 M
3、ATLAB基础基础 MATLAB是全球工程师共同的语言,使用是全球工程师共同的语言,使用MATLAB,工作效率可能有成百上千倍的提高,工作效率可能有成百上千倍的提高,使得研究工作真正是在做研究,而不是在编程。使得研究工作真正是在做研究,而不是在编程。由于由于MATLAB的广泛应用,很多理论的创始人在的广泛应用,很多理论的创始人在MATLAB上开发了相关的工具箱。上开发了相关的工具箱。现在现在MATLAB附带的各方面工具箱有:控制系统、附带的各方面工具箱有:控制系统、通讯、符号运算、小波计算、偏微分方程、数据通讯、符号运算、小波计算、偏微分方程、数据统计、图像、金融、数字信号处理、模糊控制、统计
4、、图像、金融、数字信号处理、模糊控制、模型预估控制、频域辨识、高阶谱分析、统计学、模型预估控制、频域辨识、高阶谱分析、统计学、非线性控制系统、图像处理、神经元网络、信号非线性控制系统、图像处理、神经元网络、信号处理、插值、优化、鲁棒控制、控制系统设计、处理、插值、优化、鲁棒控制、控制系统设计、系统辨识等等,并且系统辨识等等,并且MATLAB提供了图形化的时提供了图形化的时域仿真程序域仿真程序-SIMULINK,在高校中还开发了:,在高校中还开发了:振动理论、化学统计学、语音处理等等方面的工振动理论、化学统计学、语音处理等等方面的工具箱。具箱。计算机科学与技术学院计算机科学与技术学院COMPUT
5、ER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 1MATLAB发展史发展史 MATLAB(Matrix Laboratory):):“矩阵实验矩阵实验室室”,是,是20世纪七十年代美国新墨西哥大学计算世纪七十年代美国新墨西哥大学计算机科学系主任机科学系主任Cleve Moler 给学生开线性代数课程给学生开线性代数课程时编写的时编写的LINPACK和和EISPACK(矩阵软件工具(矩阵软件工具包库程序)的接口程序,用包库程序)的接口程序,用FORTRA
6、N编写。编写。1984年由年由Little、Moler、Steve Bangert合作成立合作成立MathWorks公司,并把公司,并把MATLAB正式推向市场。正式推向市场。从这时起,从这时起,MATLAB的内核采用的内核采用C语言编写,除语言编写,除原有的数值计算能力外,还增加了可视功能。原有的数值计算能力外,还增加了可视功能。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点
7、主要特点(1)基本单位为矩阵,具有丰富的数学功能)基本单位为矩阵,具有丰富的数学功能 最基本的数据结构是矩阵,可进行方便灵活的矩阵最基本的数据结构是矩阵,可进行方便灵活的矩阵运算。演算纸式的数学运算,如输入运算。演算纸式的数学运算,如输入22,回车,回车,即可得出:即可得出:ans4 具有丰富的矩阵运算函数,使之在求解诸如信号处具有丰富的矩阵运算函数,使之在求解诸如信号处理、系统识别、自动控制、非线性系统、模糊控制、理、系统识别、自动控制、非线性系统、模糊控制、优化技术、神经网络、小波分析等领域的问题时,优化技术、神经网络、小波分析等领域的问题时,显得简捷、高效、方便。显得简捷、高效、方便。M
8、ATLAB的数值计算功能包括:矩阵运算、多项式的数值计算功能包括:矩阵运算、多项式和有理分式运算、数据统计分析、数值积分、优化和有理分式运算、数据统计分析、数值积分、优化处理等。符号计算将得到问题的解析解。处理等。符号计算将得到问题的解析解。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点主要特点(2)强大的作图和数据可视化功能)强大的作图和数据可视化功能 可以轻易地绘制二维、三
9、维曲线,三维曲面,并可以轻易地绘制二维、三维曲线,三维曲面,并可进行图形和坐标的标识、坐标控制、图形的迭可进行图形和坐标的标识、坐标控制、图形的迭绘、视角和光照设计、色彩精细控制及动画的绘绘、视角和光照设计、色彩精细控制及动画的绘制等。制等。图形用户界面图形用户界面GUI制作工具,可以制作用户菜单制作工具,可以制作用户菜单和控件。和控件。有一系列绘图函数(命令),例如线性坐标、对有一系列绘图函数(命令),例如线性坐标、对数坐标,半对数坐标及极坐标,均只需调用不同数坐标,半对数坐标及极坐标,均只需调用不同的绘图函数(命令),在图上标出题标、的绘图函数(命令),在图上标出题标、XY轴轴标注,格(栅
10、)绘制也只需调用相应的命令,简标注,格(栅)绘制也只需调用相应的命令,简单易行。单易行。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点主要特点(3)可以直接处理声言和图形文件)可以直接处理声言和图形文件 声言文件。如:声言文件。如:WAV文件(例:文件(例:wavread,sound等)。等)。图形文件。如:图形文件。如:bmp、gif、pcx、tif 、jpeg等等文件。文件
11、。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点主要特点(4)功能强大的应用工具箱)功能强大的应用工具箱 如:如:SIMULINK、DSP、SIGNAL等十几种工具箱。等十几种工具箱。分为基本工具箱、通用工具箱、专业工具箱。分为基本工具箱、通用工具箱、专业工具箱。基本工具箱:基本工具箱:有数百个内部函数,是最核心的部分。有数百个内部函数,是最核心的部分。没有它就没有没有它就没有
12、MATLAB环境。环境。通用工具箱:通用工具箱:主要用来扩充其符号计算功能、可视主要用来扩充其符号计算功能、可视建模仿真功能及文字处理功能等。建模仿真功能及文字处理功能等。专业工具箱:专业工具箱:专业性比较强,如控制系统工具箱、专业性比较强,如控制系统工具箱、信号处理工具箱、神经网络工具箱、最优化工具箱、信号处理工具箱、神经网络工具箱、最优化工具箱、金融工具箱等,用户可以直接利用这些工具箱进行金融工具箱等,用户可以直接利用这些工具箱进行相关领域的科学研究。相关领域的科学研究。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER
13、SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点主要特点(5)使用方便,具有很好的扩充性)使用方便,具有很好的扩充性 MATLAB 语言以解释方式工作,使用语言以解释方式工作,使用MATLAB语言编写的程序可以直接运行,无需编译。语言编写的程序可以直接运行,无需编译。M文件(文件(MATLAB 文件)可以转变为独立于平文件)可以转变为独立于平台的台的EXE可执行文件。可执行文件。MATLAB的应用接口程序的应用接口程序API是是MATLAB提供提供的十分重要的组件,由一系列接口指令组成。用的十分重
14、要的组件,由一系列接口指令组成。用户可在户可在FORTRAN或或C中中,把把MATLAB当作计当作计算引擎使用。算引擎使用。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 2MATLAB主要特点主要特点(6)友好的人机界面,很好的帮助功能)友好的人机界面,很好的帮助功能 提供十分详细的帮助文件(提供十分详细的帮助文件(PDF、HTML、demo文件)。文件)。联机查询指令:联机查询指令:help指令(
15、例:指令(例:help elfun,help exp,help simulink),),lookfor关键词(例:关键词(例:lookfor fourier)。)。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 MATLAB最大优越之处最大优越之处 1、工具箱、工具箱2、SIMULINK3、图形处理、图形处理4、矩阵、矩阵 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AN
16、D TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 3Matlab能做什么能做什么 基本的数据处理基本的数据处理 优化和解方程优化和解方程 动态过程仿真:实时的和非实时的动态过程仿真:实时的和非实时的 数据来源:数据来源:Excel、数据库、数据库、A/D等等等等 嵌入式的控制:嵌入式的控制:Pc/104和和DSP 神经元网络、小波分析、神经元网络、小波分析、GA等等等等 虚拟现实仿真虚拟现实仿真 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND T
17、ECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 4MATLAB基本组成基本组成 三大部分组成:三大部分组成:MATLAB主程序主程序 SIMULINK动态系统仿真动态系统仿真 MATLAB工具箱(工具箱(Toolbox)主程序:主程序:包括包括MATLAB语言、工作环境、句柄语言、工作环境、句柄图形、数学函数库和应用程序接口五部分。图形、数学函数库和应用程序接口五部分。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTE
18、R SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 5MATLAB集成环境集成环境 集成化工作空间,为用户提供管理变量、输入输集成化工作空间,为用户提供管理变量、输入输出数据功能及管理调试出数据功能及管理调试M文件的工具,包括命令文件的工具,包括命令窗口、窗口、M文件编辑调试器、文件编辑调试器、MATLAB工作空间、工作空间、在线文档等。在线文档等。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMP
19、UTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 6MATLAB命令窗口命令窗口 在提示符在提示符后可直接键入有效的后可直接键入有效的MATLAB指令指令 如:如:demo 进入演示程序,展示进入演示程序,展示MATLAB强大的计强大的计算、图形图像处理及仿真功能。算、图形图像处理及仿真功能。help 得到得到help主题一览表主题一览表 Help 主题主题 可得到该主题的使用信息可得到该主题的使用信息 SIMULINK 可进入可进入SIMULINK界面界面 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUT
20、ER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 7MATLAB窗口窗口 历史指令窗口工作空间浏览器MATLAB 工作窗工作窗当前目录浏览器(后台)开始按钮切换按钮当前工作目录设定sumlink快捷按钮快捷按钮标题栏标题栏菜单栏菜单栏常用工具栏常用工具栏计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 Matlab帮助系统帮
21、助系统 demo 命令命令基本矩阵演示窗口基本矩阵演示窗口MATLAB 演示窗口演示窗口计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 8MATLAB学习方法学
22、习方法(1)必须做大量的练习,熟悉其中的函数)必须做大量的练习,熟悉其中的函数(2)找出与自己课题的关联,深刻地体会)找出与自己课题的关联,深刻地体会(3)多看帮助文件)多看帮助文件(4)会提问题,寻求大家的帮助)会提问题,寻求大家的帮助(5)提示:)提示:MATLAB可以做很多事情可以做很多事情 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 6.2 SIMULINK动态系统仿真动态系统仿真 SIM
23、ULINK是是MATLAB软件的扩展,它是实现软件的扩展,它是实现动态系统建模和仿真的一个软件包,它支持线性动态系统建模和仿真的一个软件包,它支持线性和非线性系统,连续和离散时间模型等。和非线性系统,连续和离散时间模型等。它与它与MATLAB语言的主要区别在于,其与用户语言的主要区别在于,其与用户交互接口是基于交互接口是基于Windows的模型化图形输入,其的模型化图形输入,其结果是使得用户可以把更多的精力投入到系统模结果是使得用户可以把更多的精力投入到系统模型的构建,而非语言的编程上。型的构建,而非语言的编程上。SIMULINK提供了一些按功能分类的基本的系统提供了一些按功能分类的基本的系统
24、模块,用户只需要知道这些模块的输入输出及模模块,用户只需要知道这些模块的输入输出及模块的功能,而不必考察模块内部是如何实现的,块的功能,而不必考察模块内部是如何实现的,通过对这些基本模块的调用,再将它们连接起来通过对这些基本模块的调用,再将它们连接起来就可以构成所需要的系统模型(以就可以构成所需要的系统模型(以.mdl文件进行文件进行存取),进而进行仿真与分析。存取),进而进行仿真与分析。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND T
25、ECHNOLOGY吉林大学吉林大学 SIMULINK SIMULINK提供一个图形化的用户界面,可以用提供一个图形化的用户界面,可以用鼠标点击和拖拉模块进行图标建模。通过图形界鼠标点击和拖拉模块进行图标建模。通过图形界面,可以像用铅笔在纸上画图一样画模型图。面,可以像用铅笔在纸上画图一样画模型图。SIMULINK包括一个复杂的由接受器、信号源、包括一个复杂的由接受器、信号源、线性和非线性组件及连接件组成的模块库。线性和非线性组件及连接件组成的模块库。每个组件是包含若干模块的模块集。每个组件是包含若干模块的模块集。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND
26、TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 SIMULINK仿真仿真 SIMULINK可以对模型进行仿真,使用显示模块可以对模型进行仿真,使用显示模块可以在运行仿真时观察到仿真的结果。可以在运行仿真时观察到仿真的结果。还可以改变参数并且立即就可以看到它的变化。还可以改变参数并且立即就可以看到它的变化。仿真结果放在工作空间中以待进一步的处理或可仿真结果放在工作空间中以待进一步的处理或可视化。视化。SIMULINK使用不同窗口分别显示模块库、模型使用不同窗口分别显示模块库、模型和仿
27、真图形的输出。和仿真图形的输出。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 SIMULINK模型模型 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 SIMULINK简单模型的建立简单模型的建立(1)建立
28、模型窗口)建立模型窗口(2)将功能模块由模块库窗口复制到模型窗口)将功能模块由模块库窗口复制到模型窗口(3)对模块进行连接,从而构成需要的系统模型)对模块进行连接,从而构成需要的系统模型 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 SIMULINKSIMULINK界面界面 Simulink提供一个图提供一个图形化的用户界面。点形化的用户界面。点击击MATLAB命令空间命令空间的快捷键或在命令空的快
29、捷键或在命令空间中写入:间中写入:simulink 回车,即可进入回车,即可进入Simulink工作环境。工作环境。SIMULINK支持连续支持连续与离散系统以及连续与离散系统以及连续离散混合系统,也支离散混合系统,也支持线性与非线性系统,持线性与非线性系统,还支持具有多种采样还支持具有多种采样频率的系统,可以仿频率的系统,可以仿真较大较复杂的系统。真较大较复杂的系统。计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 SIMULINKSIMULINK模块库模块库连续系统模块连续系统模块离散系统模块离散系统模块函数与表模块函数与表模块数学模块数学模块非线性模块非线性模块信号与系统模块信号与系统模块输出模块输出模块输入源模块输入源模块子系统模块子系统模块 计算机科学与技术学院计算机科学与技术学院COMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGYCOMPUTER SCIENCE AND TECHNOLOGY吉林大学吉林大学 第第6 6章章好好学习好好学习 天天向上天天向上