一种多源异构工业协议报文解析方法、系统、设备及介质

文档序号:30954955发布日期:2022-07-30 09:28阅读:155来源:国知局
一种多源异构工业协议报文解析方法、系统、设备及介质

1.本发明属于工业互联网技术领域,尤其涉及一种多源异构工业协议报文解析方法、系统、设备及介质。


背景技术:

2.工业互联网在工业领域的推进过程中,多源设备和异构协议接入问题是阻碍进一步推进工业互联网产业化和市场化不利因素。由于工业界plc品牌有西门子(siemens)、施耐德(schneider)、欧姆龙(omron)、三菱(mitsubishi)、霍尼韦尔(honeywell)、松下(panasonic)、罗克韦尔(rockwell)、艾默生(emerson)等,每个品牌的通讯接口种类繁多,通讯协议从几种到十几种不等。工业通讯领域常用物理通讯接口有rj11、mini din、db9、db25、db37等,物理层接口标准有rs232、rs422、rs485和rj45等,多源异构工业协议报文解析问题是工业互联网数据采集和数据存储的重要难点。
3.产业界常用解析方式是基于第三方工业互联网网关的接入方式,即利用网关硬件在本地实现对物理层和数据链路层工业设备的数据采集和数据解析,然后转换为物联网协议数据上传至工业互联网平台。由于工业协议报文栈深不同、有效数据位不明、校验方式不同,工业现场环境复杂和工业协议多源异构的特性,这些解决方案在具体实施时需要大量的人工设置和操作,不能解决工业互联网大规模工业协议的接入和解析问题。
4.通过上述分析,现有技术存在的问题及缺陷为:工业通讯接口和通讯标准种类繁多、多源异构工业协议解析工作量大、现有报文解析解决方案不适应工业互联网接入需求,极大增加了工业设备上云难度。


技术实现要素:

