loveplc

 找回密码
 立即注册
搜索
热搜: 活动 交友
查看: 136|回复: 0

S71200流量计累计求和

[复制链接]

284

主题

317

帖子

986

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
986
发表于 2019-9-30 17:41:24 | 显示全部楼层 |阅读模式
使用库'Totalizer_Lib_TIA_Portal' 中的函数块 'Totalizer' ,可以计算出一个瞬时流量的累积值。


描述
例如,在测量流量或线速度时,可以使用距离或体积作为物理量,使用毫秒,秒,分钟,小时或者天作为测量时间的单位。

图 01
"Totalizer" 功能块必须在循环中断(比如OB30)中调用,表 01 是 "Totalizer" 功能块的输入和输出变量列表
参数
变量
数据类型
描述
输入
Value
Real
瞬时流量
输入
Interval
Time
瞬时流量的时间单位
输入
Cycle
Time
扫描时间(循环中断周期)
输入
Reset
Bool
累积值清零
输出
Total
Real
累积值输出
表 01

在一个循环中
  • 输入变量 "Interval" 和"Cycle" 数据类型 Time 被转化为 Real 类型。
  • 转化后的值被转移到临时变量 “Interval_real” 和 “Cycle_real”。
  • 变量 "VALUE" 的输入值乘以临时变量 "Cycle_real" 的值,然后除以临时变量 “Interval_real”。
  • 结果存储在静态变量 “Accum” 的缓冲区。
这样每次循环之后,中间结果值存储在“Accum” 的缓冲区中递增,然后转移到输出变量“Total” 中。如果变量 “Reset” 有“True” 值,则变量 “Total” 输出值被复位为零。
例子:

在图 01 的例子中,“Value” 变量值是 60.0 ,同时变量 “Interval” 的时间值是一分钟。
  • 输出变量 "Total" 在1 分钟内从1累加到了60。
  • 周期时间 100ms 反映了FB"Totalizer"的执行过程中的扫描时间。
  • 当FB在循环中断中被调用时,程序每隔 100ms 处理一次而且程序是独立于 OB1 (主程序)的。
被测量值 "Value" (速度或流量)的计量单位可以是米每秒,立方米每分钟或公里每小时。这时变量 "Interval" 必须输入对应的间隔时间,例如,
  • 米每秒: T#1s
  • 立方米每分钟: T#1M
  • 公里每小时:T#1h


图 02



例程:







48799854_Totalizer_Lib_TIA_Portal.zip

1.03 MB, 阅读权限: 20, 下载次数: 0

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

京ICP备17066637号-1|京公网安备|手机版|Archiver|小黑屋|loveplc

GMT+8, 2025-12-6 14:49 , Processed in 0.022097 second(s), 21 queries .

Powered by Discuz! Comsenz Inc.

© 2019 技高志远.

快速回复 返回顶部 返回列表