机控-系统的时间响应
* 3.7 δ函数在时间响应中的作用 * 3.7 δ函数在时间响应中的作用 * 3.7 δ函数在时间响应中的作用 * 3.7 δ函数在时间响应中的作用 * 3.7 δ函数在时间响应中的作用 * 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 impulse 函数:用于生成单位脉冲响应 * 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 step 函数:用于生成单位阶跃响应 * 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 lsim 函数:用于生成对任意输入的时间响应 * 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 举例:图示系统的传递函数如下,求系统在时间常数τ取不同值时的单位脉冲响应、单位阶跃响应和正弦函数响应。 * 解:令时间常数τ分别取不同值时,分析单位脉冲响应和单位阶跃响应的MATLAB文本如下。 t=[0:0.01:0.8]; nG=[50]; tao=0;dG=[0.05 1+50*tao 50];G1=tf(nG,dG); tao=0.0125;dG=[0.05 1+50*tao 50];G2=tf(nG,dG); tao=0.025;dG=[0.05 1+50*tao 50];G3=tf(nG,dG) [y1,T]=impulse(G1,t);[y1a,T]=step(G1,t); [y2,T]=impulse(G2,t);[y2a,T]=step(G2,t); [y3,T]=impulse(G3,t);[y3a,T]=step(G3,t); subplot(121),plot(T,y1,'--',T,y2,'-.',T,y3,'-') legend('tao=0','tao=0.0125','tao=0.025') xlabel('t(sec)'),ylabel('x(t)');grid on; subplot(122),plot(T,y1a,'--',T,y2a,'-.',T,y3a,'-') legend('tao=0','tao=0.0125','tao=0.025') grid on;xlabel('t(sec)'),ylabel('x(t)'); * 解:令时间常数τ分别取不同值时,用MATLAB分析单位脉冲响应和单位阶跃响应的结果如图。 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 * 对于任意输入,例如正弦输入,应用lsim函数求时间常数τ=0.025时的时间相应及误差曲线,MATLAB文本如下。 t=[0:0.01:1];u=sin(2*pi.*t); % tao=0.025; nG=[50];dG=[0.05 1+50*tao 50];G=tf(nG,dG); % y=lsim(G,u,t); % plot(t,u,'-.',t,y,'-',t,u-y,'-.','linewidth',1) legend('u(t)','xo(t)','e(t)') grid;xlabel('t(sec)'),ylabel('x(t)'); 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 * 解:令时间常数τ=0.025时,用MATLAB分析正弦响应的结果如图。 3.8 利用MATLAB分析时间响应 3.8.1 用MATLAB求系统时间响应 * 举例:对于上述例题,τ 取不同值时,求出单位阶跃响应以后,用MATLAB计算的瞬态性能指标如下表。 从上表可见,系统引入速度负反馈以后,系统的调整时间和最大超调量都得到减小。 3.8 利用MATLAB分析时间响应 3.8.2 用MATLAB求系统的瞬态性能指标 τ tr tP MP ts 0 0.0640 0.1050 0.3509 0.3530 0.0125 0.0780 0.1160 0.1523 0.2500 0.025 0.1070 0.1410 0.0415 0.1880 * 举例:用MATLAB计算瞬态性能指标的文本如下。 t=0:0.001:1; yss=1; dta=0.02; nG=[50]; tao=0;dG=[0.05 1+50*tao 50];G1=tf(nG,dG); tao=0.0125;dG=[0.05 1+50*tao 50];G2=tf(nG,dG); tao=0.025;dG=[0.05 1+50*tao 50];G3=tf(nG,dG); y1=step(G1,t);y2=step(G2,t);y3=step