Matlab在自动控制理论中的应用

更新时间:2023-05-22 19:49:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

MATLAB语言基础

一、MATLAB语言的发展matlab语言是由美国Clever Moler博士于1980年开发的。

设计者的初衷是为解决“线性代数”课程的矩阵运算问题。 取名MATLAB即Matrix Laboratory 矩阵实验室的意思。*MATLAB的历史:

70年代后期美国新墨西哥大学cleve moler为linspack和 eispack编写的接口程序。80年代初,用C编写的MATLAB二代版本。

1984,MATHWORKS公司成立。(图形处理,数值计算、 符号计算、文字处理、数学建模、实时控制、动态仿真)

它将一个优秀软件的易用性与可靠性、通用性与专业性 、 一般目的的应用与高深的科学技术应用有机的相结合。 MATLAB是一种直译式的高级语言,比其它程序设计语 言容易。 MATLAB已经不仅仅是一个“矩阵实验室”了,它集科学 计算、图象处理、声音处理于一身,并提供了丰富的 Windows图形界面设计方法 MATLAB语言是功能强大的计算机高级语言, 它以超群的风 格与性能风靡全世界, 成功地应用于各工程学科的研究领域 MATLAB在美国已经作为大学工科学生必修的计算机语言 之一 (C, FORTRAN, ASSEMBLER, MATLAB)

二、matlab能在各领域做什么 工业研究与开发 数学教学,特别是线性代数 数值分析和科学计算方面的教学与研究

电子学、控制理论和物理学等工程和科学学科方面 的教学与研究 经济学、化学和生物学等计算问题的所有其他领域 中的教学与研究

三、MATLAB语言的功能: 强大的数值(矩阵)运算功能 广泛的符号运算功能 高级与低级兼备的图形功能(计算结果的可 视化功能) 可靠的容错功能 应用灵活的兼容与接口功能 信息量丰富的联机检索功能

1.矩阵运算功能 MATLAB提供了丰富的矩阵运算处理功能,是基于矩阵运算的处理工具。

变量 矩阵,运算 矩阵的运算 例如 C = A + B ,A,B,C都是矩阵,是矩阵的加运算 即使一个常数,Y=5,MATLAB也看做是一个1 1的矩阵

2.符号运算功能 符号运算即用字符串进行数学分析

允许变量不赋值而参与运算 用于解代数方程、微积分、复合导数、积分、二重积分、有

理函数、微分方程、泰乐级数展开、寻优等等,可求得解析符号解

3.丰富的绘图功能与计算结果的可视化 具有高层绘图功能——两维、三维绘图 具有底层绘图功能——句柄绘图 使用plot函数可随时将计算结果可视化

4.图形化程序编制功能 动态系统进行建模、仿真和分析的软件包 用结构图编程,而不用程序编程 只需拖几个方块、连几条线,即可实现编程功能

5.丰富的MATLAB工具箱 MATLAB主工具箱 符号数学工具箱 SIMULINK仿真工

具箱 控制系统工具箱 信号处理工具箱 图象处理工具箱 通讯工具箱 系统辨识工具箱 神经元网络工具箱 金融工具箱

许多学科,在MATLAB中都有专用工具箱,现已有30多个工 具箱,但MATLAB语言的扩展开发还远远没有结束,各学科 的相互促进,将使得MATLAB更加强大。

6.MATLAB的开放式可扩充结构 matlab 所有函数都是开放的 用户可按自己意愿随意更改 正因为此功能,使得matlab的应用越来越广泛

7.强大的联机检索帮助系统 可随时检索matlab函数 可随时查询matlab函数的使用方法

四、初步认识Matlab1、 启动MATLAB 开机执行程序 c:\matlab\bin\matlab.exe 用鼠标双击matlab图标

即可打开matlab命令平台

启动平台

命令窗 口

命令历 史记录

与Windows的窗口界面类似,有菜单项File、Edit、 Option、Windows、Help等项可以选择。

工作窗出现以后,即可进行各种操作

菜单项File,其功能如下New Open M-File Open selected Save Workspace As Run M-File Look For Selected Print Print Setup Exit MATLAB 建立新文件 打开M-文件 打开选定文件 将工作区存为 运行 M-文件 寻找选定文件 打印 打印设置 退出 MATLAB

例、用一个简单命令求解线性系统3x1+ x2 - x3 = 3.6 x1+2x2+4x3 = 2.1 对于线性系统有Ax=b -x1+4x2+5x3 = -1.4 A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4]; x=A\b x= 1.4818 -0.4606 0.3848

例、用简短命令计算并绘制在0 x 6范围内的 sin(2x)、sinx2、sin2x。 x=linspace(0,6) y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2; plot(x,y1,x, y2,x, y3)1 0.8 0.6 0.4 0.2 0 -0.2 -0.4 -0.6 -0.8 -1 0 1 2 3 4 5 6

五、matlab联机帮助命令 help 功能提供matlab大部分主题的在线帮助信息 help 显示help 主题一览表

help plotxyz 显示有关三维做图指令帮助信息help [ 显示特殊字符与符号帮助信息 help help 显示help 的帮助信息

虽然help可以随时提供帮助,但必须知道准确的函数 名称。当不能确定函数名称时,help就无能为力了。 Lookfor函数— 它可提供通过一般的关键词,搜索出一组与之 相关的命令 lookfor fourier 寻找含有傅立叶变换的相关指令

应用MATLAB进行模型处理线性系统理论中常用的数学模型有微分方程模型、 传递函数模型等,而这些模型之间又有某些内在的等效 关系。在MATLAB中,与传递函数的具体形式相对应,又 有tf对象和zpk对象之分,我们分别称为有理分式模型 和零极点模型。 在本节,就线性定常时不变系统(LTI)数学模型 分析中用到的MATLAB方法作一简要介绍,主要有传递函 数的转换、控制系统的特征根及零极点图符号模型的运 算等。

1 、传递函数有理分式模型传递函数的分子和分母均为多项式的形式称为有理分式模型, 如下式所示。

C (s) b

0 s m b1s m 1 bm 1s bm G( s ) R(s) a0 s n a1s n 1 an 1s an在MATLAB中,传递函数分子和分母多项式系数用行向量表

示。例如多项式P(s)=s^3+2s+4,其输入为 P=[1 0 2 4]传递函数分子或分母为因式时,调用conv()函数来求多项式向 量。例如P(s)=5(s+2) (s+3)(10s^2+20s+3),其输入为

P=5*conv([1 2],conv([1 3],[10 20 3]))调用函数“tf”可建立传递函数的有理分式模型,其调用格式 如下:G=tf(num,den)

已知某一系统的微分方程如下,试求其传递函数。

c 6c 12c 20c 36c 25c(5) (4)

r 7r 12r 20rnum=[1 7 12 20]; den=[1 6 12 20 36 25]; G=tf(num,den)运行结果: Transfer function:

s^3 + 7 s^2 + 12 s + 20 ---------------------------------------------------s^5 + 6 s^4 + 12 s^3 + 20 s^2 + 36 s + 25

(s 4) 2 例 将传递函数 G(s) 转换为有理分式 2 3 2 s (s 5)(s 5s 2s 6)模型。

num=conv([1 4],[1 4]); den=conv([1 0 0],conv([1 5],[1 5 2 6])); G=tf(num,den)

运行结果: Transfer function: s^2 + 8 s + 16 -------------------------------------------------s^6 + 10 s^5 + 27 s^4 + 16 s^3 + 30 s^2

本文来源:https://www.bwwdw.com/article/kyh4.html

Top