控制理论matlabsimulink.docx
《控制理论matlabsimulink.docx》由会员分享,可在线阅读,更多相关《控制理论matlabsimulink.docx(15页珍藏版)》请在冰点文库上搜索。
![控制理论matlabsimulink.docx](https://file1.bingdoc.com/fileroot1/2023-7/16/bacd6e9b-e5ae-4cb3-8a80-b5f14c9f59d7/bacd6e9b-e5ae-4cb3-8a80-b5f14c9f59d71.gif)
控制理论matlabsimulink
9
单位阶跃响应曲线:
clc
clear
close
%ϵͳ״̬¿Õ¼äÃèÊö
a=[-0.5572-0.7814;0.78140];
b=[1;0];
c=[1.96916.4493];
d=[0];
x1=[10];
%»æÖƱջ·ÏµÍ³µÄ½×Ô¾ÏìÓ¦ÇúÏß
figure
(1)
step(a,b,c,d)
title('stepresponse')
xlabel('time-sec')
ylabel('amplitude')
%»æÖƳå»÷ÏìÓ¦ÇúÏß
figure
(2)
impulse(a,b,c,d)
title('impulseresponse')
xlabel('time-sec')
ylabel('amplitude')
%»æÖÆÁãÊäÈëÏàÓ¦ÇúÏß
figure(3)
initial(a,b,c,d,x1)
title('zeroinputresponse')
xlabel('time-sec')
ylabel('amplitude')
a=[-0.5572-0.7814;0.78140];
b=[1;0];
c=[1.96916.4993];
d=[0];
[num,den]=ss2tf(a,b,c,d,1)
num=
01.96915.0786
den=
1.00000.55720.6106
Transferfunction:
1.969s+5.079
---------------------------
s^3+0.5572s^2+0.6106s
figure(4)
step(num,den)
title('slopeinputresponse')
xlabel('time-sec')
ylabel('amplitude')
10.
clear
closeall
clc
num1=[50];
den1=conv([11],conv([15],[1-2]));
[num2,den2]=cloop(num1,den1);
[z,p,k]=tf2zp(num2,den2);
k
p
figure
(1)
bode(num1,den1)
grid
title('bodeplot')
figure
(2)
impulse(num2,den2)
grid
title('impulseplot')
k=
50
p=
-6.1800
1.0900+2.2988i
1.0900-2.2988i
容易判断该系统不稳定
2.
clear
closeall
clc
num1=[16.70];
den1=conv([0.851],conv([0.251],[0.06251]));
[num2,den2]=cloop(num1,den1);
num3=10*num2;
den3=den2;
[z,p,k]=tf2zp(num3,den3);
p
figure
(1)
nyquist(num3,den3);
grid
title('nyquistplot')
figure
(2)
[numc,denc]=cloop(num3,den3);
impulse(numc,denc)
title('impulseresponse')
p=
-10.5602+35.1033i
-10.5602-35.1033i
-0.0560
有图可知N=0;
P=0,所以Z=0;因此是稳定的。
Simulink的结果
clc
clear
closeall
numo=[12];
den=[143];
deno=conv(den,den);
figure
(1)
k=0:
0.1:
150;
rlocus(numo,deno,k)
title('rootlocus')
[p,z]=pzmap(numo,deno);
[k,p1]=rlocfind(numo,deno);
k
figure
(1)
k=(48*64)^0.5;
num4=k*[12];
den=[143];
den4=conv(den,den);
[numc,denc]=cloop(num4,den4,-1);
impulse(numc,denc)
title('impulseresponsek=55.4256');
selected_point=
0.0083+3.1211i
k=
54.4688