System to design and/or update programs for industrial devices assigned to the operator interface and/or to manage machines and/or plants for industrial automation

11507361 · 2022-11-22

Assignee

Inventors

Cpc classification

International classification

Abstract

System to design and/or update programs for the operator interface of machines and/or plants that comprises at least one first calculation device dedicated to the management of a machine and/or plant, which contains at least one application program to manage the human-machine interface (HMI) of the machine and/or plant, and a second calculation device to execute a software, or development environment, to create a project file, wherein on the first calculation device and on the second calculation device respective communication programs are installed, suitable to transfer the project to the first calculation device, where the application program for the management of the HMI interface displays the project by means of a suitable OPC UA standard information model, by means of which it is possible to make modifications to the project dynamically, without interrupting the execution of the human-machine interface program, and so that every modification to the project, and therefore to the human-machine interface program, is immediately displayed and used by the human-machine interface.

Claims

1. A system, comprising: a first computing device configured to execute a first computer program configured to: receive a project file from a second computing device; execute the project file; display an information model representative of a series of nodes and one or more relationships between the series of nodes in response to receiving the project file, wherein the series of nodes and the one or more relationships are descriptive of the project file; and receive an input via the information model, wherein the input is configured to modify the project file while the project file is being executed; wherein the first computing device lacks second computer program for a development environment, wherein the second computer program is executable via the second computing device; and wherein the first computer program comprises a runtime program that comprises a loader program and an open platform communication unified architecture (OPC UA) server program, wherein the loader program, when executed, is configured to: read a respective definition of each node of the series of nodes and of each of the one or more relationships of the project file; and upload the information model indicative of the respective definition of each node of the series of nodes and of each of the one or more relationships of the project file into the OPC UA server program; and the second computing device configured to execute the second computer program for the development environment, wherein the development environment is configured to create the project file comprising a functional description of an operator interface application for an operator interface.

2. The system of claim 1, wherein the second computing device is configured to execute a first communication program to enable transfer of the project file from the second computing device to the first computing device via a communication channel.

3. The system of claim 1, wherein the OPC UA server program, when executed, is configured to display the information model of the project file prepared in the development environment.

4. The system of claim 1, wherein the information model is configured to be modified by an OPC UA client.

5. The system of claim 1, wherein the first computing device is incorporated in a machine operating in an industrial plant and is configured to execute the second computer program.

6. The system of claim 1, wherein the first computing device is configured to interact with or determine functions of a machine operating in an industrial plant.

7. The system of claim 1, wherein the project file is transferred from the computing device to the first computing device via one or more instruction packets defined by OPC UA standard.

8. The system of claim 1, wherein the first computing device and the second computing device are distinct and separate components configured to communicate with each other via a local network or a remote network.

9. The system of claim 1, wherein the first computing device and the second computing device are incorporated in a single component that includes one or more functionalities of the first computing device and the second computing device.

10. The system of claim 1, wherein the first computing device, upon executing the project file, is configured to extend the information model to one or more OPC UA nodes.

11. The system of claim 10, wherein the first computing device is configured to extend the information model to the one or more OPC UA nodes by generating one or more object types associated with a series of instance declarations, wherein the one or more object types are configured to be modified to add one or more characteristics to characterize the project file.

12. A method, comprising: on a first computing device executing a runtime program for: receiving, via a processor, a project file from a second computing device, wherein the project file is created in a development environment on the second computing device, and wherein the project file comprises a series of nodes and one or more relationships between the series of nodes that describe one or more functionalities of an operator interface application for an operator interface, and wherein the first computing device lacks the development environment; reading, via the processor utilizing a loader program of the runtime program, a plurality of definitions of the series of nodes and of the one or more relationships between the series of nodes; uploading, via the processor utilizing the loader program, an information model that describes the series of nodes and the one or more relationships between the series of nodes into an open platform communication unified architecture (OPC UA) server program, wherein each node of the information model is modifiable and extendable; causing, via the processor, the display of the information model; and receiving, at the processor, an input via the information model that modifies the project file while the project file is being executed.

13. The method of claim 12, comprising transferring information related to updating the project file, to the processor, via instructions packets defined by an OPC UA standard.

