MATLAB复习知识点Word下载.docx
- 文档编号:6915708
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:15
- 大小:184.27KB
MATLAB复习知识点Word下载.docx
《MATLAB复习知识点Word下载.docx》由会员分享,可在线阅读,更多相关《MATLAB复习知识点Word下载.docx(15页珍藏版)》请在冰点文库上搜索。
(2)系统辨识工具箱
(3)模型预测控制工具箱
(4)鲁棒控制工具箱
(5)神经网络工具箱
7、MATLAB系统的构成
(1)开发环境
(2)数学函数库(3)MATLAB语言(4)图形处理系统(5)应用程序接口
8、常用工具箱
(1)控制类工具箱
(2)应用数学类工具箱(3)信号处理类工具箱(4)其他常用工具箱
9、MATLAB语句形式:
>
变量=表达式
10、MATLAB常用命令
diff(f,v,n)求表达式f对变量v的n阶微分
int(f)求表达式f对缺省变量的积分
int(f,v)求表达式f对变量v的积分
int(f,v,a,b)求表达式f在区间(a,b)上对变量v的定积分
20、已知f(x)=ax2+bx+c,求f(x)的微分和积分。
解:
symsabcx
>
f=sym(‘a*x^2+b*x+c’)
f=
a*x^2+b*x+c
diff(f,a)
ans=
x^2
int(f)
1/3*a*x^3+1/2*b*x^2+c*x
int(f,x,0,2)
8/3*a+2*b+2*c
21、MATLAB绘图命令
例在[0,2]用红线画sinx,用绿圈画cosx.
x=linspace(0,2*pi,30);
%%(30等分)
y=sin(x);
z=cos(x);
plot(x,y,'
r'
x,z,'
go'
)
符号函数(显函数、隐函数和参数方程)画图
ezplot命令
(1)ezplot(‘f(x)’,[a,b])
表示在a<
x<
b绘制显函数f=f(x)的函数图.
(2)ezplot(‘f(x,y)’,[xmin,xmax,ymin,ymax])
表示在区间xmin<
xmax和ymin<
y<
ymax绘制隐函数f(x,y)=0的函数图.
(3)ezplot(‘x(t)’,’y(t)’,[tmin,tmax])
表示在区间tmin<
t<
tmax绘制参数方程x=x(t),y=y(t)的函数图.
例在[-2,0.5],[0,2]上画隐函数
的图.
输入命令:
ezplot('
exp(x)+sin(x*y)'
[-2,0.5,0,2])
例在[-1,2]上画
的图形.
先建M文件myfun1.m:
functionY=myfun1(x)
Y=exp(2*x)+sin(3*x.^2)
再输入命令:
fplot(‘myfun1’,[-1,2])
处理图形
(1)GRIDON:
加格栅在当前图上GRIDOFF:
删除格栅
(2)hh=xlabel(string):
在当前图形的x轴上加图例string
hh=ylabel(string):
在当前图形的y轴上加图例string
hh=zlabel(string):
在当前图形的z轴上加图例string
hh=title(string):
在当前图形的顶端上加图例string
(3)holdon保持当前图形,以便继续画图到当前图上
holdoff释放当前图形窗口
22、Simulink仿真实例
例题1、使用Simulink创建系统,求解非线性微分方程
.其初始值为
绘制函数的波形.
例题2、力-质量系统,要拉动一个箱子(拉力f=1N),箱子质量为M(1kg),箱子与地面存在摩擦力[(b=0.4N(/m/s)],其大小与车子的速度成正比。
其运动方程式为:
拉力作用时间为2s,建构的模型为
例题3、力-弹簧-阻尼系统,假设箱子与地面无摩擦存在,箱子质量为M(1kg),箱子与墙壁间有线性弹簧(k=1N/m)与阻尼器(b=0.3N/ms-1)。
阻尼器主要用来吸收系统的能量,吸收系统的能量转变成热能而消耗掉。
现将箱子拉离静止状态2cm后放开,试求箱子的运动轨迹。
运动方程式为:
23、控制系统数学模型
1、传递函数(TransferFunction:
TF)模型
num=[b0,b1,…,bm-1,bm],den=[a0,a1,…,an-1,an]
在MATLAB中,控制系统的分子多项式系数和分母多项式系数分别用向量num和den表示,即
2、零极点增益(Zero-Pole-Gain:
ZPK)模型
在MATLAB中,控制系统的零点和极点分别用向量Z和P表示,即
Z=[z1,z2,…,zm],P=[p1,p2,…,pn]
3、传递函数模型
sys=tf(num,den)生成传递函数模型sys
直接生成传递函数模型。
在MATLAB命令窗口中输入:
sys=tf([132],[1573])
4、零极点增益模型
sys=zpk(z,p,k)%建立连续系统的零极点增益模型sys。
z,p,k分别对应系统的零点向量,极点向量和增益
sys2=tf(sys)%将零极点增益模型转换为传递函数模型
【例2.1】已知控制系统的传递函数为,用MATLAB建立其数学模型
【解】
(1)生成连续传递函数模型。
num=[132];
den=[1573];
sys=tf(num,den)
【例2.3】系统的零极点增益模型为,用MATLAB建立其传递函数模型。
【解】在MATLAB命令窗口中输入:
z=[-0.1,-0.2];
p=[-0.3,-0.3];
k=1;
sys=zpk(z,p,k)%建立系统的零极点增益模型
5、模型连接
(1)串联连接
格式:
sys=series(sys1,sys2)
(2)并联连接
sys=parallel(sys1,sys2)
(3)反馈连接
sys=feedback(sys1,sys2,sign)
24、时域分析
时域响应性能指标求取
1、峰值时间
[Y,k]=max(y)%求出y的峰值及相应的时间
timetopeak=t(k)%获得峰值时间
2、超调量
C=dcgain(G)%求取系统的终值
percentovershoot=100*(Y-C)/C%计算超调量
3、上升时间
C=dcgain(G)
n=1
whiley(n)<
C
n=n+1
m=1;
risetime=t(n)
4、调节时间
C=dcgain(G)
i=length(t)
while(y(i)>
0.98*C)&
(y(i)<
1.02*C)
i=i-1
Settingtime=t(i)
※※例1已知二阶系统传递函数为
,编程求取系统的性能指标。
G=zpk([],[-1+3*i,-1-3*i],3);
%计算最大峰值时间和它对应的超调量
[y,t]=step(G);
plot(t,y)
grid
[Y,k]=max(y);
timeopeak=t(k)%取得最大峰值时间
n=1%计算上升时间
n=n+1
i=length(t);
%计算稳态响应时间
while(y(i)>
i=i-1;
settingtime=t(i)
例2已知单位负反馈系统,其开环传递函数为
,其中ωn=1,试绘制ζ分别为0,0.2,0.4,0.6,0.9,1.2,1.5时其单位负反馈系统的单位阶跃响应曲线。
wn=1
sigma=[0,0.2,0.4,0.6,0.9,1.2,1.5]
figure
(1);
holdon
num=wn*wn
t=linspace(0,20,200)'
%将t在0到20之间均等分成200份
fori=sigma
den=conv([1,0],[1,2*wn*i]);
s1=tf(num,den)
sys=feedback(s1,1)
step(sys,t)
grid
title('
典型二阶系统取不同阻尼比时的单位阶跃响应'
gtext('
sigma=0'
);
sigma=0.2'
sigma=0.4'
sigma=.6'
sigma=0.9'
sigma=1.2'
sigma=1.5'
例3已知单位负反馈的二阶系统,其开环传函为
其中T=1,试绘制k分别为0.1,0.2,0.5,0.8,1.0,2.4时,其单位负反馈系统的单位阶跃响应曲线。
T=1
k=[0.1,0.2,0.5,0.8,1.0,2.4]
num=1;
den=conv([1,0],[T,1])
forj=1:
6
s1=tf(num*k(j),den)
sys=feedback(s1,1)
y(:
j)=step(sys,t);
plot(t,y(:
1:
6));
title(‘典型二阶系统取不同开环增益时的单位阶跃响应'
k=0.1'
k=0.2'
k=0.5'
k=0.8'
k=1.0'
k=2.4'
例4已知单位负反馈的二阶系统,其中T=1,K=1,试绘制分别为0,0.05,0.2,0.5,1.0,2.4时,其单位负反馈系统的单位阶跃响应曲线。
k=1
tou=[0,0.05,0.2,0.5,1.0,2.4]
num=1
den=conv([1,0],[T,1+tou(j)])
s1=tf(num*k,den)
典型二阶系统采用输出微分反馈时的单位阶跃响应'
tou=0'
tou=0.05'
tou=0.2'
tou=0.5'
tou=1.0'
tou=2.4'
25、生成特定的激励信号的函数gensig()
[u,t]=gensig(type,tau)
功能:
按指定的类型type和周期tau生成特定类型的激励信号u。
其中变元type可取字符为:
‘sin’(正弦)、‘square’(方波)、‘pulse’(脉冲)。
26、单位冲激响应函数impulse()
impulse(sys)
例:
系统传递函数为:
求脉冲响应。
MATLAB程序如下:
sys=tf(4,[114]);
%生成传递函数模型
impulse(sys);
%计算并绘制系统的单位冲激响应
脉冲响应'
27、任意输入的响应函数lsim()
lsim(sys,u,T)
计算和绘制LTI模型sys在任意输入u、持续时间T的作用下的输出y,不返回数据,只返回图形。
※※例:
求系统:
的方波响应,其中方波周期为6秒,持续时间12秒,采样周期为0.1秒。
MATLAB程序为:
[u,t]=gensig('
square'
6,12,0.1);
%生成方波信号
plot(t,u,'
--'
holdon;
%绘制激励信号
sys=tf([1,1],[1,2,5]);
lsim(sys,u,t);
%系统对方波激励信号的响应
27、阶跃响应函数step()格式:
step(sys)
28、Bode图绘制与Nyquist图绘制
Bode图绘制
bode(sys)
Nyqusit图绘制
nyquist(sys)
试绘制开环系统H(s)的Nyquist曲线,判断闭环系统的稳定性,并求出闭环系统的单位冲激响应。
其中
k=50;
z=[];
p=[-5,2];
sys=zpk(z,p,k);
nyquist(sys);
Nyquist曲线图'
figure
(2);
sb=feedback(sys,1);
impulse(sb);
单位冲激响应'
29、MATLAB常用操作界面包括命令窗口、工作空间窗口(浏览器)、命令历史窗口、当前目录窗口、内存数组编辑器、M文件编辑/调试器、帮助导航/浏览器、图形窗口等。
30、MATLAB中clf用于清除图形窗、clc用于清除指令窗中显示内容、clear用于清除MATLAB工作空间中保存的变量。
31、为了使两个plot的图形在同一个坐标显示,可以用(holdon)命令进行图形保持,一个图形窗口上绘制多个图形可以用(subplot())函数进行分割窗口。
可以使用___gridon____命令为图形添加网格。
32、求可逆矩阵A的逆矩阵的指令是__inv(A)__.
33、M文件包括__M脚本__文件和__M函数__文件.
34、在一个元胞数组A中寻访第2行第3列元胞元素用A(2,3);
寻访数组第2行第3列元胞中的内容用A{2,3}。
35、“左除”与“右除”有什么区别?
在通常情况下,左除x=a\b是a*x=b的解,右除x=b/a是x*a=b的解,一般情况下,a\b
b/a。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 复习 知识点