如何使用库函数块计算电量kWh?

描述

1 | 题目编写

编写程序实现根据功率kW来计算电能的累加值kWh(度)。

2 | 设计分析编写

用循环中断读取功率kW即用电速度并进行累加求和。

3 | 创建功能或功能块编写

创建功能块FB,命名为“Totalizer”。

4 | 定义接口变量编写

具体接口变量定义见下图:

编写定义浮点数变量value:某个时间段内的测量值,单位:米、升等。

定义时间变量interval:测量时间段,单位:秒、分等。value是对应interval时间段内的值。value与interval的比值即为速度(m/s)、流量(l/m)等。

定义时间变量cycle:采样扫描时间,即循环中断的时间。

定义布尔变量reset:复位累加值。

5 | 程序代码编写

编写程序代码。如下图:

编写

注意时间类型变量interval和cycle必须进行TIME_TO_DINT的数据转换从而统一单位。尽管输入的实参interval单位为小时而实参cycle为毫秒也没有关系,最终均被统一单位为毫秒。

6 | 代码测试编写

在循环中断OB中调用FB-“Totalizer”。 循环中断时间为100ms,即每过100ms进行采样累加得到计算结果。如下图:

编写假设用电设备功率为6.0kW,那么1小时的用电量为6.0kWh。输入实参6.0kWh(用焦耳J换算可能更容易理解)给value、输入实参t#1h给interval。value/interval为单位时间的变量值,例如:速度、流量等,此处为功率。

在线监控。如下图:

编写

大约10分钟后的电量累加值为1.038612kWh。

7 | 总结编写

学习IF..ELSE语句;

学习组合赋值运算符的使用;

学习循环中断组织块OB的使用方法;

学习在OB中调用FB和实参的传递方式。

  • END -
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分