然后你的PLC需要有RS485通讯口,连接流量计,
编写485通讯程序,按照通讯协议将累计量解析出来就行。
对这个流量进行固定频率的采集,假如采集频率为10hz,也就是每秒钟采集10次,将每次采集的数据进行累加,再将累计的数除以10就是每秒流量,假如流量计工作在最大流量上,我们假定20ma对应的数值时65535(一般plc模拟量都没这么高的精度,至于是多少要根据模块来),那么用双字运算就能满足要求了,先将模拟量输入数值转换成双字,再累加,到10次以后将累加值除以10再传送给另一个寄存器(这个寄存器中才是真正的累计量)。累计范围超出也好办,只要将累没兄穗计量单位换算一下就永远也不可能枯卜超范围了,比如我们开始累计的是升,每次达到1000升时,将一个立方为单位的累计值上加1,以升为单位的寄存器清零,单立方值到了1000后,将仟立方寄存器加1,再将立方累计值清零。这样处理,再尘档多的流量也可以累计。
要减小累计误差就是要减短采集时间,对于流量计采样时间0.1秒应该是够了。还有就是采集程序要用定时中断,比较准确一点。
可以的,首先需要把瞬时流量采集到plc中来,然后在中断中调用悉孙让累计程序,例如累计流量=(瞬时流量+累计流量)/3600这个是凯销流量单位是睁局xx/h 的,如果是xx/分钟的话就是除以60.另外中断的执行时间是1秒哦!以上!!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)