掌桥专利:专业的专利平台
掌桥专利
首页

一种物联设备数据批量采集转发方法及系统

文献发布时间:2024-04-29 00:47:01


一种物联设备数据批量采集转发方法及系统

技术领域

本申请涉及物联设备技术领域,尤其涉及一种物联设备数据批量采集转发方法及系统。

背景技术

物联网是新一代信息技术的重要组成部分,也被称为泛互联。它的核心和基础仍然是互联网,但在互联网的基础上进行了延伸和扩展。物联网的用户端针对于设备与设备之间可以进行信息交换和通信。

物联网的定义是通过射频识别、红外感应器、全球定位系统、激光扫描器等信息传感设备,按约定的协议,可以将任何物品与互联网相连接,从而进行信息交换和通信,以实现对物品的智能化识别、定位、跟踪、监控和管理的一种网络。

随着物联网的发展,面对生产不同型号硬件的多家厂商,其生产硬件的数据传输方式各有不同,数据的采集需要基于硬件的型号进行相对应的数据开发。即使传输的方式一样,数据格式也不尽相同,通用性较弱,任务管理困难。当需要大量的数据进行采集转发时,逐地址采集会造成下游硬件设备的负载压力较大,从而导致设备运行效率降低;同时,数据发送至上游设备时,又会造成云端服务器的负载压力过大。

发明内容

本申请实施例提供了一种物联设备数据批量采集转发方法及系统,以解决现有的物联网需要大量的数据进行采集转发时,逐地址采集会造成下游硬件设备的负载压力较大,从而导致设备运行效率降低;同时,数据发送至上游设备时,又会造成云端服务器的负载压力过大的技术问题。

本申请第一方面提供了一种物联设备数据批量采集转发方法,包括:

根据下游设备获取原始采集点位列表;所述原始采集点位列表中包括按序排列的多个采集点位,每个所述采集点位的类型分别为转发点位或非转发点位中的一种;

基于所述原始采集点位列表,按照所述采集点位在所述原始采集点位列表中的排序将所述原始采集点位列表拆分为包含多个子列表的重组采集列表;

将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表;

获取下游设备的第一实时数据,提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。

在一些实施例中,根据下游设备获取原始采集点位列表包括:

根据下游设备获取采集协议报文的最大长度;

基于所述采集协议报文的最大长度,获取采集协议报文的起始寄存器地址;

基于所述采集协议报文的起始寄存器地址,获取采集协议报文在起始寄存器地址区间内的采集点位;

按照所述采集点位在所述起始寄存器地址上的位置,对所述采集点进行排序并组包,生成原始采集点位列表。

在一些实施例中,第一采集点位的寄存器地址长度与第二采集点位的寄存器地址长度的差值小于所述第一采集点位的寄存器地址长度的设定倍数;所述第一采集点位和所述第二采集点位为同一个子列表中的相邻采集点位,且所述第一采集点位在所述原始采集点位列表中的排序低于所述第二采集点位。

在一些实施例中,所述将多个子列表中满足第一规则的子列表剔除包括:

基于所述多个子列表,判断所述多个子列表中是否存在没有转发点位的子列表,若是,判断所述子列表中是否只存在一个非转发点位,若否,则剔除。

在一些实施例中,所述将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表之后,还包括:

基于所述转发点位列表和非转发点位列表,将转发点位信息标记于所述转发点位列表和非转发点位列表的采集点位中。

在一些实施例中,所述获取下游设备的第一实时数据之后,还包括:

将所述第一实时数据进行缓存。

在一些实施例中,所述将所述第二实时数据进行组包生成数据包并转发至上游系统包括:

获取本次转发数据包距离上一次转发数据包的时间差;

判断所述时间差是否不小于设定转发时间,若是,则将所述数据包转发至上游系统。

在一些实施例中,所述将所述第二实时数据进行组包生成数据包并转发至上游系统还包括:

判断所述数据包大小是否大于设定数据包大小,若是,则对所述数据包进行切分,生成若干个切分后的数据包,将所述若干个切分后的数据包进行组包并转发至上游系统;

其中,所述若干个切分后的数据包中,每个切分后的数据包大小均不大于设定数据包大小。

本申请第二方面提供了一种物联设备数据批量采集转发系统,包括:

动态计算模块,用于获取原始采集点位列表;基于所述原始采集点位列表,将所述原始采集点位列表拆分为包含多个子列表的重组采集列表;将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表;所述原始采集点位列表中包括按序排列的多个采集点位,每个所述采集点位的类型分别为转发点位或非转发点位中的一种;

采集模块,所述采集模块与所述动态计算模块和下游设备通信连接;被配置为获取下游设备的第一实时数据;

缓存模块,所述缓存模块与所述采集模块通信连接;被配置为将所述第一实时数据进行缓存;

转发模块,所述转发模块与所述缓存模块、所述动态计算模块、所述采集模块和上游系统通信连接,被配置为提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。

在一些实施例中,所述转发模块设置有两种转发模式包括:定时转发和订阅转发;

当所述转发模块的转发模式为定时转发时,所述转发模块从所述缓存模块中获取所述第一实时数据;并提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统;

当所述转发模块的转发模式为订阅转发时,所述转发模块从所述采集模块中获取所述第一实时数据;并提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。

本申请实施例提供一种物联设备数据批量采集转发方法及系统,所述方法包括:根据下游设备获取原始采集点位列表;所述原始采集点位列表中包括按序排列的多个采集点位,每个所述采集点位的类型分别为转发点位或非转发点位中的一种;基于所述原始采集点位列表,将所述原始采集点位列表拆分为包含多个子列表的重组采集列表;将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表;获取下游设备的第一实时数据,提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统,以实现物联网需要大量的数据进行采集转发时,通过采集报文的合并,在一定程度上降低设备的工作负载,提高设备的处理效率和性能;同时,减少报文的发送次数,也能够降低通信的开销,提高系统的整体性能。

附图说明

为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请中物联设备数据批量采集转发方法流程图;

图2为本申请中物联设备数据批量采集转发系统的结构示意图;

图3为本申请中基于采集点位生成目标采集包的流程图。

附图标记说明:

1-动态计算模块;2-采集模块;3-缓存模块;4-转发模块。

具体实施方式

为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

由于在一些技术中,物联网需要大量的数据进行采集转发时,逐地址采集会造成下游硬件设备的负载压力较大,从而导致设备运行效率降低;同时,数据发送至上游设备时,又会造成云端服务器的负载压力过大,为了解决该技术问题,本申请提供了一种物联设备数据批量采集转发方法及系统,下面对物联设备数据批量采集转发方法及系统进行说明:

由图1可知,本申请提供了一种物联设备数据批量采集转发方法,包括以下步骤:

S100:根据下游设备获取原始采集点位列表;所述原始采集点位列表中包括按序排列的多个采集点位,每个所述采集点位的类型分别为转发点位或非转发点位中的一种;通过原始采集点位列表可以和下游设备相交互获取实时数据;所述转发点位获取的实时数据需转发至上游系统中进行处理;所述非转发点位获取的实时数据则无需转发至上游系统中,将所述实时数据进行存储即可。

根据下游设备获取原始采集点位列表包括以下子步骤:S110:根据下游设备获取采集协议报文的最大长度;采集协议报文是网络中交换与传输的数据单元,即站点一次性要采集的数据块;报文包含了将要采集的完整的数据信息,其长短很不一致,长度不限且可变,用于采集数据。S120:基于所述采集协议报文的最大长度,获取采集协议报文的起始寄存器地址;起始寄存器的功能是存储二进制代码,它是由具有存储功能的触发器组合起来构成的。S130:基于所述采集协议报文的起始寄存器地址,获取采集协议报文在起始寄存器地址区间内的采集点位;所述采集点位用于和下游设备进行交互,获取下游设备的实时数据。S140:按照所述采集点位在所述起始寄存器地址上的位置,对所述采集点进行排序并组包,生成原始采集点位列表。

