一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据采集方法、装置、系统及电子设备与流程

2022-07-10 02:35:46 来源:中国专利 TAG:


1.本技术涉及工业物联网相关技术领域,尤其涉及一种数据采集方法、装置、系统及电子设备。


背景技术:

2.工业物联网是将具有感知、监控能力的各类采集、控制传感器或控制器,以及移动通信、智能分析等技术融入到工业生产过程各个环节,具体的,在工业物联网领域中,工厂的数字化改造过程中基础的环节是实现工业现场传感器或智能设备的互联和改造,而传感器或智能设备互联需要通过数字化的接口完成数据采集。
3.现有技术中,对于数字化接口资源不够的采集主机,通常的做法是采用多台采集主机共同完成多个传感器或智能设备的通信,进而采集主机获取多个传感器或智能设备的数据,并通过网络形式分别将数据上报到数据采集平台。
4.但是,上述方法通过多台采集主机对多个传感器或智能设备进行互联进行数据收集,成本相对较高,且依次对多个传感器或智能设备进行数据采集,灵活性不高。


技术实现要素:

5.本技术提供一种数据采集方法、装置、系统及电子设备,可以用于解决现有技术通过多台采集主机对多个传感器或智能设备进行互联进行数据收集,成本相对较高,且灵活性不高的问题。
6.第一方面,本技术提供一种数据采集方法,应用于采集主机,所述采集主机用于通过切换模块与多个设备中的任一设备连接,所述方法包括:
7.根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据;
8.采集完成后,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。
9.可选的,根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据,包括:
10.将所述各个设备的查询倒计时按照从小到大的顺序进行排序,并确定排序后位于最前面的查询倒计时对应的目标设备;
11.获取所述目标设备的基础信息,所述基础信息包括端口号、地址以及端口配置信息;所述端口配置信息用于确定传输路径;
12.基于所述目标设备对应的端口号通过切换模块将所述目标设备与对应的端口建立连接,并利用所述端口配置信息向所述目标设备对应的地址进行数据的采集。
13.可选的,确定排序后位于最前面的查询倒计时对应的目标设备,包括:
14.判断排序后各个设备的查询倒计时中是否存在相同值;
15.若存在,则获取各个设备的优先级,并将所述相同值按照各自设备对应的优先级
进行排序;若确定设备对应的优先级相同,则按照各自设备的接入时间进行排序,得到排序后的各个终端设备;
16.确定排序后位于最前面的查询倒计时对应的目标设备。
17.可选的,所述采集主机包括至少一个中央处理器cpu通信外设,获取所述目标设备的基础信息,包括:
18.针对每一个cpu通信外设,从设备查询表中获取目标设备的配置表;所述配置表用于存储基础信息。
19.可选的,所述方法还包括:
20.获取每一设备的查询周期和更新周期;其中,所述查询周期用于确定采集所述设备中数据的间隔周期,所述更新周期为所述设备更新数据所需的周期;
21.计算每一设备的查询周期和对应的更新周期的差值,得到设备的查询倒计时。
22.可选的,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集,包括:
23.将所述目标设备的查询倒计时复位为对应的查询周期,并获取除所述目标设备外其他设备的查询倒计时;
24.对复位后的查询周期和其他设备的查询倒计时按照从小到大的顺序进行排序,并再次确定排序后位于最前面的目标设备;
25.基于再次确定的目标设备对应的端口号通过切换模块切换到对应的端口建立连接,并初始化端口配置信息,利用再次确定的目标设备对应的端口配置信息向对应的地址进行数据的采集。
26.可选的,所述方法还包括:
27.每隔预设周期,依次查询各个设备进行数据采集的采集次数;
28.若存在所述采集次数小于预设阈值的设备,则降低所述设备的查询周期和\或升高所述设备的优先级。
29.第二方面,本技术提供一种数据采集装置,所述装置包括:
30.采集模块,用于根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据;
31.重置模块,用于采集完成后,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。
32.第三方面,本技术提供一种数据采集系统,所述数据采集系统包括采集主机、切换模块、n路数字化通信接口模块和m个设备;
33.所述切换模块基于所述n路数字化通信接口模块连接m个设备,用于控制所述采集主机和n路数字化通信接口模块之间的切换;
34.所述采集主机用于执行如第一方面中任一项所述的方法;
35.其中,n大于或等于m,n、m均为大于1的正整数。
36.第四方面,本技术提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
37.所述存储器存储计算机执行指令;
38.所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中任一项
所述的方法。
39.综上所述,本技术提供一种数据采集方法、装置、系统及电子设备,可以根据各个设备的查询倒计时,确定目标设备,进而通过切换模块与目标设备连接,并采集目标设备的数据;进一步的,在采集目标设备的数据完成后,重置目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。这样,可以通过一个采集主机便可以实现对多个设备的数据采集,节省成本,且可以基于设备的查询倒计时动态调整对设备的数据采集,提高采集数据的灵活性,利于推广。
附图说明
40.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
41.图1为本技术实施例提供的一种应用场景示意图;
42.图2为本技术实施例提供的一种数据采集系统的结构示意图;
43.图3为本技术实施例提供的一种数据采集方法的流程示意图;
44.图4为本技术实施例提供的一种采集设备数据的流程示意图;
45.图5为本技术实施例提供的一种具体的数据采集方法的流程示意图;
46.图6为本技术实施例提供的一种数据采集装置的结构示意图;
47.图7为本技术实施例提供的一种电子设备的结构示意图。
48.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本调取构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
49.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
50.为了便于清楚描述本技术实施例的技术方案,在本技术的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一设备和第二设备仅仅是为了区分不同的设备,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
51.需要说明的是,本技术中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
52.本技术中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b的情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关
联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
53.下面结合附图对本技术实施例进行介绍。图1为本技术实施例提供的一种应用场景示意图,本技术提供的一种数据采集方法可以应用于如图1所示的应用场景中。该应用场景包括:采集主机101、第一设备102、第二设备103和第三设备104,其中,采集主机101包括中央处理器(central processing unit,cpu)通信外设105和3路数字化通信接口106-108,第一设备102与数字化通信接口106连接,第二设备103与数字化通信接口107连接,第三设备104与数字化通信接口108连接。
54.具体的,第一设备102、第二设备103和第三设备104在实时的更新数据,当需要收集第一设备102、第二设备103和第三设备104中的数据时,采集主机101可以通过切换模块控制cpu通信外设105和3路数字化通信接口106-108之间的快速切换,使得cpu通信外设105一直处于通信状态中,实时收集第一设备102、第二设备103和第三设备104中的数据。
55.可选的,cpu型号可以为stm32f207,通信外设可以为usart(universal synchronous/asynchronous receiver/transmitter),数字化通信接口可以为串口,本技术实施例对其对应的具体的形式不作限定。
56.需要说明的是,第一设备102、第二设备103和第三设备104可以是传感器或智能设备,本技术实施例对此不作具体限定,且本技术实施例对采集主机101可以采集设备的数量以及cpu通信外设的数量不作具体限定,其中,采集设备的数量小于或等于数字化通信接口的数量,一个采集主机可以包括多个cpu通信外设,一个cpu通信外设可以连接多个设备。
57.一种可能的实现方式中,对于数字化接口资源不够的采集主机,通常的做法是采用多台采集主机共同完成多个传感器或智能设备的通信,进而采集主机获取多个传感器或智能设备的数据,并通过网络形式分别将数据上报到数据采集平台。
58.另一种可能的实现方式中,通过采用数字化接口服务器的方式,先将多路数字化接口数据汇聚到服务器,服务器在通过网络形式将数据接入到采集主机,采集主机通过网络形式获取多个传感器或智能设备数据,内部通过软件的方式对多路数字化接口数据进行处理。
59.另一种可能的实现方式中,针对具有嵌入式操作系统的采集主机,可以在产品板卡上或外部通过通用串行总线(universal serial bus,usb)扩展方式衍生出多路数字化接口,进而实现多路数字化接口的扩展,利用多路数字化接口进行数据的采集。
60.但是,上述方法中通过多台采集主机对多个传感器或智能设备进行互联进行数据收集,或,以服务器连通过网络形式将传感器接入采集主机进行数据采集,或,通过采集主机外部的usb衍生出多路数字化接口进行数据采集,均需要较多的设备参与,其成本相对较高,且均是依次对多个传感器或智能设备进行数据采集,灵活性不高。
61.因此,本技术实施例提供一种数据采集方法,应用于采集主机,所述采集主机用于通过切换模块与多个设备中的任一设备连接进行数据的采集,具体的,可以根据每个设备的查询周期和更新周期确定查询倒计时,进而根据查询倒计时的大小确定最先需要采集数据的设备,进行数据的采集,在数据采集完后,将该设备的查询周期先复位,再利用复位后的查询周期和其他设备的查询周期继续查找第二个需要采集数据的设备进行数据采集,以
上流程循环执行,这样,一个采集主机便可以采集多个设备,节省成本,且可以根据每个设备的查询倒计时的大小依次对各个设备进行采集,提高采集数据的灵活性。
62.下面对本技术利用的数据采集系统进行解释说明,具体的,图2为本技术实施例提供的一种数据采集系统的结构示意图;如图2所示,以一个采集主机中的cpu为例,在资源受限系统(即数据采集系统)中,由于cpu的内存和数字化通信接口有限,故在cpu的通信外设和n路数字化通信接口模块之间添加动态切换模块(即切换模块),采集主机可以通过切换模块与多个传感器或智能设备中的任一设备连接,该切换模块在cpu的控制下能够实现cpu通信外设和n路数字化通信接口模块之间的快速切换,以使cpu的通信外设一直处于通信状态。
63.具体的,所述数据采集系统包括采集主机、切换模块、n路数字化通信接口模块和n个设备;所述切换模块基于所述n路数字化通信接口模块连接n个设备,用于控制所述cpu通信外设和n路数字化通信接口模块之间的切换;所述采集主机包括至少一个中央处理器cpu通信外设;其中,所述设备可以为传感器或智能设备,设备的数量也可以为m个,n大于m,n、m均为大于1的正整数。
64.示例性的,以采集主机采集传感器或智能设备1中的数据为例,当采集主机控制动态切换模块切换到传感器或智能设备1建立连接后,可以采集传感器或智能设备1中的数据,当采集完传感器或智能设备1中的数据后,采集主机可以通过动态切换模块与传感器或智能设备2连接,进一步的,采集传感器或智能设备2中的数据,也可以通过动态切换模块与传感器或智能设备3连接,以采集传感器或智能设备3中的数据,可以理解的是,采集主机可以通过动态切换模块与n个传感器或智能设备中的任一设备连接,本技术实施例对此不作具体限定,其应该根据实际情况进行动态切换,满足数据采集的要求。
65.利用上述的数据采集系统,可以通过cpu的控制,实现cpu通信外设和n路数字化通信接口模块之间的快速切换,使得cpu的通信外设一直处于通信状态中实时运行,提高cpu资源利用率。
66.基于此,本技术提出一种数据采集方法,应用于上述的数据采集系统中的采集主机,图3为本技术实施例提供的一种数据采集方法的流程示意图,如图3所示,本技术实施例的方法包括:
67.s301、根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据。
68.本技术实施例中,目标设备可以指的是各个设备中最先需要进行数据采集的设备,其对应的查询倒计时为各个设备中的最小值,具体的,确定目标设备的过程可以为将各个设备对应的查询倒计时按照从小到大进行排序,排序最靠前的设备即为目标设备,若在排序过程中,查询倒计时有多个相同的,则可以基于优先级的高低进行排序,若优先级也相同,则可以基于设备的接入时间的先后顺序进行排序,或者,也可以随机确定,本技术实施例对此不作具体限定。
69.可以理解的是,本技术也可以通过其他方式确定目标设备,如优先级的高低,更新周期的长短等,本技术实施例对此不作具体限定,其中,所述更新周期为设备更新数据所需的周期,如设备1更新一次数据对应的更新周期t1为200ms。
70.在本步骤中,通过切换模块与目标设备连接之前,需要对切换通道进行初始化,所
述通道为采集主机与设备进行连接进行数据采集的通道,每一设备对应一个通道,通过对切换通道初始化,可以准确的采集目标设备中的数据,减少上一个目标设备中采集数据的干扰。
71.示例性的,在图1的应用场景下,若确定第一设备102、第二设备103和第三设备104的查询倒计时t
rd
=[2800,1800,4800],进一步的,对t
rd
=[2800,1800,4800]按照大小进行排序,取排在最前面的第二设备103为目标设备,初始化切换通道,使得通过切换模块与第二设备103连接,并采集第二设备103中的数据。
[0072]
s302、采集完成后,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。
[0073]
在本步骤中,采集完成后,接入采集主机所有的设备对应的查询倒计时会基于采集该目标设备中数据所用时间进行减少,在目标设备数据采集完成后,可以将该目标设备对应的查询倒计时复位为获取到的查询周期,这样可以对其他设备对应的查询倒计时小于该查询周期的设备进行数据采集。
[0074]
其中,查询周期用于确定采集设备中数据的间隔周期,所述查询周期可以基于大量实验提前预设好的,即设备在接入采集主机时,采集主机便可以获取到对应设备的查询周期,也可以为人为设定好的,即设备在接入采集主机时,采集主机便可以获取到人为输入的设备的查询周期,本技术实施例对此不作具体限定。
[0075]
可选的,在采集完成后,重置目标设备的查询倒计时的数值也可以为其他数值,如获取到的默认的一个查询倒计时,本技术实施例对此不作具体限定。
[0076]
一种可能的实现方式中,在采集目标设备中数据完成后,可以直接获取各个设备的查询倒计时,通过对目标设备的查询倒计时重置,获取一个新的查询倒计时表,进而基于该查询倒计时表选择下一个目标设备进行数据采集,例如,在图1的应用场景下,以第二设备103为目标设备,在第二设备103数据采集完成后,可以直接获取第一设备102、第二设备103和第三设备104的查询倒计时t
rd
=[800,0,2800],通过重置第二设备103对应的倒计时为2000,获取一个新的查询倒计时表为t
rd
=[800,2000,2800],进而利用该查询倒计时表基于s301采集数据的步骤,采集主机101对第一设备102进行数据采集。
[0077]
另一种可能的实现方式中,在采集目标设备中数据完成后,不可以直接获取各个设备的查询倒计时,而是通过获取目标设备更新了多少周期来确定对应的查询倒计时,进而对目标设备的查询倒计时重置,获取一个新的查询倒计时,以根据重置后的查询倒计时继续进行数据采集,示例性的,在图1的应用场景下,若第一设备102、第二设备103和第三设备104的查询倒计时t
rd
=[2800,1800,4800],确定第二设备103为目标设备,在采集主机101对第二设备103中的数据采集完成后,若获取到第二设备103更新了10个周期200ms,此时将第二设备103的t
rd
复位为查询周期tr=2000后,可以得到第一设备102、第二设备103和第三设备104对应的最新的查询倒计时表为t
rd
=[800,2000,2800],进一步的,按照s301采集数据的步骤,采集主机101对第一设备102进行数据采集。
[0078]
因此,本技术实施例提供一种数据采集方法,可以根据各个设备的查询倒计时,确定目标设备,进而通过切换模块与目标设备连接,并采集目标设备的数据;进一步的,在采集目标设备的数据完成后,重置目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。这样,可以通过一个采集主机便可以实现对多个设备的数据采集,节省成
本,且可以基于设备的查询倒计时动态调整对设备的数据采集,提高采集数据的灵活性,利于推广。
[0079]
可选的,根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据,包括:
[0080]
将所述各个设备的查询倒计时按照从小到大的顺序进行排序,并确定排序后位于最前面的查询倒计时对应的目标设备;
[0081]
获取所述目标设备的基础信息,所述基础信息包括端口号、地址以及端口配置信息;所述端口配置信息用于确定传输路径;
[0082]
基于所述目标设备对应的端口号通过切换模块将所述目标设备与对应的端口建立连接,并利用所述端口配置信息向所述目标设备对应的地址进行数据的采集。
[0083]
本技术实施例中,每个设备都配置有对应的配置表,所述配置表用于存储基础信息,所述基础信息包括端口号、地址以及端口配置信息等;所述端口号用于确定需要采集数据的设备对应的端口,所述地址用于确定采集数据的设备对应的地址信息,所述端口配置信息用于确定传输路径;如设备1的端口配置信息为串口波特率为9600,停止位为1,无校验位,数据位为8等,这样,采集主机便可以以串口波特率为9600,停止位为1,无校验位,数据位为8的数据帧对设备1中的数据进行采集。
[0084]
示例性的,图4为本技术实施例提供的一种采集设备数据的流程示意图;如图4所示,n路数字化通信接口中模块对外连接m个传感器或智能设备,以传感器或智能设备表表示为d(d1,d2,d3,
……dm
),为提高传感器或智能设备采集数据均衡性,本技术按照设备为单位进行数据采集。具体的,采集主机在接入多个设备后,在采集系统中配置有以设备为单位的设备查询表dr(d
r1
,d
r2
,d
r3
,
……drm
),所述设备查询表是以设备为单位进行排序的设备查询表,所述设备查询表包括各个设备的配置表(cfgtble),如该设备查询表以查询倒计时t
rd
([t
rd1
,t
rd2
,t
rd3
……
t
rdm
])为索引进行从小到大的排序,则查询倒计时最短的对应的设备排在第一位,为目标设备。
[0085]
其中,每一设备对应的配置表中存储有设备的端口号、地址以及端口配置信息等,等到采集设备数据时,系统的数据采集任务可以加载设备的配置表,调用设备正常查询帧,以对该设备进行数据的采集。
[0086]
进一步的,可以获取目标设备的配置表,确定目标设备对应的端口号、地址以及端口配置信息等,进而采集主机可以基于目标设备对应的端口号通过切换模块将目标设备与对应的端口建立连接,并加载对应的端口配置信息,调用设备数据查询帧,从而向目标设备对应的地址进行数据采集。
[0087]
可以理解的是,m个传感器或智能设备的查询倒计时的初始值分别是t
rd
([t
rd1
,t
rd2
,t
rd3
……
t
rdm
])=tr([t
r1
,t
r2
,t
r3
……
t
rm
]),系统可以定时维护设备查询表dr([d
r1
,d
r2
,d
r3
……drm
]),用于动态调整各个设备的查询倒计时。
[0088]
需要说明的是,当设备查询表中排序第一的查询倒计时为零时,可以暂停对设备查询表进行调整。
[0089]
因此,本技术实施例可以找到查询倒计时最小的设备进行数据采集,提高数据采集的及时性,查询倒计时较大的可以放后采集,且可以基于端口号、地址以及端口配置信息进行数据采集,防止互相干扰,提高数据采集的准确性。
[0090]
可选的,确定排序后位于最前面的查询倒计时对应的目标设备,包括:
[0091]
判断排序后各个设备的查询倒计时中是否存在相同值;
[0092]
若存在,则获取各个设备的优先级,并将所述相同值按照各自设备对应的优先级进行排序;若确定设备对应的优先级相同,则按照各自设备的接入时间进行排序,得到排序后的各个终端设备;
[0093]
确定排序后位于最前面的查询倒计时对应的目标设备。
[0094]
在本步骤中,可以对接入采集主机的设备进行分类,每一类设备对应相应的优先级,如将接入采集主机的设备分为g个类([p1,p2,p3,
……
,pg]),每一类对应的优先级分别为([第一级,第二级,第三级,
……
,第g级]);接入时间指的是设备接入采集主机,与采集主机建立连接时对应的时间,本技术实施例对优先级的等级数量和接入时间对应的数值不作具体限定。
[0095]
示例性的,在图1的应用场景下,第一设备102、第二设备103和第三设备104对应的查询倒计时为t
rd
([1800,1800,3000]),对应的等级分别为第二级,第一等级和第三等级,则通过判断排序后第一设备102和第二设备103的查询倒计时相同,则获取第一设备102的优先级为第二级、第二设备103的优先级为第一级,优先级高的排序位于最前面,则可以确定排序后位于最前面的查询倒计时对应的目标设备为第二设备103。
[0096]
在另一实施例中,若第一设备102、第二设备103和第三设备104对应的等级分别为第二级,第二等级和第三等级,则可以获取第一设备102、第二设备103接入采集主机101时对应的时间,接入时间早的排序位于最前面,若第一设备102、第二设备103接入采集主机101时对应的时间分别为同一天的9:00和16:00,则可以确定排序后位于最前面的查询倒计时对应的目标设备为第一设备102。
[0097]
可选的,在判断排序后各个设备的查询倒计时中是否存在相同值时,若确定相同值对应的设备的优先级相同,则可以随机选取其中一个设备为目标设备,或者,在判断排序后各个设备的查询倒计时中是否存在相同值时,不获取设备的优先级,而是随机选取其中一个设备为目标设备,本技术实施例对从相同值对应的多个设备中选取目标设备的方式不作具体限定,可以基于适用场景决定,以上实现方式均可以。
[0098]
因此,本技术实施例可以针对排序后各个设备的查询倒计时中存在相同值的情况进行处理,可以提高处理的灵活性,满足不同场景需求。
[0099]
可选的,所述采集主机包括至少一个中央处理器cpu通信外设,获取所述目标设备的基础信息,包括:
[0100]
针对每一个cpu通信外设,从设备查询表中获取目标设备的配置表;所述配置表用于存储基础信息。
[0101]
在本步骤中,一个采集主机可以包括至少一个cpu通信外设,所述cpu通信外设可以连接多个设备,可以满足多个传感器或智能设备的采集需求,这样设置可以节省成本。
[0102]
示例性的,在图1的应用场景下,采集主机101可以包括至少一个cpu通信外设105(图中未示出),以图1示出的cpu通信外设105为例,若采集主机确定第一设备102为目标设备,则可以直接加载第一设备102的配置表,进而可以获取到第一设备102对应的基础信息,从而利用该基础信息调用第一设备102对应的查询帧,以对该第一设备102进行数据的采集。
[0103]
因此,本技术可以通过一个采集主机具有的多个cpu通信外设,连接更多的设备,从而可以减少成本,且将每个设备的基础信息存储进配置表中,方便采集主机在使用时直接调用设备信息,节省时间。
[0104]
可选的,所述方法还包括:
[0105]
获取每一设备的查询周期和更新周期;其中,所述查询周期用于确定采集所述设备中数据的间隔周期,所述更新周期为所述设备更新数据所需的周期;
[0106]
计算每一设备的查询周期和对应的更新周期的差值,得到设备的查询倒计时。
[0107]
其中,所述更新周期为从显示查找表中查找到的与所述设备对应的值,或者,获取用户输入的所述设备对应的值。
[0108]
本技术实施例中,可以对接入采集主机的设备进行分类,每一类设备对应相应的优先级,每个优先级对应的查询周期不同,优先级等级越高,查询周期越短,其中,查询周期用于确定查询设备中数据的间隔周期,如设备1的优先级等级较高,其对应的查询周期为1000ms,即每隔1000ms需要采集一次设备1中的数据,设备2的优先级等级较低,其对应的查询周期为8000ms,即每隔8000ms需要采集一次设备2中的数据。
[0109]
可以理解的是,每一类设备的优先级和接入采集主机的设备进行分类的类别可以提前预设好,也可以人为修改,本技术实施例对此不作具体限定。
[0110]
在本步骤中,每一设备中的数据是实时更新的,而设备更新数据所需的周期可以定义为更新周期,如设备1的更新周期t1为200ms,每一设备的更新周期可以相同,也可以不同,而本技术可以通过每一设备的查询周期和更新周期,利用预定义算法确定设备的查询倒计时,即确定查询到该设备的剩余时间。
[0111]
示例性的,可以将接入采集主机的设备分为g个类如([p1,p2,p3,
……
,pg]),该g个分类的查询周期分别为tr([t
r1
,t
r2
,t
r3
……
t
rm
]),该g个分类的更新周期分别为t([t1,t2,t3……
tm]),则可以确定接入采集主机的设备对应的查询倒计时为t
r-t([t
r1-t1,t
r2-t2,t
r3-t3……
t
rm-tm])。
[0112]
需要说明的是,本技术实施例中的更新周期可以为从显示查找表中查找到的与设备对应的值,即设备在接入采集主机后,可以从显示查找表中直接获取提前预设好的更新周期;或者,获取用户输入的设备对应的值,即设备在接入采集主机时,可以获取用户输入的更新周期,而查询周期除了可以通过优先级确定,也可以利用和获取更新周期相同的方法确定,本技术实施例对此不作具体限定,其中,利用查询周期和更新周期计算设备的查询倒计时的算法,本技术实施例也对此不作具体限定,可以为减法,加权平均法等。
[0113]
示例性的,在图1的应用场景下,若设定第一等级、第二等级和第三等级对应的查询周期分别是2000ms、3000ms、5000ms,第一设备102、第二设备103和第三设备104对应的等级分别为第二级,第一等级和第三等级,从显示查找表中查找到对应的更新周期均为200ms,进一步的,可以确定第一设备102、第二设备103和第三设备104的查询周期为tr=([3000,2000,5000]),则经过第一个更新周期后,第一设备102、第二设备103和第三设备104的查询倒计时t
rd
=[2800,1800,4800]。
[0114]
因此,由于每个设备对应的查询周期和更新周期不同,随着对设备数据的采集,需要动态调整查询倒计时,本技术实施例可以基于设备的查询周期和更新周期确定设备的查询倒计时,从而进行多个设备的数据的采集,提高采集数据的实时性。
[0115]
可选的,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集,包括:
[0116]
将所述目标设备的查询倒计时复位为对应的查询周期,并获取除所述目标设备外其他设备的查询倒计时;
[0117]
对复位后的查询周期和其他设备的查询倒计时按照从小到大的顺序进行排序,并再次确定排序后位于最前面的目标设备;
[0118]
基于再次确定的目标设备对应的端口号通过切换模块切换到对应的端口建立连接,并初始化端口配置信息,利用再次确定的目标设备对应的端口配置信息向对应的地址进行数据的采集。
[0119]
在本步骤中,初始化端口配置信息可以指的是初始化cpu通信外设和切换通道,以使采集主机可以与下一个目标设备,利用下一个目标设备对应的端口配置信息进行数据采集,如再次确定的目标设备对应的端口号为3,地址为1,串口波特率为115200,停止位为1,无校验位,数据位为8,则采集主机控制切换模块切换到端口3,初始化串口为波特率115200,停止位1,无校验位,数据位8,按照地址1依次利用对应的数据帧进行数据的采集,在完成设备的数据采集后将查询倒计时复位为对应的查询周期tr。
[0120]
示例性的,在图1的应用场景下,第一设备102、第二设备103和第三设备104分别以d1,d2和d3表示,其中,d1的端口为1,地址为2,串口波特率为9600,停止位为1,无校验位,数据位为8;d2的端口为3,地址为1,串口波特率为115200,停止位为1,无校验位,数据位为8;d3的端口为4,地址为3,串口波特率为9600,停止位为1,无校验位,数据位为8。
[0121]
设定d1,d2和d3的查询周期tr=([3000,2000,5000]),目标设备d1数据采集完成后,d1,d2和d3的查询倒计时t
rd
=[800,1800,3800],对目标设备d1的查询倒计时复位为对应的查询周期3000,此时新的d1,d2和d3的查询倒计时t
rd
=[3000,1800,3800],进一步的,对设备查询表dr([d
r1
,d
r2
,d
r3
]进行排序后,得到d
r1
=d2,d
r2
=d1,d
r3
=d3,确定目标设备为d2,则采集主机101加载设备d2的配置表,识别该配置表中基础信息,控制切换模块切换到端口3,初始化串口为波特率115200,停止位1,无校验位,数据位8,按照地址1利用相应的数据帧进行数据的采集,完成d2设备的数据采集后将d2设备的t
rd
复位为tr。
[0122]
可以理解的是,确定下一个目标设备的过程跟上述实施例类似,在此不再赘述,按照上述设备数据采集步骤,加载下一个目标设备的配置表,并按照以上流程进行数据采集,以上过程循环执行。
[0123]
因此,本技术通过考虑时间因素的情况下,动态调度系统资源,实现最优数据传输与采集,进行数据采集的过程循环执行,采集完成后的设备进行复位后再次放入设备查询表中,该方法既能够满足多个传感器或智能设备的采集需求,提高均衡性,又能够满足各个传感器或智能设备某些信号点的时限要求,减少设备采集时的相互干扰,提高数据采集的准确性。
[0124]
可选的,所述方法还包括:
[0125]
每隔预设周期,依次查询各个设备进行数据采集的采集次数;
[0126]
若存在所述采集次数小于预设阈值的设备,则降低所述设备的查询周期和\或升高所述设备的优先级。
[0127]
本技术实施例中,预设周期可以指的系统设定的用于查看采集主机有无长时间未
进行数据采集的设备所设定的时间周期;采集次数可以指的是各个设备被采集主机进行数据采集的次数;预设阈值可以指的是设定用于确定设备被采集主机采集数据的次数较少所设定的阈值,本技术实施例对预设周期和预设阈值对应的数值不作具体限定,如预设周期可以为1天、预设阈值可以为2次。
[0128]
可选的,本技术也可以通过依次查询没有进行数据采集的设备对应的时长,若存在没有进行数据采集的设备对应的时长超过阈值,则也可以降低该设备的查询周期和\或升高该设备的优先级,使得采集主机尽快采集到该设备中的数据。
[0129]
可以理解的是,除了通过降低设备的查询周期和\或升高设备的优先级,使得采集主机尽快采集数据外,还可以直接为该设备添加标识,使得采集主机采集完当前设备后立刻对该设备进行数据采集,本技术实施例对采用以使采集主机尽快采集数据的方式不作具体限定。
[0130]
示例性的,在图1的应用场景下,每隔1天,采集主机101可以依次查询第一设备102、第二设备103和第三设备104进行数据采集的采集次数;若第一设备102对应的采集次数小于2次,则可以采取降低第一设备102的查询周期,使得采集主机101尽快采集到第一设备102中的数据。
[0131]
在另一示例中,每隔1天,采集主机101可以依次查询第一设备102、第二设备103和第三设备104没有进行数据采集的时长;若第二设备103超过6个小时未被采集主机101采集数据,则可以采取升高第二设备103的优先级,使得采集主机101尽快采集到第二设备103中的数据。
[0132]
在又一示例中,若采集主机101确定第三设备104在预设周期1天内,对应的采集次数为0次,则可以采取降低第三设备104的查询周期且升高第三设备104的优先级,使得采集主机101加快采集完当前设备,并尽快采集第三设备104中的数据。
[0133]
需要说明的是,在本技术实施例中,查询周期可以与优先级有对应关系,即优先级等级越高,设备的查询周期越短,也可以查询周期可以与优先级不具有对应关系,即优先级只是用于确定查询倒计时中存在相同值时设备的排序顺序或提高设备在长时间未被采集时的采集顺序等,本技术实施对此不作具体限定。
[0134]
因此,当一个设备长时间未进行数据采集,本技术实施例可以进行识别并查询到该设备,通过可以降低查询周期或升高优先级,使得可以尽快采集该设备的数据,减少遗漏设备的数据采集。
[0135]
结合上述实施例,本技术实施例提供一种具体的数据采集方法,对多个设备中的数据进行采集,图5为本技术实施例提供的一种具体的数据采集方法的流程示意图,如图5所示,所述方法的具体执行流程如下:
[0136]
步骤1:按照周期独立的定时维护设备查询表,并按照查询倒计时间(即查询倒计时从小到大)排序,执行步骤2。
[0137]
步骤2:系统加载设备查询表中排在最前面设备(即目标设备)的配置表,并初始化外设和切换通道,执行步骤3。
[0138]
步骤3:根据设备查询表中对应的设备编号,加载对应的传感器或智能设备,执行步骤4,其中,加载对应的传感器或智能设备,即基于目标设备对应的端口号通过切换模块将目标设备与对应的端口建立连接,并利用端口配置信息向目标设备对应的地址进行数据
的采集。
[0139]
步骤4:设备数据采集完毕,查询倒计时复位为tr,继续执行步骤2。
[0140]
在前述实施例中,对本技术实施例提供的数据采集方法进行了介绍,而为了实现上述本技术实施例提供的方法中的各功能,作为执行主体的电子设备可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。
[0141]
例如,图6为本技术实施例提供的一种数据采集装置的结构示意图,如图6所示,该装置包括:采集模块610和重置模块620,其中,所述采集模块610,用于根据各个设备的查询倒计时,确定目标设备,通过切换模块与所述目标设备连接,并采集所述目标设备的数据;
[0142]
所述重置模块620,用于采集完成后,重置所述目标设备的查询倒计时,以根据重置后的查询倒计时继续进行数据采集。
[0143]
可选的,所述采集模块610包括排序单元、获取单元和采集单元;
[0144]
具体的,所述排序单元,用于将所述各个设备的查询倒计时按照从小到大的顺序进行排序,并确定排序后位于最前面的查询倒计时对应的目标设备;
[0145]
所述获取单元,用于获取所述目标设备的基础信息,所述基础信息包括端口号、地址以及端口配置信息;所述端口配置信息用于确定传输路径;
[0146]
所述采集单元,用于基于所述目标设备对应的端口号通过切换模块将所述目标设备与对应的端口建立连接,并利用所述端口配置信息向所述目标设备对应的地址进行数据的采集。
[0147]
可选的,所述排序单元,具体用于:
[0148]
判断排序后各个设备的查询倒计时中是否存在相同值;
[0149]
若存在,则获取各个设备的优先级,并将所述相同值按照各自设备对应的优先级进行排序;若确定设备对应的优先级相同,则按照各自设备的接入时间进行排序,得到排序后的各个终端设备;
[0150]
确定排序后位于最前面的查询倒计时对应的目标设备。
[0151]
可选的,所述采集主机包括至少一个中央处理器cpu通信外设,所述获取单元,具体用于:
[0152]
针对每一个cpu通信外设,从设备查询表中获取目标设备的配置表;所述配置表用于存储基础信息。
[0153]
可选的,所述装置还包括计算模块,所述计算模块,用于:
[0154]
获取每一设备的查询周期和更新周期;其中,所述查询周期用于确定采集所述设备中数据的间隔周期,所述更新周期为所述设备更新数据所需的周期;
[0155]
计算每一设备的查询周期和对应的更新周期的差值,得到设备的查询倒计时。
[0156]
可选的,所述重置模块620,具体用于:
[0157]
将所述目标设备的查询倒计时复位为对应的查询周期,并获取除所述目标设备外其他设备的查询倒计时;
[0158]
对复位后的查询周期和其他设备的查询倒计时按照从小到大的顺序进行排序,并再次确定排序后位于最前面的目标设备;
[0159]
基于再次确定的目标设备对应的端口号通过切换模块切换到对应的端口建立连接,并初始化端口配置信息,利用再次确定的目标设备对应的端口配置信息向对应的地址进行数据的采集。
[0160]
可选的,所述装置还包括查询模块,所述查询模块,用于:
[0161]
每隔预设周期,依次查询各个设备进行数据采集的采集次数;
[0162]
若存在所述采集次数小于预设阈值的设备,则降低所述设备的查询周期和\或升高所述设备的优先级。
[0163]
本技术实施例提供的数据采集装置的具体实现原理和效果可以参见上述实施例对应的相关描述和效果,此处不做过多赘述。
[0164]
示例性的,本技术实施例还提供一种电子设备的结构示意图,图7为本技术实施例提供的一种电子设备的结构示意图,如图7所示,该电子设备可以包括:处理器702以及与所述处理器通信连接的存储器701;该存储器701存储计算机程序;该处理器702执行该存储器701存储的计算机程序,使得该处理器702执行上述任一实施例所述的方法。
[0165]
其中,存储器701和处理器702可以通过总线703连接。
[0166]
本技术实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序执行指令,计算机执行指令被处理器执行时用于实现如本技术前述任一实施例中的数据采集方法。
[0167]
本技术实施例还提供一种运行指令的芯片,该芯片用于执行如本技术前述任一实施例中由电子设备所执行的数据采集方法。
[0168]
本技术实施例还提供一种计算机程序产品,包括程序代码,当计算机运行所述计算机程序时,所述程序代码执行本技术前述任一实施例中由电子设备所执行的数据采集方法。
[0169]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0170]
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。
[0171]
另外,在本技术各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0172]
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本技术各个实施例所述方法的部分步骤。
[0173]
应理解,上述处理器可以是中央处理单元(central processing unit,cpu),还可
以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合申请所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0174]
存储器可能包含高速随机存取存储器(random access memory,ram),也可能还包括非不稳定的存储器(non-volatile memory,nvm),例如至少一个磁盘存储器,还可以为u盘、移动硬盘、只读存储器、磁盘或光盘等。
[0175]
总线可以是工业标准体系结构(industry standard architecture,isa)总线、外部设备互连(peripheral component interconnect,pci)总线或扩展工业标准体系结构(extended industry standard architecture,eisa)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本技术附图中的总线并不限定仅有一根总线或一种类型的总线。
[0176]
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random-access memory,sram),电可擦除可编程只读存储器(electrically erasable programmable read only memory,eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,eprom),可编程只读存储器(programmable read-only memory,prom),只读存储器(read-only memory,rom),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0177]
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(application specific integrated circuits,asic)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
[0178]
以上所述,仅为本技术实施例的具体实施方式,但本技术实施例的保护范围并不局限于此,任何在本技术实施例揭露的技术范围内的变化或替换,都应涵盖在本技术实施例的保护范围之内。因此,本技术实施例的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献