MATLAB语言及其在自动控制和仿真中的应用

上传人:油条 文档编号:48601366 上传时间:2018-07-17 格式:PPT 页数:58 大小:1.58MB
返回 下载 相关 举报
MATLAB语言及其在自动控制和仿真中的应用_第1页
第1页 / 共58页
MATLAB语言及其在自动控制和仿真中的应用_第2页
第2页 / 共58页
MATLAB语言及其在自动控制和仿真中的应用_第3页
第3页 / 共58页
MATLAB语言及其在自动控制和仿真中的应用_第4页
第4页 / 共58页
MATLAB语言及其在自动控制和仿真中的应用_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《MATLAB语言及其在自动控制和仿真中的应用》由会员分享,可在线阅读,更多相关《MATLAB语言及其在自动控制和仿真中的应用(58页珍藏版)》请在金锄头文库上搜索。

1、MATLAB 语言及其在自动 控制和仿真中的应用 内容简介MATLAB 语言入门MATLAB 语言编程起步MATLAB 语言与科学可视化MATLAB 在科学运算中的应用MATLAB在控制理论中的应用MATLAB在电机及拖动中的应用MATLAB 的PID控制技术MATLAB 在相关领域中的应用主要参考文献薛定宇、陈阳泉 基于 MATLAB/Simulink的系统仿真技术与应 用,清华大学出版社2002 (东大本科生 、研究生教材)薛定宇 反馈控制系统的设计与分析, 清华大学出版社,2000 (SV,2003)薛定宇 控制系统计算机辅助设计,清 华大学出版社,1996薛定宇 科学运算语言MATLA

2、B程序设 计及应用,清华大学出版社,20001. MATLAB 语言简介MATLAB Matrix Laboratory它是高度集成的语言 ( “第五代”)重要特色是“科学运算”、“可视化”、仿 真有各种各样的“工具箱”已经渗透到各行各业被控制界学者捧红,成为通用语言MATLAB 起源和发展LINPACK,EISPACK LaPack1980,Cleve Moler第一个免费版本1984年 MathWorks公司创立,v11990年v3.5i,第一个微机Windows版 ,并推出Simulink仿真环境1992年v4,全面支持Windows编程最新版本 6.5, Simulink 5.0控制界

3、首选,将长期保持独一无二2. MATLAB 编程入门编程方法的进展 矩阵的表示目前流行语言, C、Fortran, Basic 等二维数组,双重循环MATLAB表示数据结构及其特色以复数矩阵为基本变量单元(C得用二个数组来表示复数矩阵)特殊矩阵生成(单位阵,Vandermonde 阵)矩阵直接可以运算,如 A+B, A*B(C语言: A+B 双重循环,A*B得三重循环 ,此外兼容性判定、复数矩阵更难处理)例 A*A其他数据结构:结构体、类、字符串程序流程控制循环结构for结构和while结构转移结构 if, elseif, end开关结构 switch case, end试探结构 try, c

4、atch, end例代数运算、逻辑运算与比较运算代数运算:、+、-、* 、/左除、右除、点运算:.*, . 等,相应元素运算逻辑运算:&、|、xor(A,B)比较运算:=, , =, =, any(), all()函数编写函数格式function a,b,c,=funname(d,e,f,)举例Hilbert 矩阵生成特殊函数编写技巧举例递归调用例:阶乘 n!可变变元个数,举例:扩展 conv() 函数,接纳任意多 个多项式MATLAB 函数可以自动翻译成 C无优化,兼容性不佳。另有方法工具箱 (任何人都可以是工具箱作者)3. 科学可视化技术二维图形表示plot() 一般二维图形ezplot(

5、) 已知函数绘图stem() 绘制火柴杆图形stairs() 绘制阶梯图形绘图窗口分割图形修饰3.1 实验数据的绘图3.2 二维图形的其他绘制方法极坐标图形对数坐标图形semilogx(), semilogy(), loglog()修改图形坐标系直接变换隐函数图形绘制3.3 三维图形绘制三维曲线绘制三维曲面绘制3.4 “4维”图形绘制想法:对 V=f(x,y,z),构造不同的三维网格 ,用颜色绘制网格点处 V 函数的值其中使用slice函数绘制图形另外一种4维图形为三维动画4. 数学问题的 MATLAB 求解解析解:数学公式推导数学机械化,几何定理证明。有的时候不宜求解析解,只能求数值解:如非

