如何在转发数据中对遥测进行二次计算

老龙 2020-7-2 1438

遥测转发点表如下图配置:

1、系数处理

系数只能做乘除处理,且优先处理。当填入100时,表示该数值会乘100,如果填入0.01,表示该数值会除以100。默认系数为1.0,表示原值不做处理。

 

2、公式运算

公式运算是在数值跟系数处理后的第二次处理,如果系数为1,则表示原数值进二次运算。以下为规则:

符号 说明 示例
@ 公式运算的首字符 @x*100
x、X 代表本遥测点号的值 @x*100+30
( ) 括号,优先运算,必须成对出现 @(x+10)/100
# 引用遥测点号的值,后面带转发遥测点号(0~20000之间的整数) @x+#201
& 引用遥信点号的值,后面带转发遥信点号(0~20000之间的整数),返回的值为0或1 @x*&208
+ 加法运算 @x+50
- 减法运算 @x-50
* 乘法运算 @x*50
/ 除法运算 @x/50
% 取除的余数计算 @(x+2)%5
^ 乘方运算 @x^(0.5)
[ ] 取绝对值运算,必须成对出现 @[x-200]
$ 根据遥信的值来取正负号,后面带转发遥信点号(0~20000之间的整数),如果遥信值为0,则返回1,如遥信值为1,则返回-1 @x*$108

 

3、示例

  • 假如电表读回的PT值的转发点号地址是20,CT值的转发点号地址是21,希望对功率值进行运算得到一次值,则公式为:"@x*#20*#21"
  • 假如要对一个遥测数值进行开3次根号,则公式为:"@x^(1/3)"
  • 假如要对一个遥测数值进行乘方处理,则公式为:"@x^2"
  • 假如要对一个遥测数值引用第18个转发遥信来计算数值的正负号,假如遥信为0则为正,为1则为负,则公式为:"@x*$18",当"$18"的值为0时,相当于x*1,当"$18"的值为1时,相当于x*(-1)

4、注意事项

  • 请严格按照规则写运算表达式,如果不合规则,可能产生难以预测的结果
最新回复 (0)
返回
发新帖