14. One or more non-transitory computer-readable media encoding one or more processor-executable routines, wherein the one or more routines, when executed by a processor, cause acts to be performed comprising: on a first computing device executing a runtime program for: receiving a project file from a second computing device, wherein the project file is created in a development environment on the second computing device, and wherein the project file comprises a series of nodes and one or more relationships between the series of nodes that describe one or more functionalities of an operator interface application for an operator interface, and wherein the first computing device lacks the development environment; reading, via a loader program of the runtime program, a plurality of definitions of the series of nodes and of the one or more relationships between the series of nodes; uploading, via the loader program, an information model that describes the series of nodes and the one or more relationships between the series of nodes into an open platform communication unified architecture (OPC UA) server program, wherein each node of the information model is modifiable and extendable; causing the display of the information model; and receiving an input via the information model that modifies the project file while the project file is being executed.

15. The one or more non-transitory computer-readable media of claim 14, wherein the operator interface is associated with an additional computing device that is distinct and separate from the computing device, and the additional computing device and the computing device communicate with each other via a local network or a remote network.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

(1) These and other characteristics of the present invention will become apparent from the following description of some embodiments, given as a non-restrictive example with reference to the attached drawings wherein:

(2) FIG. 1 schematically shows an embodiment of a system to design and/or update programs for the operator interface of machines and/or plants according to the present invention.

(3) To facilitate comprehension, the same reference numbers have been used, where possible, to identify identical common elements in the drawings. It is understood that elements and characteristics of one embodiment can conveniently be incorporated into other embodiments without further clarifications.

DETAILED DESCRIPTION OF SOME EMBODIMENTS

(4) The detailed description is given by way of example only and does not exhaust possible implementations of the invention. Embodiments of the present invention concern a system to design and/or update programs for the operator interface of machines and/or plants, and is indicated as a whole by the reference number 10.

(5) The design system 10 comprises at least one first calculation device 11 applied, for example integrated or embedded, on the machine and/or plant, and a second calculation device 12 on which the specific software (or development environment 20) is executed.

(6) The development environment 20 allows a user to define a project file 26 of the operator interface of a machine and/or plant.

(7) In particular, in the project file 26 all the functionalities that the user interface of the machine and/or plant needs to have are described.

(8) These functionalities can refer, for example, to the functionalities of the control devices with the corresponding variables and control parameters, as well as to all aspects connected to the graphic interface with the user.

(9) It should be noted that the second calculation device 12 is represented here as a component separate from the first calculation device 11.

(10) However, the considerations set forth below also apply if there is a single device suitable to execute both functions.

(11) In particular, the two devices 11 and 12 are kept separate in the event that the first calculation device 11 does not have sufficient hardware resources to execute the development environment 20.

(12) The first device 11 is used to execute a management program, called runtime program 21, of the interface between the user and the machine and/or plant, the runtime program comprising a control unit 22 consisting of a plurality of modules 23.

(13) Each module 23 interacts with one or more functionalities of the machine and/or plant, as will be better described below.

(14) According to one embodiment of the invention, the project file 26 defines the functionalities of the various modules 23, with the modalities explained below.

(15) In the preferred embodiment, the project file 26 is described as a series of OPC UA nodes and relations between OPC UA nodes. From project file 26, the runtime is able to develop an information model (26c) of the HMI project and display it by means of an OPC UA server 28.

(16) In the drawing of the embodiment, with reference to number 26a the project file 26 shared, or transmitted, through a communication channel 13 is identified. The communication channel 13 connects the two calculation devices 11, 12 in a known manner.

(17) With reference to number 26b a project file 26 is indicated, created in the second calculation device 12 and transferred by known means, for example by means of a USB key, to the first calculation device 11.

(18) According to a further aspect of the present invention, after transferring the project file 26, and after the OPC UA server 28 has displayed the project through the OPC UA information model 26c, it is possible to modify the information relating to the HMI project by means of instruction packets, for example Ethernet telegrams, defined by the OPC UA standard. In particular, by means of said instructions it is possible to modify the characteristics of the OPC UA nodes and the relations between said nodes, modifying the information model 26c of the HMI project and therefore the project itself.

(19) According to some embodiments of the invention, to correctly display the information model 26c, the runtime program 21 uses a program called OPC UA server 28.

(20) In particular, the invention provides that it is possible to describe, and therefore modify and/or update, the project file 26 no longer by means of a file, but acting on a series of nodes and relations between OPC UA nodes displayed by the OPC UA server 28 of the management program 21.

(21) Although the present invention describes the use of the specific OPC UA standard to exchange information between enabled devices, it is within the scope of the invention to use also other specifications, standard or non-standard, provided they are compatible with the functions to be performed and provided they can be managed with the calculation devices 11 and 12 used.

(22) According to one embodiment of the invention, upon activation of the first calculation device 11 a specific software is automatically launched, called update program 29.

(23) The update program 29 interrogates, or is interrogated by, the development environment 20 of the second calculation device 12.

