自动控制原理中,传递函数是怎么样转换成C语言的呢,才能在工控机上实时地运行。求解,

2025-05-21 08:04:49
推荐回答(1个)
回答(1):

传递函数G(s)要离散化成G(z),然后变成差分方程,然后就可以用c语言编程了~
比如Y(S)/U(S)=G(s)=1/(a*s+1);
用零阶保持器,你的采样周期是Ts(比如你的控制函数是在中断服务函数里实现的,那Ts就是你的中断周期),得到Y(z)/U(z)=G(z)=(1-z^(-1))*Z[G(s)/s]=[1-e^(-Ts/a)]/[z-e^(-Ts/a)]={[1-e^(-Ts/a)]*z^(-1)}/[1-e^(-Ts/a)*z^(-1)];
所以得到差分方程:y(k)=e^(-Ts/a)*y(k-1)+ (1-e^(-Ts/a))*u(k-1),k表示当前时刻。