U.S. patent application number 14/084078 was filed with the patent office on 2014-03-20 for using opc ua to automatically generate process graphics.
The applicant listed for this patent is Anders Hanberg, Martin Olausson, Susanne Timsjo. Invention is credited to Anders Hanberg, Martin Olausson, Susanne Timsjo.
Application Number | 20140078162 14/084078 |
Document ID | / |
Family ID | 44119343 |
Filed Date | 2014-03-20 |
United States Patent
Application |
20140078162 |
Kind Code |
A1 |
Timsjo; Susanne ; et
al. |
March 20, 2014 |
Using OPC UA To Automatically Generate Process Graphics
Abstract
A method and device for generating a set of graphical objects to
be displayed by using OPC UA specification. The method includes
indicating, by using OPC UA nodes, graphical objects to be
displayed, the graphical objects representing physical components
of a monitored process. Further, the method includes indicating, by
using OPC UA references, how an indicated graphical object should
be interconnected to another indicated graphical object when
displayed. Next, the respective OPC UA node is associated with a
corresponding predetermined graphical object, the set of graphical
objects is generated from the associations and the individual
graphical objects of the set is interconnected in accordance with
the indicated interconnections. Finally, the generated set of
graphical objects is displayed.
Inventors: |
Timsjo; Susanne; (Vasteras,
SE) ; Olausson; Martin; (Vasteras, SE) ;
Hanberg; Anders; (Vasteras, SE) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Timsjo; Susanne
Olausson; Martin
Hanberg; Anders |
Vasteras
Vasteras
Vasteras |
|
SE
SE
SE |
|
|
Family ID: |
44119343 |
Appl. No.: |
14/084078 |
Filed: |
November 19, 2013 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
PCT/EP2011/058855 |
May 30, 2011 |
|
|
|
14084078 |
|
|
|
|
Current U.S.
Class: |
345/581 |
Current CPC
Class: |
G06T 1/00 20130101; G05B
19/042 20130101; G05B 2219/31472 20130101 |
Class at
Publication: |
345/581 |
International
Class: |
G06T 1/00 20060101
G06T001/00 |
Claims
1. A method of generating a set of graphical objects to be
displayed by using OPC UA specification, the method comprising:
indicating, by means of using OPC UA nodes, graphical objects to be
displayed, said graphical objects representing physical components
of a monitored process; indicating, by means of using OPC UA
references, how an indicated graphical object should be
interconnected to another indicated graphical object when
displayed; associating the respective OPC UA node with a
corresponding predetermined graphical object; generating the set of
graphical objects from said associations and interconnecting the
individual graphical objects in the set in accordance with the
indicated interconnections; displaying the generated set of
graphical objects; and assigning a data value to at least one of
the indicated graphical objects by means of using OPC UA
attributes, wherein the assigned data value is of a write-type
indicating that the assigned data value is to be sent to the
physical component corresponding to said at least one indicated
graphical object for controlling a property of the physical
component stipulated by the OPC UA attribute.
2. The method according to claim 1, wherein the assigned data value
is of a read-type indicating that the assigned data value is to be
read from the physical component, which value corresponds to a
property stipulated by the OPC UA attribute.
3. The method according to claim 1, wherein the association of the
respective OPC UA node with a corresponding predetermined graphical
object and the generation of the set of graphical objects from said
associations and interconnection of the individual graphical
objects in the set in accordance with the indicated
interconnections is undertaken by: compiling a source code which
indicates the graphical objects to be displayed and how the
indicated graphical object should be interconnected with each other
when displayed.
4. A device for generating a set of graphical objects to be
displayed by using OPC UA specification, the device being arranged
to: receive source code indicating, by means of using OPC UA nodes,
graphical objects to be displayed, said graphical objects
representing physical components of a monitored process, and
further indicating, by means of using OPC UA references, how an
indicated graphical object should be interconnected to another
indicated graphical object when displayed; associate the respective
OPC UA node with a corresponding predetermined graphical object,
generate the set of graphical objects from said associations,
interconnecting the individual graphical objects in the set in
accordance with the indicated interconnections and providing the
generated set of graphical objects for display, assign a data value
to at least one of the indicated graphical objects by means of
using OPC UA attributes, wherein the assigned data value is of a
write-type indicating that the assigned data value is to be sent to
the physical component corresponding to said at least one indicated
graphical object for controlling a property of the physical
component stipulated by the OPC UA attribute.
5. The device according to claim 4, wherein the assigned data value
is of a read-type indicating that the assigned data value is to be
read from the physical component, which value corresponds to a
property stipulated by the OPC UA attribute.
6. The device according to claim 4, further being arranged to
associate the respective OPC UA node with a corresponding
predetermined graphical object and generate the set of graphical
objects from said associations and interconnection of the
individual graphical objects in the set in accordance with the
indicated interconnections by: compiling a source code which
indicates the graphical objects to be displayed and how the
indicated graphical object should be interconnected with each other
when displayed.
7. The device according to claim 4, further comprising: memory
arranged to store the graphical objects to be associated with the
indicated respective OPC UA nodes.
8. The device according to claim 4, further comprising: display
device arranged to display the generated set of graphical
objects.
9. The device according to claim 4, further comprising: text
editing device in which the source code can be entered.
10. A computer program for generating a set of graphical objects to
be displayed by using OPC UA specification, comprising code for
computer interpretation of a script for carrying out a method when
run on a computer, comprising the steps of: indicating, by means of
using OPC UA nodes, graphical objects to be displayed, said
graphical objects representing physical components of a monitored
process; indicating, by means of using OPC UA references, how an
indicated graphical object should be interconnected to another
indicated graphical object when displayed; associating the
respective OPC UA node with a corresponding predetermined graphical
object; generating the set of graphical objects from said
associations and interconnecting the individual graphical objects
in the set in accordance with the indicated interconnections;
displaying the generated set of graphical objects; and assigning a
data value to at least one of the indicated graphical objects by
means of using OPC UA attributes, wherein the assigned data value
is of a write-type indicating that the assigned data value is to be
sent to the physical component corresponding to said at least one
indicated graphical object for controlling a property of the
physical component stipulated by the OPC UA attribute.
Description
FIELD OF THE INVENTION
[0001] The present invention generally relates to a method and
device for generating a set of graphical objects to be displayed by
using OPC UA specification.
BACKGROUND OF THE INVENTION
[0002] OPC Unified Architecture (OPC UA) is a platform independent
protocol which specifies how to exchange data between different
systems, software applications and hardware devices. OPC UA enables
exchange of data between software applications independently of the
application's vendor, supported operating system, and used
programming language.
[0003] In the process industry today, process graphics are
typically built using a graphic builder, for example the ABB system
800xA includes a graphic builder, and so do most systems in this
particular field. These graphic builders facilitate building of
process graphics as they assist the users in building the graphic
representation of a real object using predetermined graphic
building blocks. A graphic builder also assists the user connecting
graphic objects to the process' real time data, often provided via
OPC. A graphic object does not need to be dynamic; it can be static
to serve as a generic building block to be used in other graphics.
The generated graphic objects can also contain built in
functionality for process control, navigation and indication of
invalid data. The graphic objects may also visualize for example if
data exceeds specified high or low limits.
[0004] A problem with conventional graphic builders is that a great
deal of programming effort is required from a developer in order to
create graphical objects, and in particular when trying define a
complete environment of graphical objects for a certain industrial
process. Further, a set of graphical objects created for a
particular industrial process cannot necessarily be reused in a
different industrial process when targeting different industries,
which has the drawback that a great deal of engineering is
required.
[0005] "OPC Unified Architecture" by Wolfgang Mahnke et al
published on Springer-Verlag generally discloses the platform
independent OPC UA protocol.
[0006] WO 2009/046095 generally discloses systems and methods for
gathering, analyzing, formatting and presenting information related
to monitored processes and environments, where graphical
representations of operational process control data received from
servers is displayed within the context of geographical locations
at which the processes operate.
SUMMARY OF THE INVENTION
[0007] A general object of the present invention is to solve or at
least mitigate the above described problems in the art.
[0008] In a first aspect of the present invention this object is
achieved by a method of generating a set of graphical objects to be
displayed by using OPC UA specification. The method comprises
indicating, by means of using OPC UA nodes, graphical objects to be
displayed, said graphical objects representing physical components
of a monitored process. Further, the method comprises indicating,
by means of using OPC UA references, how an indicated graphical
object should be interconnected to another indicated graphical
object when displayed. Next, the respective OPC UA node is
associated with a corresponding predetermined graphical object, the
set of graphical objects is generated from said associations and
the individual graphical objects of the set is interconnected in
accordance with the indicated interconnections. Finally, the
generated set of graphical objects is displayed.
[0009] In a second aspect of the present invention this object is
achieved by a device for generating a set of graphical objects to
be displayed by using OPC UA specification. The device is arranged
to receive source code indicating, by means of using OPC UA nodes,
graphical objects to be displayed. The graphical objects represent
physical components of a monitored process. The source code further
indicates, by means of using OPC UA references, how an indicated
graphical object should be interconnected to another indicated
graphical object when displayed. The device is further arranged to
associate the respective OPC UA node with a corresponding
predetermined graphical object, generate the set of graphical
objects from said associations, interconnecting the individual
graphical objects in the set in accordance with the indicated
interconnections and providing the generated set of graphical
objects for display.
[0010] Thus, capabilities of OPC UA are used to generate graphical
objects from combinations of established and predefined OPC UA
terminology. The need for prior art graphic builders is thus
reduced.
[0011] OPC UA presents an object oriented protocol to represent
controller data. The base modeling concepts in OPC UA are nodes and
references. Every node is described with attributes like for
example, id, name, description, value. To automatically generate
graphical objects to be displayed on a screen, the implementation
of the OPC UA protocol is browsed and interpreted.
[0012] Additional features and advantages will be disclosed in the
following.
BRIEF DESCRIPTION OF THE DRAWINGS
[0013] Embodiments of the present invention and advantages thereof
will now be described by way of non-limiting examples, with
reference to the accompanying drawings, where:
[0014] FIG. 1 illustrates an industrial process to be monitored in
an embodiment of the present invention, and
[0015] FIG. 2 illustrates the process of creating graphical objects
of the industrial process depicted in FIG. 1 according to an
embodiment of the invention.
DETAILED DESCRIPTION OF THE INVENTION
[0016] FIG. 1 illustrates an industrial process 100 to be monitored
in accordance with an embodiment of the invention. This industrial
process is exemplified in the form of a pipe 101 leading liquid,
for instance gasoline, to a valve 102. The valve determines how
much if any of the gasoline should be delivered to a tank 103 via
the pipe 101. In this particular example, the level of gasoline in
the tank is 10 units. From the tank, the gasoline is supplied to a
motor 104. It should be noted that this example is greatly
exemplified and in real-life, an industrial process to be monitored
is typically considerably more complex.
[0017] Now, to be able to monitor the industrial process 100 by
using OPC UA, the components of the process is connected to a
respective OPC server 105, 106, 107 for collecting OPC data from
the components 102, 103, 104. In case the components permit
external control, OPC data to control the components can be sent to
the respective OPC server. For instance, OPS server 105 may collect
data relating to flow of gasoline through the valve 102, but may
also allow control of the flow through the valve by means of using
OPC data for the control such that the level of gasoline in the
tank 103 can be regulated. In this particular example, the tank 103
is a relatively passive process component, which does not offer any
property control, but which delivers data pertaining to the
gasoline level to the OPC server 106. Finally, the OPC server 107
collects data from the motor 104 regarding motor speed. Further,
the motor speed can be regulated by the OPC server 107 when
appropriate OPC data is supplied.
[0018] The OPC servers are typically connected to a bus 108 for
delivering measured process data to, and receiving process control
data from, an operator work station 109.
[0019] In order for an operator to be able to monitor the
industrial process at his or her work station 109, a graphical
representation of the industrial process must be provided. This
graphical representation would typically look very similar to the
industrial process 100 as it is depicted in FIG. 1.
[0020] In OPC UA, terminology has been established where physical
objects can be defined by means of objects, attributes, structures,
etc. The set of information that an OPC UA Server makes visible to
its clients, such as the work station 109, is referred to as
AddressSpace. The OPC UA AddressSpace represents its contents as a
set of Nodes connected by References. This is well-known
terminology in the art and will not be explained in any further
detail. Nodes in the AddressSpace are used to represent real
objects, for instance pipe 101, valve 102, tank 103 and motor 104
of FIG. 1.
[0021] In an embodiment of the present invention, graphical
representation of an industrial process is attained by utilizing
the feature in OPC UA that an object oriented protocol is used to
represent OPC server data. The base modeling concepts in OPC UA are
the above mentioned nodes and references. Every node is described
with attributes like for example id, name, description, value, etc.
To automatically generate graphical objects to be displayed on a
screen, the implementation of the OPC UA protocol is browsed and
interpreted.
[0022] Thus, a node type can be related to a graphic
representation. In an exemplifying embodiment, one node can for
instance represent the valve 102 of FIG. 1, while another node can
represent the tank 103 and still a further node can represent the
motor 104.
[0023] A set of graphical objects is created and stored in a
graphical "library". To create a graphical representation of the
industrial process exemplified in FIG. 1, four nodes would have to
be used ("pipe", "valve", "tank" and "motor"), and the
corresponding graphical objects would have to be created. Once this
is done, any operator can easily use the established OPC UA
terminology to make her own graphical representations of any
industrial process. Further, the created graphical objects can be
reused and distributed to other operators.
[0024] For instance, the operator (or any other person wishing to
create the process graphics), can enter the node types in a script,
and thus indicate which graphical objects she intends to include in
a graphical representation.
[0025] Thereafter, the operator can indicate how the different
nodes should be interconnected. To this end, the already
established OPC UA concept of References could be used. Again, this
could be entered in the script in an appropriate manner to indicate
how a graphical object indicated by the above node types should be
interconnected to any other indicated node type.
[0026] Then, the script is computer-interpreted such that each
indicated OPC UA node of the script is associated with a respective
one of the created graphical objects stored in library. Hence, each
indicated node is associated with a corresponding graphical object.
This interpretation is typically embodied by making a compilation
of the source code of the script. Further, in the computer
interpretation, a set of graphical objects representing the
physical components of the monitored industrial process is
generated. To this end, the associations of the OPC UA node with
the graphical objects is utilized, and the indicated references
will determine how each graphical object should be connected to
another indicated graphical object. Thus, in this example, the
valve 102 can be defined as an input element to the tank 103 while
the motor 104 can be defined as an output element. Finally, the
generated set of graphical objects is displayed.
[0027] FIG. 2 illustrates the process of creating graphical objects
of the industrial process depicted in FIG. 1 according to an
embodiment of the invention. The work station 109 of FIG. 1 is
realized by means of a computer screen 110 at which the operator
typically is located when supervising the industrial process 100 in
FIG. 1, and a computer 113. As previously has been described, the
operator enters appropriate OPC UA terms in a script 111 by means
of a keyboard (not shown) to define the process to be graphically
illustrated. In an embodiment of the invention, this is done by
using the concept of OPC UA nodes and references.
[0028] Then, the operator pushes a "compile" button, wherein the
text, or source code, entered in the script is compiled (i.e.
computer-interpreted) in step 112 such that each indicated OPC UA
node of the script is associated with a respective one of the
created graphical objects stored in library. Hence, each indicated
node is associated with a corresponding graphical object.
Thereafter, when the computer 113 has finished the compilation, a
set of graphical objects 114 representing the physical components
of the monitored industrial process is generated and displayed.
[0029] In a further embodiment of the present invention, the
concept of Attributes supported by OPC UA is employed. For example,
with reference to FIG. 1, a node corresponding to the tank 103
could provide a read-type attribute such that the actual level of
the tank could be read at the OPC server 106 and presented to the
operator on the generated graphical representation of the
industrial process 100 at the work station 109.
[0030] In a further embodiment, it is possible to assign a
write-type attribute to a node. With reference to FIG. 1, it would
be desirable to control the flow through the valve 102 to attain a
desired level of gasoline in the tank 103. This could be done by
providing the valve node with a write-type attribute such that an
appropriate control signal is communicated to the valve 102 via OPC
server 105 to set the tank level at a desired level.
[0031] The skilled person in the art realizes that the present
invention by no means is limited to the examples described
hereinabove. On the contrary, many modifications and variations are
possible within the scope of the appended claims.
* * * * *