第四天流量功能软件(流量变量功能程序时间)「流量变量是什么意思」

使用博途软件编写流量累积功能块使用西门子博途软件编写一个根据瞬时流量计算累计流量的功能块;大部分的流量计都自己带流量累积,不需要计算,有极少一部分流量计不带流量累积功能,那就需要用PLC或者上位机来设计一个根据瞬时流量来计算累计流量的功能块
累计流量的意义目前市面上大部分PLC都带有流量累积功能块,一般命名为“Totalizer”,但是有大部分都需要官网下载或者一些特定的渠道下载,有时候着急用的时候还找不到,流量累积在一些特定的流程工业控制领域是很重要的一个参数,对数据分析有很重要的意义;实际上根据瞬时流量来计算累计流量就是把PLC每个扫描周期采集到的数据进行简单的累加,复杂的还有一些特定的参数设定,对于PLC做的流量累积实际上还是有些一些误差的,因为没有补偿;现在我们用博途的SCL语言来编写一个简单的流量累积公式
博途软件实现累计流量计算的方法2.1 FB函数块建立首先我们需要打开博途软件,本文用的是博途V15版本,在程序块处点击添加一个FB程序块,编程语言使用SCL,命名“流量累积”,如图1所示
图1 建立流量累积FB块2.1 建立临时变量打开建立好的功能块,在上方添加临时变量,具体的临时变量设置组态与名称如图2所示
图2 临时变量组态2.2 程序编写在变量组态的下方空白处进行流量累积计算程序编写,具体的编写程序如图3所示
图3 流量累积程序编写在一个循环中,输入变量 "时间单位" 和"扫描时间" 数据类型 Time 被转化为 Real 类型;转化后的值被转移到临时变量 “时间单位_Real” 和 “扫描时间_Real”;变量 "瞬时流量" 的输入值乘以临时变量 "扫描时间_Real" 的值,然后除以临时变量 “时间单位_Real”;再加上上一次计算的值;结果存储在静态变量 “中间值” 的缓冲区
这样每次循环之后,中间结果值存储在“中间值” 的缓冲区中递增,然后转移到输出变量“累积流量” 中
如果变量 “复位” 有“True” 的值,则变量 “累积流量” 输出值被复位为零
程序仿真测试 "流量累积" 功能块必须在循环中断(比如OB30)中调用,不然计算中误差会很大,新建一个循环中断,命名为“累积流量计算”,将“流量累积”功能块调用,填写各个参数;在此程序中,瞬时流量的值为100,输出变量“累积流量”的值在1分钟内从0累积到100,扫描时间单位是100毫秒,和CPU扫描时间对应,当FB在循环中断中被调用时,程序每隔 100ms 处理一次而且程序是独立于 OB1 (主程序)的
被测量值 "瞬时流量" (速度或流量)的计量单位可以是米每秒,立方米每分钟或公里每小时
这时变量 "时间单位" 必须输入对应的间隔时间,例如:米每秒: T#1s、立方米每分钟: T#1M、公里每小时:T#1h
程序如图4所示
图4 流量累积功能块调用使用博途自带的仿真程序进行仿真测试,仿真运行测试正常,程序仿真如图5所示
图5 程序仿真测试抽空再做一个上位机组态的测试
不足之处还望海涵,请各界大佬多多批评指教
程序仅供参考
第四天流量功能软件(流量变量功能程序时间)
(图片来源网络,侵删)

联系我们

在线咨询:点击这里给我发消息