资源描述:
《实验二-MATLAB用于时域分析.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验二MATLAB用于时域分析一、实验目的通过使用MATLAB完成系统的输出响应分析、稳定性分析、求动态性能指标以及稳态误差分析等工作。二、实验原理在MATLAB中,可以通过单输入单输出系统的传递函数,进行系统的脉冲响应,阶跃响应以及一般输入响应等时域分析。用到以下函数:单位阶跃响应step(num,den,t)单位脉冲响应impluse(num,den,t)一般输入响应y=Isim(num,den,u,t)时间t是事先定义的矢量,u为输入信号。此外,还可以求出系统的超调量,调节时间以及稳态误差。SIMULINK是MATLAB的一个附加组件,用来提供一个系统的建模
2、、动态仿真及综合分析的工作平台。SIMULINK模型可以用来模拟线性或非线性、连续或离散,或者两者混合的系统,即可用它来模拟几乎所有的动态系统。三、实验内容通过MATLAB以及其中的SIMULINK完成系统的输出响应分析、稳定性分析、求动态性能指标以及稳态误差分析等工作。四、实验代码1、一阶系统响应sys1=tf([100],[10]);sys2=tf([0.1],[1]);sys=feedback(sys1,sys2);step(sys)2、二阶系统响应wn=1t=0:0.1:12;num=[1];zeta1=0;den1=[12*zeta11];zeta3=0
3、.3;den3=[12*zeta31];zeta5=0.5;den5=[12*zeta51];zeta7=0.7;den7=[12*zeta71];zeta9=1.0;den9=[12*zeta91];[y1,x,t]=step(num,den1,t);[y3,x,t]=step(num,den3,t);[y5,x,t]=step(num,den5,t);[y7,x,t]=step(num,den7,t);[y9,x,t]=step(num,den9,t);plot(t,y1,t,y3,t,y5,t,y7,t,y9)gridon;1、稳定性分析den=[11224
4、];roots(den)2、求动态性能指标t=0:0.01:2;num=[1000]';den=[134.51000];[y,x,t]=step(num,den,t);plot(t,y);maxy=max(y);yes=y(length(t));pos=100*(maxy-yes)/yesfori=1:1:201ify(i)==maxy,n=i;endendtp=(n-1)*0.01fori=1:1:201if(y(i)<1.05&y(i)>0.95),n=i;endbreak;endts=(n-1)*0.013、稳态误差分析t=0:0.1:15;[num1,de
5、n1]=cloop([1],[11]);[num2,den2]=cloop([1],[110]);[num3,den3]=cloop([41],[1100]);y1=impulse(num1,den1,t);y2=impulse(num2,den2,t);y3=impulse(num3,den3,t);subplot(311);plot(t,y1);subplot(312);plot(t,y2);subplot(313);plot(t,y3);er1=0-y1(length(t))er2=0-y2(length(t))er3=0-y3(length(t))1、求单
6、位阶跃响应及其稳态误差t=0:0.1:20[num1,den1]=cloop([1],[11]);[num2,den2]=cloop([1],[110]);[num3,den3]=cloop([41],[1100]);y1=step(num1,den1,t);y2=step(num2,den2,t);y3=step(num3,den3,t);subplot(311);plot(t,y1);subplot(312);plot(t,y2);subplot(313);plot(t,y3);er1=1-y1(length(t));er2=1-y2(length(t));e
7、r3=1-y3(length(t));2、求单位斜坡响应及其稳态误差t=0:0.1:20;t1=0:0.1:100;[num1,den1]=cloop([1],[11]);[num2,den2]=cloop([1],[110]);[num3,den3]=cloop([41],[1100]);y1=step(num1,[den10],t1);y2=step(num2,[den20],t);y3=step(num3,[den30],t);subplot(311);plot(t1,y1,t1,t1);subplot(312);plot(t,y2,t,t);subplot
8、(313)