故事作者:will666

最近创作

看看TA的故事

【跨新年】博图标准化编程技巧(四)流量累计计算

已锁定

will666

西门子1847工业学习平台

  • 帖子

    2127
  • 精华

    12
  • 被关注

    113

论坛等级:奇侠

注册时间:2009-05-19

钻石 钻石 如何晋级?

【跨新年】博图标准化编程技巧(四)流量累计计算

2595

2

2022-12-26 15:09:15

博图标准化编程技巧(四)流量累计计算

        周末写了关于设备运行时间计算的文章,大家讨论还比较热烈,今天趁热打铁写一下关于流量累计计算的问题。流量累计如果想得到精确的数据当然是需要采用数据通讯的方式直接从仪表采集数据,或者采用脉冲信号的方式在PLC中累加,如果既没有数据通讯又没有脉冲信号就只能采用瞬时流量积分的方式计算,简单的算法就是每秒钟将当前瞬时流量除以3600作为每秒的累计流量加到流量累加值中。同样以上算法跟设备运行时间一样会面临浮点数精度问题,通常处理方式也有2种,一种方式是两级累加,比如把累计值拆分成一个大数和一个小数,小数累加到1万或10万再加到大数上,避免出现一个很大的数加一个很小的数情况;另一种就是取整累加,累加值由整数部分和小数部分组成,最后只显示小数部分。一般情况下累计值用整数表示已经足够满足要求,所以今天就给大家展示一下我写的流量累加程序。程序可能不够简练,算法也不够精确,一切以满足要求为准,欢迎大家批评。


        首先是秒脉冲信号到来时    我们将瞬时流量R_V_PV 除以3600  得到一秒钟内的近似累加值并将其累加到中间变量R_UPVQ_R上

        当中间变量R_UPVQ_R的绝对值大于等于1时或小于等于-1时,对R_UPVQ_R取整,将整数累加到最后的累加值上,同时中间变量减掉已经累加的整数部分,保留小数部分。

        那么大家知道为什么要判断中间变量小于等于-1的情况呢?那是因为这种积分累加的准确度不高,需要定期校准,为了方便计算校准的值可以直接累加到R_UPVQ_R上后面的取整操作就跟普通累加过程一样了,而有时候偏差就是负值,所以要判断小于等于-1的情况。


【跨新年】博图标准化编程技巧(四)流量累计计算 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

网友专栏

共有3364条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。