A non-transitory computer-readable medium having a computer program stored thereon, the non-transitory computer-readable medium for execution by a computer of a process control system comprising at least one OPC client, wherein the computer comprises only one OPC server which communicates with the OPC client via a standardized OPC interface, the process control system further comprising a first control device and a second control device that are redundantly operated and configured to communicate with the only one OPC server via a corresponding coupling device, wherein each of the first and second control devices provides process variables and status information to the only one OPC server, which status information identifies to the only one OPC server a current role of its respective control device, wherein the current role of the first and second control device is either that of a main control device or an auxiliary control device, and wherein the execution of the non-transitory computer-readable medium by the computer causes the computer to:
- detect which of the first and second control devices is the main control device in response to receiving the status information of the first and second control devices;
- register the list of variables generated by the OPC client at the main control device;
- read and buffer the process variables requested by the OPC client by both the first and second control devices;
- and
- transmit to the OPC client only the process variables which have been provided by the main control device.