发布于 2022-06-28 09:37:24
9楼
我也遇到相同问题,PLC采集电磁流量计瞬时流量,通过100ms中断,累积10次,求出平均m流量,再对秒流量进行累加。
累加过程中会突然出现累加值变大,且数值明显偏离真实值几倍。
对问题进行分析,是干扰,还是仪表问题,数值运算问题。对干扰问题,做了AI点滤波值进行修改,未解决问题;仪表未发现问题;重点是运算问题了。
运算问题,首先需要对模拟量转换出的数值进行小信号切除,避免太小的小数与整数相加计算不准;其二,中断计算出的秒流量VD100累积需要把整数部分与小数部份分开,整数放到一个浮点数VD104存储区,每次大于等于1时,VD104+1,小数部分VD100=VD100-1,输出的累积数值存储在VD112中,VD112=VD104+VD108,关键来了,VD108是VD100=VD100-1后,进行转换后保留的两位数小数,具体是先对VD100进行放大100倍,再截取整数,最后转成浮点数(只有两位数的小数),这样就不会出现过长的小数与整数相加出现运算不准了。
这是我解决的方法,有不足之处望指正。感谢一起分享经验。