Machines, computer program products, and computer-implemented methods providing an integrated node for data acquisition and control
First Claim
1. A programmable logic controller (PLC) positioned to allow a remote host to interface with a plurality of remote subsystems to thereby define an integrated node, the integrated node comprising:
- a central processing unit;
a network interface to route network connections with the remote host and the plurality of remote subsystems;
a protocol translator to translate communications with each of the plurality of remote subsystems according to one of a plurality of process automation communication protocols;
an input/output unit positioned to transfer communications between the integrated node, the plurality of remote subsystems, and the remote host;
a database server module positioned to archive data acquired from the plurality of subsystems in a plurality of time-stamped archive files; and
a non-transitory computer-readable storage medium having stored thereon;
first executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations;
synchronizing an internal clock in the remote host and in each of the plurality of remote subsystems to thereby define a plurality of remote time-synchronized subsystems,acquiring time-stamped process data from each of the plurality of remote time-synchronized subsystems responsive to a first pre-defined rate,archiving the acquired time-stamped process data responsive to the acquiring operation in a time-stamped archive file,extracting the archived time-stamped process data from at least one time-stamped archive file responsive to receiving a command from the remote host, andtransmitting the time-stamped process data extracted from the at least one time-stamped archive file, to the remote host responsive to receiving the command from the remote host;
second executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations;
detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and any of the plurality of remote time-synchronized subsystems,retrieving at least one data file from one of the plurality of remote time-synchronized subsystems responsive to the detected time of the communication failure and the detected time of the corresponding communication recovery,extracting time-stamped process data from the retrieved at least one data file, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery, andtransmitting the time-stamped process data extracted from the retrieved at least one data file to the remote host responsive to the extracting operation; and
third executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations;
detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and the remote host,extracting portions of the archived time-stamped process data from the at least one time-stamped archive file, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery,transmitting the time-stamped process data extracted from the at least one archived time-stamped archive file, to the remote host responsive to the extracting operation, andbuffering data transmissions in the communication link between the integrated node and the remote host responsive to detecting bandwidth starvation therein.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments of an integrated node, such as a programmable logic controller, are provided for process automation and seamless, flexible subsystem communications, allowing a remote host to interface with a plurality of remote and in-plant subsystems and services using a wired or wireless network interface and having a database server and a protocol translator or translation server to convert and manipulate various industrial interfaces and protocols. Embodiments of the integrated node time-synchronize the plurality of remote subsystems, acquire and archive time-stamped process data, report exceptions therein to the remote host, and extract and transmit time-stamped process data to the remote host. Embodiments of computer program products and computer implemented methods also are provided to detect a time of communication failure and a time of a corresponding recovery between a node and either a remote subsystem or a remote host.
48 Citations
20 Claims
-
1. A programmable logic controller (PLC) positioned to allow a remote host to interface with a plurality of remote subsystems to thereby define an integrated node, the integrated node comprising:
-
a central processing unit; a network interface to route network connections with the remote host and the plurality of remote subsystems; a protocol translator to translate communications with each of the plurality of remote subsystems according to one of a plurality of process automation communication protocols; an input/output unit positioned to transfer communications between the integrated node, the plurality of remote subsystems, and the remote host; a database server module positioned to archive data acquired from the plurality of subsystems in a plurality of time-stamped archive files; and a non-transitory computer-readable storage medium having stored thereon; first executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations; synchronizing an internal clock in the remote host and in each of the plurality of remote subsystems to thereby define a plurality of remote time-synchronized subsystems, acquiring time-stamped process data from each of the plurality of remote time-synchronized subsystems responsive to a first pre-defined rate, archiving the acquired time-stamped process data responsive to the acquiring operation in a time-stamped archive file, extracting the archived time-stamped process data from at least one time-stamped archive file responsive to receiving a command from the remote host, and transmitting the time-stamped process data extracted from the at least one time-stamped archive file, to the remote host responsive to receiving the command from the remote host; second executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations; detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and any of the plurality of remote time-synchronized subsystems, retrieving at least one data file from one of the plurality of remote time-synchronized subsystems responsive to the detected time of the communication failure and the detected time of the corresponding communication recovery, extracting time-stamped process data from the retrieved at least one data file, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery, and transmitting the time-stamped process data extracted from the retrieved at least one data file to the remote host responsive to the extracting operation; and third executable computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations; detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and the remote host, extracting portions of the archived time-stamped process data from the at least one time-stamped archive file, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery, transmitting the time-stamped process data extracted from the at least one archived time-stamped archive file, to the remote host responsive to the extracting operation, and buffering data transmissions in the communication link between the integrated node and the remote host responsive to detecting bandwidth starvation therein. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A programmable logic controller having a central processing unit and a non-transitory computer-readable storage medium to allow a remote host to interface with a plurality of remote subsystems to thereby define an integrated node, the integrated node comprising:
-
an input/output unit configured to transfer communications between the node the plurality of remote subsystems and the remote host; a database server module configured to archive data acquired from the plurality of subsystems in a plurality of time-stamped archive files; a time-synchronizer configured to synchronize an internal clock in each of the plurality of remote subsystems to thereby define a plurality of remote time-synchronized subsystems; a data acquirer configured to periodically acquire time-stamped process data from each of the plurality of remote time-synchronized subsystems and archive the acquired time-stamped process data using the database server module; an exception reporter configured to determine exceptions in the acquired time-stamped process data acquired from the plurality of remote time-synchronized subsystems and report the exceptions to the remote host; a data uploader configured to periodically upload the archived time-stamped process data to the remote host; a subsystems restorer configured to retrieve time-stamped data from any of the plurality of remote time-synchronized subsystems responsive to communications failure between the integrated node and any of the plurality of remote time-synchronized subsystems, the subsystems restorer comprising a computer program being stored on the non-transitory computer-readable storage medium and operable on the central processing unit, the computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations; detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and any of the plurality of remote time-synchronized subsystems, retrieving at least one data file from one of the plurality of remote time-synchronized subsystems responsive to the detected time of the communication failure and the detected time of the corresponding communication recovery, extracting time-stamped process data from and contained within the retrieved at least one data file, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery, and transmitting the time-stamped process data extracted from the retrieved at least one data file, to the remote host responsive to the extracting operation; and a host restorer being a computer program being stored on the non-transitory computer-readable storage medium and operable on the central processing unit, the computer program comprising a set of instructions that, when executed by the central processing unit, causes the integrated node to perform the following operations; detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and the remote host, extracting portions of the archived time-stamped process data from and contained within one or more of the at least one time-stamped archive files, the time-stamped process data being extracted starting from the time of the communication failure and ending at the time of the corresponding communication recovery, and transmitting the extracted portions of the archived time-stamped process data extracted from the one or more of the at least one time-stamped archive files, to the remote host responsive to the extracting operation. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer-implemented method for providing a uniform restoration of interrupted data transmissions between a plurality of remote subsystems and a programmable logic controller positioned to allow a remote host computer to interface with the plurality of remote subsystems, the programmable logic controller thereby defining an integrated node, the method comprising the steps of:
-
detecting a time of a communication failure and a time of a corresponding communication recovery in a communications link between the integrated node and any of the plurality of remote subsystems, each of the integrated node and the plurality of remote subsystems being time-synchronized according to a uniform time source; retrieving at least one data file from one of the plurality of remote time-synchronized subsystems responsive to the detected time of the communication failure and the detected time of the corresponding communication recovery; extracting time-stamped process data from the at least one data file responsive to the retrieving step, the time-stamped process data being data starting from the time of communication failure and ending at the time of the communication recovery; restoring the time-stamped process data to the remote host computer responsive to the steps of retrieving the at least one data file and extracting the time-stamped process data from the at least one data file; detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and the remote host computer; extracting time-stamped process data from at least one time-stamped archive file, the time-stamped process data being data starting from the time of the communication failure and ending at the time of the corresponding communication recovery; and transmitting the time-stamped process data, extracted from the at least one time-stamped archive file, to the remote host computer responsive to the step of extracting of the time-stamped process data from the at least one time-stamped archive file. - View Dependent Claims (16, 17)
-
-
18. A computer-implemented method for providing a uniform restoration of interrupted data transmissions between a remote host and a programmable logic controller acquiring process data from a plurality of remote subsystems, the programmable logic controller thereby defining an integrated node, the computer-implemented method comprising the steps of:
-
detecting a time of a communication failure and a time of a corresponding communication recovery in a communication link between the integrated node and any of the plurality of remote time-synchronized subsystems; extracting time-stamped process data from and contained within at least one data file retrieved from one of the plurality of remote time-synchronized subsystems, the time-stamped process data being for a time block starting from the time of the communication failure in the communication link between the integrated node and any of the plurality of remote time-synchronized subsystems and ending at the time of the corresponding communication recovery; transmitting the time-stamped process data extracted from the retrieved at least one data file, to the remote host responsive to the extracting of the time-stamped process data from at least one data file; detecting a time of a communication failure and a time of a corresponding communication recovery in a communications link between the integrated node and the remote host, each of the integrated node and the remote host being time-synchronized according to a uniform time source; extracting time-stamped process data from at least one stored data file, the time-stamped process data being for a time block starting from the time of the communication failure in the communication link between the integrated node in the remote host and ending at the time of the corresponding communication recovery; and restoring the time-stamped process data extracted from the at least one stored data file to the remote host responsive to the time of the communication failure and the time of the corresponding communication recovery in the communications link between the integrated node and the remote host. - View Dependent Claims (19, 20)
-
Specification