6、线性微分方程求解高元非线性代数方程求解仿真问题 (连续、离散、DEDS和混杂)具有复杂控制算法、结构的控制问题没有解析 解很多其他领域没有解析解,如图像等4.1 解析解与数值解不适合求取解析解的场合解析解不存在:例p,无限不循环 errf(x)解析解存在,但求解不可能例:矩阵的行列式, Cramer 法则需要运算n=20时:实际运算需要n更大。用MATLAB求数值解,每秒解n=500+求取解析解没有必要数学问题求解语言与工具解析解:Mathematica MapleMATLAB 的符号运算工具箱数值解 (MATLAB, MATRIXx)MATLAB 本身各种各样工具箱如最优化工具箱、统计工具箱

7、、偏微分 方程工具箱4.2 解析解求解步骤依赖于符号运算工具箱运算步骤1. 声明符号变量2. 表示数学函数/问题3. 求解数学问题4. 有时需要化简得出的解5. 以更好的形式显示结果6. 在文字处理软件中表示结果, LaTeX 应用举例求极限:微分与积分:Taylor 幂级数展开 (前20项)级数求和 (无穷级数、有穷级数)级数求和,再取极限线性代数问题求解一般矩阵的输入特殊矩阵的输入专用函数 magic, eye, zeros, ones计算程序及函数调用4.3. 数学问题的数值解法 4.3.1 线性代数问题求解 特征值 (eig), 行列式(det), 秩(rank),范数 (rank)矩

8、阵求逆(inv, pinv)代数方程矩阵函数: 如指数函数 expm矩阵问题解析解: 状态转移矩阵4.3.2 常微分方程求解Lorenz 方程描述方程的 MATLAB 代码其他类型的微分方程求解隐式微分方程刚性微分方程微分代数方程 (DAE)边值问题偏微分方程工具箱延迟微分方程边值问题的解析解举例4.3.3 最优化问题求解有约束、无约束的最优化问题线性规划问题举例二次型规划最小二乘曲线拟合多目标规划整数规划的计算机求解利用第3方的工具箱:Petri网工具箱res, how = ip_solve(A, B, f, intlist, ub, lb, ctype)5. MATLAB 在自动控制中的应

9、用数学模型与模型转换传递函数、状态方程、零极点系统的时域、频域、复域分析Bode,Nyquist、Nichols,阶跃响应控制系统CAD单变量、多变量;预测控制、神经网络 、模糊逻辑、鲁棒控制各种工具箱控制系统仿真5.1 控制系统的模型表示传递函数状态方程xLaplace 变换及反变换步骤:声明符号变量调用laplace函数进行变换或 调用 ilaplace() 函数进行反变换化简 simple()结果显示 pretty(), latex()例5.2 模型转换状态方程、传递函数、零极点模型都可 以相互转换使用 ss() 函数可以转换成状态方程模 型传递函数模型转换 tf()零极点模型转换 zp

10、k()连续系统离散化 c2d()离散系统连续化 d2c()结构图化简已知数据符号化简g1g3g4g2g5g6g7g8g9 g105.3 系统稳定性分析直接分析, A 矩阵的特征根或分母多项式的根 能得到比间接方法更多的信息还可以采用间接方法: Routh, Hurwitz, Lyapunov 方法根轨迹分析, 直接使用rlocus()函数5.4 频域分析Bode 图形绘制, bode()Bode 渐近线绘制Nyquist 图, nyquist()Nichols 图, nichols() 和 ngrid()幅值相位裕量分析, margins()5.5 时域响应分析阶跃响应, step()脉冲响应