(24) When the presence of an update project file 26 is communicated to the update program 29, the management program 21 activates its uploading and execution.

(25) Then the runtime program 21 starts a program called loader 27.

(26) The loader program 27 has the task of reading the definitions of the OPC UA nodes and the relations between the OPC UA nodes from the update file 26, as well as that of uploading into the OPC UA server 28 the information model 26c suitable to describe all the OPC UA nodes and the relations between the nodes of the specific project file 26. This functionality is a consequence of the fact that, according to the invention, the OPC UA standard, in particular the so-called information model of the standard, has been extended.

(27) Said extension serves to describe the project file 26, using the OPC UA nodes and the relations between said nodes to display the project file 26 through the OPC UA server 28.

(28) In particular, and more specifically, the extension of the OPC UA information model provides to create a series of OPC UA nodes of the type “Object Type”, “Object”, “Variable Type”, “Variable”, “Method”, “Reference Type”, “Reference”, which allow to define all the elements of an HMI project.

(29) Acting on the OPC UA nodes, possibly executable, made in the finalized manner, number and type, it is therefore possible to modify the project without any limitation, remaining compatible with the OPC UA standard.

(30) When the loader 27 has finished its activity, the OPC UA server 28, through its information model 26c, is able to display the entire project 26 prepared in the development environment 20.

(31) The various modules 23, which together constitute the control unit 22, are configured to read, each for the part for which they are responsible, a part of the project file 26 prepared in the development environment 20. To do so, each module reads the characteristics from the information model 26c uploaded by the loader 27 into the OPC UA server 28.

(32) The modules 23 can comprise, for example, but not exclusively, alarm modules 23a, OPC UA client modules 23b, communication drivers toward control devices such as PLCs 23c, dataloggers or datastores 23d, recipes 23e, user management 23 f, and others.

(33) Each of the modules 23 is suitably configured to know, and therefore acquire, the part of the project file 26 described by the information model 26c and displayed by the OPC UA server 28 that is relevant to them. In this way, after reading, each module 23 begins to execute, possibly updating, modifying and/or implementing its own functionalities, following the indications of the project file 26.

(34) We will now supply some possible examples of modifications of the project file 26 uploaded in the information model 26c of the OPC UA server 28.

(35) These examples involve: Adding graphic elements to an interface panel, such as a label, a trend, etc.; Moving a graphic object of a panel; Modifying a translation of a text; Changing address of a variable of the PLC.

(36) Based on what has been described above, the modes with which the update occurs mean that any characteristic of the project file 26, acting on the information model 26c, can be modified.

(37) It is also possible to delete any element of the project, to add any element of the project, and to modify any property of any element of the project.

(38) According to an important aspect of the present invention, the modifications described above can be made while the project itself is being executed on the operating machine and/or plant.

(39) The modifications made to the project occur, in fact, through changes made in the information model 26c, as indicated above, and can be implemented immediately by the various modules 23 of the management program 21. The modules 23 have the task of applying the modifications made to the project by means of variations to the information model 26c.

(40) According to a further possible solution, the OPC UA server 28 allows modifications to the information model 26c only if the user connected to the OPC UA server has the appropriate authorizations. It is possible to classify different types of users based on said authorizations: users who do not have the right to view and modify the information model 26c; users who have the right to view the information model 26c but not to modify it; users who have the right to view and modify the information model 26c.

(41) According to a further possible solution, the authorizations to users can also be connected in relation to only one part of the information model 26c. This allows to make partial modifications to the project file 26.

(42) Alternatively, according to a variant of the invention, said authorizations and the parts of the information model 26c can be combined together in any way.

(43) By way of non-exhaustive example, in this case it is possible to have users with the following authorizations: to view all the information model of the project 26c, but be able to modify only a part of it to view a part of the information model 26c and not be able to modify it to view a part of the information model 26c and be able to modify it.

(44) According to a further possible solution, the modifications to the information model, implemented by the control unit 22, can be implemented temporarily, and therefore are valid only until the corresponding machine and/or plant is switched off.

(45) According to a further possible solution, the modifications to the information model, implemented by the control unit 22, can be made persistent.

(46) It is clear that modifications and/or additions of parts may be made to the management system and update method as described heretofore, without departing from the field and scope of the present invention.

(47) It is also clear that, although the present invention has been described with reference to some specific examples, a person of skill in the art shall certainly be able to achieve many other equivalent forms, having the characteristics as set forth in the claims and hence all coming within the field of protection defined thereby.

(48) In the following claims, the sole purpose of the references in brackets is to facilitate reading: they must not be considered as restrictive factors with regard to the field of protection claimed in the specific claims.