西门子PLC中怎样解决流量累积问题?
宣布日期:
2022-03-30

现在上位机系统中许多要求具备流量计的流量累计功效,由此引出的几个问题,期望与各人分享。

问题1:自行编写流量累计程序

自行编写流量累计程序的原理,着实就是积分的更原始算法看法,把单位小距离时间内的瞬时流量乘以单位距离时间,获得单位小距离时间内的流量,再把这些小流量累加起来,就的到了累计流量。

在流量累计编程中经�;嵊龅绞凳臃ㄎ侍�,实数加法运算的注重事项也应当引起编程职员的重视,请看下例程序(假设其在OB35中被挪用,目的为每隔一准时间距离就累计一次流量)

L MD0 //累计流量存储值

L MD4 //流量瞬时值

+R

T MD 0

以上的程序是否保存问题?

许多人会以为没有问题,但现真相形是此程序在运行一段时间后就将泛起过失。此程序在运行之初是正常的,由于累计流量初始值及流量瞬时值都为一个很小的浮点数,两数相加后,效果准确。可是当一段时间后,累计流量的数值逐渐增大,当它与瞬时流量的数值相差很远的时间,两者执行加法操作后,瞬时流量的数值将被忽略掉(如9999990.0与0.2做加法操作)。着实具备盘算机知识的人都应当清晰这一点,这是由于浮点数的存储机制造成的,是所有盘算机方面编程都需要思量的问题。这个问题可以通过使用二次累加或多次累加的要领来解决。以是在编程时应阻止数目级相差太多的浮点数之间举行运算。许多人反应“加法指令欠好用了”,很有可能就是数目级相差许多的实数举行了加法运算。

问题2:累计流量误差问题

关于积分算法,取小的矩形对流量举行累计,一定是矩形划分越细,误差越小,不保存误差是不可能的。

问题3:流量计与PLC组成的系统的误差

流量计有多种多样,下面举些例子:

1、流量计自己没有累计流量功效,但可以把瞬时流量以模拟量的方法(例如4-20mA)输出。

此时累计流量的更大误差可以估算为:

流量计自己误差 * 流量计D/A误差 * 模拟量�?锳/D误差 * PLC流量累盘算法误差

假设上面所有误差都是1%,则更后的误差约为:4.06%

1.01*1.01*1.01*1.01=1.0406

关于某些流量计,自己的瞬时流量误差可能就是3%,以是这样的系统累计流量的误差可能还要大些。

2、流量计自己没有累计流量功效,但可以把瞬时流量以数字量的方法输出。

有些流量计提供数字量接口,可以毗连PLC的数字量输入模板,流量计每流过一定流量后(例如0.1吨),此输入点就导通一次,PLC就把累计流量累加0.1吨即可。此类系统阻止了A/D,D/A转化的误差,以及PLC累盘算法误差。可是会泛起一准时间内累计流量稳固化的情形,实时性欠好(每0.1吨累积的时间)。

3、流量计自己有累计流量功效,同时可以把瞬时流量以模拟量的方法(例如4-20mA)输出,但无法将累计流量数值送出。
流量计自己累积流量的数值,更后很有可能与PLC的累计流量数值相差很大,缘故原由可能是多方面造成的,除去系统累计流量误差的因素,若是PLC系统磨练时,流量计还计量,则PLC无法累积这部分流量。

4、流量计自己有累计流量功效,同时可以通过通讯的方法,把瞬时流量及累计流量数值送给PLC。这种情形更理想,但系统的本钱也更高。

......

更多内容接待与我们交流。

声明:部分内容泉源于网络,如侵权请后台留言联系删除。