11、, impulse()任意输入, lsim()复杂系统分析, 包括含有非线性环节的 系统, 可以采用 Simulink 环境K=8005.6 控制器设计LQ 最优控制器Riccatti 方程5.7 其他设计方法基于根轨迹的试凑方法PID 控制器设计6 Simulink及电机拖动系统仿真Simulink简介Simulink下的模型建立Power Systems Blockset电机系统仿真电力拖动系统仿真6.1 Simulink简介 Simulink = Simu Link MATLAB最新版本下的是Simulink 5.0各种模块和模块集(Blockset)一般连续、离散模块、数学模块等Pow

12、er Systems BlocksetSimMechanics Blockset 机构系统仿真其他:DSP, 通信系统,嵌入式系统输出结果的显示示波器、表盘、虚拟现实、MATLAB6.2 简单非线性系统的建模简单非线性系统模块复制、模块连接、参数修改、仿 真6.3 电机仿真三相异步电动机启动仿真,铭牌参数6.4 直流电机拖动 (自控系统)用Simulink绘图 仿真,显示结果6.5 输出信号的显示Dials & Gauges Blockset 各种各样表盘例:PI 控制,输出结果表盘显示 c5mdng1.mdl7 PID控制系统设计与仿真PID控制器的一般设计方法最优PID控制器设计最优控制器

13、设计程序PID工具箱及Blockset的设计基于神经网络的PID控制器仿真演示输出显示方法7.1 经典PID控制器及设计传统方法 Ziegler-Nichols方法7.2 PID控制器的最优设计想法 1) 对受控对象进行最优降阶 2) 利用表 格设计PID参数 (Zhuang & Atherton)局限性 受控对象结构限制,不能限幅7.3 PID控制器的设计方法举例:PID 系统及其实现受控对象 方法一:普通Ziegler-Nichols方法方法二:Zhuang & Atherton 最优方法方法三:利用NCD直接实现方法四:参数直接优化方法7.4 PID工具箱利用S函数的功能,本人编写的雏形

14、参考资料刘金琨先进PID控制及MATLAB仿真 薛定宇反馈控制第7章及其他资料问题:* 目前没有被广泛认可的PID工具箱* 程序是针对某一模型的,不通用* 模块化,形成BlockSet8. MATLAB 的高级仿真技术虚拟现实技术虚拟现实工具箱物理建模与仿真SimMechanics, 机构系统仿真PowerSystems,电工电子系统仿真半实物仿真与快速原型设计技术xPCdSPACE8.1 虚拟现实技术与工具箱利用工具箱提供的程序可以容易建立起 虚拟现实的“world”模型。可以用 MATLAB 语句或 Simulink 模型 建立起和world模型的联系。可以直接驱动该模型,显示效果。举例:

15、飞机绕大楼飞行8.2 机械电子系统建模与仿真新推出的 SimMechanics可以将机、电 、控制等子系统在一个框架下进行仿真8.3 半实物仿真与实时控制半实物仿真 Hardware in the Loop Simulation (HIL)为什么需要半实物仿真?半实物仿真工具 xPC, dSPACE特殊硬件工具 A/D、dSPACE软件: xPC Control Desk半实物仿真示意图dSPACE 卡Control Desk 界面9. 其他软件与语言科技文献排版软件LaTeX在很多方面优于Word (例子)在国际学术界使用广泛完全免费SciLAB法国国家科学院研制,全部源代码公开类似MATLAB,但完全免费初级阶段,工具箱有限,GUI、仿真局限性总 结通过例子演示了其应用MATLAB 的优势在哪里? 可以解决各种各样的数学问题,又无 需掌握太多的数学知识。更适合于工程 技术人员和研究者。可视化解决方案。子曰:“工欲善其事,必先利其器”,对 数学建模、仿真、控制等问题, MATLAB 是在国际上最被认可的“器”感谢参加讲座网站:http:/www.matlab- 论坛:http:/ 联系:xue_ 欢迎讨论

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号