发布于 2008-05-15 09:54:02
0楼
多谢几位大侠的热心帮助,我终于看懂微分的处理过程了。
因为FB41是一个通用的PID块,所以其中有一个设置项TM_LAG(微分延迟时间),是为了防止微分作用过于灵敏,防止高频扰动,即采用“不完全微分算法”,基本原理是在原来的微分环节上加了一个一阶惯性环节,
传函为:1/(TM_LAG×S+1)。
FB41中的算法就是将s域的算法转化为离散的差分方程,然后采用递推的形式编程的。我之前没看懂是我忽略了TM_LAG,FB41中若你设置TM_LAG=T0MS,它内部自动将TM_LAG设成CYCLE/2,那么我上面推出的算式:
Danteil(k)=(2Td/Ts)*[ERKP(k)-SRueck(k-1)]就是错误的,2Td/Ts前面没有2倍。这样,若不设置微分延时的话,
Danteil(k)=(Td/Ts)*[ERKP(k)-ERKP(k-1)],该算式就是正宗的用差分来近似微分的算式。
初来匝道,请多指教!