PROVISION OF PROCESS VALUES IN A PROCESS INSTALLATION
20170300043 · 2017-10-19
Assignee
Inventors
- Karl-Heinz Deiretsbacher (Effeltrich, DE)
- Markus Erlmann (Mainleus, DE)
- Sven KERSCHBAUM (Fürth, DE)
- Frank Volkmann (Nürnberg, DE)
Cpc classification
Y02P90/02
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
G05B2219/33149
PHYSICS
H04L67/12
ELECTRICITY
International classification
Abstract
A method for operating a server device in a system is disclosed. The server device determines a current process value of at least one process parameter of a process controlled by the system and transmits the determined current process values to a plurality of client devices in the system for each process parameter or a subset thereof via a data network. According to the invention, the server device forms a variable group for at least one process parameter which is to be transmitted to more than one of the client devices. The server device then combines in each case the current process values of the at least one process parameter in the variable group at the different transmission times to form a single multi-target message and at the different transmission times to form a single multi-target message and transmits the multi-target message to a group address in the data network.
Claims
1.-12. (canceled)
13. A method of operating a server device in an installation, said installation controlling a process and having multiple client devices connected to a server by a data network, said method of: the server device forming a variable group of more than one of the client devices for at least one respective process parameter that is to be transmitted to those respective client devices, the server device ascertaining the current process values of at least one process parameter of the process, or a subset of the process parameters, at respective different transmission times, the server device providing the current process value of the at least one process parameter of the process, or a subset of the process parameters, as one multitarget message formed at each transmission time that includes the group address of the respective variable group, and the server device transmitting the current process values in the multitarget message formed at each transmission time via the data network to the multiple client devices in the variable group at the group address of the variable group.
14. The method of claim 13, further comprising: the server device receiving from each client device a respective enquiry message that contains an indication of from which of the at least one process parameter the respective current process values are to be transmitted to the client device; the server device forming a variable group using the enquiry telegrams received by the server device; the server device setting a group address for the variable group and communicating the group address to those client devices whose enquiry telegram contains an indication of the at least one process parameter of the variable group.
15. The method of claim 14, further comprising the step of the server device receiving an enquiry telegram via a network connection from at least one of the client devices in a configuration phase during an OPC-UA session in accordance with OPC-UA standard.
16. The method of claim 14, further comprising: the server device receiving from each client device at least one respective prescribed transmission parameter value that controls a transmission behavior of the server device; the server device selecting the client devices in the variable group that receives the at least one process parameter such that the transmission parameter values that control transmission of each process parameter to the variable group satisfy a predetermined similarity criterion.
17. The method of claim 16, wherein the server device negotiates with respective client devices a respective reduced format requirement for each process parameter to be transmitted to a respective client device, the negotiated format requirements being used by the server device to select the client devices in the variable group.
18. The method of claim 16, further comprising: the server device ascertaining a respective optimum transmission parameter value for at least one transmission parameter for the variable group on the basis of all transmission parameter values prescribed for the client devices in the variable group, using a predetermined optimization criterion, the server device sends each multitarget message by setting the at least one transmission parameter to the respective optimized transmission parameter value.
19. The method of claim 13, further comprising the server device concluding the transmission process for each multitarget message independent receiving an acknowledgment of receipt of the multitarget message from the client devices.
20. The method of claim 19, wherein the transmission process for each multitarget message is concluded independent receiving an acknowledgment of receipt from the client devices by using one method of a group of methods consisting of a UDP multitarget method, a UDP broadcast method, an AVB stream method or a TSN stream method.
21. The method of claim 13, wherein, in addition to said variable group, at least one further variable group is formed for at least one of the respective process parameters that is to be transmitted to multiple respective client devices.
22. The method of claim 21, wherein the server device combines the two variable groups and transmits a multitarget message only to the larger of the two variable groups at the respective different times, if the smaller message is a subset of the larger variable group.
23. A server device adapted to be connected to client devices by a data network in an installation that controls a process, said server device comprising: a data processor, said data processor ascertaining a current process value at respective different transmission times for at least one process parameter of the process, and a transmitter, said transmitter transmitting the respective ascertained current process values for each process parameter or a subset of the process parameters at each transmission time to multiple client devices in the installation via the data network, said data processor forming a variable group of more than one of the client devices for at least one process parameter that is to be transmitted to the variable group at a group address, said server device combining the current process values of the at least one process parameter into a single multitarget message at each transmission time and transmitting the multitarget message to the group address of the variable group in the data network.
24. A client device adapted to be connected to at least one server device by a data network in an installation that controls a process, said client device comprising: a data processor, said data processor providing an enquiry message that contains an indication of which of the at least one process parameter respective process values are to be transmitted to the client device, a transmitter adapted to transmit messages to a server device via the data network, said transmitter being adapted to transmit an enquiry message that contains an indication of which of the at least one process parameter respective process values are to be transmitted to the client device; and a receiver adapted to receive a multitarget message from the server device at a group address assigned to the client by at least one server via the data network at the respective different transmission times, and to read from the multitarget message at least one process value contained therein.
25. An installation adapted to control a process, said installation comprising: a data network connecting multiple client devices; and at least one server device connected to the client devices by the data network, said server device ascertaining a current process value of the process at respective different transmission times for at least one process parameter of the process, said server device forming a variable group of more than one of the client devices for the at least one ascertained process parameter that is to be transmitted to multiple client devices, said variable group having a group address, said server transmitting the respective ascertained current process value via the data network for each process parameter or a subset of the process parameters at each respective transmission time to multiple client devices in the installation as a single multitarget message at each transmission time to the group address of the variable group in the data network.
Description
[0029] An exemplary embodiment of the invention is described below. In this regard:
[0030]
[0031]
[0032] The exemplary embodiment explained below is a preferred embodiment of the invention. In the case of the exemplary embodiment, however, the described components of the embodiment are each individual features of the invention that can be considered independently of one another and that each also develop the invention independently of one another and hence can also be regarded as part of the invention individually or in a different combination than that shown. Furthermore, the described embodiment is also augmentable by further instances of the features of the invention that have already been described.
[0033]
[0034] By way of example, the installation may be designed for controlling a production process, for example the manufacture of a product or of workpieces, for example for motor vehicles. The installation may also be designed for process control, for example for generating power from nuclear power or for purifying sewage. The installation may also be designed to perform a control process, for example traffic control using traffic lights in a road transport network.
[0035] Each of the devices 12, 14, 16, 18 may in each case be an actuator and/or sensor for example. Each device 12, 14, 16, 18 is an installation component that monitors and/or influences part of the process to be controlled by the installation 10. The installation 10 can also have further devices (not depicted).
[0036] In the example illustrated in
[0037] Control of the process by the installation 10 may require the client devices 14, 16, 18 to be repeatedly notified of, or have transmitted to them, the current variable values of the variables A, B, C, D, H, i.e. the current process values A, B, C, D, H, in order to themselves be able to control the process. By way of example, there may be provision for the client device 14 (CLNT1), by way of example, to take the variable values A, B, C of the applicable process parameters as a basis for producing, by way of example, control commands or a control signal that controls a circulating pump, for example. By way of example, the client device 16 (CLNT2) can take the variable values A, B, C as a basis for producing control commands or a control signal that controls a conveyor belt, for example. By way of example, the client device 18 can take the variable values A, B, C as a basis for producing a control signal, for example, in order to display a current process state on a screen, for example.
[0038] In the installation 10, it may therefore be necessary for the server device 12 to transmit the current variable values of the variables A, B, C to multiple instances of the client devices 14, 16, 18 via the data network 20 repeatedly at different transmission times.
[0039] In this context, the installation 10 has provision for the server device 12 not to send each of the variable values A, B, C to the client devices 14, 16, 18 individually, that is to say the variable value A three times, the variable value B three times and the variable value C three times. Instead, the current variable values A, B, C are combined to form a multitarget telegram 22 that is transmitted into the data network 20 to a single address, namely a group address GA1. The client devices 14, 16, 18 may be configured such that they receive and process the multitarget telegram 22 if the multitarget telegram 22 is addressed to the group address GA1.
[0040] So that it is known in the server device 12 which variable values A, B, C are to be combined in the multitarget telegram and are to be transmitted to the group address GA1, the server device 12 may have had intersections or variable groups VG1, VG2 formed in it, each of which stipulates which of the variable values A, B, C, D, H are to be combined into a multitarget telegram in each case and to which group address GA1, GA2 the respective multitarget telegram of the respective variable group VG1, VG2 is to be sent.
[0041] To form the variable group VG1, VG2, the server device 12 can perform the method described below and illustrated in
[0042] The transmission of multitarget telegrams is not part of the OPC UA standard. The value changes of the variable values A, B, C are transmitted by means of a nonassured communication outside the OPC UA transport channel. On account of the fact that the value changes are transmitted in unassured fashion, it becomes possible for the same value change to be transmitted to multiple client devices 14, 16, 18 using one message.
[0043] The exemplary execution of a communication between the server device, on the one hand, and the client devices 14, 16, 18, on the other, can have the following appearance. A client device 14, 16, 18 sets up a session as defined by OPC UA with an
[0044] OPC UA server, namely in this case the server device 12, in a step S10 (SESS START). The client device notifies the server device 12, for example using the inherently known OPC UA mechanism, of the values (VAR) A, B, C, D, H in which the client device is interested in a step S12. This can also involve transmission properties being communicated, for example what update rate and/or what telegram size is desired or from what value change (deadband) a current variable value needs to be transmitted. In a step S14, the server checks whether it has already formed or defined or published a variable group for the combination of the variable values or for some of the variable values (VG?). If this is the case (symbolized by a “plus sign” in
[0045] There may then optionally be provision for the OPC UA session to be terminated in a step S18, so that no further transmission power is needed by the client.
[0046] In a step S20, the server device 12 then preferably cyclically sends the multitarget telegrams 22 with the current values of the desired variable group VG1, VG2 to the group addresses GA1, GA2. The cyclic transmission results in the particular advantage that an unassured transmission, i.e. without the requirement of an acknowledgment of receipt by the client devices 14, 16, 18, can take place. If a multitarget telegram 22 does not reach one of the client devices 14, 16, 18, then it is certain that current variable values will be transmitted to the client device again in the next transmission cycle.
[0047] In a step S22, the server device 12 can check whether a change in the subscriptions has taken place, that is to say whether a client device 14, 16, 18 has signed off from a variable group. To this end, the client device can set up an OPC UA session again in the manner described and alter the quantity of process parameters to be communicated. In step S22, the server device 12 can then check whether each variable group actually still has a member (MEMB). If this is the case (+), then cyclic transmission of the variable values from the variable group is continued in step S20 (SEND VG). When the last client device signs off from a variable group, the latter is either erased from the server device 12 in a step S24 and the server device 12 publishes or transmits no further updates for this variable group (END). As an alternative, it is possible for the variable group to be maintained and only the transmission interrupted. If the variable group is not erased after the last client device signs off, this is advantageous because the variable group does not need to be re-created when a client device signs on for this variable group again, for example.
[0048] To implement the described principle of the variable group in the OPC UA standard, there may be provision for the following properties of the variable group. A variable group is a reference to a set of variables and therefore combines them to form an entity. The variables themselves are not part of the variable group. A variable group can be regarded as an atomic set. Should the same variables be addressed in different variable groups, then these can nevertheless be regarded as separate entities. In other words, these variables would be published repeatedly. The data packet that results from the values of a variable group, that is to say the respective multitarget telegram, needs to be able to be sent in a UDP datagram if the UDP protocol is used.
[0049] As the OPC UA session can be terminated in the optional step S18, this results in the advantage that even devices with very low computation power can now be supplied with current process values. A synonymous mechanism between OPC UA and the transmission of process maps becomes possible. For the first time, this allows OPC UA to be used effectively at the field level, that is to say for individual actuators and/or sensors for coupling automation-engineering devices.
[0050] Resources are saved in the server because the server does not have to implement management of publish requests and notifications—messages that are part of the OPC UA standard.
[0051] Besides the described variant that the properties for the variable values, i.e. the subscription, are negotiated using the OPC UA mechanism, other methods are also possible, for example advance planning or negotiation using a different connection setup, for example specific terminals, that is to say TCP sockets (TCP—transport control protocol), for example.
[0052] A client device can also transmit value changes for a variable group in encrypted form. The encryption parameters, for example the key, can be interchanged using the aforementioned methods for negotiating the property of the subscription. This makes certain that the key is transmitted securely.
[0053] In order to make certain of the determinism of the transmission, it is possible to use AVB or TSN streams, for example. These guarantee the bandwidth for the transmission.
[0054] The use of UDP can be regarded as exemplary. It is possible to use all transmission channels that support multitarget or broadcast transmissions. Particularly when IPv6 (internet protocol, version 6) is used, it therefore becomes possible to set up such a communication across sub networks.
[0055] If the transmission protocol used is a secured protocol, for example TCP, then the update can also be transmitted acyclically. In this case, it is also possible for just value changes to be transmitted instead of a complete process map.
[0056] Overall, the example shows how the invention can provide UDP multitarget subscriptions for OPC UA.
LIST OF REFERENCE SYMBOLS
[0057] 10 Installation [0058] 12 Server device [0059] 14 Client device [0060] 16 Client device [0061] 18 Client device [0062] 20 Data network [0063] 22 Multitarget telegram [0064] S10 to S24 Method steps