公式映射¶
EnOS提供了一系列公式,用以将设备端的采集点经过一定运算加工之后,映射到预先定义的模型测点上。
功能特性¶
EnOS预置的公式列表如下。为了说明方便,在列表中,模型测点用y表示;采集点用 x(i) 表示,其中,i代表采集点被添加的顺序。模板中格式 指的是如果在模板配置中,通过导出编辑再导入模板的方式设置点映射时,必须在模板 mapping 栏填写的公式的规范名称。
公式名称 | 说明 | 映射表中格式 |
---|---|---|
NO_MAPPING | 不对此模型测点做映射 | no_mapping |
EQUAL | 模型测点的值等于采集到的数据值,即y=x | x |
SUM | 求和,将添加到本模型测点的采集点值加总求和,y=x(1)+x(2)+…+x(i) | sum(X1,X2,…Xn) |
SUBTRACTION | 用于将添加到本映射点的采集点相减 | subtraction(a,b) |
PRODUCT | 相乘,将添加到本模型测点的采集点相乘求积,可以配置一个可配系数y=a* x(1) * x(2) *…* x(i) * | product(X1,X2,…Xn,系数a) |
CROSS_PRODUCT | 内积:用于计算被添加到本模型测点的各采集点的内积,并乘以一个可配系数a(即“操作数”参数),注意采集点被添加进来的顺序很重要。即y=a(x(1) * x(2)+x(3) * x(4)+…+x(i-1) * x(i) | cross_product(X1,X2,…Xn,操作数a) |
RATIO | 相除:用于计算被添加到本模型测点的2个采集点的比率,注意采集点被添加进来的顺序很重要,即y=x(1)/x(2) | ratio(被除数,除数) |
LOGICAL_OR | 对添加到本模型测点的DI采集点求逻辑或,y=(x(1)|x(2)|…|x(i)) | logical_or(X1,X2,…Xn) |
LOGICAL_AND | 输入多个DI采集点进行逻辑与,如果采集点的值(取INT值)有一个为0的,就返回0,否则返回1 | logical_and(X1,X2,…Xn) |
XOR | 输入多个DI采集点,进行异或操作,相同则返回1,不同则返回0 | Xor(X1,X2,…Xn) |
RATIO_AGAINST_SUM | 对添加到本模型测点的三个采集点做如下运算:y=x(1)/(x(2)+x(3)) | ratio_against_sum(a,b,c) |
BIT_N | 将一个AI类型的采集点的指定比特N取出,复制到一个模型测点上,包含一个参数N,表示取出的是AI点的第几个比特位。例如,N为0表示取出的AI点的第1位,N为15则表示取出的AI点的第16位 | bit_n(X,操作数n) |
BITS_M_TO_N | 取连续多位赋值公式,可将一个AI点的多个连续的比特取出赋值到一个模型测点上,包含2个参数:操作数M,高比特位;和操作数N,低比特位,M>N。例如,M=7,N=0,则指取出采集点第8到1位赋值到新模型点上去 | bits_m_to_n(X,操作数m,操作数n) |
IF_EQUAL | 包含3个操作数,记操作数1=a,操作数2=b,操作数3=c,则此公式的运算逻辑为:if x == a, then y== b, else y==c | if_equal(X1,b,c) |
IF_RANGE | 输入测点值记为value,四个操作数记为A B C D,如果 value >=B 则 return D; 如果value>A && value< B return C ;如果都不满足,返回value | if_range(X,a,b,c,d) |
MULTICHANNEL | 将多个采集点分别映射到一个数组类型模型点的各组元上。即y为数组:y={y[1], y[2], …, y[i]}, 且y[1]=x(1), y[2]=x(2), …, y[i]=x(i), i<=32 | 不推荐通过模板导入导出,如需,可单个配置后导出格式进行复制填写 |
CONNECT_STATE | 设备的状态,必须通过采集获得 | connect_state |
MULTIBIT | y为int32数组,y={y[1],y[2]…,y[i]},其中y[1].bit0=x(1).bit0, y[1].bit1=x(2).bit0, …, y[1].bit31=x(32).bit0,y[2].bit0=x(33).bit0,y[2].bit1=x(34).bit0,…,y[2].bit31=x(64).bit0,…,y[i].bit0=x(32(i-1)+1).bit0,y[i].bit1=x(32(i-1)+2).bit0,…,y[i].bit31=x(32(i-1)+32).bit0,i<=32 | 不推荐通过映射表导入导出,如需,可单个配置后导出格式进行复制填写 |
MULTICHANNERL_SHORTTOINT | 多个SHORT类型AI采集点转为INT32类型的数组形式映射至模型点 | 支持通过模板导入导出 |
ENUM_N | 采集点值替换为枚举模型点的不同枚举参数进行上送 | 不推荐通过映射表导入导出配置,如需,可单个配置后导出格式进行复制填写 |
REPLACE_N | 采集点值替换为不同模型点值进行上送 | 不推荐通过映射表导入导出配置,如需,可单个配置后导出格式进行复制填写 |
CONTROL_SET | 控制值下发至选取的控制点,即y=x | x |
CONTROL_ENUM_N | 枚举模型点的枚举参数替换为不同控制点值进行下发 | 不推荐通过映射表导入导出配置,如需,可单个配置后导出格式进行复制填写 |
CONTROL_RELACE_N | 模型点值替换为不同控制点值进行下发 | 不推荐通过映射表导入导出配置,如需,可单个配置后导出格式进行复制填写 |
CONTROL_BITS_M_TO_N | 控制值下发至选取控制点的指定比特区间 | 不推荐通过映射表导入导出配置,如需,可单个配置后导出格式进行复制填写 |
非ARRAY&ENUM&STRUCT数据类型模型点适用公式¶
- NO_MAPPING
- INVALID
- EQUAL
- SUM
- PRODUCT
- CROSS_PRODUCT
- RATIO
- LOGICAL_OR
- RATION_AGAINST_SUM
- BIT_N
- BITS_M_TO_N
- IF_EQUAL
- REPLACE_N
- CONTROL_RELACE_N
- CONTROL_BITS_M_TO_N
ARRAY数据类型型模型点适用公式¶
- NO_MAPPING
- INVALID
- EQUAL
- MULTICHANNEL
- MULTIBIT
- MULTICHANNERL_SHORTTOINT
ENUM数据类型型模型点适用公式¶
- ENUM_N
- CONTROL_ENUM_N