This is a U.S. national stage of application No. PCT/EP2012/060257 filed 31 May 2012.
1. Field of the Invention
The invention relates to the communication between two clients via a server in a network using OPC-UA.
2. Description of the Related Art
OPC Unified Architecture (OPC-UA) is a communication protocol and information model for communication between different automation components (devices).
OPC-UA is subject to a strict client-server model, i.e., servers provide information that is requested from the servers by clients. In this case, the communication between a client and a server is initiated by the client, i.e., communication always begins with the client and is therefore asymmetrical. If two components (devices) are intended to communicate with one another with equal rights (symmetrically), both must nowadays be the client and the server at the same time. There are restrictions on the transport layer, where clients and servers may be situated in the network. As a result, every client also cannot be made the server in every situation. In addition, simultaneous client and server functionality of communicating devices requires a greater outlay in terms of development and resources on both devices. This outlay is often not acceptable, particularly in the field, because the devices and networks used there are often relatively inefficient.
It is therefore an object of the invention to provide hardware and a method for communication between two clients in a network using OPC-UA.
This and other objects and advantages are achieved in accordance with the invention by providing hardware and a method for communication between two clients via a server in a network using OPC-UA, where a virtual server object is implemented in the server, which virtual server object provides a first of the two clients with the functionality of a server by providing the first client with a virtual address space in an address space of the server and a method for generating and changing virtual server nodes in the virtual address space. The server makes it possible for the second client to access virtual server nodes in the virtual address space and informs the first client each time the second client accesses a virtual server node in the virtual address space.
In this application, a node and a virtual server node are always understood as meaning an OPC-UA node, in which case the term “virtual server node” relates to an OPC-UA node created in the virtual address space of the server. Accordingly, a client is always understood as meaning an OPC-UA client and a server is always understood as meaning an OPC-UA server.
The invention makes it possible to provide a client with server functionality. For this purpose, a virtual server object is implemented in a server. This makes it possible to provide clients, in particular, with server functions that cannot be used as independent servers. This is advantageously achieved without changing or extending the OPC-UA specification, with the result that the OPC-UA specification is not contravened and all OPC-UA devices can handle the implementation in accordance with the invention of the server functionality for clients.
In one preferred embodiment of the invention, variables can be generated as virtual server nodes and a value of the variable can be changed as the change in a variable using the method for generating and changing virtual server nodes.
This embodiment advantageously makes it possible for a first client to create variables, the values of which can be read by the second client, and to change the values of these variables.
In one particularly preferred embodiment of the invention, the server generates a subscription for the first client, via which subscription the server informs the first client each time the second client accesses a virtual server node in the virtual address space.
In this case, a subscription is understood as meaning an OPC-UA subscription.
The present embodiment therefore uses an OPC-UA subscription to inform the first client of accesses to virtual server nodes. As a result, a structure which is already present in OPC-UA is advantageously used to communicate such accesses, with the result that no additional structure has to be implemented and the OPC-UA specification does not need to be changed or extended for this purpose.
In this case, the subscription preferably contains a subscription entity, in response to the change in which the first client is registered and which is changed by the server when the second client accesses a virtual server node in the virtual address space. A subscription variable is particularly preferably used as the subscription entity, in response to the value change in which the first client is registered and whose value is changed by the server when the second client accesses a virtual server node in the virtual address space.
As a result, the first client is easily informed of access to a virtual server node using a change in the subscription entity, in particular a value change in the subscription variable.
The subscription is preferably generated by the virtual server object. As a result, the virtual address space and the subscription are advantageously created by the same virtual server object, with the result that no additional object for creating the subscription must be implemented.
Furthermore, the first client preferably registers with the virtual server object via a method call. As a result, the first client is registered with the virtual server object in a simple manner.
The second client may preferably also be a server. As a result, servers can also use the server functionality of the first client.
Hardware in accordance with the invention is configured to perform the method in accordance with disclosed embodiments of the invention and therefore makes it possible to achieve the above-mentioned advantages of the method.
A client in accordance with the invention is accordingly configured to register with a virtual server object of a server and to call a method of the virtual server object for generating and changing virtual server nodes in a virtual address space generated by the virtual server object in an address space of the server.
A virtual server object is implemented in a server in accordance with the invention, with which virtual server object a client can register and which provides a client registered with it with a functionality of a server by providing the client with a virtual address space in an address space of the server and a method for generating and changing virtual server nodes in the virtual address space.
In this case, the virtual server object preferably generates a subscription for a first client registering with it, via which subscription the server informs the first client each time a second client accesses a virtual server node in the virtual address space.
A network in accordance with the invention comprises at least one client in accordance with the invention and at least one server in accordance with the invention.
Other objects and features of the present invention will become apparent from the following detailed description considered in conjunction with the accompanying drawings. It is to be understood, however, that the drawings are designed solely for purposes of illustration and not as a definition of the limits of the invention, for which reference should be made to the appended claims. It should be further understood that the drawings are not necessarily drawn to scale and that, unless otherwise indicated, they are merely intended to conceptually illustrate the structures and procedures described herein.
The above-described properties, features and advantages of this invention and the manner in which they are achieved become clearer and more clearly comprehensible in connection with the following description of exemplary embodiments which are explained in more detail in connection with the drawings, in which:
Mutually corresponding parts are provided with the same reference symbols in all figures.
Although the invention was described and illustrated in detail by means of a preferred exemplary embodiment, the invention is not restricted by the examples disclosed and other variations can be derived therefrom by a person skilled in the art without departing from the scope of protection of the invention.
The server (1) then enables access by the second client (14) to access virtual server nodes (12) in the virtual address space (7), as indicated in step 720.
The server (1) now informs the first client (5) each time the second client (14) accesses a virtual server node (12) in the virtual address space (7), as indicated in step 730.
Thus, while there have been shown, described and pointed out fundamental novel features of the invention as applied to a preferred embodiment thereof, it will be understood that various omissions and substitutions and changes in the form and details of the devices illustrated, and in their operation, may be made by those skilled in the art without departing from the spirit of the invention. For example, it is expressly intended that all combinations of those elements and/or method steps which perform substantially the same function in substantially the same way to achieve the same results are within the scope of the invention. Moreover, it should be recognized that structures and/or elements and/or method steps shown and/or described in connection with any disclosed form or embodiment of the invention may be incorporated in any other disclosed or described or suggested form or embodiment as a general matter of design choice. It is the intention, therefore, to be limited only as indicated by the scope of the claims appended hereto.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2012/060257 | 5/31/2012 | WO | 00 | 11/26/2014 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2013/178269 | 12/5/2013 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5732404 | Johnson | Mar 1998 | A |
6298454 | Schleiss | Oct 2001 | B1 |
6324177 | Howes | Nov 2001 | B1 |
6529937 | Murphy, Jr. | Mar 2003 | B1 |
7086009 | Resnick | Aug 2006 | B2 |
7149873 | Mohideen | Dec 2006 | B2 |
7237061 | Boic | Jun 2007 | B1 |
7328372 | Kataoka | Feb 2008 | B2 |
7395400 | Mohideen | Jul 2008 | B2 |
7451215 | Hawkinson | Nov 2008 | B2 |
7599999 | Armstrong | Oct 2009 | B1 |
7649908 | Schwalb | Jan 2010 | B2 |
7796579 | Bruss | Sep 2010 | B2 |
7860001 | Hlibiciuc | Dec 2010 | B2 |
7860498 | Lovell, Jr. | Dec 2010 | B2 |
7953816 | Deen | May 2011 | B2 |
7984096 | Beoughter | Jul 2011 | B2 |
8095632 | Hessmer | Jan 2012 | B2 |
8275871 | Ram | Sep 2012 | B2 |
8418166 | Armstrong | Apr 2013 | B2 |
8423608 | Mahnke | Apr 2013 | B2 |
8549065 | Mahnke | Oct 2013 | B2 |
8825984 | Srinivasan | Sep 2014 | B1 |
8881141 | Koch | Nov 2014 | B2 |
8972692 | Leggette | Mar 2015 | B2 |
9021125 | Piekarski | Apr 2015 | B2 |
20030149741 | Krooss | Aug 2003 | A1 |
20050033802 | Pauly et al. | Feb 2005 | A1 |
20050119017 | Lovell, Jr. et al. | Jun 2005 | A1 |
20080195576 | Sande | Aug 2008 | A1 |
20080198998 | Aleynikov | Aug 2008 | A1 |
20100306313 | Mahnke | Dec 2010 | A1 |
20110072204 | Chang | Mar 2011 | A1 |
20120143586 | Vetter | Jun 2012 | A1 |
20130031249 | Gunzert | Jan 2013 | A1 |
20130063449 | Leitner | Mar 2013 | A1 |
20140019706 | Kanfi | Jan 2014 | A1 |
20140040431 | Rao | Feb 2014 | A1 |
20140078162 | Timsjo | Mar 2014 | A1 |
20150088281 | Downor | Mar 2015 | A1 |
20150154136 | Markovic | Jun 2015 | A1 |
20150237110 | Hall | Aug 2015 | A1 |
20160050295 | Neitzel et al. | Feb 2016 | A1 |
Number | Date | Country |
---|---|---|
1599912 | Mar 2005 | CN |
101903837 | Dec 2010 | CN |
2479037 | Sep 2011 | GB |
Entry |
---|
Microport; OPC Storage (OPC-EC-BCL-S); pp. 1-3;; 2010; Jul. 28, 2010. |
Effectively Employ OPC Communications; 2008; Jul. 24, 2008. |
Vu Van Tan et al; A SOA-Based Framework for Building Moitoring and Control Software Systems; Emerging Intelligent Computing Technology ans Applications. With Aspechts of artificial Intelligence, Springer Berlin Heidelberg, pp. 1013-1027; ISBN: 978-3-542-04019-1 ; 2009; DE; Sep. 16, 2009. |
OPC Foundation; OPC Unified Architecture Specification Part:1 Overview and Concepts, Release 1.01: pp. 1-20; 2009; Feb. 5, 2009. |
Office Action dated Nov. 4, 2016 which issued in the corresponding Chinese Patent Application No. 2012800735933. |
OPC Foundation, “OPC Unified Architecture”, Specification, Part 1: Concepts, Version Release 1.00, Jul. 28, 2006, 26 pages. |
Number | Date | Country | |
---|---|---|---|
20150142873 A1 | May 2015 | US |