System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本公开通常涉及数字化工厂,更具体地,涉及数据采集方法、装置、计算设备以及存储介质。
技术介绍
1、智能开关柜需要采集开关的实时和事件数据,并利用这些数据进行进一步分析。边缘设备通过与集成在开关柜中的许多监测设备进行通信来采集数据。这些设备使用的通信协议通常是modbus-rtu协议。由于需要和很多设备进行通信,边缘设备通常使用基于pdu(协议数据单元)大小的数据请求来采集设备的数据,这是最有效的方式。但是,一些特殊的设备有数据访问限制,如不能访问未定义的数据寄存器,不能在一次请求中访问连续的数据寄存器,等等,因此针对这些有特殊限制的设备需要开发专用的数据采集软件。
技术实现思路
1、在下文中给出关于本专利技术的简要概述,以便提供关于本专利技术的某些方面的基本理解。应当理解,这个概述并不是关于本专利技术的穷举性概述。它并不是意图确定本专利技术的关键或重要部分,也不是意图限定本专利技术的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
2、有鉴于此,本专利技术提出了一种更加高效地从现场设备对数据点进行采集的数据采集方法。
3、根据本公开的一个方面,提供了一种数据采集方法,包括:
4、读取步骤,读取配置文件,所述配置文件至少包括要采集的数据点信息以及从其采集数据点的现场设备的设备类型信息;
5、查询步骤,在规则数据库中查询是否有与所述设备类型匹配的规则;
6、分组步骤,如果没有查询到匹配的规则,则
7、数据请求步骤,向所述现场设备发送针对每一组数据点的数据请求。
8、通过这样的方式,可以针对通用设备和特殊设备的数据点采用不同的分组方式,而无需针对特殊设备额外开发专用的数据采集软件。
9、可选地,在上述方面的一个示例中,在所述分组步骤之前,所述方法还包括:
10、数据点排序步骤,对要从所述现场设备采集的每一个数据点的地址进行解析,基于解析的地址计算该数据点的排序指示符,根据所述数据点的排序指示符对所有数据点进行排序。
11、通过这样的方式,可以基于数据点的地址来对数据点进行排序,从而将数据点地址接近的数据点分为一组。
12、可选地,在上述方面的一个示例中,对要从所述现场设备采集的每一个数据点的地址进行解析,基于解析的地址计算该数据点的排序指示符包括:
13、对所述数据点的地址进行解析得到设备id、数据区域、字节偏移和位偏移的属性值,采用下面的公式对所述解析值进行计算得到该数据点的排序指示符:
14、排序指示符=设备id<<48+数据区域<<32+字节偏移*16+位偏移。
15、通过这样的方式,给出了一种基于数据点的地址计算排序指示符的具体方法。
16、可选地,在上述方面的一个示例中,所述分组步骤进一步包括:如果没有查询到匹配的规则,则基于所述协议数据单元的长度来对排序后的数据点进行分组;如果查询到匹配的规则,则基于所述规则中的子规则对所述排序后的数据点进行分组。
17、根据本公开的另一方面,提供了数据采集装置,包括:
18、读取单元,被配置为读取配置文件,所述配置文件至少包括要采集的数据点信息以及从其采集数据点的现场设备的设备类型信息;
19、查询单元,被配置为在规则数据库中查询是否有与所述设备类型匹配的规则;
20、分组单元,被配置为如果没有查询到匹配的规则,则基于所述现场设备的协议数据单元的长度来对要采集的数据点进行分组;如果查询到匹配的规则,则基于所述规则对所述数据点进行分组;以及
21、数据请求单元,被配置为向所述现场设备发送针对每一组数据点的数据请求。
22、可选地,在上述方面的一个示例中,数据采集装置还包括:
23、数据点排序单元,被配置为对要从所述现场设备采集的每一个数据点的地址进行解析,基于解析的地址计算该数据点的排序指示符,根据所述数据点的排序指示符对所有数据点进行排序。
24、根据本公开的另一方面,提供了计算设备,包括:至少一个处理器;以及与所述至少一个处理器耦合的一个存储器,所述存储器用于存储指令,当所述指令被所述至少一个处理器执行时,使得所述处理器执行如上所述的方法。
25、根据本公开的另一方面,提供了一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如上所述的方法。
26、根据本公开的另一方面,提供了一种计算机程序,包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的方法。
27、根据本公开的另一方面,提供了一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行如上所述的方法。
28、根据本专利技术的数据采集方法和装置,针对不同类型的设备,对要采集的数据点采用不同的分组方式来发送数据请求,可以以最高效的方式从通用设备采集数据,并且可以在无需开发专用数据采集软件的情况下从特殊设备采集数据。
本文档来自技高网...【技术保护点】
1.数据采集方法(100),包括:
2.如权利要求1所述的方法(100),其中,在所述分组步骤(106)之前,所述方法还包括:
3.如权利要求2所述的方法(106),其中,对要从所述现场设备采集的每一个数据点的地址进行解析,基于解析的地址计算该数据点的排序指示符包括:
4.如权利要求1-3中任意一项所述的方法(106),其中,所述分组步骤(106)进一步包括:如果没有查询到匹配的规则,则基于所述协议数据单元的长度来对排序后的数据点进行分组;如果查询到匹配的规则,则基于所述规则中的子规则对所述排序后的数据点进行分组。
5.数据采集装置(200),包括:
6.如权利要求5所述的装置(200),还包括:
7.如权利要求6所述的装置(200),其中,所述数据点排序单元(205)进一步被配置为:
8.如权利要求5-7中任意一项所述的装置(200),其中,所述分组单元(206)进一步被配置为:如果没有查询到匹配的规则,则基于所述协议数据单元的长度来对排序后的数据点进行分组;如果查询到匹配的规则,则基于所述规则
9.计算设备(300),包括:
10.一种非暂时性机器可读存储介质,其存储有可执行指令,所述指令当被执行时使得所述机器执行如权利要求1到4中任意一项所述的方法。
11.一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,所述计算机可执行指令在被执行时使至少一个处理器执行根据权利要求1至4中任意一项所述的方法。
...【技术特征摘要】
1.数据采集方法(100),包括:
2.如权利要求1所述的方法(100),其中,在所述分组步骤(106)之前,所述方法还包括:
3.如权利要求2所述的方法(106),其中,对要从所述现场设备采集的每一个数据点的地址进行解析,基于解析的地址计算该数据点的排序指示符包括:
4.如权利要求1-3中任意一项所述的方法(106),其中,所述分组步骤(106)进一步包括:如果没有查询到匹配的规则,则基于所述协议数据单元的长度来对排序后的数据点进行分组;如果查询到匹配的规则,则基于所述规则中的子规则对所述排序后的数据点进行分组。
5.数据采集装置(200),包括:
6.如权利要求5所述的装置(200),还包括:
7.如权利要求6所述的装置(200...
【专利技术属性】
技术研发人员:吴腾飞,王佩佩,朱加兴,干珊珊,
申请(专利权)人:西门子中国有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。