功能块 "Floating Average" 将输入的多个浮点型数据计算出算术平均值,提供了一种平滑数据队列的方法。可周期性输入或脉冲触发的方式计算。
说明
此功能块计算最新输入的100个数值的均值(浮动平均值)。采集的数据队列达到100个之后,队列每入栈一个新数值,将去掉一个队列里最早进来的数据(先进先出原则)。
输入数据的计算有两种模式,在“模式”参数中定义。
- 由"Trigger"脉冲触发(Mode = 1)
- 周期输入(mode=2)
两种模式任选其一,也可在程序中做切换.
输入参数
参数 | 数据类型 | 说明 | |
---|---|---|---|
value | REAL | 需计算浮点型数据值的输入数据。 | |
mode | INT | 模式选择;默认:mode=1。 | |
trigger | BOOL | 脉冲输入。 | |
reset | BOOL | 该块被复位,从新的值开始计算。 |
输出参数
参数 | 数据类型 | 说明 | |
---|---|---|---|
average | REAL | 浮点平均值 | |
error | BOOL | 0: 无错误 1: 有错误 |
|
status | WORD | 状态/错误码 |
状态/错误码
状态码 | 状态 | 含义 | 建议 / 注意 | ||
---|---|---|---|---|---|
1 | 16#0000 | 无错误 | - | ||
1 | 16#8001 | 模式输入错误 | 选择模式(1 or 2). |
注意
- 功能块"Floating Average"默认计算数据长度为 100 个浮点数的平均值。可以通过块参数接口调整所需的数据个数范围,在 "常数"下更改"WINDOW_SIZE"默认值即可。
- 功能块"Floating Average""不会查询输入数据的数据类型,如果输入的不是浮点数,将执行隐式转换,编译可能报错。
功能块可用于下列控制器和软件产品:
- S7-1200 及S7-1200F
- S7-1500 及 S7-1500F
- 模拟软件 S7-PLCSIM (V13 SP1 或更高版本)
- STEP 7 V13 SP1 Update 8及后续版本
下载
39333120_FloatingAverage_SCL_V13_SP1.zip
其他关键字
移动平均值, SMA, 平均值
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc322950.html