5.针对现有技术存在的问题,本发明提供了一种多源异构工业协议报文解析方法、系统、设备及介质。
6.本发明是这样实现的,一种多源异构工业协议报文解析方法,所述多源异构工业协议报文解析方法首先通过终端管理模块提供的可视化界面管理输入终端信息,添加工业设备地址、id、协议和数据解析脚本信息;接收到工业协议报文输入后,由预处理模块去除无效报文、根据输入终端上传的地址和标签查询设备对应工业协议名称和设备id,提交至协议匹配模块,报文则输出至报文解析模块;协议匹配模块根据预处理模块提交的工业协议名称和设备id,在协议解析脚本数据库中获取解析脚本,并在关系数据库中查询对应id工业设备数据结构,将数据递交给报文解析模块;报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
7.进一步,所述多源异构工业协议报文解析方法具体包括以下步骤:
8.步骤一,在终端管理模块编辑数据采集终端和工业设备相关信息;
9.步骤二,物理层工业数据采集终端上传的协议报文到达所在中间件后,通过预处
理模块去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块;
10.步骤三,协议匹配模块根据预处理模块提交的数据,获取解析脚本和设备数据结构,将数据递交给报文解析模块;
11.步骤四,报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
12.进一步,所述步骤一中通过终端管理模块编辑数据采集终端和工业设备相关信息具体过程为:在终端管理模块的可视化界面中新增和编辑数据采集终端信息及所属工业设备地址、id、协议和数据解析脚本信息。
13.进一步,所述步骤二中通过预处理模块去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块具体过程为:首先判断报文栈长度,根据工业现场总线协议的共性将报文栈深度小于10的协议视为无效协议加以剔除;然后根据输入终端上传的地址和标签查询设备对应工业协议名称和设备id,提交至协议匹配模块,报文则输出至报文解析模块。
14.进一步,所述步骤三中通过协议匹配模块根据预处理模块提交的数据,获取解析脚本和设备数据结构,将数据递交给报文解析模块具体过程为:协议匹配模块根据预处理模块提交的工业协议名称和设备id,在协议解析脚本数据库中获取协议解析脚本,并在关系数据库中查询对应id工业设备数据结构,将这些数据递交给报文解析模块。
15.进一步,所述步骤四中报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库具体过程为:在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
16.本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行所述多源异构工业协议报文解析方法的步骤。
17.本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述多源异构工业协议报文解析方法的步骤。
18.本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于实现所述多源异构工业协议报文解析方法的步骤。
19.本发明的另一目的在于提供一种实施所述多源异构工业协议报文解析方法的多源异构工业协议报文解析系统,所述多源异构工业协议报文解析系统包括:
20.终端管理模块,用以管理和编辑数据采集终端信息及所属工业设备地址、id、协议和数据解析脚本信息;
21.预处理模块,用以接收工业数据采集终端上传的协议报文,去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块;
22.协议匹配模块,接收预处理模块提交的数据,获取解析脚本和设备数据结构,将这些数据递交给报文解析模块;
23.报文解析模块,用以在脚本引擎中运行协议匹配模块输出的脚本以解析输入报
文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
24.结合上述的技术方案和解决的技术问题,请从以下几方面分析本发明所要保护的技术方案所具备的优点及积极效果为:
25.第一、针对上述现有技术存在的技术问题以及解决该问题的难度,紧密结合本发明的所要保护的技术方案以及研发过程中结果和数据等,详细、深刻地分析本发明技术方案如何解决的技术问题,解决问题之后带来的一些具备创造性的技术效果。具体描述如下:本发明实现设备类型自定义、报文解析自定义、报文数据结构自定义等功能。剔除无效数据、查询工业设备报文解析所需的解析脚本和数据结构,为后续步骤提供数据支持。获取解析脚本和设备数据结构,为报文解析提供支撑。对输入报文进行解析和存储,完成多源异构工业协议报文的解析流程。
26.本发明针对工业互联网领域工业协议解析过程中实际存在的问题,旨在简化工业互联网报文解析和数据格式化流程,提高大规模工业设备接入的效率。
27.第二,把技术方案看做一个整体或者从产品的角度,本发明所要保护的技术方案具备的技术效果和优点,具体描述如下:
28.本发明针对现有工业互联网报文解析和数据格式化应用场景,实现工业协议报文自定义解析和数据格式化,旨在简化工业互联网报文解析和数据格式化流程,完善工业互联网入网上云体系。
29.第三,作为本发明的权利要求的创造性辅助证据,还体现在以下几个重要方面:
30.(1)本发明的技术方案转化后的预期收益和商业价值为:本发明解决了国内工业互联网商业领域普遍存在的工业协议报文解析问题,为大规模商用工业互联网设备接入提供技术支持。
31.(2)本发明的技术方案填补了国内外业内技术空白:国内外工业协议报文解析多使用工业数据采集终端的解决方案,本发明填补了工业互联网自定义协议报文解析和数据格式化技术的空白。
32.(3)本发明的技术方案解决了人们一直渴望解决、但始终未能获得成功的技术难题:本发明解决了工业多源异构协议的大规模报文解析和数据格式化问题,扫清了工业互联网战略推进的障碍,加快我国工业智能化转型升级进程。
33.(4)本发明的技术方案是否克服了技术偏见:本发明将科研界的算法理论与产业界实际的生产技术需求相结合,克服了技术偏见。
附图说明
34.图1是本发明实施例提供的多源异构工业协议报文解析方法流程图;
35.图2是本发明实施例提供的多源异构工业协议报文解析方法的实现流程图;
36.图3是本发明实施例提供的多源异构工业协议报文解析系统的结构示意图;
37.图4是本发明实施例提供的终端管理过程示意图;
38.图5是本发明实施例提供的预处理过程示意图;
39.图6是本发明实施例提供的协议匹配过程示意图;
40.图7是本发明实施例提供的报文解析过程示意图;
41.图8是本发明实施例提供的终端管理模块终端管理可视化界面展示图;
42.图9是本发明实施例提供的终端管理模块设备管理可视化界面展示图。
具体实施方式
43.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
44.一、解释说明实施例。为了使本领域技术人员充分了解本发明如何具体实现,该部分是对权利要求技术方案进行展开说明的解释说明实施例。
45.如图1所示,本发明实施例提供的多源异构工业协议报文解析方法包括以下步骤:
46.s101:通过终端管理模块提供的可视化界面管理输入终端信息,添加工业设备地址、id、协议和数据解析脚本等信息;
47.s102:接收到工业协议报文输入后,由预处理模块去除无效报文、根据输入终端上传的地址和标签查询设备对应工业协议名称和设备id,提交至协议匹配模块,报文则输出至报文解析模块;
48.s103:协议匹配模块根据预处理模块提交的工业协议名称和设备id,在协议解析脚本数据库中获取解析脚本,并在关系数据库中查询对应id工业设备数据结构,将这些数据递交给报文解析模块;
49.s104:报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
50.如图3所示,本发明实施例提供的多源异构工业协议报文解析系统包括:
51.终端管理模块,用以管理和编辑数据采集终端信息及所属工业设备地址、id、协议和数据解析脚本等信息。
52.预处理模块,用以接收工业数据采集终端上传的协议报文,去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块。
53.协议匹配模块,接收预处理模块提交的数据,获取解析脚本和设备数据结构,将这些数据递交给报文解析模块。
54.报文解析模块,用以在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
55.本发明实施例提供的终端管理模块提供管理和编辑数据采集终端信息的机制,如表1、图4所示。终端管理模块的主要功能数据采集终端信息管理。
56.表1数据采集终端信息管理
[0057][0058]
终端管理模块管理数据采集终端信息及所属工业设备地址、id、协议和数据解析脚本等信息,生成关系模型数据存入关系型数据库。
[0059]
本发明实施例提供的预处理模块提供无效报文剔除与报文协议查询机制,如表2、图5所示。预处理模块的主要功能处理原始报文数据集,生成带协议名称和设备id等标签的
数据集。
[0060]
表2无效报文剔除与报文协议查询
[0061]
模块名称输入输出备注预处理模块原始报文数据集标签数据集 [0062]
预处理模块接收工业数据采集终端上传的协议报文,去除报文栈深小于10的无效报文,在关系数据库中根据输入的终端ip和设备地址查询上传报文的终端id、设备id、工业协议名称等信息并生成与报文数据集中该报文对应的报文编号,将这些信息封装为标签数据集提交至协议匹配模块,处理过的报文数据集输出至报文解析模块。
[0063]
本发明实施例提供的协议匹配模块提供设备解析脚本查询和设备数据结构查询机制,如表3、图6所示。协议匹配模块的主要功能根据输入协议标签名称和设备id查询该设备对应的解析脚本和数据结构。
[0064]
表3设备解析脚本查询和设备数据结构查询
[0065][0066]
协议匹配模块根据预处理模块提交的工业协议名称和设备id等标签,在协议解析脚本数据库中获取协议解析脚本,封装为以终端为单位的设备解析脚本的数据集,并在关系数据库中查询对应设备id设备的各传感器数据类型、数据长度等数据结构,将这些数据递交给报文解析模块。
[0067]
本发明实施例提供的报文解析模块提供报文解析和数据格式化机制,如表4、图7所示。报文解析模块的主要功能运行设备解析脚本解析和格式化报文。
[0068]
表4报文解析和数据格式化
[0069][0070]
报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
[0071]
如图3所示,本发明实施例提供的多源异构工业协议报文解析方法包括以下步骤:
[0072]
步骤一,在终端管理模块编辑数据采集终端和工业设备相关信息。本步骤实现设备类型自定义、报文解析自定义、报文数据结构自定义等功能。
[0073]
步骤二,物理层工业数据采集终端上传的协议报文到达所在中间件后,通过预处理模块去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块。本步骤剔除无效数据、查询工业设备报文解析所需的解析脚本和数据结构,为后续步骤提供数据支持。
[0074]
步骤三,协议匹配模块根据预处理模块提交的数据,获取解析脚本和设备数据结构,将这些数据递交给报文解析模块。本步骤获取解析脚本和设备数据结构,为报文解析提
供支撑。
[0075]
步骤四,报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。本步骤对输入报文进行解析和存储,完成多源异构工业协议报文的解析流程。
[0076]
进一步,所述步骤一中,通过终端管理模块编辑数据采集终端和工业设备相关信息具体过程为:
[0077]
在终端管理模块的可视化界面中新增和编辑数据采集终端信息及所属工业设备地址、id、协议和数据解析脚本等信息。
[0078]
进一步,所述步骤二中,通过预处理模块去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块具体过程为:
[0079]
首先判断报文栈长度,根据工业现场总线协议的共性将报文栈深度小于10的协议视为无效协议加以剔除;然后根据输入终端上传的地址和标签查询设备对应工业协议名称和设备id,提交至协议匹配模块,报文则输出至报文解析模块。
[0080]
进一步,所述步骤三中,通过协议匹配模块根据预处理模块提交的数据,获取解析脚本和设备数据结构,将这些数据递交给报文解析模块具体过程为:
[0081]
协议匹配模块根据预处理模块提交的工业协议名称和设备id,在协议解析脚本数据库中获取协议解析脚本,并在关系数据库中查询对应id工业设备数据结构,将这些数据递交给报文解析模块。
[0082]
进一步,所述步骤四中,报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库具体过程为:
[0083]
在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
[0084]
二、应用实施例。为了证明本发明的技术方案的创造性和技术价值,该部分是对权利要求技术方案进行具体产品上或相关技术上的应用实施例。
[0085]
本发明实施例提供的一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:步骤一,在终端管理模块编辑数据采集终端和工业设备相关信息。步骤二,物理层工业数据采集终端上传的协议报文到达所在中间件后,通过预处理模块去除无效报文,查询报文对应工业协议名称提交至协议匹配模块,报文输出至报文解析模块。步骤三,协议匹配模块根据预处理模块提交的数据,获取解析脚本和设备数据结构,将这些数据递交给报文解析模块。步骤四,报文解析模块在脚本引擎中运行协议匹配模块输出的脚本以解析输入报文,根据协议匹配模块输出的数据结构格式化解析出的报文数据并存入非关系型数据库。
[0086]
三、实施例相关效果的证据。本发明实施例在研发或者使用过程中取得了一些积极效果,和现有技术相比的确具备很大的优势,下面内容结合试验过程的数据、图表等进行描述。
[0087]
终端管理模块通过可视化界面实现数据采集终端信息管理,图8所示为工业互联网平台终端管理实际运行界面,实现了数据采集终端在工业互联网平台上网关号、终端id、
所属工业设备等信息的自定义管理;如图9所示为工业互联网平台设备管理实际运行界面,实现了终端所属设备的设备id、数据结构、解析脚本、设备应答指令等信息的自定义管理。
[0088]
预处理模块输入原始报文数据集,输出剔除无效报文的报文数据集和标签数据集,数据结构如下:
[0089]
预处理模块数据结构
[0090][0091][0092]
协议匹配模块根据标签数据集查询对应设备的解析脚本和设备数据结构,数据结构如下:
[0093]
协议匹配模块数据结构
[0094][0095]
报文解析模块使用脚本引擎实现对终端管理模块添加脚本的读取和运行,具有模块化和平台无关的特点,相对于已存在的报文解析解决方案,在平台应用层通过可视化界面使用户可以通过前端语言自定义包括报文格式提取、报文数据解析、报文数据类型转换、数据计算在内的报文解析流程。
[0096]
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。
硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、cd或dvd-rom的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
[0097]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1