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

一种用于现场设备的OPCUA动态部署方法

2023-05-10 21:11:16 来源:中国专利 TAG:

一种用于现场设备的opc ua动态部署方法
技术领域
1.本发明属于工业控制技术领域,具体涉及一种用于现场设备的opc ua动态部署方法。


背景技术:

2.在工业控制领域,自动化系统通过使用传感器和驱动器与真实的物理世界互动。自动控制的任务由可编程控制器执行,而一些上位机设备用于人工监督。尽管控制器和上位机设备之间的通信通常基于最先进的协议栈,但与现场设备的连接通常仍基于现场总线系统。这导致在自动化系统的不同部分之间使用网关,这就有着信息丢失的风险。
3.opc ua协议为解决现场设备通信统一化问题的一项合适的技术,但当现场嵌入式设备的代码容量很小时,opc ua技术的开发应用就变得很困难。并且,在现场设备的部署中,当信息模型发生改变时,常常需要重新编译并下载程序,这导致了现场设备中opc ua客户端服务端部署困难。
4.故,针对现有技术存在的技术缺陷,实有必要提出一种技术方案以解决现有技术存在的技术问题。


技术实现要素:

5.本发明的目的在于克服现有技术的不足,适应实际应用需要,提供一种用于现场设备的opc ua动态部署方法,能够在上位机编译平台定义或更改变量,自动生成或更新opc ua服务端中的节点,从而完成从可编程控制器plc到现场设备的地址映射与通信,简化现场设备的opc ua服务端、客户端的部署复杂性,提高opc ua的部署效率。
6.为了解决现有技术存在的技术问题,本发明的技术方案如下:
7.一种用于现场设备的opc ua动态部署方法,至少包括以下步骤:
8.步骤s1:现场设备设置通信模块并与可编程逻辑控制器plc建立连接以按照特定通信协议进行数据传输;
9.步骤s2:上位机中按照应用需求定义现场设备的变量和程序逻辑并封装为xml格式文件;
10.步骤s3:可编程逻辑控制器plc获取步骤s2得到的xml格式文件并对其进行解析,将变量的相关信息封装成地址映射表;
11.步骤s4:根据步骤s3得到的地址映射表,在可编程逻辑控制器plc上创建opc ua服务端并添加相应节点;
12.步骤s5:根据步骤s3得到的地址映射表,可编程逻辑控制器plc与现场设备进行通信,以在现场设备中创建opc ua服务端并添加相应节点;
13.步骤s6:根据步骤s3得到的地址映射表,可编程逻辑控制器plc上创建opc ua客户端与现场设备创建通信,并监控现场设备服务端中节点;
14.步骤s7:若地址映射表节点发生变化,通过通信进行数据同步。
15.作为进一步的改进方案,步骤s7中,若地址映射表中的节点数量增加或者减少,可编程控制器plc上的opc ua服务端也增加或减少相应节点,并通过通信模块与现场设备通信,在现场设备的opc ua服务端同步节点变化;
16.若可编程控制器plc上的opc ua服务端中节点值发生变化,则通过可编程控制器plc上的opc ua客户端向现场设备的opc ua服务端发起通信,同步更新节点值的变化;
17.若现场设备的opc ua服务端中节点值发生变化,则通过可编程控制器plc上的opc ua客户端监视现场设备的opc ua服务端发生变化的节点,在可编程控制器plc的opc ua服务端上同步更新节点值的变化。
18.作为进一步的改进方案,步骤s2中,根据现场设备所需控制的变量与可编程控制器的变量通过变量定义和程序编写完成地址映射。
19.作为进一步的改进方案,步骤s3中,地址映射表至少包含,现场设备中变量的实际地址、可编程逻辑控制器plc中变量的实际地址、opcua节点变量名、节点id、节点数据类型和节点命名空间。
20.作为进一步的改进方案,可编程逻辑控制器plc与现场设备通信至少包括:
21.按照约定的协议生成并发送帧格式的数据帧;
22.现场设备接收到数据帧后,解析该数据帧后,获取所要操作的节点信息,包括节点变量名、节点id、节点数据类型和节点命名空间,以及节点所绑定变量的实际地址;
23.将节点信息发送给现场设备的opc ua服务端。
24.与现有技术现场嵌入式设备的部署相比,采用本发明至少具有如下的有益效果:
25.本发明的技术方案实现从可编程控制器plc到现场设备的opc ua动态部署,能够在上位机编译平台定义或更改变量,自动生成或更新opc ua服务端中的节点,完成从可编程控制器plc到现场设备的地址映射与通信,提高opc ua的部署效率。本发明使用的自定义协议具有很好地扩展性,能够实现多个节点的同时更新的效果。
附图说明
26.图1为本发明一种用于现场设备的opc ua动态部署方法的流程框图。
27.图2为本发明实施例提供的一种用于现场设备的opc ua动态部署方法实现系统的模块组成示意图。
28.图3为本发明优选实施例提供的一种用于现场设备的opc ua动态部署方法的流程图。
29.图4为本发明实施例提供的一种用于现场设备的opc ua动态部署方法的opcua部署通信的自定义协议的数据帧格式。
具体实施方式
30.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
31.参见图1,所示为本发明一种用于现场设备的opc ua动态部署方法,至少包括以下
步骤:
32.步骤s1:现场设备设置通信模块并与可编程逻辑控制器plc建立连接以按照特定通信协议进行数据传输;
33.步骤s2:上位机中按照应用需求定义现场设备的变量和程序逻辑并封装为xml格式文件;
34.步骤s3:可编程逻辑控制器plc获取步骤s2得到的xml格式文件并对其进行解析,将变量的相关信息封装成地址映射表;
35.步骤s4:根据步骤s3得到的地址映射表,在可编程逻辑控制器plc上创建opc ua服务端并添加相应节点;
36.步骤s5:根据步骤s3得到的地址映射表,可编程逻辑控制器plc与现场设备进行通信,以在现场设备中创建opc ua服务端并添加相应节点;
37.步骤s6:根据步骤s3得到的地址映射表,可编程逻辑控制器plc上创建opc ua客户端与现场设备创建通信,并监控现场设备服务端中节点;
38.步骤s7:若地址映射表节点发生变化,通过通信进行数据同步。
39.参见图2,所示为本发明实施例提供的一种从可编程控制器到现场设备的opc ua动态部署方法实现系统的模块组成示意图,如图2所示,采用模块化设计实现本发明方法,分别部署在可编程控制器plc和现场设备上。可编程控制器plc上的模块包括xml解析模块、通信模块、opc ua客户端模块、opc ua服务端模块。其中xml解析模块解析可编程控制器程序的xml格式文件中定义的与现场设备映射的变量;通信模块将变量封装成地址映射表并根据地址映射表生成自定义协议的数据帧发送至现场设备;opc ua服务端模块用于保存与现场设备映射的变量值,并生成相应的节点;opc ua客户端模块用于与现场设备上的opc ua服务端通信,将可编程控制器上opc ua服务端的节点值变化同步到现场设备的opc ua服务端,以及监控现场设备的opc ua服务端上节点值的变化同步到可编程控制器上opc ua服务端。现场设备上的模块包括opc ua服务端模块和通信模块。其中,opc ua服务端模块用于保存现场设备上所需被控制的节点信息,通信模块用于解析可编程控制器发送的数据帧,并根据数据帧更新opc ua服务端的节点。
40.参见图3,所示为本发明提供了一种优选实施方式的流程框图其中,在步骤s1中,通过在可编程控制器plc和现场设备设置通信模块建立连接,从而能够按照特定通信协议进行数据传输,当现场设备opc ua服务端节点信息更新时,可以通过协议对节点进行更新,从而无需重新对现场设备进行编程。
41.在步骤s2中,在上位机中按照应用需求定义现场设备的变量和程序逻辑,其中,具体包括:
42.上位机中的用户在可编程控制器设备下的变量编辑区域定义现场设备中所需的变量;
43.将编好的程序封装成xml格式文件;
44.将xml格式文件发送至可编程逻辑控制器plc;
45.在步骤s3中,读取并解析可编程控制器程序的xml格式文件中定义的变量,将该变量的相关信息封装成地址映射表;
46.在步骤s4中,根据地址映射表,在可编程控制器plc上创建opc ua服务端并添加相
应节点;
47.在步骤s5中,根据地址映射表,与现场设备进行通信,在现场设备中创建opc ua服务端并添加相应节点;
48.在步骤s6中,根据地址映射表,在可编程控制器plc上创建opc ua客户端与现场设备创建通信,并监控现场设备服务端中节点;
49.在步骤s7中,若节点发生变化,则通过通信进行数据同步。
50.其中,数据同步的方法为:
51.若地址映射表中的节点数量增加或者减少,可编程控制器plc上的opc ua服务端也增加或减少相应节点,并与现场设备通信,在现场设备的opc ua服务端同步节点变化;
52.若可编程控制器plc上的opc ua服务端中节点值发生变化,则通过可编程控制器plc上的opc ua客户端向现场设备的opc ua服务端发起通信,同步节点值的变化;
53.若现场设备的opc ua服务端中节点值发生变化,则通过可编程控制器plc上的opc ua客户端监视现场设备的opc ua服务端发生变化的节点,在可编程控制器plc的opc ua服务端上同步节点值的变化;
54.进一步的,可编程控制器plc与现场设备通信的方法为:
55.对照协议生成并发送帧格式的数据帧;
56.现场设备接收到数据帧后,解析该数据帧后,获取所要操作的节点信息,包括节点变量名、节点id、节点数据类型和节点命名空间,以及节点所绑定变量的实际地址;
57.将节点信息发送给现场设备的opc ua服务端;
58.进一步的,协议为opcua部署通信的自定义协议,该协议具有很好的拓展性,能够实现多个节点的同时更新。
59.进一步的,步骤s2中,根据现场设备所需控制的变量与可编程控制器的变量通过变量定义和程序编写完成地址映射;
60.进一步的,步骤s3中,地址映射表包含,现场设备中变量的实际地址、可编程逻辑控制器plc中变量的实际地址、opcua节点变量名、节点id、节点数据类型和节点命名空间;
61.具体的,如图4所示,opcua部署通信的自定义协议的数据帧格式为5nbyte(n为正整数),依次为:开始符2byte、数据帧编号1byte,节点实际地址4byte,节点类型1byte,节点id 10byte,crc校验2byte。其中,节点类型的值为节点字节大小,若想要同时更改或添加多个节点,则按次序防止节点实际地址、节点类型和节点id的字节流,最后加上crc校验码。
62.应当理解,本文所述的示例性实施例是说明性的而非限制性的。尽管结合附图描述了本发明的一个或多个实施例,本领域普通技术人员应当理解,在不脱离通过所附权利要求所限定的本发明的精神和范围的情况下,可以做出各种形式和细节的改变。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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