CN111580869B - 基于opc ua的数据通信方法及系统 - Google Patents
基于opc ua的数据通信方法及系统 Download PDFInfo
- Publication number
- CN111580869B CN111580869B CN202010219153.0A CN202010219153A CN111580869B CN 111580869 B CN111580869 B CN 111580869B CN 202010219153 A CN202010219153 A CN 202010219153A CN 111580869 B CN111580869 B CN 111580869B
- Authority
- CN
- China
- Prior art keywords
- opc
- configuration
- server
- acquisition
- configuration information
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- 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/23—Updating
- G06F16/2379—Updates performed during online database operations; commit processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
- G06F9/44526—Plug-ins; Add-ons
-
- 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/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及一种基于OPC UA的数据通信方法及系统,所述方法包括:配置客户端响应于可视化界面中的配置更新指令,发送更新的客户端配置信息至配置服务端;配置服务端根据更新的客户端配置信息,生成OPC UA配置信息以及采集服务配置信息;配置服务端发送OPC UA配置信息至OPC UA服务端;以及发送采集服务配置信息至采集服务端;OPC UA服务端根据OPC UA配置信息,生成OPC UA信息模型;采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据;并发送采集数据至OPC UA服务端;所述配置客户端可以通过OPC UA服务端统一访问采集数据。
Description
技术领域
本公开涉及自动化控制技术领域,尤其涉及一种基于OPC UA的数据通信方法及系统。
背景技术
当前,大多数的厂商对工厂数据的管理只是停留在可视化看板层面,而且,通过某个系统采集的缺陷问题只是停留在某个系统之中,如管理者没有及时关注,不能快速的对问题做出响应,即管理者不能对异构系统进行统一管理,以及现有的提供统一访问的技术在更新时都需要重启,影响实时生产过程。
另外,在生产过程中产品质量问题数据和工艺过程数据没能进行存档,还停留在发生问题处理问题阶段。
发明内容
有鉴于此,本公开提出了一种基于OPC UA的数据通信方法及系统。
根据本公开的一方面,提供了一种基于OPC UA的数据通信方法,所述方法包括:
配置客户端响应于可视化界面中的配置更新指令,发送更新的客户端配置信息至配置服务端;
所述配置服务端根据所述更新的客户端配置信息,生成OPC UA配置信息以及采集服务配置信息;
所述配置服务端发送所述OPC UA配置信息至OPC UA服务端;以及发送所述采集服务配置信息至所述采集服务端;
所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型;
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据;并发送所述采集数据至所述OPC UA服务端;
所述OPC UA服务端根据所述OPC UA信息模型,将所述采集数据存储到对应的地址空间;
所述配置客户端发送数据请求信息或数据订阅信息至所述OPC UA服务端以获取所述采集数据。
在一种可能的实现方式中,所述OPC UA配置信息包括节点树形结构信息和映射配置信息;
所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型,包括:
所述OPC UA服务端根据所述节点树形结构信息,生成OPC UA地址空间;
所述OPC UA服务端根据所述映射配置信息,生成异构数据与所述OPCUA地址空间的映射关系;
将所述OPC UA地址空间和所述异构数据与所述OPC UA地址空间的映射关系作为所述OPC UA信息模型。
在一种可能的实现方式中,所述采集服务配置信息包括驱动配置信息和采集配置信息;
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据,包括:
所述采集服务端根据所述驱动配置信息,生成采集驱动;
所述采集服务端根据所述采集配置信息,配置采集点。
根据所述采集驱动和所述采集点,进行数据采集,得到采集数据。
在一种可能的实现方式中,所述采集驱动为插件形式。
在一种可能的实现方式中,所述方法还包括:
所述配置服务端响应所述配置客户端的客户端配置请求,发送客户端初始配置信息至所述配置客户端;
所述配置客户端根据所述客户端初始配置信息,在所述配置客户端的可视化界面中生成节点树形结构;
在一种可能的实现方式中,所述配置更新指令包括以下中至少一种:
节点的更新指令、映射配置信息更新指令、驱动配置信息更新指令、采集配置信息更新指令。
在一种可能的实现方式中,所述方法还包括:
所述配置服务端根据所述更新的客户端配置信息,获取更新的节点树形结构;
根据所述更新的节点树形结构,更新数据库中的节点关系表。
在一种可能的实现方式中,所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据,包括:
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到实时数据;
所述采集服务端对所述实时数据进行处理,得到所述采集数据。
在一种可能的实现方式中,所述配置服务端、所述OPC UA服务端、所述配置客户端和所述采集服务端之间通过远程过程调用RPC进行通信。
在一种可能的实现方式中,所述采集服务配置信息包括采集数据的故障类别。
根据本公开的另一方面,提供了一种基于OPC UA的数据通信系统,所述系统包括:
配置客户端用于响应于可视化界面中的配置更新指令,发送更新的客户端配置信息至配置服务端;所述配置客户端还用于发送数据请求信息或数据订阅信息至所述OPC UA服务端以获取所述采集数据;
所述配置服务端用于根据所述更新的客户端配置信息,生成OPC UA配置信息以及采集服务配置信息;所述配置服务端还用于发送所述OPC UA配置信息至OPC UA服务端;以及发送所述采集服务配置信息至所述采集服务端;
所述采集服务端用于根据所述采集服务配置信息,进行数据采集,得到采集数据;并发送所述采集数据至所述OPC UA服务端;
所述OPC UA服务端用于根据所述OPC UA配置信息,生成OPC UA信息模型;所述OPCUA服务端还用于根据所述OPC UA信息模型,将所述采集数据存储到对应的地址空间。
通过OPC UA服务端对各异构系统的采集数据的发布,可以实现OPC UA服务端提供对异构数据的统一访问,使得管理者通过所述配置客户端就可以及时获取各类异构系统的数据,能够及时发现并获取生产过程中的各异构系统的采集数据,避免问题停留在某个系统,实现对各异构系统问题的高效响应;
另外,通过使管理者可以在所述配置客户端进行可视化操作,使得管理者能够方便快捷并精准地实现对OPC UA信息模型以及采集服务端的配置,实现根据配置信息的更新动态生成OPC UA信息模型和采集服务配置信息,并且在配置更新后,所述OPC UA服务端不需要重启即可实现配置更新,保证了OPC UA服务的连续性,不会影响工厂的实时生产。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。
图2示出根据本公开一实施例的所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型的方法流程图。
图3示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。
图4示出根据本公开一实施例的可视化的节点树形结构示意图。
图5示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。
图6示出根据本公开一实施例的所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据的方法流程图。
图7示出根据本公开一实施例的所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据的方法流程图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
图1示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。如图1所述,所述方法可以包括以下步骤:
S11,配置客户端响应于可视化界面中的配置更新指令,发送更新的客户端配置信息至配置服务端。
所述客户端配置信息可以包括OPC UA(OLE for Process Control UnifiedArchitecture,OPC统一架构)统一访问配置信息以及节点树形结构信息,还可以包括采集服务配置信息和OPC UA配置信息。其中,所述节点树形结构信息可以包括节点树形结构,所述节点树形结构可以是指接入所述OPC UA服务器的各种异构设备、数据等所形成的地址空间。其中,所述OPC UA统一访问配置信息可以用于所述配置客户端对所述IPC UA服务端的访问。
在本说明书实施例中,所述配置客户端可以提供人机交互的可视化界面,使得所述配置客户端的用户可以在所述可视化界面中对所述客户端配置信息进行可视化配置操作,例如,增加节点、删除节点、修改采集驱动配置信息等。例如,所述配置客户端的用户可以在所述可视化界面中的节点树形结构中,通过右击某一个节点进行删除、查询等操作;或者所述配置客户端的用户可以创建采集点,比如可以根据工厂设备类型创建所述采集点。
所述配置客户端的用户确认在所述可视化操作界面中的可视化配置操作完成后,所述配置客户端可以根据所述可视化配置操作,生成所述配置更新指令,并可以响应于所述可视化界面中的配置更新指令,发送更新的客户端配置信息至配置服务端。
在一种可能的实现方式中,所述配置更新指令可以包括以下中至少一种:节点的更新指令、映射配置信息更新指令、驱动配置信息更新指令、采集配置信息更新指令。本公开对所述配置更新指令不作限定,只要是所述配置客户端的用户可以在所述可视化界面中可以操作的即可。
S12,所述配置服务端根据所述更新的客户端配置信息,生成OPC UA配置信息以及采集服务配置信息。
所述OPC UA配置信息可以用于实现所述配置客户端的统一访问以及可以用于所述采集服务端的采集数据到地址空间的映射。例如,可以用于在线配置地址空间与设备节点的映射关系,并可以将该映射关系生成XML((eXtensible Markup Language,可扩展标记语言)文件。
所述采集服务配置信息可以用于实现对异构数据(异构系统的数据)的采集以及用于与所述OPC UA服务端的数据交互。例如,所述配置服务端可以根据所述采集服务配置信息配置所述采集点的IP地址、端口、采集频率和寄存器名称等。或者,所述配置服务端可以根据所述采集服务配置信息配置采集驱动,在一个示例中,比如导入驱动配置文档供驱动插件使用。
在本说明书实施例中,所述配置服务端可以从所述更新的客户端配置信息,获取针对所述OPC UA服务端的配置信息以及针对所述采集服务端的配置信息,可以根据所述针对所述OPC UA服务端的配置信息。生成所述OPC UA配置信息,以及根据所述针对所述采集服务端的配置信息生成所述采集服务配置信息。
S13,所述配置服务端发送所述OPC UA配置信息至OPC UA服务端;以及发送所述采集服务配置信息至所述采集服务端;
S14,所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型。
在本说明书实施例中,所述OPC UA服务端可以是OPC UA服务器,例如StandardProfile(标准配置文件)的OPC UA服务器,所述OPC UA服务端可以包括地址空间、节点管理、会话管理、UA通信栈、配置接口、IO(Input/Ouput)管理等模块,可以用于建立地址空间、OPC UA信息模型以及对配置客户端提供数据服务等。在一个示例中,所述节点管理模块可以实现UA SDK(Software Development Kit,软件开发工具包)提供的Node Manager接口(节点管理接口),使用该节点管理接口可以浏览和管理OPC UA的地址空间。所述UA通信栈可以用于实现节点地址映射。所述配置接口模块可以用于在OPC UA配置过程中对接口进行配置来定义不同的方法,例如可以定义Start()、Stop()或Discover()方法,可以根据实际功能定义所述Start()、Stop()或Discover()方法,本公开对此不作限定。所述会话管理模块可以用于管理会话以及创建安全通道。所述地址空间可以是指由所述OPC UA服务端通过编译完成的二进制文件,用于所述采集服务端实例化OPC UA服务。所述IO管理模块可以用于提供与实时数据关联的方法。这里仅仅是所述OPC UA服务端功能结构的一个示例,不构成对OPC UA服务端的限定。所述OPC UA服务端所实现的功能可以通过上述模块中的一个或多个来实现,本公开对此不作限定。
所述OPC UA信息模型可以包括地址空间、异构数据与所述OPC UA地址空间的映射关系等。其中,所述异构数据可以包括异构设备、异构设备的变量、事件和方法等。
所述OPC UA服务端可以根据所述OPC UA配置信息,动态生成OPC UA信息模型,能够提供统一的数据访问通道。需要说明的是,在没有接收到所述采集服务端的采集数据时,所述地址空间可以是空的。
在一种可能的实现方式中,所述OPC UA配置信息可以包括节点树形结构信息和映射配置信息,如图2所示,所述S14可以包括:
S141,所述OPC UA服务端可以根据所述节点树形结构信息,生成OPC UA地址空间;
S142,所述OPC UA服务端可以根据所述映射配置信息,生成异构数据与所述OPCUA地址空间的映射关系;
S143,将所述OPC UA地址空间和所述异构数据与所述OPC UA地址空间的映射关系作为所述OPC UA信息模型。
S15,所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据;并发送所述采集数据至所述OPC UA服务端。
在本说明书实施例中,所述节点可以为异构设备节点、功能节点或虚拟节点等,本公开对此不作限定。
所述采集服务端可以根据所述采集服务配置信息,配置采集点等,通过所述采集点进行数据采集,例如对各类异构设备的数据进行采集,得到采集数据,并可以发送所述采集数据至所述OPC UA服务端。其中,所述采集点可以包括变量等。
S16,所述OPC UA服务端根据所述OPC UA信息模型,将所述采集数据存储到对应的地址空间。
所述OPC UA服务端接收到所述采集数据,可以根据所述OPC UA信息模型,将所述采集数据存储(映射)到对应的地址空间,例如,可以根据采集点与地址空间中节点的映射关系,将所述采集数据存储到对应的地址空间。并可以发布所述采集数据。
S17:所述配置客户端发送数据请求信息或数据订阅信息至所述OPC UA服务端以获取所述采集数据。
所述配置客户端可以发送数据请求信息或数据订阅信息至所述OPC UA服务端,通过所述OPC UA提供的统一数据访问通道实现对所述OPC UA中地址空间的节点数据进行请求或订阅,实现对异构数据的统一访问。在一个示例中,所述配置客户端可以通过OPC UAClient SDK(客户端软件开发工具包)查询、订阅所述OPC UA服务端的地址空间中节点的采集数据。
通过OPC UA服务端对各异构系统的采集数据的发布,可以实现OPC UA服务端提供对异构数据的统一访问,使得管理者通过所述配置客户端就可以及时获取各类异构系统的数据,能够及时发现并获取生产过程中的各异构系统的采集数据,避免问题停留在某个系统,实现对各异构系统问题的高效响应;
另外,通过使管理者可以在所述配置客户端进行可视化操作,使得管理者能够方便快捷并精准地实现对OPC UA信息模型以及采集服务端的配置,实现根据配置信息的更新动态生成OPC UA信息模型和采集服务配置信息,并且在配置更新后,所述OPC UA服务端不需要重启即可实现配置更新,保证了OPC UA服务的连续性,不会影响工厂的实时生产。
在一种可能的实现方式中,所述采集服务配置信息可以包括采集数据的类别,例如,采集数据的故障类别。所述采集服务端在判断采集数据存在故障时,可以为采集数据标注故障类别。这样,在配置客户端,用户就可以根据所述采集数据的类别进行查询,迅速定位同一类型的采集数据,以类别划分对数据进行归档,当生产过程中出现某一类问题时,能够快速根据同一类别采集数据进行分析,从而及时解决生产过程中的问题。
在一种可能的实现方式中,所述配置服务端、所述OPC UA服务端、所述配置客户端和所述采集服务端之间可以通过远程过程调用RPC(Remote Procedure Call)进行通信。所述RPC可以实现所述配置服务端、所述OPC UA服务端、所述配置客户端和所述采集服务端之间进程的数据互通和API(Application Programming Interface,应用程序接口)调用。可选的,所述RPC可以为Google公司的RPC框架GRPC。
作为一个示例,以所述配置客户端与所述配置服务端的服务进程为例,所述服务进程的RPC调用过程可以包括以下步骤:
所述配置客户端可以调用Gateway Service.Get()方法向所述配置服务端请求客户端配置信息;所述Gateway Service.Get()方法可以是预先定义的,本公开对此不作限定。
所述配置服务端可以查询数据库,获取操作结果,例如,配置客户端配置信息;将所述配置信息返回至所述配置客户端。使得配置客户端可以像调用本地数据一样调用配置服务端的数据。
通过RPC通信方式,使得所述配置服务端、所述OPC UA服务端、所述配置客户端和所述采集服务端可以分布式部署,方便创建分布式应用和服务。
图3示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。在所述步骤S11之前,所述配置客户端、OPC UA服务端和所述采集服务端均需要从所述配置服务端拉取相应的配置信息,例如,客户端初始配置信息、OPC UA初始配置信息以及采集服务初始配置信息,实现所述配置客户端、OPC UA服务端和所述采集服务端的初始化。
如图3所示,在一种可能的实现方式中,在所述步骤S11之前,所述方法还可以包括以下步骤:
S31,所述配置服务端响应所述配置客户端的客户端配置请求,发送客户端初始配置信息至所述配置客户端;其中,所述客户端配置请求可以是拉取Gateway配置请求。
S32,所述配置客户端根据所述客户端初始配置信息,在所述配置客户端的可视化界面中生成节点树形结构,如图4所示,可以包括采集网关、设备分类、设备名称、测点(采集点)分组以及测点名称的树形结构。
所述配置客户端可以通过向所述配置服务端进行客户端配置请求来获取请求客户端配置信息,并可以根据所述客户端初始配置信息中的节点树形结构,在所述配置客户端的可视化界面中展示所述节点树形结构。
可选地,所述配置客户端的用户可以在所述节点树形结构中对节点进行增加、删除、修改、查询等操作,从而实现对所述客户端配置信息的更新。使得所述用户可以正常使用所述配置客户端、配置服务端、采集服务端以及OPC UA服务端。
通过在所述配置客户端的可视化界面中展示所述节点树形结构,可以为用户提供方便快捷的可视化操纵。
图5示出根据本公开一实施例的基于OPC UA的数据通信方法的流程图。如图5所示,在一种可能的实现方式中,所述方法还可以包括:
S51,所述配置服务端根据所述更新的客户端配置信息,获取更新的节点树形结构;
S52,根据所述更新的节点树形结构,更新数据库中的节点关系表。
所述配置服务端中可以包括一个数据库,所述配置服务端可以提供数据建模与数据库操作的统一配置服务,例如,所述数据可以为SQLite数据库,所述SQLite数据库中可以存储节点关系表,所述节点关系表的形式可以是二维表。所述SQLite可以不需要服务端,也不需要支持存储过程、自定义函数等功能。其中,所述节点关系表与所述节点树形结构对应,即节点的信息与节点的关系可以通过所述节点树形结构或所述节点关系表来表示。
所述配置服务端可以获取所述更新的客户端配置信息中的更新的节点树形结构,利用所述更新的节点树形结构,更新数据库中的节点关系表。并且,配置客户端的用户通过将客户端配置信息实时动态写入SQLite数据库,在通信中断或掉线时,所述配置服务端、采集服务端和OPC UA服务端可以保持本地工作。
通过节点关系表与所述节点树形结构之间的映射,可以通过可视化的节点树形结构对所述数据库中的节点关系表进行方便快捷的操作,解决了数据库操作困难的问题。
图6示出根据本公开一实施例的所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据的方法流程图。如图6所示,在一种可能的实现方式中,所述采集服务配置信息可以包括驱动配置信息和采集配置信息;所述S15可以包括:
S151,所述采集服务端根据所述驱动配置信息,生成采集驱动;
S152,所述采集服务端根据所述采集配置信息,配置采集点。
S153,根据所述采集驱动和所述采集点,进行数据采集,得到采集数据。
所述采集服务端可以根据所述驱动配置信息,生成采集驱动,并可以根据所述采集配置信息,配置采集点,即创建采集点。然后可以利用所述采集点进行数据采集,得到采集数据。
在一种可能的实现方式中,所述采集驱动可以为插件形式,即所述采集驱动可以为采集驱动插件。在一个示例中,所述采集驱动插件可以包括2个模块:数据采集模块和数据发送模块。所述数据采集模块在获得开始采集指令后,可以实现设备的驱动函数,生成数据帧指令,可以通过Socket发送给PLC(Programmable Logic Controller,可编程逻辑控制器),异步等待回调;回调函数可以返回数据,返回的数据的解析处理也可以由所述数据采集模块负责,将解析后的采集数据传输至所述数据发送模块。所述数据发送模块可以将采集数据捆绑采集驱动插件标识码(插件ID)、采集时间等附加信息,并可以通过RPC方式发送至所述OPC UA服务端,具体地,所述OPC UA服务端可以调用相应接口模块和管理模块,将采集数据赋值到地址空间中对应的节点。
所述采集驱动设置为插件形式,能够实现插件化、热插拔以及二次开发功能。
图7示出根据本公开一实施例的所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据的方法流程图。如图7所示,在一种可能的实现方式中,所述S15可以包括:
S154,所述采集服务端根据所述采集服务配置信息,进行数据采集,得到实时数据;
S155,所述采集服务端对所述实时数据进行处理,得到所述采集数据。
所述采集服务端可以根据所述采集服务配置信息,进行数据采集,得到实时数据,并可以对所述实时数据进行处理,例如,进行数据清洗等,得到所述采集数据。所述数据清洗可以包括删除相同数据等。
在一个示例中,所述采集服务端可以将所述实时数据与上一次的采集数据进行对比,如果有变化,即不一致,可以发送采集数据至所述OPC UA服务端;如果没有变化,可以不发送采集数据至所述OPC UA服务端,避免重复发送。
可选地,所述采集服务端可以保存所述采集数据,以用于下次实时数据的对比。
所述采集服务端通过对所述实时数据进行处理,得到所述采集数据,发送所述采集数据至所述OPC UA服务端,使得采集数据的传输压力降低。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (9)
1.一种基于OPC UA的数据通信方法,其特征在于,包括:
配置客户端根据可视化界面中对客户端配置信息的可视化配置操作,生成配置更新指令;
所述配置客户端响应于所述可视化界面中的所述配置更新指令,发送更新的客户端配置信息至配置服务端;
所述配置服务端根据所述更新的客户端配置信息,生成OPC UA配置信息以及采集服务配置信息;所述OPC UA配置信息用于实现所述配置客户端的统一访问以及用于采集服务端的采集数据到地址空间的映射;
所述配置服务端发送所述OPC UA配置信息至OPC UA服务端;以及发送所述采集服务配置信息至所述采集服务端;
所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型;
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据;并发送所述采集数据至所述OPC UA服务端;
所述OPC UA服务端根据所述OPC UA信息模型,将所述采集数据存储到对应的地址空间;
所述配置客户端发送数据请求信息或数据订阅信息至所述OPC UA服务端以获取所述采集数据;
所述配置服务端还用于根据所述更新的客户端配置信息,获取更新的节点树形结构;
根据所述更新的节点树形结构,更新数据库中的节点关系表;
所述配置服务端还用于将所述更新的客户端配置信息实时动态写入所述配置服务端包括的数据库中,在通信中断或掉线时,所述配置服务端、所述采集服务端和所述OPC UA服务端保持本地工作。
2.根据权利要求1所述的方法,其特征在于,所述OPC UA配置信息包括节点树形结构信息和映射配置信息;
所述OPC UA服务端根据所述OPC UA配置信息,生成OPC UA信息模型,包括:
所述OPC UA服务端根据所述节点树形结构信息,生成OPC UA地址空间;
所述OPC UA服务端根据所述映射配置信息,生成异构数据与所述OPC UA地址空间的映射关系;
将所述OPC UA地址空间和所述异构数据与所述OPC UA地址空间的映射关系作为所述OPC UA信息模型。
3.根据权利要求1所述的方法,其特征在于,所述采集服务配置信息包括驱动配置信息和采集配置信息;
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据,包括:
所述采集服务端根据所述驱动配置信息,生成采集驱动;
所述采集服务端根据所述采集配置信息,配置采集点;
根据所述采集驱动和所述采集点,进行数据采集,得到采集数据。
4.根据权利要求3所述的方法,其特征在于,所述采集驱动为插件形式。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述配置服务端响应所述配置客户端的客户端配置请求,发送客户端初始配置信息至所述配置客户端;
所述配置客户端根据所述客户端初始配置信息,在所述配置客户端的可视化界面中生成节点树形结构。
6.根据权利要求5所述的方法,其特征在于,所述配置更新指令包括以下中至少一种:
节点的更新指令、映射配置信息更新指令、驱动配置信息更新指令、采集配置信息更新指令。
7.根据权利要求1所述的方法,其特征在于,所述采集服务端根据所述采集服务配置信息,进行数据采集,得到采集数据,包括:
所述采集服务端根据所述采集服务配置信息,进行数据采集,得到实时数据;
所述采集服务端对所述实时数据进行处理,得到所述采集数据。
8.根据权利要求1所述的方法,其特征在于,所述配置服务端、所述OPC UA服务端、所述配置客户端和所述采集服务端之间通过远程过程调用RPC进行通信。
9.根据权利要求1所述的方法,其特征在于,所述采集服务配置信息包括采集数据的故障类别。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010219153.0A CN111580869B (zh) | 2020-03-25 | 2020-03-25 | 基于opc ua的数据通信方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010219153.0A CN111580869B (zh) | 2020-03-25 | 2020-03-25 | 基于opc ua的数据通信方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111580869A CN111580869A (zh) | 2020-08-25 |
CN111580869B true CN111580869B (zh) | 2023-08-01 |
Family
ID=72122543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010219153.0A Active CN111580869B (zh) | 2020-03-25 | 2020-03-25 | 基于opc ua的数据通信方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111580869B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114257392A (zh) * | 2020-09-24 | 2022-03-29 | 深圳富桂精密工业有限公司 | 设备管理方法、设备管理系统及网关 |
CN112558870B (zh) * | 2020-12-08 | 2023-08-01 | 机械工业仪器仪表综合技术经济研究所 | 一种针对地址空间的数据处理方法及装置 |
CN112987667B (zh) * | 2021-02-08 | 2022-05-31 | 上海交通大学 | 一种基于opc ua的柔性制造产线的设备远程配置系统与方法 |
CN113032709B (zh) * | 2021-04-12 | 2022-09-27 | 杭州和利时自动化有限公司 | 一种信息模型的设置方法、装置、设备及存储介质 |
CN114390088B (zh) * | 2021-12-31 | 2024-04-09 | 北京东土科技股份有限公司 | 一种edps通过opc ua客户端与opc ua服务端的交互方法以及装置 |
CN114189539A (zh) * | 2022-02-11 | 2022-03-15 | 深圳市触想智能股份有限公司 | 一种工业工控一体机系统下的数据处理系统 |
WO2024065780A1 (zh) * | 2022-09-30 | 2024-04-04 | 西门子股份公司 | 数据交互模型更新方法、装置、电子设备和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013178270A1 (de) * | 2012-05-31 | 2013-12-05 | Siemens Aktiengesellschaft | Zugriff von clients auf einen serverdienst mittels einer opc-ua |
WO2018194859A1 (en) * | 2017-04-19 | 2018-10-25 | Microsoft Technology Licensing, Llc | Internet of things pub-sub data publisher |
CN109765866A (zh) * | 2019-01-25 | 2019-05-17 | 北京交通大学 | 一种基于opc ua的工业网络系统及其数据处理方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110708240A (zh) * | 2019-09-26 | 2020-01-17 | 机械工业仪器仪表综合技术经济研究所 | 基于opc ua的物联网通用网关 |
-
2020
- 2020-03-25 CN CN202010219153.0A patent/CN111580869B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013178270A1 (de) * | 2012-05-31 | 2013-12-05 | Siemens Aktiengesellschaft | Zugriff von clients auf einen serverdienst mittels einer opc-ua |
WO2018194859A1 (en) * | 2017-04-19 | 2018-10-25 | Microsoft Technology Licensing, Llc | Internet of things pub-sub data publisher |
CN109765866A (zh) * | 2019-01-25 | 2019-05-17 | 北京交通大学 | 一种基于opc ua的工业网络系统及其数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111580869A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111580869B (zh) | 基于opc ua的数据通信方法及系统 | |
CN105224351B (zh) | 快速配置实现方法及快速配置服务器 | |
EP3042254B1 (en) | Systems and methods for virtualizing a programmable logic controller | |
CN111694857B (zh) | 存储资源数据的方法、装置、电子设备及计算机可读介质 | |
US20200226615A1 (en) | Customer service representative dashboard application | |
CN108108986B (zh) | 一种客户关系管理系统的设计方法、装置及电子设备 | |
CN110555030A (zh) | 一种sql语句的处理方法和装置 | |
CN112084208A (zh) | 数据可视化方法及系统、存储介质及电子设备 | |
US20190140894A1 (en) | System and method for enabling hybrid integration platform through runtime auto-scalable deployment model for varying integration | |
CN106682210B (zh) | 日志文件查询方法及装置 | |
CN114201144A (zh) | 基于领域驱动设计的微服务系统构建方法、设备及介质 | |
CN111198678A (zh) | 一种生成GraphQL前端操作接口的方法及装置 | |
CN112799664A (zh) | 支持异构环境的组态方法及系统 | |
CN115268861B (zh) | 自定义组件的引入方法、系统、设备和存储介质 | |
CN113536748A (zh) | 一种生成图表数据的方法和装置 | |
CN109086042B (zh) | 基于算子及控件的业务界面开发方法 | |
CN108011877B (zh) | 基于osgi的ip地址获取方法、装置、计算机设备和存储介质 | |
CN111062682B (zh) | 一种工单处理方法和装置 | |
US11792269B2 (en) | Method for generating application for controlling external electronic device and electronic apparatus for supporting the same | |
US9059992B2 (en) | Distributed mobile enterprise application platform | |
CN115292313A (zh) | 一种伪列实现方法、装置、电子设备及存储介质 | |
CN110727457B (zh) | 组件管理方法、装置、存储介质及电子设备 | |
US20220229841A1 (en) | Database streaming for automated processes | |
CN115098082A (zh) | 基于Jenkins插件的流水线脚本生成方法、系统、设备及介质 | |
CN111600739B (zh) | Opc ua地址空间模型中关联节点的同步更新方法 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20211116 Address after: 310012 Room 301 and 309, 3 / F, building 2, No. 7, Shanjing Road, Zhuantang street, Xihu District, Hangzhou, Zhejiang Applicant after: Zhejiang xitumeng Digital Technology Co.,Ltd. Address before: 315336 No. 818, Binhai Second Road, Hangzhou Bay New Area, Ningbo, Zhejiang Applicant before: GEELY AUTOMOBILE RESEARCH INSTITUTE (NINGBO) Co.,Ltd. Applicant before: ZHEJIANG GEELY HOLDING GROUP Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |