一种面向多冗余工业控制器的数据采集方法和装置与流程

文档序号:38259265发布日期:2024-06-12 23:08阅读:10来源:国知局
一种面向多冗余工业控制器的数据采集方法和装置与流程

本发明属于工业控制系统及计算机网络,具体涉及一种面向多冗余工业控制器的数据采集方法和装置。


背景技术:

1、在现代工业控制系统中,随着it技术与ot技术的深度融合,数据采集已经成为确保系统高效运行和实时监测的关键环节,对于多冗余工业控制系统而言,这种需求更为突出。

2、多冗余工业控制系统设计的主要目的是确保在某个部分发生故障时,其他部分能够继续执行任务,从而保证整体系统的稳定性和可靠性。在多冗余工业控制系统中,数据服务系统连接多个控制站,每一个控制站内又包含多个冗余工业控制器。其中,控制站是指集成了控制、检测和管理功能的站点,用于执行和协调各种控制任务,其中包括工业控制器、通讯模块、io模块、传感器和执行器等。多冗余工业控制器则是通过配置一个控制器作为主控制器,其他控制器作为备用控制器,在正常情况下,主控制器与网络中所有的i/o设备建立“主连接”,进行数据交换和输出/输出刷新,备用控制器与网络中所有的i/o设备建立“备用连接”,但不会输出有效数据到i/o设备中,也不能对i/o设备进行任何修改,主控制器与备用控制器之间保持一种同步状态。数据服务系统则是提供了数据处理和交互的接口,用于封装系统运行的关键数据,需要通过接口或多种机制实现数据的存储和读取。

3、随着工业自动化水平的提高,对于多冗余工业控制器的实时数据采集需求也日益增加。然而,当前的数据采集方法可能受到一些限制,例如:

4、(1)对多个冗余工业控制器的适应性较差,常规的数据服务系统针对多个冗余工业控制器的数据接收存在着重复读取,重复存储的操作;

5、(2)数据采集效率低,常规的数据服务系统采用数据库存储的方式对数据进行存储,针对毫秒(ms)级的工业数据效率略显低下,并且常规的工业数据服务系统单一的数据解析方式,在某些情况下也可能导致采集效率变低;

6、(3)数据传输的安全性上存在威胁,现在常见的工业串口通信的数据传输的协议,如:modbus,dnp3,ethercat等,在安全性上也略显不足,缺乏加密通信,特别是针对多个冗余工业控制器,不能做到很好的动态防御,分类加解密。

7、因此,需要研发更为先进的数据采集技术以克服现有技术的限制和挑战,提高其对多冗余工业控制器的适应性、数据采集效率以及数据传输的安全性。


技术实现思路

1、鉴于上述,本发明的目的是提供一种面向多冗余工业控制器的数据采集方法和装置,通过构建基于udp的私有通讯协议以及针对多冗余工业控制器的收发存储机制,提高数据存储与读取的效率,并增加通信的安全性,适用于多冗余工业控制器的高效数据采集应用场景。

2、为实现上述发明目的,本发明提供的技术方案如下:

3、第一方面,本发明实施例提供的一种面向多冗余工业控制器的数据采集方法,包括以下步骤:

4、对数据服务系统进行初始化,并将初始化数据存入缓存中;

5、通过初始化后的数据服务系统向各冗余工业控制器发送探测包并进行包号同步建立通讯;

6、通过udp服务端口将各冗余工业控制器的数据包发送至数据服务系统,数据服务系统对数据包进行协议验证和解析后向各冗余工业控制器发送解析回复包;

7、将数据服务系统对数据包解析后的数据放入缓存中分类存储。

8、优选地,所述对数据服务系统进行初始化,并将初始化数据存入缓存中,包括:

9、在数据服务系统启动前,先进行初始化,初始化包括:对各冗余工业控制器报文加密所使用的秘钥池进行初始化处理,对各冗余工业控制器数据完整性校验所使用的校验池进行初始化处理,对需要采集的位号数据进行初始化处理,以及对控制站与各冗余工业控制器ip的映射关系进行初始化处理;

10、将包括秘钥池、校验池、位号数据和映射关系的初始化处理数据存入数据服务系统的缓存中。

11、优选地,在将初始化处理数据存入数据服务系统的缓存中时,按照控制站进行分类,根据控制站id进行哈希映射存储包括动态秘钥池和动态校验池的加解密结构,根据控制站id进行哈希映射存储相应的多个位号数据组成的位号数据组,在位号数据组中采用哈希映射建立位号序号与位号数据对应寻址,通过位号序号找到对应位号数据的缓存。

12、优选地,所述通过初始化后的数据服务系统向各冗余工业控制器发送探测包并进行包号同步建立通讯,包括:

13、在数据服务系统完成初始化后,向各冗余工业控制器分别发送加密报文的探测包,数据服务系统在接收到探测回复包后通过各冗余工业控制器的ip进行回复包确认,并执行各冗余工业控制器包号同步操作,在数据服务系统与各冗余工业控制器之间建立通讯。

14、优选地,所述数据服务系统对数据包进行协议验证和解析后向各冗余工业控制器发送解析回复包,包括:

15、数据服务系统在接收到各冗余工业控制器上送的数据包后,通过ip映射控制站id、包长校验、错误包校验、秘钥及校验码获取、解密校验、数据校验、数据包类型判断、包号校验和冗余包过滤的协议验证操作后,对保留的数据包进行包内消息体解析的解析操作,并发送解析回复包至各冗余工业控制器,各冗余工业控制器在接收到解析回复包后进行包号同步操作。

16、优选地,数据服务系统对数据包的解析,包括:

17、解析获取数据包中的子命令数量;

18、判断数据包中每个子命令对应的数据类型,判断为连续数据则执行连续数据处理,判断为离散数据则执行离散数据处理,直至所有子命令均完成处理。

19、优选地,所述将数据服务系统对数据包解析后的数据放入缓存中分类存储,包括:

20、根据连续数据或离散数据的类型进行相应的数据寻址,将处理后的数据存入数据服务系统中对应的缓存中进行存储;

21、其中,对于连续数据的存储,包括:通过缓存中的位号序号通过函数映射计算出对应的数据地址,通过地址偏移量计算寻址到连续数据中的具体数据,然后利用位号序号通过哈希函数寻址定位到缓存中的存储块,将连续数据中需要存储的数据存储到相应的存储块中;

22、其中,对于离散数据的存储,包括:将离散数据的地址通过函数映射转换为缓存中对应的位号序号,利用位号序号在缓存中通过哈希函数寻址定位到缓存中的存储块,将离散数据中需要存储的数据存储到相应的存储块中。

23、第二方面,本发明实施例还提供了一种面向多冗余工业控制器的数据采集装置,包括:系统初始化模块、通讯初始化模块、数据采集模块和数据存储模块;

24、所述系统初始化模块用于对数据服务系统进行初始化,并将初始化数据存入缓存中;

25、所述通讯初始化模块用于通过初始化后的数据服务系统向各冗余工业控制器发送探测包并进行包号同步建立通讯;

26、所述数据采集模块用于通过udp服务端口将各冗余工业控制器的数据包发送至数据服务系统,数据服务系统对数据包进行协议验证和解析后向各冗余工业控制器发送解析回复包;

27、所述数据存储模块用于将数据服务系统对数据包解析后的数据放入缓存中分类存储。

28、第三方面,本发明实施例还提供了一种面向多冗余工业控制器的数据采集设备,包括存储器和一种或多种处理器,所述存储器用于存储计算机程序,所述处理器用于当执行所述计算机程序时,实现第一方面本发明实施例提供的面向多冗余工业控制器的数据采集方法。

29、第四方面,本发明实施例还提供了一种计算机可读的存储介质,所述存储介质上存储有计算机程序,所述计算机程序使用计算机时,实现第一方面本发明实施例提供的面向多冗余工业控制器的数据采集方法。

30、与现有技术相比,本发明具有的有益效果至少包括:

31、本发明面向多冗余工业控制器的工业场景,采用基于udp的私有通讯协议,采用了动态的加密形式以及多种数据校验、冗余校验机制确保传输的安全性,同时采用了能够高效区分不同控制站指令以及快速寻址存储的方式,实现高效地数据采集和分类存储,能有效地提高对多个冗余控制器的适应性、数据采集效率以及数据传输的安全性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1