工业互联网核心引擎原理与实现
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

MixIOT 矩阵是怎么来的

我们现在肯定有一个疑问,不管采集数据终端是哪家的,都不可能采集出来一个矩阵吧?既然不可能采集到矩阵,那为什么MixIOT 的数据类型会有矩阵呢?

比如,我们的适配器采集到的数据,一定都是单值数据,这是毫无疑问的。这些单值数据通过映射(Mapping),变成了物联网对象的FV 变量,这个我们都已经很熟悉了。

那么MixIOT 里面的矩阵是怎么回事儿呢?这是由于在映射表中,可以把其他已经存在的FV 变量,构造成一个矩阵变量。换句话说,一个对象的FV 变量,可以是单值,也可以是向量,甚至还可以是矩阵。

还是先举一个例子。我们看一个对象(设备)的映射表是这样的:

img

这个映射表对应的对象,现在有4个FV 变量都是这个设备的实时运行参数。假设这个对象是一台生产某种产品的设备,我们对这个产品进行误差测量,得到离线的误差数据,把产品误差也作为这个对象(设备)的 FV 变量,这个映射项就是:

Y,“Product Tolerance”,“产品误差”,STA,&Collectos(“1234”) ]

我们可以定义一个2×2阶对称的矩阵M

img

那么,我们同样可以在映射表中,把这个M 当作这个对象的一个FV 变量,只不过这个变量M 是一个矩阵,我们可以把它叫作“运行矩阵”。这个M 的映射项是这样写的:

M,“Operation Matrix”,“运行矩阵”,MAT,[ [X1X2],[X3X4] ] ]

我们还可以定义两个向量:

img

映射项是这样写的:

V1,“TP Vector”,“温度压力向量”,VEC, [X1X2] ]

V2,“Vibration Vector”,“振动向量”, VEC, [X3X4] ]

现在,我们可以完整地看一下这个映射表:

img

当然,我们也可以去构造一个由具体数值构成的矩阵,比如这样:

img

这个映射项大家可以自己写写试试看,应该很容易。