S200:基于所述原始采集点位列表,按照所述采集点位在所述原始采集点位列表中的排序将所述原始采集点位列表拆分为包含多个子列表的重组采集列表;第一采集点位的寄存器地址长度与第二采集点位的寄存器地址长度的差值小于所述第一采集点位的寄存器地址长度的设定倍数;所述第一采集点位和所述第二采集点位为同一个子列表中的相邻采集点位,且所述第一采集点位在所述原始采集点位列表中的排序低于所述第二采集点位。如图3所示,原始采集点位列表中包括转发点位和非转发点位,灰色的代表转发点位,白色的代表非转发点位;通过所述采集点位在起始寄存器地址上的位置将采集点位依次按序排好;通过将原始采集点位列表拆分为包含多个子列表的重组采集列表,满足第一采集点位的寄存器地址长度与第二采集点位的寄存器地址长度的差值小于所述第一采集点位的寄存器地址长度的设定倍数;所述第一采集点位和所述第二采集点位为同一个子列表中的相邻采集点位,且所述第一采集点位在所述原始采集点位列表中的排序低于所述第二采集点位,所述设定倍数为2至3倍。例如先判断采集点位tag1和tag2是否可以进行合并,若采集点位tag1和tag2的寄存器地址长度差值小于采集点位tag1的寄存器地址长度的设定倍数,则将采集点位tag1和tag2进行合并;随后判断采集点位tag3是否可以与合并后的采集点位tag1和tag2进行合并,若采集点位tag3的寄存器地址长度大于合并后采集点位tag1和tag2的寄存器地址长度的设定倍数,则采集点位tag3不与合并后的采集点位tag1和tag2进行合并,则合并后的采集点位tag1和tag2作为子列表,以采集点位tag3作为新的子列表首端继续进行判断直至判断至原始采集点位列表中最后一个采集点位。通过将采集点位进行合并可以减少和下游设备交互的次数,从而提高系统的响应速度和处理效率。

S300:将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表;通过将多个子列表中满足第一规则的子列表剔除,从而将原始采集点位列表拆分中的转发点位和非转发点位,从而生成转发点位列表和非转发点位列表。通过转发点位列表可以不仅可以直接获取到需要转发至上游系统的实时数据,而且通过转发点位之间的合并减少了和下游设备交互的次数。

所述将多个子列表中满足第一规则的子列表剔除包括以下子步骤:S310:基于所述多个子列表,判断所述多个子列表中是否存在没有转发点位的子列表,若是,判断所述子列表中是否只存在一个非转发点位,若否,则剔除;如图3所示,例如包含采集点位tag12、tag13、tag14的子列表,所述子列表中不包含转发点位且非转发点位的数量大于1,则将所述子列表进行删除,目的在于减少和下游设备的交互次数;原则上,转发点位列表内大多数为有效的转发点位,不应该包含大量的非转发点位,这样方便数据转发。

所述将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表之后,还包括以下步骤:

S320:基于所述转发点位列表和非转发点位列表,将转发点位信息标记于所述转发点位列表和非转发点位列表的采集点位中。转发点位列表和非转发点位列表内的采集点位均需标记所有的转发点位信息,这样方便将采集上来的数据快速的按照转发配置进行转发。

S400:获取下游设备的第一实时数据,提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。通过转发点位列表和非转发点位列表与下游设备进行交互,获取下游设备的第一实时数据,提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据传输至上游系统中进行处理;而剔除的所述实时数据中非转发点位获取的实时数据,以及第一实时数据中非转发点位列表中的采集点位获取的实时数据传输至缓存模块进行缓存,从而随时可以对缓存的数据进行调取查阅。

所述获取下游设备的第一实时数据之后,还包括以下步骤:

S410:将所述第一实时数据进行缓存。无论是转发点位列表还是非转发点位列表获取的实时数据都会通过缓存模块进行缓存存储,从而使用户随时可以对缓存的数据进行调取查阅。

所述将所述第二实时数据进行组包生成数据包并转发至上游系统包括以下步骤:

S420:获取本次转发数据包距离上一次转发数据包的时间差;获取上一次转发模块转发数据包的时间点,以及本次获取到需要转发数据包时的时间点,通过两个所述时间点获取到本次转发数据包距离上一次转发数据包的时间差。

S430:判断所述时间差是否不小于设定转发时间,若是,则将所述数据包转发至上游系统。所述时间差是指转发模块配置的转发周期,转发模块应具备定时转发和订阅转发两种模式,这两种模式均需配置转发周期间隔;校验转发时间周期间隔的目的是为了采集到的实时数据按照配置的转发周期间隔进行数据转发,而不是按照采集周期进行转发;从而防止采集数据过大集中转发至上游系统中导致上游系统发生过载从而损坏的现象发生。

所述将所述第二实时数据进行组包生成数据包并转发至上游系统还包括以下步骤:

