matlab在自动控制系统中应用数据处理分析方案.docx
- 文档编号:4765085
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:11
- 大小:360.49KB
matlab在自动控制系统中应用数据处理分析方案.docx
《matlab在自动控制系统中应用数据处理分析方案.docx》由会员分享,可在线阅读,更多相关《matlab在自动控制系统中应用数据处理分析方案.docx(11页珍藏版)》请在冰豆网上搜索。
matlab在自动控制系统中应用数据处理分析方案
模型图如下:
第一种方法:
(将模型图存盘为kp.mdl)
kp=2。
[t,x,y]=sim('kp',70)。
plot(t,y)
gtext('kp=2')
holdon
kp=3。
[t,x,y]=sim('kp',70)。
plot(t,y)
gtext('kp=3')
holdon
kp=4。
[t,x,y]=sim('kp',70)。
plot(t,y)
gtext('kp=4')
holdon
kp5。
[t,x,y]=sim('kp',70)。
plot(t,y)
gtext('kp=5')
holdon
第二种方法:
(编写M文件)
%kp2525.m
num=[1]。
den=conv([1,1],conv([2,1],[5,1]))。
forkp=2:
5
[num1,den1]=cloop(kp*num,den,-1)。
step(num1,den1)
holdon
end
在matlab命令窗口中输入此文件名,执行M文件
》kp2525
已知系统的传递函数求出其零极点和增益,并写出系统的零极点形式
在matlab命令窗口输入如下语句
>>num=[6,12,6,10]。
den=[1,2,3,1,1]。
[z,p,k]=tf2zp(num,den)
z=
-1.9294
-0.0353+0.9287i
-0.0353-0.9287i
p=
-0.9567+1.2272i
-0.9567-1.2272i
-0.0433+0.6412i
-0.0433-0.6412i
k=
6
对于典型二阶系统
试绘制出无阻尼自然振荡频率,阻尼比分别为0.2,0.4,…..1.0,2.0时系统的单位阶跃响应曲线
相应的matlab程序为:
>>wn=6。
zeta=[0.2:
0.2:
1.0,2.0]。
figure
(1)。
holdon
forI=zeta
num=wn.^2。
den=[1,2*I*wn,wn.^2]。
step(num,den)。
end
title('StepRsponse')。
holdoff
给定系统的开环状态空间表达式为
求系统的幅值裕量和相位裕量,并画出BODE图
Matlab程序
w=logspace(-1,1)。
A=[0100。
0010。
0001。
-62.5-213.8-204.2-54]。
B=[0。
0。
0。
1]。
C=[1562187500]。
D=0。
[Gm,Pm,Wcg,Wcp]=margin(A,B,C,D),bode(A,B,C,D,1,w)。
disp(['幅值裕量=',num2str(20*log10(Gm)),'dB,','相位裕量=',num2str(Pm),'°'])。
title(['Gainmargin=',num2str(Gm)','Phasemargin='num2str(Pm)])
Gm=
4.4922
Pm=
23.0706
Wcg=
12.6467
Wcp=
5.8275
幅值裕量=13.0492dB,相位裕量=23.0706°
子系统的封装
仿真系统的线性化模型
x=[0。
0。
0]。
u=0。
y=[1。
1]。
ix=[]。
iu=[]。
iy=[1。
2]。
[x,u,y,dx]=trim('ex6_14',x,u,y,ix,iu,iy)。
x
x=
0.0000
0.5380
0.5000[A,B,C,D]=linmod('ex6_14')。
[num,den]=ss2tf(A,B,C,D)。
printsys(num,den,'s')
num
(1)/den=
4.4409e-016s^2+1s+1
-------------------------
s^3+2.4s^2+2.4s+2
num
(2)/den=
s^3+2.4s^2+2.4s+1
-------------------------
s^3+2.4s^2+2.4s+2
[x,u,y,dx]=trim('ex6_15',[],[],100,[],[],1)
x=
100
u=
9.9000e+003
y=
100
dx=
3.6380e-015
%ex6_9.m
functiondx=ex6_9(t,x)
dx=[x
(2)。
(1-x
(1)^2)*x
(2)-x
(1)]。
>>[t,x]=ode45('ex6_9',[0,30],[1。
0])。
plot(t,x(:
1),t,x(:
2))。
xlabel('t'),ylabel('x(t)')
连续系统的数字仿真
set_param('zcf6_11/Gain','Gain','2')。
[t,x,y]=sim('zcf6_11',10)。
plot(t,y(:
1),':
b',t,y(:
2),'-r')。
legend('y1','y2')
SIMULINK的基本应用
MATLAB的基本操作
%ex_1.m
%ThisisanM_ileforcalculatessqrt|x|+x^3
x1=abs(x)。
x2=sqrt(x1)+x^3。
y=x2
y=
-62
%ex1_2.m
function[y1,y2]=ex1_2(x1,x2,x3)
z1=3*x1.^2。
z2=(x2+x3)。
y1=z1+z2。
y2=z1-z2。
a1=-2。
a2=3。
a3=1。
[y1,y2]=ex1_2(a1,a2,a3)
y1=
16
y2=
8
x=0:
0.1:
2*pi。
plot(x,sin(x),x,cos(x))
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- matlab 自动控制系统 应用 数据处理 分析 方案