Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
DETAILED ACTION
DETAILED ACTION
Claims 1 – 10 and 21 - 30 are pending in the application.
Claims 1, 21, and 26 are independent.
Claims 11 – 20 were non-elected subject to an election/restriction requirement and were cancelled.
Claim Objections
Claim 25 is objected to because of the following informalities: Claim 25 discloses the element: “disassociating the one or more output terminals” whereas the specification discloses in paragraph 0138: “dissociates the one or more output terminals.” Thus the specification or the claim uses the incorrect form of the verb. Appropriate correction is required.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Claims 1 – 10 and 21 – 30 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1 – 20 of U.S. Patent Application No. 18/227,100. This rejection is a provisional double patenting rejection as the claims in the ‘100 application have not yet been patented as of the date of this office action. Although the claims at issue are not identical, they are not patentably distinct from each other because they are simple changes of a statutory category. A person of ordinary skill in the art would conclude that the invention defined in the claims at issue would have been an obvious variation of the invention defined in the claims of the U.S. Patent. Comparisons of selected claims 1 and 3 – 7 in the instant application are shown in the following table. A mapping of claims to those disclosed in the U.S. Patent No. 9,582,393 is as shown in the table; and claims 8 – 20 could also be mapped to similar claims in the patent.
Claims in instant App: 18/227,091
Claims in US Patent App. 18/227,100
1. A system comprising:
an industrial control system comprising one or more input terminals,
wherein the industrial control system is configured to perform one or more operations in association with an industrial automation system based on data received via the one or more input terminals; and
processing circuitry comprising one or more output terminals communicatively coupled to the one or more input terminals, wherein the processing circuitry is configured to:
provide a virtualized industrial automation device communicatively coupled to the industrial control system via the one or more output terminals;
receive an event notification from a first container provided by one or more computing devices external to the industrial automation system, wherein the first container is configured to perform a monitoring operation and generate the event notification based on the monitoring operation;
operate the virtualized industrial automation device to expose the event notification to the one or more input terminals; and
transmit the data via the one or more input terminals to the industrial control system.
1. A system comprising:
an industrial network device comprising one or more input terminals,
wherein the industrial network device is configured to perform one or more operations in association with an industrial automation system based on symbolic data received via the one or more input terminals; and
processing circuitry comprising one or more output terminals communicatively coupled to the one or more input terminals, wherein the processing circuitry is configured to:
provide a virtualized control system communicatively coupled to the industrial network device via the one or more output terminals;
receive an event notification from a first container provided by one or more computing devices external to the industrial automation system;
operate the virtualized control system to expose the event notification via a symbolic common industrial protocol (CIP) namespace configured to provide the symbolic data to the one or more input terminals based on the event notification; and
transmit the symbolic data corresponding to the virtualized control system via the one or more input terminals to the industrial network device.
3. The system of claim 1, wherein the processing circuitry is configured to provide the virtualized industrial automation device at least in part by providing a container performing operations to provide the virtualized industrial automation device.
3. The system of claim 1, wherein the processing circuitry is configured to provide the virtualized control system at least in part by providing a container performing operations to provide the virtualized control system.
4. The system of claim 1, wherein the processing circuitry is configured to operate the virtualized industrial automation device to expose the event notification to the one or more input terminals via a common industrial protocol (CIP) object configured to provide the data to the one or more input terminals based on the event notification.
4. The system of claim 1, wherein the processing circuitry is configured to operate the virtualized control system to expose the event notification in response to the industrial network device polling the symbolic CIP namespace.
5. The system of claim 1, wherein the first container is configured to: receive acquired data from a sensor of a target device; perform a processing operation on the acquired data; generate the event notification based on the processing operation; and transmit the event notification to the processing circuitry without transmitting the acquired data.
5. The system of claim 1, wherein the first container is configured to: receive acquired data from a sensor of a target device; perform a processing operation on the acquired data; generate the event notification based on the processing operation; and transmit the event notification to the processing circuitry without transmitting the acquired data.
6. The system of claim 5, wherein the acquired data comprises a first amount of data, wherein the event notification comprises a second amount of data, and wherein the second amount of data is less than the first amount of data.
6. The system of claim 5, wherein the acquired data comprises a first amount of data, wherein the event notification comprises a second amount of data, and wherein the second amount of data is less than the first amount of data.
7. The system of claim 1, wherein the industrial control system is configured to perform the one or more operations based on the data received via the one or more input terminals and based on an input/output assignment configured to associate the one or more input terminals with the one or more output terminals and the virtualized industrial automation device.
7. The system of claim 1, wherein the industrial network device is configured to perform the one or more operations based on the symbolic data received via the one or more input terminals and based on an input/output assignment configured to associate the one or more input terminals with the one or more output terminals and the virtualized control system.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1 - 10, 21 – 24, and 26 – 30 are rejected under 35 U.S.C. 103 as being unpatentable over Strohmenger et al. (US PG Pub. No. 20150205269), herein “Strohmenger,” in view of Biernat et al. (PG Pub. No. 20220091583), herein “Biernat.”
Regarding claim 1,
Strohmenger teaches a system comprising: an industrial control system comprising one or more input terminals, wherein the industrial control system is configured to perform one or more operations in association with an industrial automation system based on data received via the one or more input terminals; and (Par. 0002: “Industrial controllers and their associated input/output (I/O) devices can be useful to the operation of modern industrial automation systems. These industrial controllers can interact with field devices on the plant floor to control automated processes relating to such objectives as product manufacture, material handling, batch processing, supervisory control, and other such applications. Industrial controllers can store and execute user-defined control programs to effect decision-making in connection with the controlled process. Such programs can include, but are not limited to, ladder logic, sequential function charts, function block diagrams, structured text, or other such programming structures. In general, industrial controllers can read input data from sensors and metering devices that can provide discreet and telemetric data regarding one or more states of the controlled system, and can generate control outputs based on these inputs in accordance with the user-defined program.” See also Abstract and Par. 0033 – input of monitored data, data analysis, and to control operation of the industrial automation system. Figures 1 - 5)
processing circuitry comprising one or more output terminals communicatively coupled to the one or more input terminals, wherein the processing circuitry is configured to: provide a virtualized industrial automation device communicatively coupled to the industrial control system via the one or more output terminals; (Par. 0033: “The cloud-based industrial controller can be a virtualized industrial controller, for example. The cloud-based industrial controller can monitor and analyze the collected information, generate control instructions based at least in part on the analysis results, and communicate the control instructions to the devices, processes, other assets, and/or other components of the industrial automation system to control operation of the industrial automation system.” See also Par. 0040, 0099 and figure 4 – that shows the virtualized component (item 430).)
and transmit the data via the one or more input terminals to the industrial control system. (Par. 0057: “The industrial controller 202 can provide the supplemental control instructions to the industrial plant-based industrial controller 224 via the cloud gateway component 226 to assist the industrial controller 224 in controlling the industrial automation system 206 and to control or facilitate decision-making by the industrial controller 224. The industrial controller 224 can facilitate controlling operations of the respective industrial devices 214, industrial processes 216, and/or other industrial assets 218 based at least in part on the supplemental control instructions received from the cloud-based industrial controller 202.” See also Par. 0058 – 0059.)
operate the virtualized industrial automation device to expose the event notification to the one or more input terminals; (Strohmenger Par. 0055: “In some implementations, the cloud-based industrial controller 202 can analyze, and/or the analytics component can perform analytics on, the data collected from the industrial automation system 206 and/or data obtained from one or more extrinsic data sources 210. Based at least in part on the results of the analysis of or analytics performed on the collected information (e.g., data collected from the industrial automation system 206, data collected from one or more extrinsic data sources 210), the cloud-based industrial controller 202 can determine supplemental control instructions for controlling operation of the industrial automation system 206, in accordance with the one or more defined control algorithms.” See full paragraph 0056. Biernat also teaches in Par. 0001: “This disclosure relates generally to systems and methods for implementing a container orchestration system in an operational technology (OT) or an industrial platform. More particularly, embodiments of the present disclosure are related to systems and methods for leveraging container orchestration systems to coordinate operations of OT devices.” Par. 0077: “The FaaS operations may, in some embodiments, be triggered based on an asynchronous event that occurs in another system (e.g., control system 70). For example, the master container node 62 monitor incoming messages from other container nodes of the container orchestration system 24 for events, triggers, or notifications that may cause a FaaS operation to execute.” Par. 0079: “Referring now to FIG. 7, the master container node 62 may, at block 152, receive an event-based notification from the container node 30, the worker container node 68, or other suitable node in the container orchestration system 24. In some embodiments, the event-based notification may be related to condition or state that corresponds to the control system 66, the OT device 67, or the like. As such, the event-based notification may correspond to a state that meets some condition, exceeds some threshold, falls below some threshold, or the like. For instance, the event-based notification may be related to conditions related to computing properties (e.g., CPU availability) associated with the control system 66, machine availability (e.g., available, unavailable) of the OT device 67, or other variables being detected by the control system 66.” See also Par. 0038, 0049, and 0063..)
Strohmenger does not teach receiving an event notification from a container. However, Biernat does teach receive an event notification from a first container provided by one or more computing devices external to the industrial automation system, wherein the first container is configured to perform a monitoring operation and generate the event notification based on the monitoring operation; (Par. 0072: “As such, the container node 30 may push packages, firmware updates, OT device credential updates, security updates, encryption keys, and other data to the control system 66 at any given time. That is, the container system 30 may generate an event notification that causes an API or other component of the control system 66 to react in response to detecting the event notification. In this way, the container node 30 may actively participate in the coordination of containers with a respective control system 66 based on orchestration commands received passively from the master container node 62 or the like.” Par. 0079: “Referring now to FIG. 7, the master container node 62 may, at block 152, receive an event-based notification from the container node 30, the worker container node 68, or other suitable node in the container orchestration system 24. In some embodiments, the event-based notification may be related to condition or state that corresponds to the control system 66, the OT device 67, or the like. As such, the event-based notification may correspond to a state that meets some condition, exceeds some threshold, falls below some threshold, or the like. For instance, the event-based notification may be related to conditions related to computing properties (e.g., CPU availability) associated with the control system 66, machine availability (e.g., available, unavailable) of the OT device 67, or other variables being detected by the control system 66. As such, the event-based notification may be generated by the control system 66 and reported to the container node 30, which may translate the event-based notification into a format that may be interpretable by the master container node 62.” See also Par. 0008, 0020, and 0077.)
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the claimed invention to have combined using a cloud based industrial controller that comprises inputs to a processor or computing system wherein the industrial controller can be a virtualized device as in Strohmenger with receiving an event notification from a container (computing nodes that are part of the orchestration system) that is part of operational state as in Biernat in order to properly control the system to change operations and to communicate information in the industrial control system and to facilitate communication between the container orchestration system and the industrial control system. (Par. 0040 and 0072)
Regarding claim 2,
The previously cited references teach the limitations of claim 1 which claim 2 depends. Strohmenger also teaches that the industrial control system is configured to: receive the data from the processing circuitry; identify a remedial action based on the data; and perform the remedial action. (Par. 0113: “The cloud-based or remote industrial controller can receive data relating to the industrial devices (e.g., 508.sub.1, 508.sub.N, 510.sub.1, 510.sub.N), industrial processes, other industrial assets, and network component of the industrial automation system, and/or data from extrinsic data sources, can analyze such data and/or received analytics results from analytics performed on such data by the analytics component, can determine control instructions based at least in part on the analysis or analytics results, and can communicate the control instructions to the industrial devices (e.g., 508.sub.1, 508.sub.N, 510.sub.1, 510.sub.N), industrial processes, other industrial assets, network component, and/or an industrial-plant-based industrial controller of the industrial automation system to control operations of the industrial automation system. In still another exemplary application, cloud-based analytics applications (e.g., employed by an analytics system comprising the analytics component) can access the data relating to an industrial automation system(s) stored in the cloud-based data store, perform analytics on the data to generate analysis results, determine correlations between respective aspects (e.g., internal or intrinsic aspects, external or extrinsic aspects) associated with an industrial automation system(s), and generate notifications, recommendations, and/or instructions (e.g., control instructions that can be implemented or executed by a cloud-based or remote industrial controller) based on the correlations to facilitate improved operation of the industrial automation system(s). These industrial cloud-computing applications are only intended to be exemplary, and the systems and methods described herein are not limited to these particular applications. As these examples demonstrate, the cloud platform 502, working with cloud gateway components (e.g., cloud gateway component 506.sub.1M up through cloud gateway component 506.sub.NM), can allow builders of industrial applications to provide scalable solutions as a service, removing the burden of maintenance, upgrading, and backup of the underlying infrastructure and framework.”)
Regarding claim 3,
The previously cited references teach the limitations of claim 1 which claim 3 depends. Biernat also teaches that the processing circuitry is configured to provide the virtualized industrial automation device at least in part by providing a container performing operations to provide the virtualized industrial automation device. (Par. 0072: “For example, instead of the control system 66 periodically checking the filesystem, as described above with respect to FIG. 5 (e.g., passive-indirect mode), the control system 66 may directly interface with the container node 30 and receive commands that may cause it to adjust operations of a connected device (e.g., OT device), execute received packages, and the like. As such, the container node 30 may push packages, firmware updates, OT device credential updates, security updates, encryption keys, and other data to the control system 66 at any given time. That is, the container system 30 may generate an event notification that causes an API or other component of the control system 66 to react in response to detecting the event notification. In this way, the container node 30 may actively participate in the coordination of containers with a respective control system 66 based on orchestration commands received passively from the master container node 62 or the like.” Par. 0020: “That is, certain IT systems may leverage software containers (e.g., operating system level virtualization) in conjunction with container orchestration systems (e.g., Docker, Kubemetes) to coordinate the construction and deployment of various containers across a number of computing resources.” See also paragraph 0038. See also Strohmenger and components that are virtualized in paragraphs 0006, 0033, 0064, 0066, 0070, et al. Examiner’s Note – Strohmenger defines the components as units of software (Par. 1030 and 0187) on point with the instant application specification paragraph that states the containers included packages of software.)
Regarding claim 4,
The previously cited references teach the limitations of claim 1 which claim 4 depends. Biernat also teaches that the processing circuitry is configured to operate the virtualized industrial automation device to expose the event notification to the one or more input terminals via a common industrial protocol (CIP) object configured to provide the data to the one or more input terminals based on the event notification. (Par. 0038: “By including a container node 30 operating in the OT space, the container orchestration system 24 is capable of extending its management operations into the OT space. That is, the container node 30 may provision devices in the OT space, serve as a proxy node 32 to provide bi-directional coordination between the IT space and the OT space, and the like.” Par. 0067: “To receive the machine state data, the container node 30 may send requests to the control system 66 via an appropriate OT communication protocol. In response to receiving the requests, the control system 66 may query a database, memory cell, or other suitable storage that may include information regarding the requested data. After retrieving the requested information, the control system 66 may send the requested data to the container node 30 using the same OT communication protocol on which it received the request.” Par. 0049: “For example, the OT space may involve communications that are formatted according to OT communication protocols, such as FactoryTalk Live Data, EtherNet/IP. Common Industrial Protocol (CIP), OPC Direct Access (e.g., machine to machine communication protocol for industrial automation developed by the OPC Foundation), or any suitable OT communication protocol (e.g. DNP3, Modbus, Profibus, LonWorks, DALI, BACnet, KNX, EnOcean). Since the industrial control systems 12 operate in the OT space, the industrial control systems are not capable of implementing commands received via the container orchestration system 24.” See also Par. 0063.)
Regarding claim 5,
The previously cited references teach the limitations of claim 1 which claim 5 depends. Biernat also teaches that the first container is configured to: receive acquired data from a sensor of a target device; (Par. 0066: “At block 134, the container node 30 may retrieve machine state data from the control system 66. The machine state data may include current operational state (e.g., active, inactive) of the respective OT device controlled by the control system 66, available processing resources (e.g., CPU availability), available memory resources (e.g., storage, RAM), and the like. The machine state data may also indicate whether any containers are being executed by the control system 66.”)
perform a processing operation on the acquired data; (Par. 0070: “After receiving the machine state data from the control system 66, the container node 30 may, at block 136, determine whether the control system 66 is operating at a desired state based on the deployment configuration file 65. In the present embodiment, the container node 30 may evaluate whether the control system 66 is executing the containers, as specified in the deployment configuration file 65. That is, since the container node 30 may execute the container daemon host, the container node 30 may participate in the management of the containers distributed throughout the container orchestration system 24 by monitoring the machine state data of the control system 66.”)
generate the event notification based on the processing operation; (Par. 0072: “If, however, the container node 30 determines that the control system 66 is not operating in the desired state, the container node 30 may proceed to block 140 and generate a package that may cause the control system 66 to modify its operations to execute the corresponding pod and the containers therein. After generating the package, the container node 30 may send the package directly to the control system 66 to execute. In this way, the container node 30 operate in the passive-direct mode because the container node 30 may directly send commands that cause the control system 66 to change operations.”)
and transmit the event notification to the processing circuitry without transmitting the acquired data. (Par. 0072: “After generating the package, the container node 30 may send the package directly to the control system 66 to execute. In this way, the container node 30 operate in the passive-direct mode because the container node 30 may directly send commands that cause the control system 66 to change operations. For example, instead of the control system 66 periodically checking the filesystem, as described above with respect to FIG. 5 (e.g., passive-indirect mode), the control system 66 may directly interface with the container node 30 and receive commands that may cause it to adjust operations of a connected device (e.g., OT device), execute received packages, and the like. As such, the container node 30 may push packages, firmware updates, OT device credential updates, security updates, encryption keys, and other data to the control system 66 at any given time.”)
Regarding claim 6,
The previously cited references teach the limitations of claim 5 which claim 6 depends. Biernat also teaches that the acquired data comprises a first amount of data, wherein the event notification comprises a second amount of data, and wherein the second amount of data is less than the first amount of data. (Par. 0086: “After the control system 66 performs the pre-analytic operations and acquires the pre-analytic data, the master container node 62 may, at block 164, receive the pre-analytic data from the container node 30. As discussed above, the container node 30 may receive the pre-analytic data via OT communication protocols and translate the received data into a format interpretable by the master container node 62. Since the pre-analytic data is processed close to the source of the data and organized as the pre-analytic data, the amount of data that is sent to the master container node 62 is less than the raw data that was analyzed to obtain the pre-analytic data. As such, the container orchestration system 24 may reduce the amount or volume of network traffic transmitted across the nodes of the container orchestration system 24 by using the control systems 70 to process raw data and transmit the smaller pre-analyzed data results.”)
Regarding claim 7,
The previously cited references teach the limitations of claim 1 which claim 7 depends. Strohmenger also teaches that the industrial control system is configured to perform the one or more operations based on the data received via the one or more input terminals and based on an input/output assignment configured to associate the one or more input terminals with the one or more output terminals and the virtualized industrial automation device. (Par. 0056: “Based at least in part on the analysis or analytics results, the cloud-based industrial controller 202 can determine supplemental control instructions that can be used by (e.g., executed by) the industrial controller 224 to control operations of the industrial automation system 206, in accordance with the one or more defined control algorithms.” Par. 0057: “The industrial controller 202 can provide the supplemental control instructions to the industrial plant-based industrial controller 224 via the cloud gateway component 226 to assist the industrial controller 224 in controlling the industrial automation system 206 and to control or facilitate decision-making by the industrial controller 224. The industrial controller 224 can facilitate controlling operations of the respective industrial devices 214, industrial processes 216, and/or other industrial assets 218 based at least in part on the supplemental control instructions received from the cloud-based industrial controller 202.” Par. 0109: “The control program can comprise any suitable type of code that can be used to process input signals read into the controller and to control output signals generated by the industrial controller, including, but not limited to, ladder logic, sequential function charts, function block diagrams, structured text, or other such platforms.” Par. 0123: “When an industrial-plant-based industrial controller is employed by an industrial automation system, the instruction component 618 also can determine control instructions or supplemental control instructions that are to be implemented or executed by the industrial-plant-based industrial controller based at least in part on the analysis results, in accordance with the defined control algorithm and the defined control criteria.”)
Regarding claim 8,
The previously cited references teach the limitations of claim 1 which claim 8 depends. Biernat also teaches that the first container is configured to be provided by one or more off-premise computing devices communicatively coupled together as part of a first network that is external to a second network associated with the industrial automation system, wherein the one or more off-premise computing devices are configured to communicate to the processing circuitry via a gateway device communicatively coupled between the first network and the second network. (Par. 0075: “In addition, the proxy node 32 may also perform certain supervisory operations based on its analysis of the machine state data of the respective control system 66. As a result of its analysis, the proxy node 32 may issue commands and/or pods to other nodes that are part of the container orchestration system 24. For example, referring to FIG. 3, the proxy node 32 may send instructions or pods to other worker container nodes 68 that may be part of the container orchestration system 24. The worker container nodes 68 may corresponds to other container nodes 30 that are communicatively coupled to other control systems 70 for controlling other OT devices 71. In this way, the proxy node 32 may translate or forward commands directly to other control systems 70 via certain OT communication protocols or indirectly via the other worker container nodes 68 associated with the other control systems 70. In addition, the proxy node 32 may receive replies from the control systems 70 via the OT communication protocol and translate the replies, such that the nodes in the container orchestration system 24 may interpret the replies.” See figure 3 and worker container node. See also Par. 0074 and figure 3 showing the worker container node communicating with the control system 66.)
Regarding claim 9,
The previously cited references teach the limitations of claim 1 which claim 9 depends. Strohmenger also teaches that the virtualized industrial automation device is configured to expose the event notification to the one or more input terminals without persistence. (Par. 0055: “In some implementations, the cloud-based industrial controller 202 can analyze, and/or the analytics component can perform analytics on, the data collected from the industrial automation system 206 and/or data obtained from one or more extrinsic data sources 210. Based at least in part on the results of the analysis of or analytics performed on the collected information (e.g., data collected from the industrial automation system 206, data collected from one or more extrinsic data sources 210), the cloud-based industrial controller 202 can determine supplemental control instructions for controlling operation of the industrial automation system 206, in accordance with the one or more defined control algorithms.” See also Par. 0049, 0056, and 0063.)
Regarding claim 10,
The previously cited references teach the limitations of claim 1 which claim 9 depends. Biernat also teaches that the processing circuitry is configured to provide the virtualized industrial automation device based on receiving a container image from a container orchestration system. (Par. 0023: “In this way, the proxy node may be programmed to execute a container daemon that enables the proxy node to receive containers stored in a container registry and deploy the containers at scale to one or more control systems that control operations of one or more respective OT assets.” Par. 0033: “In some embodiments, containers may be stored in a container registry 26 as container images 28. The container registry 26 may be any suitable data storage or database that may be accessible to the container orchestration system 24. The container image 28 may correspond to an executable software package that includes the tools and data employed to execute a respective application. That is, the container image 28 may include related code for operating the application, application libraries, system libraries, runtime tools, default values for various settings, and the like.” Par. 0034: “The container orchestration system 24 may coordinate the distribution and execution of the pods listed in the deployment configuration file, such that the desired state is continuously met. In some embodiments, the container orchestration system 24 may include a master node that retrieves the deployment configuration files from the container registry 26, schedules the deployment of pods to the connected nodes, and ensures that the desired state specified in the deployment configuration file is met.” Examiner’s Note – Biernat teaches 30 instances of container image(s).)
Regarding claims 21 - 24, they are directed to a method of steps to implement the system or apparatuses set forth in claims 1, 4, 9 and 10, respectively. Strohmenger and Biernat et al. teach the claimed system or apparatuses in claims 1, 4, 9, and 10. Therefore, Strohmenger and Biernat et al. teach the method of steps in claims 21 – 24.
Regarding claims 26 - 30, they are directed to a non-transitory, tangible, computer-readable medium storing instructions to implement the system or apparatuses set forth in claims 1, 3, 10, 8 and 4, respectively. Strohmenger and Biernat et al. teach the claimed system or apparatuses in claims 1, 3, 10, 8, and 4. Strohmenger also teaches “a non-transitory computer-readable storage medium storing computer-executable instructions” in claim 36. Therefore, Strohmenger and Biernat et al. teach the non-transitory, tangible, computer-readable medium storing instructions in claims 26 – 30.
Allowable Subject Matter
Claim 25 is objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims pending resolving all intervening issues such as the claim objections above. Reasons for allowance will be held in abeyance pending final recitation of the claims. The prior art does not disclose the elements of claim 21 and wherein: terminating the virtualized industrial automation device based on the monitoring operation; and disassociating the one or more output terminals with the one or more input terminals of the industrial control system.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Strohmenger et al. (US PG Pub. No. 20160274558) describes cloud based analytics for virtualized industrial automation and teaches an analytics system that determine events or conditions. (See Par. 0077 and 0148)
Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHAD G ERDMAN whose telephone number is (571)270-0177. The examiner can normally be reached Mon - Fri 7am - 3pm or 4pm EST..
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kenneth Lo can be reached at (571) 272-9774. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/CHAD G ERDMAN/Primary Examiner, Art Unit 2116