概述
一阶系统
已知系统的闭环传递函数为(s)=1/(T*S+1),分别取T=0.1,1,2(或5)求取一阶系统的单位阶跃响应,单位脉冲响应,单位斜坡响应
单位阶跃响应
>> num1=[10];den1=[1 10];
>> sys1=tf(num1,den1);
>> t=0:0.01:10;
>> y1=step(sys1,t);
>> num2=[1];den2=[1 1];
>> sys2=tf(num2,den2);
>> y2=step(sys2,t);
>> num3=[0.2];den3=[1 0.2];
>> sys3=tf(num3,den3);
>> y3=step(sys3,t);
>> plot(t,y1,'.y',t,y2,'-g',t,y3,'*b')
>> title('一阶系统的单位阶跃响应T1=0.1 T2=1 T3=5')
>> xlabel('t');ylabel('h(t)')
>> grid
>>
系统性能指标
T=0.1时
num=[1];
>> den=[0 0.1 1];
>> y=tf(num,den);
>> ltiview(y)
>>
T=1
num=[1];
>> den=[0 1 1];
>> y=tf(num,den);
>> ltiview(y)
>>
T=5
>> num=[1];
>> den=[0 5 1];
>> y=tf(num,den);
>> ltiview(y)
>>
单位脉冲响应
单位斜坡响应
二阶系统
已知系统的闭环传递函数为:(s)=1/(S*S+2**S+1),各取=0,0.3,0.707,1,2,3,7
求取二阶系统的单位阶跃响应
zeta1=0;
>> num1=[1];
>> den1=[1 2*zeta1 1];
>> sys1=tf(num1,den1);
>> p1=roots(den1);
>> t=0:0.01:14;
>> y1=step(sys1,t);
>> zeta2=0.3;
>> num2=[1];
>> den2=[1 2*zeta2 1];
>> sys2=tf(num2,den2);
>> p2=roots(den2);
>> y2=step(sys2,t);
>> zeta3=0.707;
>> num3=[1];
>> den3=[1 2*zeta3 1];
>> sys3=tf(num3,den3);
>> p3=roots(den3);
>> y3=step(sys3,t);
>> zeta4=1;
>> num4=[1];
>> den4=[1 2*zeta4 1];
>> sys4=tf(num4,den4);
>> p4=roots(den4);
>> y4=step(sys4,t);
>> zeta5=2;
>> num5=[1];
>> den5=[1 2*zeta5 1];
>> sys5=tf(num5,den5);
>> p5=roots(den5);
>> y5=step(sys5,t);
>> zeta6=3;
>> num6=[1];
>> den6=[1 2*zeta6 1];
>> sys6=tf(num6,den6);
>> p6=roots(den6);
>> y6=step(sys6,t);
>> zeta7=7;
>> num7=[1];
>> den7=[1 2*zeta7 1];
>> sys7=tf(num7,den7);
>> p7=roots(den7);
>> y7=step(sys7,t);
>> plot(t,y1,'.y',t,y2,'-g',t,y3,'*b',t,y4,'+m',t,y5,':r',t,y6,'.k',t,y7,'+c')
>> title('二阶系统的单位阶跃响应')
>> xlabel('t');ylabel('h(t)')
>> grid
>>
最后
以上就是爱笑溪流为你收集整理的matlab二阶系统设置参数,一阶和二阶系统响应的matlab制作的全部内容,希望文章能够帮你解决matlab二阶系统设置参数,一阶和二阶系统响应的matlab制作所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复