MATLAB与仿真技术【精品参考资料】.ppt
《MATLAB与仿真技术【精品参考资料】.ppt》由会员分享,可在线阅读,更多相关《MATLAB与仿真技术【精品参考资料】.ppt(68页珍藏版)》请在三一办公上搜索。
1、与仿真技术,基础篇,应用篇,MATLAB,MATLAB的数值计算功能,MATLAB程序设计入门,MATLAB的符号运算功能,主页,MATLAB简介,基础篇,MATLAB的可视化功能,主页,目录,1MATLAB的发展史,MATLAB名字由MATrix和 LABoratory 两词的前三个字母组合而成,意为“矩阵实验室”。,1984年MathWorks公司把MATLAB正式推向市场。从这时起,MATLAB的内核采用C语言编写,而且除原有的数值计算能力外,还新增了数据图视功能。,1997年仲春,MATLAB5.0版问世,紧接着是5.1、5.2,以及和2003年的6.5版。现今的MATLAB拥有更丰富
2、的数据类型和结构、更友善的面向对象、更加快速精良的图形可视、更广博的数学和数据分析资源、更多的应用开发工具。,MATLAB简介,(1)具有丰富的数学功能,(2)具有很好的图视系统,(3)可以直接处理声言和图形文件。,(4)具有若干功能强大的应用工具箱。,(5)使用方便,具有很好的扩展功能。,(6)具有很好的帮助和演示功能,主页,目录,2.MATLAB语言的主要特点,(1)MATLAB的数据类型,现有四种基本数据类型:双精度数组、字符串数组、元胞数组、构架数组。,主页,目录,MATLAB的数值计算功能,(2)MATLAB的基本数值计算功能,基本计算功能:MATLAB有强大的函数库,矩阵运算及数组
3、运算。,数组函数和矩阵函数。,(3)MATLAB的高级数值计算功能,关系运算和逻辑运算。,多项式:多项式的求根、分解、求导数以及多项式的拟合。,数据分析函数:例如:求最大最小值、平均值、相关系数等。,数值分析函数:求函数极值、函数零点和极点、数值积分、数值微分、微分方程的数值解等。,付立叶变换和付立叶逆变换。,符号矩阵的基本运算:加、减、乘、除、微积分等。,1.软件环境:符号工具箱(Symbolic Math Toolbox)。,主页,目录,MATLAB的符号运算功能,符号积分变换。,符号代数方程的求解。,符号微分方程的求解。,2.符号运算功能,(1)二维曲线图形和三维曲面图形,二维符号函数曲
4、线。,三维线性图形。,三维曲面图形。,主页,目录,MATLAB的可视化功能,二维曲线图形。,三维符号函数曲线。,图形对象、对象句柄和句柄图形树。,句柄图形(Handle Graphics)是一种面向对象的绘图系统。,MATLAB把用于数据可视和界面制作的基本绘图要素称为句柄图形对象。,构成MATLAB句柄图形体系有12个图形对象(见句柄图形树)。,主页,目录,(2)句柄图形,主页,目录,MATLAB绘图示例,主页,目录,MATLAB程序设计,(2)文件的建立:M文件;命令文件;函数文件,(3)变量设置:全局变量和局部变量,(4)流程控制,for循环语句、while循环语句、if条件语句、swi
5、tch条件语句,(1)启动Matlab,进入命令窗口,控件对象及属性。,现代的主流应用程序已经从命令行的交互方式转变为以图形界面为主的交互方式,这主要是由于它给用户带来了操作和控制的方便与灵活性。MATLAB能够以比较简单的方式实现一系列的图形界面功能。,控件对象是一类图形界面对象,MATLAB支持10种控件对象:坐标轴、静态文本框、可编辑文本框、弹式菜单、滚动条、框架、命令按钮、单选按钮、复选框、列表框。,用户用鼠标在控件对象上进行操作,单击鼠标时,将会使应用程序作出响应并执行某些预定的子程序。,控件对象的属性分为两大类,笫一类是所有控件对象都具有的公共属性,笫二类是作为图形对象的属性。,用
6、MATLAB函数创建控件对象,主页,目录,图形用户界面编程,主页,目录,应用篇-Simulink仿真,模型的创建和模型文件,系统建模,仿真运行,快速入门,子系统的创建、封装及受控执行,常用工具箱简介,仿真设计实例,1 快速入门,SIMULINK是一个进行动态系统建模、仿真和综合分析的集成软件包。它可以处理的系统包括:线性、非线性系统;离散、连续及混合系统;单任务、多任务离散事件系统。,在 SIMULINK 提供的图形用户界面GUI上,只要进行鼠标的简单拖拉操作就可构造出复杂的仿真模型。它外表以方块图形式呈现,且采用分层结构。,从建模角度讲,这既适于自上而下(Top-down)的设计流程(概念、
7、功能、系统、子系统、直至器件),又适于自下而上(Bottum-up)逆程设计。,从分析研究角度讲,这种 SIMULINK 模型不仅能让用户知道具体环节的动态细节,而且能让用户清晰地了解各器件、各子系统、各系统间的信息交换,掌握各部分之间的交互影响。,主页,目录,1 快速入门(续1),在 SIMULINK 环境中,用户将观察到现实世界中非线性因素和各种随机因素对系统行为的影响。,在 SIMULINK 环境中,用户可以在仿真进程中改变感兴趣的参数,实时地观察系统行为的变化。,在MATLAB 工具箱中,可直接在 SIMULINK 环境中运作的工具包很多,已覆盖通信、控制、信号处理、DSP、电力系统等
8、诸多领域,所涉内容专业性极强。,本讲由浅入深地讲述 SIMULINK 对各种数学、工程问题的建模、仿真和分析的基本方法,采用“算例”作为主体,配以适量的归纳性表述。,例1:信号发生器和示波器。,例2:实现两个正弦信号的相乘。,主页,目录,2.模型的创建和模型文件,21 SIMULINK 模型是什么?,SIMULINK 模型有以下几层含义:,在视觉上表现为直观的方框图;,在文件上则是扩展名为 mdl 的ASCII代码;,在数学上表现为一组微分方程或差分方程;,在行为上则模拟了实际系统的动态特性。,SIMULINK 模型通常包含三种“组件”:,信源(Sources):可以是常数、时钟、白噪声、正弦
9、波、阶梯波、扫频信号、脉冲生成器、随机数产生器等信号源;,系统(System):即指被研究系统的 SIMULINK 方框图;,信宿(Sink):可以是示波器、图形记录仪等。,对于具体的 SIMULINK 模型而,不一定完全地包含这三大组 件。例如:研究初始条件对系统影响就不必包含信源组件。,主页,目录,2.模型的创建和模型文件(续1),22 SIMULINK 模型的创建,创建模型文件;,选择对象;,模块的操作;,连线的操作;,创建子系统;,仿真的配置;,对模型的注释;,保存模型;,仿真和结果分析。,主页,目录,2.模型的创建和模型文件(续2),23 SIMULINK 模型文件,SIMULINK
10、 除了可以通过图形界面设计模块外,也可以通过直接编写 mdl 文件来设计仿真模型图。,一个有输入和输出的图形界面设计模块。,用 mdl 文件编写有输入和输出的增益器。,Gain,In,Out,1,1,1,主页,目录,3.仿真运行,331 使用菜单进行仿真,设置仿真参数和选择求解器,通过选择菜单 Simulation 下的 Parameters 菜单项,用来设置仿真参数和选择求解器。其中有三个页面管理这些仿真参数。,在 Solver 页面,设置开始和停止时间,选择求解器和指定求解器(solver)的参数,另外还可以选择一些输出选项。,在 Workspace I/O 页面,管理对 MATLAB 工
11、作空间的输入和输出。,在 Diagnostics 页面,可以选择在仿真期间显示的警告信息的层次。,在 Solver options 中,SIMULINK 模型的仿真涉及到一组常微分方程(ODEs)的数值积分。如果模型是连续系统,使用ode45方法;如果模型不是连续系统,使用discrete方法。,主页,目录,3.仿真运行(续1),332 通过命令行运行仿真,通过命令行运行仿真与通过菜单运行仿真相比,有如下的 一些优点:,可以不理睬模块中的初始条件(参数 x0);,可以定义任何外部输入(用参数 ut);,可以由一个M 文件来启动一个仿真,并且允许模块中的参数发生改变。,用来进行仿真的命令有四个:
12、,使用 set_param 命令:开始、停止或者继续仿真或者更新模块的方框图。get_param 命令来检查一个仿真的状态。,使用 sim 命令:启动仿真命令;,使用 simset 命令:用来向 sim 命令产生或者编辑仿真参数和积分法属性的命令;,使用 simget 命令:可以得到选项结构体属性和参数。,主页,目录,4.系统建模 41 连续系统建模,线性系统建模举例,例3:复位积分器的功用示例。,例3_4_2:积分模块直接构造微分方程求解模型。,例:直接利用传递函数模块求解方程。,在仿真启动时,积分器从零开始对 0.5 t 进行积分。当复位口信号 t-5=0 瞬间,积分器被重置为零。此后,再
13、对0.5(t-5)进行积分。,假设从实际自然界(力学、电学、生态等)或社会中,抽象出有初始状态为0的二阶微分程,是单位阶跃函数。本例演示如何用积分器直接构搭求解该微分方程的模型。,对二阶微分程进行拉氏变换:,可以得到:,主页,目录,41 连续系统建模(续),非线性系统建模举例,例3:求非线性系统 的相平面轨迹、平衡点,并进行稳定性分析。,本例综合演示:,(A)SIMULINK模型和MATLAB指令的配合使用。,(B)sim,simset,trim 指令的应用。,(C)二阶系统相轨迹的精良图形。,(1)非线性系统由 SIMULINK 模型表达。,(2)编写绘制传统状态轨迹(State traje
14、ctory)的M文件,主页,目录,42 离散时间系统和混合系统建模,用组合逻辑模块产生 的“逻辑和”结果 及“逻辑或”结果。(1)建立输入输出关系。(2)建立模型1.mdl,主页,目录,42 离散时间系统和混合系统建模(续),多速率离散时间系统:计算机就是这样的系统。它的CPU、串行/并行控制器、磁盘驱动器、输入 键盘就采用不同的工作速率。再如通信系统也是多速率系统。,离散-连续混合系统:在现代控制系统中,通常被控的对象是连续时间的(物理)子系统,而控制器是由逻辑控制器或计算机构成的离散子系统。对于这种离散-连续混合系统,模型参数设置页中的几乎所有 Solver 解算方法都能采用。,可以使该模
15、型及其所有子系统按采样速率着色:连续时间部分用黑色;离散时间部分用红色;离散、连续混合的子系统被着黄色。,主页,目录,5.子系统的创建、封装及受控执行,利用 SIMULINK 的封装(Mask)功能,可以定做一个模块或一个子系统的对话框和图标。,引用子系统的理由是:研究分析系统时,进行概念抽象(Abstraction of concepts)的需要;为提高工作效率和可靠性,实施模块“重用(Reuse)”的需要。,仿真建模中子系统的作用,类 似于 MATLAB 指令运行中的M函数文件。,前面介绍了如何利用库标准模块建立被研究系统的仿真模型。下面着重介绍如何利用“分层”思想建立比较复杂的仿真模型,
16、介绍建立这种分层模型所需的各种子系统(Subsystem)。,封装的一个重要用途是帮助用户创建一个对话框来接受参数。这样就无需打开子系统中各个模块的对话框,然后再逐个输入参数。,主页,目录,51 用封装的办法创建模块,1.封装模块功能,例4:封装线性方程 y=mx+b 的模型。(M3_ex3_5_1.mdl),子系统mx+b 包含了一个Gain模块,命名为Slope,其增益常数为m;一个Constant模块,命名为Intercept,其常数值参数指定为b。这些参数代表一条直线的斜率和截距。,封装该子系统产生一个用户对话框和图标。对话框包含对斜率和截距的提示。,用户向封装对话框输入 Slope和
17、 Intercept 的值。封装将这些封装参数映射给底层模块。,在 SIMULINK 中产生线性方程 y=mx+b 的模型,并生成 mx+b 子系统。,主页,目录,51 用封装的办法创建模块(续),2.产生封装提示对话框,要产生这个系统的封装,先选取子系统模块,然后从 Edit 菜单中选取 Mask Subsystem 命令。,封装提示对话框开始时大都显示 Mask Editor 对话框的Initialization 选项卡。,把 Slope 和 Intercept 定义为 Edit 控件。,3。产生封装模块描述和帮助文本,在 Documentation 选项卡中可以定义模块的封装类型、模块描
18、述和帮助文本。,4。产生模块的图标,可以在 Mask Editor 对话框的 Icon 选项卡中定义图标。,主页,目录,52 条件执行子系统,在 SIMULINK 模块库中,有两个特殊模块:Enable 模块和Trigger 模块。如果把这种模块放到某个子系统中,则该子系统是否起作用将取决于外界的某个条件(状态或事件)是否满足,这样就构成了所谓的条件执行子系统(Conditionally Executed Subsystem)。,常用的条件执行子系统有:使能子系统(Enabled Subsystem);触发子系统(Trigged Subsystem);触发使能子系统(Trigged and E
19、nabled Subsystem)。,主页,目录,使能子系统,例5:利用使能原理构成一个半波整流器。本例演示使能子系统的创建及工作机理。(M3_ex3_5_2.mdl)(1)打开SIMULINK的新建模型窗口。(2)从SIMULINK库中提取三个模块Sine wave、Subsystem、Scope 到新建窗。然后进行文件保存操作,并起文件名为M3_ex3_5_2(这保存操作只为以后调用方便,并非必要)。(3)双击空子系统模块Subsystem,打开其结构模型窗。(4)从SIMULINK库中拷贝In输入口模块、Out输出口模块、Enable使能模块到子系统的结构模型窗;把In 模块的输出直接送
20、到Out模块的输入端;Enable模块无须进行任何连接,且本例采用它的缺省设置;便实现了题目所需使能子系统。(5)完成M3_ex3_5_2窗口中各模块间的连接。(6)双击示波器模块,打开显示窗。然后选择M3_ex3_5_2窗口菜单项【Simulation:Start】,就可看到半波整流后的波形。,主页,目录,触发子系统,例6:利用触发子系统获得零阶保持的采样信号。本例演示:触发子系统工作原理;在MATLAB指令窗中运行SIMULINK模型。(M3.mdl)(1)构造如图所示的仿真模型(M3.mdl)(2)在MATLAB指令窗中运行SIMULINK模型(M3.m)t,x,y=sim(M3 _ m
21、dl,10);clf,hold onplot(t,y(:,1),b)stairs(t,y(:,2),r)stairs(t,y(:,3),c:),hold offaxis(0 10-1.1 1.1),box onlegend(sinewave,output,trigger,4),主页,目录,触发子系统模型与仿真输出波形,触发使能子系统,把触发模块和使能模块装置在同一个子系统中,就构成触发使能子系统。该系统的行为方式与触发子系统相似,但只有当使能信号为“正”时,触发事件才起作用。,主页,目录,6.常用工具箱简介,具有16种功能强大的应用工具箱。,我们常用工具箱有 SIMULINK、COMM、DSP
22、 等。,主页,目录,7.仿真设计实例,371 幅度调制的仿真(amdsb_tc.mdl),幅度调制可以分为标准调幅(SAM)、抑制载波双边带(DSB-SC)、单边带(SSBAM)、残留边带(VSBAM)和平衡正交调幅(QAM)。,设调制信号为m(t),其幅度为1V,载波信号为,角频率为,各种调幅方式的已调波的表达式如下:,标准调幅:,其中调制度 的数值范围 在之间。,抑制载波双边带调幅:,单边带调幅:,为调制信号 的希尔伯特(Hilbert)变换。,主页,目录,7.仿真设计实例(续1),幅度调制解调器可以分为包络检波和同步解调两种基本方式,包络检波适用于标准调幅和残留边带调幅,而同步解调适用于
23、各种幅度调制方式。,包络检波器的结构十分简单,它包括一个(或两个)检波二极管和一个低通滤波器。,同步解调器的核心部分是由一个乘法器和一个低通滤波器构成,由于同步解调要求在接收端必须产生一个与输入载波信号同步的本地载波信号,因此同步解调器中还必须有一个载波恢复装置,电路十分复杂。,主页,目录,7.仿真设计实例(续2),372 平衡正交调幅与解调(qam.mdl),平衡正交调幅与解调的仿真采用模块仿真的方式,整个系统的概念是十分清晰的。从中可以观察到两路调制信号的波形,载波信号的波形和频谱,两路解调信号的波形。,平衡正交调幅的特点是可以在同一载波频率上调制两路不同的信号,其中一路信号调制在正弦波上
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精品参考资料 MATLAB 仿真技术 精品 参考资料
链接地址:https://www.31ppt.com/p-6133661.html