S440:判断所述数据包大小是否大于设定数据包大小,若是,则对所述数据包进行切分,生成若干个切分后的数据包,将所述若干个切分后的数据包进行组包并转发至上游系统;其中,所述若干个切分后的数据包中,每个切分后的数据包大小均不大于设定数据包大小。通过将数据包进行切分后在组包转发至上游系统,防止因数据包的大小超过上游系统能够处理的数据包大小,从而导致上游系统遗漏掉待处理的数据包的现象发生。

示例性的,设备在处理报文时,需要耗费一定的资源和时间进行报文的接收、解析和处理;如果每个报文都单独发送到设备,那么设备就需要进行多次的处理操作;而通过合并报文,通过将多个报文合并成一个,可以减少设备处理报文的次数。通过采集报文的合并,可以在一定程度上降低设备的工作负载,提高设备的处理效率和性能;同时,减少了报文的发送次数,也能够降低通信的开销,提高系统的整体性能。数据转发合并可以提高上游系统的数据处理效率。通常情况下,上游系统需要处理大量的数据流,这些数据流来自不同的来源,需要经过处理和转发;通过合并这些数据流,可以减少处理和转发的次数,从而提高系统的效率。通过数据转发合并,上游系统可以一次性处理较大的数据块,从而减少了处理和转发的次数;这样可以降低系统的负载,提高系统的响应速度和处理效率。同时,数据转发合并还可以降低网络传输的开销;较少的数据转发次数可以减少网络传输的延迟和带宽占用,提高数据传输的效率、降低系统负载,提高系统的性能和吞吐量。

由图2可知,本申请第二方面提供了一种物联设备数据批量采集转发系统,包括:动态计算模块1,用于获取原始采集点位列表;基于所述原始采集点位列表,将所述原始采集点位列表拆分为包含多个子列表的重组采集列表;将多个子列表中满足第一规则的子列表剔除,将剔除后的子列表生成转发点位列表;将剔除的子列表生成非转发点位列表;所述原始采集点位列表中包括按序排列的多个采集点位,每个所述采集点位的类型分别为转发点位或非转发点位中的一种;采集模块2,所述采集模块2与所述动态计算模块1和下游设备通信连接;被配置为获取下游设备的第一实时数据;缓存模块3,所述缓存模块3与所述采集模块2通信连接;被配置为将所述第一实时数据进行缓存;转发模块4,所述转发模块4与所述缓存模块3、所述动态计算模块1、所述采集模块2和上游系统通信连接,被配置为提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。上述系统在执行上述方法时各部分的作用效果可参见上述方法实施例,在此不予赘述。

在该实施例中,所述转发模块4设置有两种转发模式包括:定时转发和订阅转发;当所述转发模块4的转发模式为定时转发时,所述转发模块4从所述缓存模块3中获取所述第一实时数据;并提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统;当所述转发模块4的转发模式为订阅转发时,所述转发模块4从所述采集模块2中获取所述第一实时数据;并提取所述第一实时数据中,由所述转发点位列表中的采集点位获取的实时数据,并剔除所述实时数据中非转发点位获取的实时数据生成第二实时数据,将所述第二实时数据进行组包生成数据包并转发至上游系统。当配置的转发模式为定时转发,则按照转发点位的配置,按照数据包的大小,按照转发点位配置的顺序获取第二实时数据进行组包发送;当配置的转发模式为订阅转发,则按照采集模块推送的数据包进行转发,如所述数据包超过上游系统配置的数据包大小,则进行切分,切分后进行组包发送。定时转发模式中采集数据需要设定采集频率,如出现多个采集频率不一致时,会按照转发频率进行定时发送,将转发频率拉成同一频率,转发的点位可能为发送的上一次采集的数据,也可能是对采集的数据进行降频,主要应用于降频场景;订阅转发模式中按照采集频率进行转发,可以全量发送采集的数据,不丢失采集数据,主要应用于高频采集转发。

本申请提供的一种物联设备数据批量采集转发方法及系统的有益效果:提高设备运行效率:通过批量采集数据,可以避免对单个设备的频繁请求,从而提高设备的运行效率。减轻云端服务器负载压力:通过批量转发数据,可以减少对云端服务器的请求次数,从而减轻其负载压力。精确获取数据的粒度:在数采转发系统中,可以根据需要配置设备和设备数据分类规则以进行转发数据,从而能够精确控制获取数据的粒度,提高数据流转和数据处理的灵活程度。

相关技术
技术分类

06120116594633