quote:以下是引用西门子PLC学员在2010-08-01 09:22:09的发言:
在流量计采用模拟量输出的情况下,软件上的累加误差关键是程序中对将数字量变换成了实数的工程量后进行的累加。如果数字量转换成工程量时保持整数,则软件上的累加误差可以减少为0。数字量转成工程量肯定有除的运算,如果不能整除,就是就有误差了吗?肯定有人这样问?其实PLC指令中有整数的除运算,其结果有商和余数。我们在程序中对商和余数分别进行累加,余数每大于除数就再整除一次,将商累加到累加量中,余数继续累加,大于除数就整除一次,周而复始的进行。
这种做法关健:工程量的转换中,要使被除数、除数全为整数。在OB35中进行采样累加。
其实如果条件允许采用脉冲量输出的流量计进行流量累加,程序更简单,误差会更少。
A/D, D/A 电子电路的分辨率的误差,远大于你所说的误差,例如用11位分辨率的A/D , D/A 带来的最小误差是多少,要改为16位的呢? 你所说的整数与实数运算的误差,已经反映在了1/2 LSB当中,可以忽略了。