CN112637368B - 分布式工业数据采集系统及方法 - Google Patents
分布式工业数据采集系统及方法 Download PDFInfo
- Publication number
- CN112637368B CN112637368B CN202110256786.3A CN202110256786A CN112637368B CN 112637368 B CN112637368 B CN 112637368B CN 202110256786 A CN202110256786 A CN 202110256786A CN 112637368 B CN112637368 B CN 112637368B
- Authority
- CN
- China
- Prior art keywords
- target
- data acquisition
- data
- node
- gateway machine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Abstract
本申请涉及工业数据采集技术领域,公开了分布式工业数据采集系统及方法,该系统包括:IOT平台、注册服务器及多组网关机;IOT平台中设置有任务分配模块及数据采集模块;注册服务器中设置有多个注册中心。通过任务分配模块对参与数据接收的数采节点进行节点编号、对网关机进行路由编号,将数采节点与其对应的网关机绑定在一起,并通知注册服务器中的注册中心对参与数据接收的数采节点进行监控,建立起IOT平台在工业数据接收过程中的故障监测机制,实现IOT平台的数据管理,避免了IOT平台上存储的工业数据存在缺漏或异常的现象。
Description
技术领域
本申请涉及工业数据采集技术领域,尤其涉及分布式工业数据采集系统及方法。
背景技术
工业生产中,工业设备会直连设备PLC(Programmable Logic Controller,可编程控制器),通过设备PLC生成该工业设备的生产数据。根据实际生产状况,一个工业生产厂区内可能设有一个或多个设备PLC,一个设备PLC可以连接多个或多种工业设备,一个工业设备可能由多个组件构成,设备PLC针对某个工业设备所生成的生产数据则包括各组件的运行数据。
为了实现生产数据的共享,需要利用一个外网服务器来采集不同工业生产厂区的生产数据,该外网服务器也称为IOT平台,IOT平台中部署有数据采集程序,主要由该数据采集程序实现生产数据的采集及汇总。
实际情况中,一个工业设备由不同组件构成,不同组件对应的生产数据类型也是不同的,因此设备PLC所生成的生产数据通常包括多种类型,不同类型的数据需要借助不同的通信协议进行传输,例如Modbus、MQTT、Socket、OPC UA等协议。参见图1,为了将各类型的生产数据发送至外网服务器,目前使用网关机实现生产数据的中转。网关机是一种充当数据转换与传递的计算机设备,不同网关机采用不同的通信协议,当一个网关机接收到不同类型的数据时,会将所有数据的类型转换为与自身通信协议相对应的数据类型发送出去。
在工业生产厂区比较多的情况下,工业设备、设备PLC及网关机都会很繁杂,如图1所示,由于目前的IOT平台在工业数据接收的过程中没有故障监测机制,数据接收过程中出现的故障,往往会直接被忽略掉,导致IOT平台上存储的工业数据可能存在较多缺漏或异常。
发明内容
为了解决由于目前的IOT平台在工业数据接收的过程中没有故障监测机制,数据接收过程中出现的故障,往往会直接被忽略掉,导致IOT平台上存储的工业数据可能存在较多缺漏或异常的技术问题,本申请通过以下实施例公开了分布式工业数据采集系统及方法。
本申请第一方面公开了一种分布式工业数据采集系统,包括:IOT平台、注册服务器及多组网关机;
每组网关机各对应一种通信协议,每组网关机包括一个或多个网关机,每个所述网关机用于接入一个或多个设备PLC,每个所述设备PLC用于生成多个待采集点位的生产数据,任一所述待采集点位对应一个工业设备的一个组件;
所述IOT平台中设置有任务分配模块及数据采集模块;所述注册服务器中设置有多个注册中心,每个所述注册中心对应一种通信协议;
所述数据采集模块包括多个数据采集子模块,每个所述数据采集子模块各对应一种通信协议,每个所述数据采集子模块包括多个用于连接网关机的端口以及多个用于接收网关机数据的数采节点;
所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号;
当存在一个或多个网关机接入至同种通信协议的数据采集子模块的端口时,所述任务分配模块用于根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号,并根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,然后控制目标数采节点接收所述目标网关机发送的数据;所述目标网关机为任一所述接入的网关机,所述目标数采节点的节点编号与所述目标网关机的路由编号一致;
所述任务分配模块还用于在控制所述目标数采节点接收所述目标网关机发送的数据时,发送注册信息至目标注册中心;所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心;
所述目标注册中心在接收到所述注册信息后,用于实时监测所述目标数采节点的运行状况。
可选的,所述任务分配模块在根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号时,用于执行以下步骤:
将所述目标网关机的网关机IP地址及网关机端口号进行拼接,获取所述目标网关机的唯一标识;
获取目标哈希值,所述目标哈希值为所述目标网关机的唯一标识对应的哈希值;
基于所述目标哈希值及所述参与数据接收的数采节点的个数,获取所述目标网关机的路由编号;所述目标网关机的路由编号为目标余数的绝对值,所述目标余数为所述目标哈希值除以所述参与数据接收的数采节点的个数所得的余数。
可选的,所述目标注册中心用于通过执行以下步骤,实时监测所述目标数采节点的运行状况:
向所述目标数采节点发送心跳检测数据包;
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
可选的,所述目标注册中心在判定所述目标数采节点发生故障时,还用于将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点;
所述任务分配模块在接收到所述目标数采节点的故障信息时,还用于控制所述备选数采节点接收所述目标网关机发送的数据。
可选的,在所述任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,所述目标注册中心若接收到所述目标数采节点的响应数据包,则所述目标注册中心还用于判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块;
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
本申请第二方面公开了一种分布式工业数据采集方法,应用于本申请第一方面所述的分布式工业数据采集系统,所述分布式工业数据采集方法包括:
一个或多个网关机接入至同种通信协议的数据采集子模块的端口;
任务分配模块根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号;
任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,所述目标网关机为任一所述接入的网关机,所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号;
所述任务分配模块控制目标数采节点接收所述目标网关机发送的数据,所述目标数采节点的节点编号与所述目标网关机的路由编号一致;
所述任务分配模块发送注册信息至目标注册中心;所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心;
所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况。
可选的,所述任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,包括:
将所述目标网关机的网关机IP地址及网关机端口号进行拼接,获取所述目标网关机的唯一标识;
获取目标哈希值,所述目标哈希值为所述目标网关机的唯一标识对应的哈希值;
基于所述目标哈希值及所述参与数据接收的数采节点的个数,获取所述目标网关机的路由编号;所述目标网关机的路由编号为目标余数的绝对值,所述目标余数为所述目标哈希值除以所述参与数据接收的数采节点的个数所得的余数。
可选的,所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况,包括:
向所述目标数采节点发送心跳检测数据包;
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
可选的,若所述目标注册中心判定所述目标数采节点发生故障,则所述分布式工业数据采集方法还包括:
所述目标注册中心将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点;
所述任务分配模块在接收到所述目标数采节点的故障信息时,控制所述备选数采节点接收所述目标网关机发送的数据。
可选的,在所述任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,若所述目标注册中心接收到所述目标数采节点的响应数据包,则所述分布式工业数据采集方法还包括:
所述目标注册中心判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块;
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
本申请公开了分布式工业数据采集系统及方法,该系统包括:IOT平台、注册服务器及多组网关机;IOT平台中设置有任务分配模块及数据采集模块;注册服务器中设置有多个注册中心。通过任务分配模块对参与数据接收的数采节点进行节点编号、对网关机进行路由编号,将数采节点与其对应的网关机绑定在一起,并通知注册服务器中的注册中心对参与数据接收的数采节点进行监控,建立起IOT平台在工业数据接收过程中的故障监测机制,实现IOT平台的数据管理,避免了IOT平台上存储的工业数据存在缺漏或异常的现象。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为现有的一种工业数据采集系统结构示意图;
图2为本申请实施例公开的分布式工业数据采集系统的结构示意图;
图3为本申请实施例公开的分布式工业数据采集系统在示例应用场景下的结构示意图;
图4为本申请实施例公开的分布式工业数据采集方法的工作流程示意图。
具体实施方式
对于图1所示的现有工业数据采集系统,X1、X2、X3、X4、X5分别指代工业生产厂区的数量、工业设备的数量、设备PLC的数量及网关机的数量。作为示例,针对第一个工业生产厂区,即工业生产厂区1,存在X2个工业设备,通过一个设备PLC生成它们的生产数据,然后利用网关机1将生产数据发送给IOT平台。
现有工业数据采集系统的IOT平台中设置有数据采集程序,当有多个网关机发送工业数据过来时,数据采集程序将会被启动多次,每启动一次,采集一个网关机发送的数据。例如,若有两个网关机发送工业数据过来,数据采集程序将会被启动两次,分别采集这两个网关机的数据。这种情况下,若已启动的某个数据采集程序运行出错,由于缺少故障监测机制,将导致无法及时发现故障,并且即使发现故障了,也无法定位该数据采集程序对应的网关机,无法及时的进行数据转移及故障排查等操作。
为了解决由于目前的IOT平台在工业数据接收的过程中没有故障监测机制,数据接收过程中出现的故障,往往会直接被忽略掉,导致IOT平台上存储的工业数据可能存在较多缺漏或异常的技术问题,本申请通过以下实施例公开了分布式工业数据采集系统及方法。
参见图2,本申请第一实施例公开了一种分布式工业数据采集系统,包括:IOT平台、注册服务器及多组网关机。其中,注册服务器采用现有的Zookeeper组件(一种分布式系统的可靠协调组件)。
每组网关机各对应一种通信协议,每组网关机包括一个或多个网关机,每个所述网关机用于接入一个或多个设备PLC,每个所述设备PLC用于生成多个待采集点位的生产数据,任一所述待采集点位对应一个工业设备的一个组件。
需要说明的是,本申请提供的网关机为一种典型的数据采集转发设备,实际应用过程中,可以使用其他数据采集转发设备或系统,例如Scada(Supervisory Control AndData Acquisition,数据采集与监控系统)、Iba数据采集系统等。
所述注册服务器中设置有多个注册中心,每个所述注册中心对应一种通信协议。作为示例,Modbus通信协议对应的注册中心表示为:Data_Modbus,MQTT通信协议对应的注册中心表示为:DATA_MQTT,Socket通信协议对应的注册中心表示为:DATA_Socket,OPC通信协议对应的注册中心表示为:DATA_OPC,由Zookeeper组件负责管理每个注册中心下的每个数采节点。
所述IOT平台中设置有任务分配模块及数据采集模块。所述数据采集模块包括多个数据采集子模块,每个所述数据采集子模块各对应一种通信协议。
一般来说,通信协议包括但不限于Modbus,MQTT,Socket,OPC等。对于本申请中的多组网关机,可以存在两组及以上的网关机使用同一种通信协议,也就是说,本申请不限定一种通信协议仅对应一组网关机。但是,针对数据采集子模块以及注册中心来说,一种通信协议仅对应一个数据采集子模块,仅对应一个注册中心。参见图2,图中有X组网关机,Y个数据采集子模块,Z个注册中心,其中,Y=Z,大小为在实际工业场景中所有工业生产厂区使用的通信协议的种数,X的大小由实际工业场景中的工作人员根据工业生产需求自行设定,同样的,对于n1、n2的大小,也是由工作人员设定。
每个所述数据采集子模块包括多个用于连接网关机的端口以及多个用于接收网关机数据的数采节点。其中,数采节点可以理解为内置数据采集程序的服务器。
对于每个数据采集子模块的端口数量,本申请不做具体限定,多个网关机可以通过一个端口一起接入数据采集子模块,也可以通过多个端口分别接入至数据采集子模块。也就是说,图2中的n3、n5及n7的具体取值可根据实际工业场景中的需求来设定。
为了实现故障监控,最重要的是进行数采节点的分配,这是本申请实现数采节点与对应网关机跟踪定位的基础。
本实施例中,所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号。
当存在一个或多个网关机接入至同种通信协议的数据采集子模块的端口(即每个网关机和数据采集子模块均采用同种通信协议)时,所述任务分配模块用于根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号,并根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,然后控制目标数采节点接收所述目标网关机发送的数据。所述目标网关机为任一所述接入的网关机,所述目标数采节点的节点编号与所述目标网关机的路由编号一致。
具体的,当一个或多个网关机接入至同种通信协议的数据采集子模块的端口时,每个网关机所对接的设备PLC数量、每个设备PLC所对接的工业设备数量以及每个工业设备对应的组件数量均是已知的,因此容易获知接入的网关机对应的所有待采集点位数量。
根据所有待采集点位数量来确定参与数据接收的数采节点的个数,具体由工作人员根据实际工业场景的需求预先在任务分配模块中进行设定(即图2中的n4、n6及n8的取值大小),不过需要注意的是,参与数据接收的数采节点的个数必然不能超过接入的网关机的数量,以避免资源浪费。例如,待采集点位数量为1000个,有四台网关机对这1000个待采集点位的工业数据进行转发,这种情况下,可以设置一个数采节点、两个数采节点、三个数采节点或者四个数采节点参与数据接收。数采节点数量越多,数据接收效率会越高,但同时对系统性能的要求也越高,因此数采节点数量的配置由工作人员根据实际工业场景进行具体设定。
当确定好参与数据接收的数采节点个数时,便可为每个数采节点配置节点编号。在本申请公开的一种实现方式中,采用依次从零开始编号的方式,给所有参与数据接收的数采节点配置节点编号。例如,若待采集点位数量有1000个,分配三个数采节点参与数据接收,对这三个数采节点从零开始编号,获取它们的节点编号依次为0,1,2;若待采集点位数量有2000个时,分配五个数采节点参与数据接收,对这五个数采节点从零开始编号,获取它们的节点编号依次为0,1,2,3,4。
在数采节点的数量和节点编号都已配置完成之后,任务分配模块为每个数采节点分配相应的网关机,即,将数采节点与其对应的网关机绑定,以便进行后续的运行故障跟踪监测。
在本申请提供的一种实现方式中,针对任一个网关机,即目标网关机,将它的网关机IP地址及网关机端口号(PORT)进行拼接,得到IP:PORT,然后将“IP:PORT”作为目标网关机的唯一标识,接着对此唯一标识取哈希值,得到目标哈希值,然后令目标哈希值除以参与数据接收的数采节点的个数,取余数,并将余数的绝对值设为目标网关机的路由编号,以此实现了对接入的每个网关机进行唯一编号的目的。
作为示例,若待采集点位数量有1000个,分配三个数采节点参与数据接收,目标网关机的IP地址为172.18.42.197,网关机端口号为502,对IP地址和端口号进行拼接得到目标网关机的唯一标识为172.18.42.197:502,取哈希值为-473026271,然后除以参与数据接收的数采节点个数(即除以3)取余数得到-2,最后取绝对值得到2,那么该目标网关机的路由编号即为2。
在利用目标网关机唯一标识的哈希值除以参与数据接收的数采节点个数时,其余数的绝对值必然不会超过数采节点的个数,那么得到的路由编号必然与某个数采节点的节点编号一致。例如针对上述示例,三个数采节点的节点编号依次为0,1,2,而最终得到的目标网关机路由编号为2。这种情况下,任务分配模块将节点编号为2的数采节点设置为目标数采节点,令目标数采节点接收目标网关机发送的数据,便可实现将数采节点与其对应的网关机绑定在一起的目的。
通过上述提供的路由编号配置方式,一个数采节点最终可能会分配到多个网关机。针对上述示例,可能存在多个网关机的路由编号为2,这种情况下,节点编号为2的数采节点需要承接多个路由编号为2的网关机的数据。由于本申请公开的数采节点相当于内置数据采集程序的服务器,此时只需将节点编号为2的数采节点中配置的数据采集程序 启动多次,即可分别采集多个网关机的数据。
本实施例中,将编号一致的数采节点与网关机绑定在一起,使得后续无论监测出什么异常,都能够准确的跟踪定位到相应的数采节点及网关机,便于及时的进行数据转移及故障排查等操作。
为了监控数采节点的运行状况,所述任务分配模块还用于在控制所述目标数采节点接收所述目标网关机发送的数据时,发送注册信息至目标注册中心。所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心。
任务分配模块将注册信息发送至目标注册中心时,即完成目标数采节点的一次注册,相当于通知目标注册中心开始对目标数采节点进行监测。
所述目标注册中心在接收到所述注册信息后,用于实时监测所述目标数采节点的运行状况。
为了更清楚的解释上述内容,结合图3进行说明,图3为本申请公开的分布式工业数据采集系统在一个具体应用场景下的结构图。假设IOT平台需要采集三个同种通信协议的网关机(即图3中的网关机1、网关机2和网关机3)发送过来的数据,这三个网关机共同接入同种通信协议下的数据采集子模块中,其中网关机1和网关机2通过端口1接入进来,网关机3通过端口2接入进来(接入所使用的端口顺序不做限定,图中仅为示例),此时,任务分配模块先获取这三个网关机对应的所有待采集点位的数量,然后基于工作人员预先的设定,配置了两个数采节点来参与数据接收,并且为这两个数采节点设置了节点编号分别为0,1,同时计算得到网关机1和网关机2的路由编号均为0,与数采节点1的节点编号一致,网关机3的路由编号为1,与数采节点2的节点编号一致。任务分配模块将数采节点1与端口1对应的网关机1和网关机2建立连接,将数采节点2与端口2对应的网关机3建立连接,使得数采节点1接收网关机1和网关机2发送过来的工业数据,数采节点2接收网关机3发送过来的工业数据,并将数采节点1和数采节点2的节点编号发送至同种通信协议下的注册中心,即图中的目标注册中心,令目标注册中心开始监测数采节点1和数采节点2的运行状况。
本申请上述实施例公开了分布式工业数据采集系统,包括:IOT平台、注册服务器及多组网关机;IOT平台中设置有任务分配模块及数据采集模块;注册服务器中设置有多个注册中心。通过任务分配模块对参与数据接收的数采节点进行节点编号、对网关机进行路由编号,将数采节点与其对应的网关机绑定在一起,并通知注册服务器中的注册中心对参与数据接收的数采节点进行监控,建立起IOT平台在工业数据接收过程中的故障监测机制,实现IOT平台的数据管理,避免了IOT平台上存储的工业数据存在缺漏或异常的现象。
另外,本申请提供的系统,对不同通信协议的数采流程分开管理,不仅实现了分布式数据采集,还具备协议可扩展及采集能力可扩展的特性,具体的,若新增了一种通信协议,只需要在数据采集模块中增加相应的数据采集子模块即可,若新增了若干待采集点位,只需要通过任务分配模块重新确定数采节点的个数即可。这样的特性使得本申请提供的分布式工业数据采集系统能够应用到各种工业场景中,具有较强的通用性。
进一步的,目标注册中心可通过现有的多种网络检测方式,以监控目标数采节点是否运行正常。本实施例中,采用心跳检测的方式进行监控,具体包括以下步骤:
向所述目标数采节点发送心跳检测数据包。
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
当参与数据接收的数采节点发生故障时,本申请还公开了故障转移的实现方式,以减少故障所带来的数据损失。
具体的,所述目标注册中心在判定所述目标数采节点发生故障时,还用于将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点。
所述任务分配模块在接收到所述目标数采节点的故障信息时,还用于控制所述备选数采节点接收所述目标网关机发送的数据。
作为示例,若目标数采节点的节点编号为1,当因为网络不稳定、线路中断或者服务器宕机等原因,导致目标数采节点发生故障时,其对应的目标注册中心将接收不到目标数采节点反馈的响应数据包,此时,目标注册中心获取在本注册中心完成注册的其他正常数采节点的节点编号,并将任一个正常数采节点(例如节点编号为2的数采节点)设为备选数采节点,然后将节点编号1为故障数采节点的信息与节点编号2为备选数采节点的信息共同发送至任务分配模块。任务分配模块在接收到这样的信息之后,针对相应的数据采集子模块,查询路由编号为1的所有网关机,并控制节点编号为2的数采节点与路由编号为1的所有网关机建立连接,将节点编号为1的数采节点的数据接收任务转移至节点编号为2的数采节点,避免进一步的数据损失,有效实现故障转移。
实际应用场景中,因为网络不稳定、线路中断或者服务器宕机等原因造成的故障大部分都是暂时性的,当发生故障的数采节点恢复正常运行时,如果能够控制其继续执行原有的数据采集任务,以缓解备选数采节点的压力,则能够最大程度上确保数据采集的效率。
基于此,本实施例还提供了一种任务恢复的实现方法。
具体的,在任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,所述目标注册中心若接收到所述目标数采节点的响应数据包(相当于目标数采节点重新在目标注册中心上完成注册),则所述目标注册中心还用于判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块。
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
本申请提供的分布式工业数据采集系统,除了以上能够实现的功能,还具备以下作用:
一、网关机运行监控
由目标数采节点定时发送心跳包给目标网关机,若目标数采节点未收到来自目标网关机的心跳回复,则认为目标数采节点与目标网关机之间的连接断开,此时IOT平台发送告警信息给相应的工作人员,以实现对网关机的运行监控。
二、数据清洗
通过对工业设备数据质量的监控,甄别无效数据,实现数据的异常溯源,并记录无效数据时间段,为数据清洗提供时间依据。具体的,每个网关机所转发的点位信息都保存在数据库中,点位信息包含该点位的正常范围值、该点位所属的工业设备ID等标签信息。当网关机重复转发某点位值为0或其他无效字符时,数采节点认为此数据无效,通过网关机,定位到产生无效数据的工业设备,同时记录下无效数据产生及恢复的时间范围。IOT平台做数据清洗时会获取每个点位的异常时间区间,将该时间区间内的异常数据过滤掉,确保采集数据的正确有效。
下述为本申请公开的方法实施例,用于执行上述系统实施例,对于方法实施例中未披露的细节,请参照系统实施例。
本申请第二实施例公开了一种分布式工业数据采集方法,应用于本申请第一实施例所述的分布式工业数据采集系统,参见图4,所述分布式工业数据采集方法包括:
步骤1001、一个或多个网关机接入至同种通信协议的数据采集子模块的端口。
步骤1002、任务分配模块根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号。
步骤1003、任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,所述目标网关机为任一所述接入的网关机,所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号。
步骤1004、所述任务分配模块控制目标数采节点接收所述目标网关机发送的数据,所述目标数采节点的节点编号与所述目标网关机的路由编号一致。
步骤1005、所述任务分配模块发送注册信息至目标注册中心。所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心。
步骤1006、所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况。
进一步的,所述任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,包括:
将所述目标网关机的网关机IP地址及网关机端口号进行拼接,获取所述目标网关机的唯一标识。
获取目标哈希值,所述目标哈希值为所述目标网关机的唯一标识对应的哈希值。
基于所述目标哈希值及所述参与数据接收的数采节点的个数,获取所述目标网关机的路由编号。所述目标网关机的路由编号为目标余数的绝对值,所述目标余数为所述目标哈希值除以所述参与数据接收的数采节点的个数所得的余数。
进一步的,所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况,包括:
向所述目标数采节点发送心跳检测数据包。
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
进一步的,若所述目标注册中心判定所述目标数采节点发生故障,则所述分布式工业数据采集方法还包括:
所述目标注册中心将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点。
所述任务分配模块在接收到所述目标数采节点的故障信息时,控制所述备选数采节点接收所述目标网关机发送的数据。
进一步的,在所述任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,若所述目标注册中心接收到所述目标数采节点的响应数据包,则所述分布式工业数据采集方法还包括:
所述目标注册中心判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块。
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
以上结合具体实施方式和范例性实例对本申请进行了详细说明,不过这些说明并不能理解为对本申请的限制。本领域技术人员理解,在不偏离本申请精神和范围的情况下,可以对本申请技术方案及其实施方式进行多种等价替换、修饰或改进,这些均落入本申请的范围内。本申请的保护范围以所附权利要求为准。
Claims (10)
1.一种分布式工业数据采集系统,其特征在于,包括:IOT平台、注册服务器及多组网关机;
每组网关机各对应一种通信协议,每组网关机包括一个或多个网关机,每个所述网关机用于接入一个或多个设备PLC,每个所述设备PLC用于生成多个待采集点位的生产数据,任一所述待采集点位对应一个工业设备的一个组件;
所述IOT平台中设置有任务分配模块及数据采集模块;所述注册服务器中设置有多个注册中心,每个所述注册中心对应一种通信协议;
所述数据采集模块包括多个数据采集子模块,每个所述数据采集子模块各对应一种通信协议,每个所述数据采集子模块包括多个用于连接网关机的端口以及多个用于接收网关机数据的数采节点;
所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号;
当存在一个或多个网关机接入至同种通信协议的数据采集子模块的端口时,所述任务分配模块用于根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号,并根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,然后控制目标数采节点接收所述目标网关机发送的数据;所述目标网关机为任一所述接入的网关机,所述目标数采节点的节点编号与所述目标网关机的路由编号一致;
所述任务分配模块还用于在控制所述目标数采节点接收所述目标网关机发送的数据时,发送注册信息至目标注册中心;所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心;
所述目标注册中心在接收到所述注册信息后,用于实时监测所述目标数采节点的运行状况。
2.根据权利要求1所述的分布式工业数据采集系统,其特征在于,所述任务分配模块在根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号时,用于执行以下步骤:
将所述目标网关机的网关机IP地址及网关机端口号进行拼接,获取所述目标网关机的唯一标识;
获取目标哈希值,所述目标哈希值为所述目标网关机的唯一标识对应的哈希值;
基于所述目标哈希值及所述参与数据接收的数采节点的个数,获取所述目标网关机的路由编号;所述目标网关机的路由编号为目标余数的绝对值,所述目标余数为所述目标哈希值除以所述参与数据接收的数采节点的个数所得的余数。
3.根据权利要求1所述的分布式工业数据采集系统,其特征在于,所述目标注册中心用于通过执行以下步骤,实时监测所述目标数采节点的运行状况:
向所述目标数采节点发送心跳检测数据包;
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
4.根据权利要求3所述的分布式工业数据采集系统,其特征在于,所述目标注册中心在判定所述目标数采节点发生故障时,还用于将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点;
所述任务分配模块在接收到所述目标数采节点的故障信息时,还用于控制所述备选数采节点接收所述目标网关机发送的数据。
5.根据权利要求4所述的分布式工业数据采集系统,其特征在于,在所述任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,所述目标注册中心若接收到所述目标数采节点的响应数据包,则所述目标注册中心还用于判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块;
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
6.一种分布式工业数据采集方法,其特征在于,应用于权利要求1-5任一项所述的分布式工业数据采集系统,所述分布式工业数据采集方法包括:
一个或多个网关机接入至同种通信协议的数据采集子模块的端口;
任务分配模块根据接入的网关机对应的所有待采集点位数量,确定参与数据接收的数采节点的个数以及每个所述参与数据接收的数采节点的节点编号;
任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,所述目标网关机为任一所述接入的网关机,所述任务分配模块中预先存储有每个所述网关机的网关机IP地址及网关机端口号;
所述任务分配模块控制目标数采节点接收所述目标网关机发送的数据,所述目标数采节点的节点编号与所述目标网关机的路由编号一致;
所述任务分配模块发送注册信息至目标注册中心;所述注册信息包括所述目标数采节点的节点编号与所述目标网关机的路由编号,所述目标注册中心为通信协议与所述目标网关机通信协议一致的注册中心;
所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况。
7.根据权利要求6所述的分布式工业数据采集方法,其特征在于,所述任务分配模块根据所述参与数据接收的数采节点的个数、目标网关机的网关机IP地址及网关机端口号,获取所述目标网关机的路由编号,包括:
将所述目标网关机的网关机IP地址及网关机端口号进行拼接,获取所述目标网关机的唯一标识;
获取目标哈希值,所述目标哈希值为所述目标网关机的唯一标识对应的哈希值;
基于所述目标哈希值及所述参与数据接收的数采节点的个数,获取所述目标网关机的路由编号;所述目标网关机的路由编号为目标余数的绝对值,所述目标余数为所述目标哈希值除以所述参与数据接收的数采节点的个数所得的余数。
8.根据权利要求6所述的分布式工业数据采集方法,其特征在于,所述目标注册中心在接收到所述注册信息后,实时监测所述目标数采节点的运行状况,包括:
向所述目标数采节点发送心跳检测数据包;
若未接收到所述目标数采节点的响应数据包,则判定所述目标数采节点发生故障。
9.根据权利要求8所述的分布式工业数据采集方法,其特征在于,若所述目标注册中心判定所述目标数采节点发生故障,则所述分布式工业数据采集方法还包括:
所述目标注册中心将所述目标数采节点的故障信息及备选数采节点的节点编号反馈至所述任务分配模块,所述备选数采节点为除了所述目标数采节点之外的任一个运行正常的所述参与数据接收的数采节点;
所述任务分配模块在接收到所述目标数采节点的故障信息时,控制所述备选数采节点接收所述目标网关机发送的数据。
10.根据权利要求9所述的分布式工业数据采集方法,其特征在于,在所述任务分配模块控制所述备选数采节点接收所述目标网关机发送的数据之后,若所述目标注册中心接收到所述目标数采节点的响应数据包,则所述分布式工业数据采集方法还包括:
所述目标注册中心判定所述目标数采节点恢复正常,并将所述目标数采节点恢复正常的信息发送至所述任务分配模块;
所述任务分配模块在接收到所述目标数采节点恢复正常的信息后,控制所述备选数采节点停止接收所述目标网关机发送的数据,同时控制所述目标数采节点接收所述目标网关机发送的数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110256786.3A CN112637368B (zh) | 2021-03-10 | 2021-03-10 | 分布式工业数据采集系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110256786.3A CN112637368B (zh) | 2021-03-10 | 2021-03-10 | 分布式工业数据采集系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112637368A CN112637368A (zh) | 2021-04-09 |
CN112637368B true CN112637368B (zh) | 2021-05-14 |
Family
ID=75297713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110256786.3A Active CN112637368B (zh) | 2021-03-10 | 2021-03-10 | 分布式工业数据采集系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112637368B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112988876B (zh) * | 2021-04-14 | 2023-04-07 | 济南工程职业技术学院 | 一种工业数据采集管理方法及系统 |
CN115379525A (zh) * | 2021-05-21 | 2022-11-22 | 华为技术有限公司 | 通信处理方法及相关设备 |
CN113556380A (zh) * | 2021-06-07 | 2021-10-26 | 广东东华发思特软件有限公司 | 物联网设备的边缘分布式多副本处理方法、装置及介质 |
CN113419451B (zh) * | 2021-06-29 | 2022-08-16 | 浙江邮电职业技术学院 | 一种通信网络分布式数据采集方法及系统 |
CN113504881B (zh) * | 2021-09-13 | 2021-12-24 | 飞狐信息技术(天津)有限公司 | 热点数据的处理方法、客户端、目标计算设备及装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126346A (zh) * | 2016-07-05 | 2016-11-16 | 东北大学 | 一种大规模分布式数据采集系统及方法 |
CN106899470A (zh) * | 2015-12-17 | 2017-06-27 | 南京南瑞继保电气有限公司 | 一种数据采集网络架构及规划方法 |
CN109120688A (zh) * | 2018-08-10 | 2019-01-01 | 北京天安智慧信息技术有限公司 | 用于工业实时数据的分布式采集方法 |
CN109407643A (zh) * | 2018-12-28 | 2019-03-01 | 飞马智科信息技术股份有限公司 | 一种基于NB-IoT的工业数据采集系统 |
CN109450698A (zh) * | 2018-11-28 | 2019-03-08 | 北京星航机电装备有限公司 | 一种pc自动生产线远程运维与监控方法与系统 |
CN110099313A (zh) * | 2019-05-09 | 2019-08-06 | 山东莱钢永锋钢铁有限公司 | 一种实现低延迟工业实时数据采集系统和方法 |
CN110784398A (zh) * | 2019-11-01 | 2020-02-11 | 锱云(上海)物联网科技有限公司 | 一种工业物联网加工设备数据采集网关以及数据分析方法 |
CN111092921A (zh) * | 2018-10-24 | 2020-05-01 | 北大方正集团有限公司 | 数据采集方法、装置及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018174448A (ja) * | 2017-03-31 | 2018-11-08 | 富士通株式会社 | 通信装置、データ取得システム、データ取得制御方法 |
-
2021
- 2021-03-10 CN CN202110256786.3A patent/CN112637368B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899470A (zh) * | 2015-12-17 | 2017-06-27 | 南京南瑞继保电气有限公司 | 一种数据采集网络架构及规划方法 |
CN106126346A (zh) * | 2016-07-05 | 2016-11-16 | 东北大学 | 一种大规模分布式数据采集系统及方法 |
CN109120688A (zh) * | 2018-08-10 | 2019-01-01 | 北京天安智慧信息技术有限公司 | 用于工业实时数据的分布式采集方法 |
CN111092921A (zh) * | 2018-10-24 | 2020-05-01 | 北大方正集团有限公司 | 数据采集方法、装置及存储介质 |
CN109450698A (zh) * | 2018-11-28 | 2019-03-08 | 北京星航机电装备有限公司 | 一种pc自动生产线远程运维与监控方法与系统 |
CN109407643A (zh) * | 2018-12-28 | 2019-03-01 | 飞马智科信息技术股份有限公司 | 一种基于NB-IoT的工业数据采集系统 |
CN110099313A (zh) * | 2019-05-09 | 2019-08-06 | 山东莱钢永锋钢铁有限公司 | 一种实现低延迟工业实时数据采集系统和方法 |
CN110784398A (zh) * | 2019-11-01 | 2020-02-11 | 锱云(上海)物联网科技有限公司 | 一种工业物联网加工设备数据采集网关以及数据分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN112637368A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112637368B (zh) | 分布式工业数据采集系统及方法 | |
CN109104349B (zh) | 基于CANopen协议的列车网络数据传输方法、系统及其装置 | |
CN102355366B (zh) | 堆叠分裂时管理堆叠成员设备的方法和堆叠成员设备 | |
CN105227385B (zh) | 一种故障处理的方法及系统 | |
CN101965691B (zh) | 电缆冗余以及联网系统 | |
US10313201B2 (en) | Modular control device of an industrial automation system, and method for configuring the modular control device | |
CN104243205A (zh) | 一种虚拟交换机故障时的报文处理方法和设备 | |
CN105634848B (zh) | 一种虚拟路由器监控方法及装置 | |
CN109286525B (zh) | 一种基于mqtt通讯和主备之间心跳的双机备份方法 | |
US10890901B2 (en) | Control unit and method for operating an industrial automation system communication network comprising a plurality of communication devices | |
CN109104325B (zh) | 基于CANopen协议的列车网络数据传输方法、系统及其装置 | |
CN108234623B (zh) | 配网主站数据采集链路自动均衡管理方法 | |
JP3293719B2 (ja) | ネットワーク管理システム | |
EP3691207A1 (de) | Verfahren zum betrieb eines kommunikationssystems mit redundanten routern und router | |
CN114221882A (zh) | 故障链路检测方法、装置、设备和存储介质 | |
CN114615571A (zh) | 一种olt网元监测设备、监测系统和管理方法 | |
JP3914072B2 (ja) | ネットワーク障害監視方法、通信システムおよび回線切替装置 | |
JP2006319683A (ja) | ネットワークシステム監視方式およびネットワークシステム監視装置 | |
CN110971467A (zh) | 一种网络集中化管理系统 | |
JP7318021B2 (ja) | 変電所自動化システムにおける装置に関するケーブル配線問題を検出及び軽減するための方法及びシステム | |
JP2020061717A (ja) | 異常要因判定装置、制御システム、および異常要因判定方法 | |
CN104754762A (zh) | 软件自定义网络中自动发现控制器的方法、控制器及系统 | |
CN113708967B (zh) | 一种系统监测容灾预警装置及预警方法 | |
KR20050076406A (ko) | 통신 관리 네트워크에서 네트워크 소자에 대한 관리시스템 및 그 관리 방법 | |
CN109274516B (zh) | 一种扩展网桥及其上线控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |