[新书交流与下载作业]MATLAB语言与自动控制系统设计 笔记
书名:MATLAB语言与自动控制系统设计作者:魏克新 王云亮 陈志敏 高强编著 页数:582出版日期:2004年09月第2版 SSID:11353401
对书总的评价:觉得这本书只是一般的介绍matlab而已,不推荐看。
MATLAB语言简单介绍
一、MATLAB语言的发展
1、matlab语言是由美国的CleverMoler博士于1980年开发的。设计者的初衷是为解决“线性代数”课程的矩阵运算问题。取名MATLAB即Matrix Laboratory 矩阵实验室的意思。
2、现MATLAB已经不仅仅是一个“矩阵实验室”了,它集科学计算、图象处理;声音处理于一身,并提供了丰富的Windows图形界面设计方法。
3、MATLAB语言是功能强大的计算机高级语言,它以超群的风格与性能风靡全世界,成功地应用于各工程学科的研究领域。
4、近年来,MATLAB语言已在我国推广使用,现在已应用于各学科研究部门和许多高等院校。
二、matlab涉及的领域
工业研究与开发;
数学教学,特别是线性代数;
数值分析和科学计算方面的教学与研究;
电子学、控制理论和物理学等工程和科学学科方面的教学与研究;
经济学、化学和生物学等计算问题的所有其他领域中的教学与研究;
三matlab的功能
1.矩阵运算功能
MATLAB提供了丰富的矩阵运算处理功能,是基于矩阵运算的处理工具。
>> X=;
>> =lu(X)
L =
1.0000 0 0
0.3333 1.0000 0
0.1667 0.2857 1.0000
U =
6.0000 2.0000 1.0000
0 2.3333 0.6667
0 0 0.6429
P =
1 0 0
0 1 0
0 0 1
想想以前学矩阵时,矩阵的分解,如LU分解,真是令人头痛,经常是要解半个小时,现在只有matlab这么简单的一下,就搞定了,真是爽。(呵呵,怪不得随着电脑技术的发展,玩的时间多了。)
2.符号运算功能
符号运算即用字符串进行数学分析。
允许变量不赋值而参与运算。
用于解代数方程、微积分、复合导数、积分、二重积分、有理函数、微分方程、泰乐级数展开、寻优等等,可求得解析符号解。
3.丰富的绘图功能与计算结果的可视化
具有高层绘图功能——两维、三维绘图。
具有底层绘图功能——句柄绘图。
使用plot函数可随时将计算结果可视化。
4.图形化程序编制功能
动态系统进行建模、仿真和分析的软件包。
用结构图编程,而不用程序编程。
只需拖几个方块、连几条线,即可实现编程功能。
四、MATLAB的工具箱
控制系统工具箱
系统辨识工具箱
鲁棒控制工具箱
多变量频率设计工具箱
μ分析与综合工具箱
神经网络工具箱
最优化工具箱
小波分析 l 具箱
通信工具箱
财政金融工具箱
频率域系统辨识工具箱
模糊逻辑工具箱
高价谱分析工具箱
图像处理工具箱
线性矩阵不等式控制工具箱
模型预测控制工具箱
偏微分方程工具箱
信号处理工具箱
样条工具箱
统计工具箱
符号数学工具箱
电力系统
五、其它
matlab 所有函数都是开放的。
用户可按自己意愿随意更改,正因为此功能,使得matlab的应用越来越广泛。
可随时检索matlab函数。
可随时查询matlab函数的使用方法。 matlab 二维绘图的介绍
因为我现在学控制,用的是二维绘图功能。
一、matlab绘图
matlab语言丰富的图形表现方法,使得数学计算结果可以方便地、多样性地实现了可视化,这是其它语言所不能比拟的。
matlab语言的绘图功能
不仅能绘制几乎所有的标准图形,而且其表现形式也是丰富多样的。
matlab语言不仅具有高层绘图能力,而且还具有底层绘图能力——句柄绘图方法。
在面向对象的图形设计基础上,使得用户可以用来开发各专业的专用图形。
一、二维绘图
(一)plot —— 最基本的二维图形指令
1、plot的功能:
plot命令自动打开一个图形窗口Figure
用直线连接相邻两数据点来绘制图形
根据图形坐标大小自动缩扩坐标轴,将数据标尺及单位标注自动加到两个坐标轴上,可自定坐标轴,可把x,y 轴用对数坐标表示
如果已经存在一个图形窗口,plot命令则清除当前图形,绘制新图形
可单窗口单曲线绘图;可单窗口多曲线绘图;可单窗口多曲线分图绘图;可多窗口绘图
可任意设定曲线颜色和线型
可给图形加坐标网线和图形加注功能
2、plot的调用格式
plot(x) —— 缺省自变量绘图格式,x为向量, 以x元素值为纵坐标,以相应元素下标为横坐标绘图
plot(x,y) —— 基本格式,以y(x)的函数关系作出直角坐标图,如果y为n×m的矩阵,则以x 为自变量,作出m条曲线
plot(x1,y1,x2,y2) —— 多条曲线绘图格式
plot(x,y,’s’) —— 开关格式,开关量字符串s设定曲线颜色和绘图方式,使用颜色字符串的前1~3个字母,如
yellow—yel表示等。
或plot(x1,y1,’s1’,x2,y2,’s2’,…)
S的标准设定值如下:
字母 颜色 标点 线型
y 黄色 • 点线
m 粉红 ○ 圈线
c 亮蓝 × ×线
r 大红 + +字线
g 绿色 - 实线
b 蓝色 星形线
w 白色 : 虚线
k 黑色 -•(--) 点划线
3、图形加注功能
将标题、坐标轴标记、网格线及文字注释加注到图形上,这些函数为:
title —— 给图形加标题
xlable —— 给x轴加标注
ylable —— 给y轴加标注
text —— 在图形指定位置加标注
gtext —— 将标注加到图形任意位置
grid on(off) —— 打开、关闭坐标网格线
legend —— 添加图例
axis —— 控制坐标轴的刻度
axis的用法还有:
axis() —— 用行向量中
给出的值设定坐标轴的最大和最小值。
axis(equal) —— 将两坐标轴设为相等
axis on(off) —— 显示和关闭坐标轴的标
记、标志
axis auto —— 将坐标轴设置返回自动缺
省值
4、fplot —— 绘制函数图函数
fplot 的 调用格式:
fplot(fun,lims) —绘制函数fun在x区间,lims=的函数图。
fplot(fun,lims,'corline') — 以指定线形绘图。
=fplot(fun,lims) —只返回绘图点的值, 而不绘图。用plot(x,y) 来绘图。
5、ezplot ——符号函数的简易绘图函数
ezplot的调用格式:
ezplot(f) —这里f为包含单个符号变量x的符号表达式,在x轴的默认范围
ezplot(f,xmin,xmax) — 给定区间
ezplot(f,,figure(n)) — 指定绘图窗口绘图。
(二) fill –––– 基本二维绘图函数
fill的功能:
绘制二维多边形并填充颜色
(三)特殊二维绘图函数
bar –––– 绘制直方图
polar –––– 绘制极坐标图
hist –––– 绘制统计直方图
stairs –––– 绘制阶梯图
stem –––– 绘制火柴杆图
rose –––– 绘制统计扇形图
comet –––– 绘制彗星曲线
errorbar –––– 绘制误差棒图
compass –––– 复数向量图(罗盘图)
feather –––– 复数向量投影图(羽毛图)
quiver –––– 向量场图
area –––– 区域图
pie –––– 饼图
convhull –––– 凸壳图
scatter –––– 离散点图 下面为例子,
例1时域分析法:
某控制系统如图,
( l )当t = 0 时,求系统的单位阶跃响应曲线:
( 2 )当t = 0.3 时,求系统的冲激响应曲线。
>> num=
den=
G=tf(num,den)
H=1
GH=feedback(G,H)
反馈控制系统的传递函数:
Transfer function:
10
-------
s^2 + 9
单位阶跃响应曲线.
syms s
ezplot(ilaplace(10/s/(s^2+9)),);
set(gca,'ytick',-0.2:0.2:2.4)
grid
运行结果。
GH=feedback(G,H)
反馈控制系统的传递函数:
Transfer function:
10
-------------
s^2 + 3 s + 9
冲激响应曲线:
>> syms s
ezplot(ilaplace(10/(s^2+3*s+9)),);
运行结果:
更改坐标轴和标题
>> axis();
set(gca,'ytick',-1.5:.3:2);
title('\tau=0.3, 冲激响应曲线');
grid
运行结果:
本来想把例子都做成图文混排方式,直接看大家看的,但2楼的效果实在太差,图太大了,也不知怎么办。所以只好用word来做,麻烦大家下载了,再看。
以下为附件的内容:
例1时域分析法。
例2作系统的根轨迹图
例3绘制二阶环节伯德图
(想当年,学控制理论时,为了画这个图,可让我费尽心思,后来学习过程中,一看到要画这类的图,就怕啊。记得学液压伺服系统设计的内容时,要交作业,是对系统的评价,改进,就要自己画这个。当时,其它的都懂,就是这个不懂啊。把我就卡在那里了。心里恨呢。)
例4已知一控制系统的传递函数,求当放大系数 K 不断变大时,对此系统频率响应的影响。
例5己知某系统的开环传递函数,绘制系统的伯德图,并求系统的相角稳定裕量和幅值稳定裕量。
有了matlab工具,一切都变得简单了,呵呵。 matlab是个功能非常强大的软件,安装时,因为我得到的软件是压缩后的,为了解压,就花了一个多小时,因为文件实在是多。安装后,有85000多个文件。杀毒时,最怕的是装了两个软件的电脑,时间超久,一个就是matlab,另一个是pro/E。
这次,只是看了一部分的内容。看得比较匆忙,还有很多地方不懂。但总的来说,matlab比较容易入门,因为可以立即用得上,所以学起来,比学其它语言,如C,C#,VC等,有趣多了,也容易。但这个软件入门容易,学精可不容易。
初学的话,觉得了解的命令比较多,看得头都大了,看的当时明白是什么意思,到用时,就想不起来要用什么命令了。如果英语好的话,可以事半功倍。由此可见,学好英语还是很重要的。
在矩阵分析方面,有了matlab,可以省下很多运算的时间。以前学矩阵的时候,一是头痛它的概念多,二是头痛它的运算量大。现在可好,有了matlab,头痛的问题减少了一半。
工科的话,如果不学matlab这个工具的话,那今后求学的道路,肯定会比较艰辛。
以上是本人对学matlab的一点感受。让大家见笑了。 先写到这里,请各位高手多多指教。 工科的话,如果不学matlab这个工具的话,那今后求学的道路,肯定会比较艰辛。
严重同意!!! 真的很好,其实这也是一个方法论适用于很多的课程的研究 我现在正在努力的研读中
感受matlab功能只是个强那 如果学matlab侧重于自动控制的话,下面这本书不错,值得推荐:
MATLAB自动控制原理习题精解
PDG阅读 作者:李妍编著 页数:400页
【作 者】李妍编著
【丛书名】高等学校专业课程计算机解题指导系列
【形态项】 400页 ; 26cm
【读秀号】000005028441
【出版项】 国防工业出版社 , 2004
【ISBN号】 7-118-03443-6 / TP273-44
【原书定价】 35.00
【参考文献格式】李妍编著. MATLAB自动控制原理习题精解. 国防工业出版社, 2004. 我也正在学习中,太太太太强大了,哈还可以解方程,太爽了~~ 引用第11楼hooker于2006-05-30 21:52发表的“”:
呵,这个工具在美国工科本二本三,是必修课
老美果然是比我们先进。
页:
[1]