Methods and apparatus for object-based process control
First Claim
Patent Images
1. A control device comprising:
- a virtual machine environment, the virtual machine environment executing an object or other software construct (collectively, “
object”
) that configures the control device to provide a control function, the object communicating a datum with an entity that stores the datum, and the object accessing the datum by reference to storage maintained in the entity.
8 Assignments
0 Petitions
Accused Products
Abstract
The provides improved control devices, systems and methods for operation thereof. These rely on control devices that provide virtual machine environments in which Java objects, or other such software constructs, are executed to implement control (e.g., to monitor and/or control a device, process or system). These objects define blocks which are the basic functional unit of the control. They also define the input, output and body parts from which blocks are formed, and the signals that are communicated between blocks. The objects also define nested and composite groupings of blocks used to control loops and higher-level control functions.
-
Citations
72 Claims
-
1. A control device comprising:
-
a virtual machine environment, the virtual machine environment executing an object or other software construct (collectively, “
object”
) that configures the control device to provide a control function,the object communicating a datum with an entity that stores the datum, and the object accessing the datum by reference to storage maintained in the entity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
the virtual machine environment is a Java virtual machine, and the object is a Java object. -
3. The control device of claim 1, wherein the object accesses the datum via any of a pointer, an address, or a symbolic or other reference to storage maintained in the entity.
-
4. The control device of claim 3, wherein the object accesses the datum for purposes of any of getting or setting a value thereof.
-
5. The control device of claim 3, wherein the object does not maintain a copy of the datum.
-
6. The control device of any one of claims 1-5, wherein the datum is any of a measurement, a setpoint or other value, or any of a range, a status, a limit status, a time stamp or other information pertaining to such measurement, setpoint or other value.
-
7. The control device of any one of claims 1-5, wherein the object configures the control device to provide any of sensing, actuation and other control functions.
-
8. The control device of any one of claims 1-5, wherein the object configures the control device to execute one or more control blocks.
-
9. The control device of claim 8, wherein one or more of the control blocks execute a control algorithm, provide input, and/or provide output.
-
10. The control device of any one of claims 1-5, wherein the device is any of a workstation, controller, control station, and a field device.
-
11. The control device of any one of claims 1-5 adapted for providing any of process, industrial, environmental or other control.
-
12. The control device of any one of claims 1-5, wherein the object comprises
one or more mandatory portions for which memory is allocated in the control device at the time of object creation, and one or more optional parts for which memory space is allocated subsequent to object creation as needed. -
13. The control device of any one of claims 1-5, comprising
a second object that executes in the virtual machine environment, the object and the second object having input and output parts defined from subsets of a common set of input and output classes, respectively. -
14. The control device of any one of claims 1-5, wherein the object configures the device to provide an analog input function with multiple inputs coupled to accept readings from multiple respective input devices and to generate an output based on one or more of those readings.
-
-
15. A control system comprising:
-
one or more control devices, each providing a virtual machine environment, a plurality of objects executing in the one or more virtual machine environments, the plurality of objects including a first object and a second object that communicate a datum with one another, the first object maintaining a sole instance of the datum as between at least the first and second objects, the second object accessing the datum by reference. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
the virtual machine environment maintained by the control devices is a Java virtual machine, and the first object and the second object are Java objects. -
17. The control system of claim 15, wherein the second object accesses the datum via any of a pointer, an address, or a symbolic or other reference to the instance of the datum maintained by the first object.
-
18. The control system of claim 17, wherein the second object accesses the datum for purposes of any of getting or setting a value thereof.
-
19. The control system of any one of claims 15-18, wherein the datum is any of a measurement, a setpoint or other value, or any of a range, a status, a limit status, a time stamp or other information pertaining to such measurement, setpoint or other value.
-
20. The control system of any one of claims 15-18, wherein the first and second objects configure control devices on which they execute to provide any of sensing, actuation and other control functions.
-
21. The control system of any one of claims 15-18, wherein the first and second objects configure the one or more control devices on which they reside to execute control blocks.
-
22. The control system of claim 21, wherein at least one of the control blocks executes a control algorithm, provides input and/or provides output.
-
23. The control system of any one of claims 15-18, wherein one or more of the control devices is any of a workstation, controller, control station, and a field device.
-
24. The control system of any one of claims 15-18 adapted for providing any of process, environmental or other control.
-
25. The control system of any one of claims 15-18, wherein at least one of the first and second object comprise
one or more mandatory portions for which memory is allocated in the control device at the time of object creation, and one or more optional parts for which memory space is allocated subsequent to object creation as needed. -
26. The control system of any one of claims 15-18, wherein the first and second objects have input and output parts defined from subsets of a common set of input and output classes, respectively.
-
27. The control system of any one of claims 15-18, wherein at least one of the first and second objects configures the device to provide an analog input function with multiple inputs coupled to accept readings from multiple respective input devices and to generate an output based on one or more of those readings.
-
-
28. A control system comprising:
-
one or more control devices, each providing a virtual machine environment, a plurality of objects executing in the one or more virtual machine environments, the plurality of objects including a first object and a second object between which a connection is established to communicate with one another one or more data contained in a data structure, the first object maintaining a sole instance of the data structure and data contained therein as between at least the first and second objects, the second object accessing data in the data structure by reference. - View Dependent Claims (29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
a measurement, a setpoint or other value, and any of a range, a status, a limit status, a time stamp or other information pertaining to such measurement, setpoint or other value. -
30. The control system of claim 29, wherein
the virtual machine environment maintained by the control devices is a Java virtual machine, and the first object and the second objects are Java objects. -
31. The control system of claim 29, wherein the second object accesses data in the data structure via any of a pointer, an address, or a symbolic or other reference to the instance of the data structure maintained by the first object.
-
32. The control system of claim 29, wherein the second object accesses the data structure for purposes of any of getting or setting a datum thereof.
-
33. The control system of claim 28, wherein the datum is any of a measurement, a setpoint or other value, or any of a range, a status, a limit status, a time stamp or other information pertaining to such measurement, setpoint or other value.
-
34. The control system of claim 28, wherein the first and second objects configure control devices on which they execute to provide any of sensing, actuation and other control functions.
-
35. The control system of claim 28, wherein the first and second objects configure the one or more control devices on which they reside to execute control blocks.
-
36. The control system of claim 33, wherein at least one of the control blocks executes a control algorithm, provides input and/or provides output.
-
37. The control system of claim 28, wherein one or more of the control devices is any of a workstation, controller, control station, and a field device.
-
38. The control system of claim 28 adapted for providing any of process, environmental or other control.
-
39. The control system of any one of claims 28-38, wherein the data structure comprises a bi-directional variable having
a forward-going measurement, setpoint or other value (collectively, “ - forward-going value”
),any of a range, a status, a limit status, a time stamp or other information pertaining to the forward-going value, a back-going measurement, setpoint or other value (collectively, “
back-going value”
), andany of a range, a status, a limit status, a time stamp or other information pertaining to the back-going value).
- forward-going value”
-
-
40. A control system comprising:
-
one or more control devices, each providing a virtual machine environment, a plurality of objects executing in the one or more virtual machine environments, the plurality of objects including a first object that communicates a datum with a second object and a third object, the first object maintaining a sole instance of the datum as between at least the first, second and third objects, the second and third objects accessing the datum by reference. - View Dependent Claims (42)
a forward-going measurement, setpoint or other value (collectively, “ - forward-going value”
),
any of a range, a status, a limit status, a time stamp or other information pertaining to the forward-going value, a back-going measurement, setpoint or other value (collectively, “
back-going value”
), andany of a range, a status, a limit status, a time stamp or other information pertaining to the back-going value).
-
-
41. A control system comprising:
-
one or more control devices, each providing a virtual machine environment, a plurality of objects executing in the one or more virtual machine environments, the plurality of objects including a first object with which connections are established by a second object and by a third object, each connection being for the transfer of data contained in a data structure, the first object maintaining a sole instance of the data structure and data contained therein as between at least the first, second and third objects, the second and third objects accessing data in the data structure by reference.
-
-
43. A method of operating a control device comprising:
-
executing an object or other software construct (collectively, “
object”
) on a virtual machine environment provided in the control device, the object configuring the control device to provide a control function,communicating a datum between the object and an entity that stores the datum, the object accessing the datum by reference to storage maintained in the entity. - View Dependent Claims (44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
-
-
54. A method of operating a control system comprising:
-
executing a plurality of objects in virtual machine environments provided on one or more control devices, the objects configuring the one or more devices to provide control functions, communicating a datum between first and second ones of the plurality of objects, maintaining in the first object a sole instance of the datum, as between at least the first and second objects, and accessing by reference the datum with the second object. - View Dependent Claims (55, 56, 57, 58, 59, 60, 61, 62)
-
-
63. A method of operating a control system, comprising:
-
executing a plurality of objects in virtual machine environments provided on one or more control devices, the objects configuring the one or more devices to provide control functions, communicating one or more data contained in a data structure between first and second ones of the plurality of objects, maintaining in the first object a sole instance of the data structure and data contained therein as between at least the first and second objects, accessing by reference data in the data structure with the second object. - View Dependent Claims (64, 65, 66, 67, 68, 69, 70)
a measurement, a setpoint or other value, and any of a range, a status, a limit status, a time stamp or other information pertaining to such measurement setpoint or other value. -
65. The method of claim 63, wherein the executing step includes executing at least the first and second objects to configure the control devices to provide any of sensing, actuation and other control functions.
-
66. The method of claim 63, wherein the executing step includes executing one or more control blocks associated with the first and second objects.
-
67. The method of claim 63, wherein at least one of the control blocks executes a control algorithm, provides input and/or provides output.
-
68. The method of claim 63, wherein one or more of the control devices is any of a workstation, controller, control station, and a field device.
-
69. The method of claim 63 adapted for providing any of process, environmental or other control.
-
70. The method of any one of claims 63-69, wherein the data structure comprises a bi-directional variable having
a forward-going measurement, setpoint or other value (collectively, “ - forward-going value”
),any of a range, a status, a limit status, a time stamp or other information pertaining to the forward-going value, a back-going measurement, setpoint or other value (collectively, “
back-going value”
), andany of a range, a status, a limit status, a time stamp or other information pertaining to the back-going value).
- forward-going value”
-
-
71. A method of operating a control system, comprising:
-
executing a plurality of objects in virtual machine environments provided on one or more control devices, the objects configuring the one or more devices to provide control functions, communicating one or more data contained, in a data structure between first one of the objects and second and third ones of the objects, maintaining in the first object a sole instance of the data structure and data contained therein as between at least the first, second and third objects, accessing by reference data in the data structure with the second and third objects. - View Dependent Claims (72)
a forward-going measurement, setpoint or other value (collectively, “ - forward-going value”
),
any of a range, a status, a limit status, a time stamp or other information pertaining to the forward-going value, a back-going measurement, setpoint or other value (collectively, “
back-going value”
), andany of a range, a status, a limit status, a time stamp or other information pertaining to the back-going value).
-
Specification