对于如图线性系统,应用拉式变换终值定理,可以很容易求出系统给定稳态误差
ess=lim e(t) (t-无穷大)=limsE(s)(s-0)=limS(R(S)-C(S))= limS(R(S)-W(S)*R(S))= limsR(s)(1-Wb(s))
其中Wb(s)= W(S)/(1+H W(S))
在Matlab中,用函数dcgain可求得系统给定稳态误差Dcg=dcgain(num,den)
例求系统在典型输入信号1(t),t,0.5t^2下给定稳态误差
num=[77];den=[ conv ( conv ( [ 1 0 ] ,[ 1 3] ) , [1 4 5] ) ];
W(s)=tf(num,den)
源代码如下:
num1=[7 7];den1=[conv(conv([ 1 0] ,[1 3]) , [1 4 5])]; w=tf(num1,den1); %w=W(s) ww=feedback(w,1,-1); %ww=Wb(s) www=tf(ww.den{1}-ww.num{1} , ww.den{1} ); %www=1- Wb(s) num2=[ 1 0 ];den2=1; w2=tf(num2 ,den2); wwww=www*w2; % s ( ( 1-Wb ( s) ) %当输入为1(t)时的给定稳态误差 num3=[1];den3=[1 0]; w3=tf(num3,den3); dcg1=dcgain(wwww*w3) %当输入为t时的给定稳态误差 num4=[1];den4=[1 0 0]; w4=tf(num4,den4); dcg2=dcgain(wwww*w4) %当输入为1(t)时的给定稳态误差 num5=[1];den5=[1 0 0 0]; w5=tf(num5,den5); dcg3=dcgain(wwww*w5)