2.2.2 测点值及采样时间相关表达式
在AOE中,可以通过所定义的表达式获取测点值、测点值采样时间等数据。具体表达式如下所示(以下以点号为1234567,别名为POINT_EXAMPLE的测点为例):
注意:若在前后几次采样中,测点值都相同,那么测点的变化可以指代两种情况,一种是指值的变化,只有值发生改变时,才认为测点发生了变化;另一种是无论值是否变化,只要进行一次采样,就认为测点发生了变化(更新)。这里对可能产生的歧义做一个说明。
一、默认情况
默认情况下,按第二种方式判别测点的变化。
别名_t
表示最近一次的采样时间。别名_dt
是指最近一次采样和上一次采样的时间间隔,别名_err
是指这一次采样和上一次采样的测点值之差,别名_ddt
指测点值变化率。
在这几个值的计算中,都是将当前采样的时间和值与上一次采样得到的时间和值进行对比。举一个例子,假设通讯通道每隔 1s 获取一次数据,各个值列表如下:
本次采样时间 | 1ms | 2ms | 3ms | 4ms | 5ms | 6ms | 7ms | 8ms | 9ms |
---|---|---|---|---|---|---|---|---|---|
本次采样值 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 | 16 |
上次时间 | 0 | 1 | 2 | 3 | 4 | 4 | 4 | 4 | 8 |
上次值 | 0 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 |
t | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
dt | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 | 1 |
err | 11 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 |
界面显示时间 | 1 | 2 | 3 | 4 | 4 | 4 | 4 | 8 | 9 |
界面显示的值 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 | 16 |
二、特殊情况
若希望测点值变化时,才认为是测点发生变化,则将测点变化条件设置为 测点_err!=0
。
别名_t
仍表示最近一次的采样时间。别名_dt
是指最近一次采样和上一次发生值变化的采样的时间间隔,别名_err
是指这一次采样和上一次发生值变化的采样的测点值之差,别名_ddt
指测点值变化率。仍然是上述例子,在这个设定下,各个值列表如下:
本次采样时间 | 1ms | 2ms | 3ms | 4ms | 5ms | 6ms | 7ms | 8ms | 9ms |
---|---|---|---|---|---|---|---|---|---|
本次采样值 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 | 16 |
上次时间 | 0 | 1 | 2 | 3 | 4 | 4 | 4 | 4 | 8 |
上次值 | 0 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 |
t | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
dt | 1 | 1 | 1 | 1 | 1 | 2 | 3 | 4 | 1 |
err | 11 | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 |
界面显示时间 | 1 | 2 | 3 | 4 | 4 | 4 | 4 | 8 | 9 |
界面显示的值 | 11 | 12 | 13 | 14 | 14 | 14 | 14 | 15 | 16 |
如果只关心测点值的改变和改变的时间间隔,则需要用上述第二种方案。
若需要分辨每次采样而不要求测点值一定发生改变,以通信成功获取测点值来作为触发aoe的条件,则需要通过别名_t
来辨别每次采样的时间,并用aoe中的变量记录上一次的采样时间,若别名_t
等于上一次采样的时间,则还没有获取新的通信数据,若别名_t
大于上一次采样的时间,则获成功取新的通信数据。
需要说明的是,上述测点是针对通信测点的采样进行阐述的,对于aoe的置点和计算点的计算也是同理的。