Office Action Predictor
Last updated: April 15, 2026
Application No. 18/448,523

Control Strategy of Distributed Control Systems Based on Operator Actions

Non-Final OA §102§103§112
Filed
Aug 11, 2023
Examiner
EVERETT, CHRISTOPHER E
Art Unit
2117
Tech Center
2100 — Computer Architecture & Software
Assignee
Abb Schweiz AG
OA Round
1 (Non-Final)
83%
Grant Probability
Favorable
1-2
OA Rounds
2y 7m
To Grant
99%
With Interview

Examiner Intelligence

Grants 83% — above average
83%
Career Allow Rate
692 granted / 830 resolved
+28.4% vs TC avg
Strong +22% interview lift
Without
With
+21.8%
Interview Lift
resolved cases with interview
Typical timeline
2y 7m
Avg Prosecution
37 currently pending
Career history
867
Total Applications
across all art units

Statute-Specific Performance

§101
8.3%
-31.7% vs TC avg
§103
53.4%
+13.4% vs TC avg
§102
25.7%
-14.3% vs TC avg
§112
7.6%
-32.4% vs TC avg
Black line = Tech Center average estimate • Based on career data from 830 resolved cases

Office Action

§102 §103 §112
DETAILED ACTION Claims 1-19 are pending. Claims 3 and 11-19 are withdrawn. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. Election/Restrictions Applicant's election with traverse of Group I, claims 1-2 and 4-10, in the reply filed on 12/1/2025 is acknowledged. The traversal is on the ground(s) that searching all of the claims in Groups I and II would not impose a serious burden on the Examiner. This is not found persuasive because Group I, claim 1, is focused on an amendment/augmentation based on a plant operator interacting with the distributed control system and Group II, claim 3, is focused on an amendment/augmentation based on a trained machine learning model. Plant operator interactions and a trained machine learning model are different search fields – user interactions with a HMI and computerized interactions with a trained machine learning model - and searching both search fields is a serious burden on the Examiner. The requirement is still deemed proper and is therefore made FINAL. Claim Rejections - 35 USC § 112 The following is a quotation of 35 U.S.C. 112(b): (b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention. The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph: The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention. Claims 1-2 and 4-10 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention. The term “likely” in claim 1 is a relative term which renders the claim indefinite. The term “likely” is not defined by the claim, the specification does not provide a standard for ascertaining the requisite degree, and one of ordinary skill in the art would not be reasonably apprised of the scope of the invention. Regarding claim 1, the phrase "optionally" renders the claim indefinite because it is unclear whether the limitation(s) following the phrase are part of the claimed invention. Claims 2 and 4-10 depend, directly or indirectly, from independent claim 1 and are rejected based on their dependency thereto. Claim Rejections - 35 USC § 102 The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. (a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention. Claims 1-2, 4-5, and 8-10 are rejected under 35 U.S.C. 102(a)(1) as being unpatentable by U.S. Patent Application Publication No. 2018/0136910 (Noetzelmann) (cited by Applicant). Claim 1: The cited prior art describes a computer-implemented method for amending and/or augmenting an engineering tool that is configured to generate application code which, when executed on one or more controllers in a distributed control system of an industrial plant, causes the industrial plant to be controlled according to a control strategy that is implemented in the application code, the method comprising: (Noetzelmann: “The preferred embodiments described below include methods, systems and computer readable media for generating programmable logic controller (PLC) code based on a connectivity model in a multidisciplinary engineering system. The connectivity model provides interfaces 613 and 617 and connections 619 between various aspects of the multidisciplinary engineering system to provide engineering data, code scripts, executables, calls and other information that is used to generate PLC code. Code generation rules 621 are employed utilizing the engineering data, code scripts, executables, calls and other information received using the connectivity model to generate PLC code.” abstract) acquiring state variables that characterize an operational state of at least one industrial plant; (Noetzelmann: “At act 703, a connectivity model for the multidisciplinary system is stored on a server, workstation, computer, engineering application, or other location. More than one connectivity model may be stored. The connectivity model includes interfaces in the multidisciplinary engineering system, connection rules for the interfaces, and connections between the interfaces.” Paragraph 0049; “Referring to FIG. 2, factory designers utilize a layout design application, such as line designer application 201, to plan the layout of the new production line, including the conveyor. The line designer application 201 displays information about the new production line, including the plant, line, zone and station where the conveyor will be placed.” Paragraph 0024) acquiring a set of interaction events of at least one plant operator interacting with the distributed control system of the industrial plant via a human-machine interface; (Noetzelmann: “At act 705, the code model receives information from the multidisciplinary engineering system based on the connectivity model. The code model receives code, engineered data and other information from another code model, an engineering application object, database or other aspect of the multidisciplinary engineering system. For example, referring to FIG. 6, port 613 may receive a code string from another code entity 615 associated with another PLC in the automation discipline via port 617. Alternatively, port 613 may receive a text string from an application object 615 associated with a different engineering application via port 617, such as the length of an up-line conveyor represented in the automation designer application. In both examples, the code entity 611 receives the string from port 617 via port 613.” Paragraph 0050; “Automation designer application 203 displays the function and robot cell of the conveyor, and the components of the conveyor that will be automated, including sensor1, sensor2 and motor1. Mechanical engineers utilize a mechanical design application, such as MCD 205, to plan the mechanical aspects of the conveyor. MCD 205 includes information about a three-dimensional (3D) model of the conveyor, including face1, face2, curve1 and curve2. Electrical engineers utilize the electrical designer application 207 to plan the electrical inputs and outputs for the conveyor. Electrical designer application 207 displays electrical information that will be provided to technicians installing the conveyor. Electrical sheet 1 includes an AC power output, motor1 input, sensor1 input and sensor1 output. Electrical sheet 2 includes a sensor2 input and sensor2 output.” Paragraph 0024) determining, based at least in part on the interaction events, the state variables and optionally given engineering information of the distributed control system as input data, whether one or more interaction events are indicative of the plant operator executing a task that is not sufficiently covered by the present engineering of the distributed control system; and (Noetzelmann: see the engineered data 201, 203, 205, 207 as illustrated in figure 2; “The production line may incorporate one or more programmable logic controllers. For example, the automation engineer adds a programmable logic control to control the conveyor. For the programmable logic controller to operate, inputs, outputs, and code for processing the inputs to generate the outputs is to be created. The code for the operation of the programmable logic controller may be based on information from more than one engineering discipline, such as the automation designer application, the line designer application and the electrical designer application. For example, engineering data and code from the automation designer may be reused to generate code for local functions of the target PLC.” Paragraph 0025) when this determination is positive, mapping the input data to an amendment and/or augmentation for the engineering tool that has generated the application code for the distributed control system such that, when the application code is re-generated by the amended and/or augmented engineering tool and executed in the distributed control system, the plant operator is likely to manually interact with the distributed control system less frequently, and/or to spend less time interacting with the distributed control system. (Noetzelmann: see the generate PLC code 707 as illustrated in figure 7 and as described in paragraph 0051; “The NX Automation Designer workstation 305 includes a NX Automation Designer Application 307. The NX Automation Designer Application 307 includes a code generation system that receives code entities, port information, connectivity rules, code generation rules, generated code entities and other information (collectively, 311) that is stored on the server 301. The code generation system generates PLC code based on the received information 311. Alternatively, the code generation system may be hosted on the server 301, with the server 301 generating PLC code based on the information 311 stored on the server 301, or on another workstation 305.” Paragraph 0031; “Code generation with a connectivity model may enhance the quality of the output of the overall engineering process by avoiding human errors in a manual workflows and by detecting errors using the status of ports and connections in the multidisciplinary engineering system.” Paragraph 0022) Claim 2: The cited prior art describes the method of claim 1, wherein the task that is not sufficiently covered by the present engineering of the distributed control system specifically comprises: manually executing a solution to an operational problem that is not covered by the present engineering of the distributed control system; and/or (Noetzelmann: see the addition of a new conveyor line in such the new conveyor line is not covered by the system before being added to the engineering for the system as described in paragraphs 0024, 0025 and as illustrated in figure 2) repeatedly executing one or more actions starting from equal or substantially similar operating states; and/or accessing at least one functionality that requires at least a threshold number of steps to access with at least a threshold frequency. Claim 4: The cited prior art describes the method of claim 1, wherein the input data further comprises one or more of: alarms and events reported by the distributed control system; a topology model of the industrial plant; (Noetzelmann: see the line design 201 as illustrated in figure 2 and as described in paragraphs 0024, 0030) a layout of a human-machine interface of the distributed control system; and a control logic of the distributed control system. (Noetzelmann: “The production line may incorporate one or more programmable logic controllers. For example, the automation engineer adds a programmable logic control to control the conveyor. For the programmable logic controller to operate, inputs, outputs, and code for processing the inputs to generate the outputs is to be created. The code for the operation of the programmable logic controller may be based on information from more than one engineering discipline, such as the automation designer application, the line designer application and the electrical designer application. For example, engineering data and code from the automation designer may be reused to generate code for local functions of the target PLC.” Paragraph 0025) Claim 5: The cited prior art describes the method of claim 1, wherein the mapping comprises: determining a function in a given control library that accomplishes a result substantially similar to the result of a detected and/or predicted action or sequence of actions; and (Noetzelmann: “The Teamcenter application 309 also stores a library of application objects and the links between instantiated library objects.” Paragraph 0029; “As disclose herein, the data structure in the multidisciplinary engineering system is reusable, meaning the engineered data can be stored in a library context and reused in an engineering project many times. Each time the engineered data is reused, the data structure reuses prepared code entities including the generation rules, ports and connections.” Paragraph 0069; “In this example, code from another PLC may be reused with modifications, such as dynamically updating the code with input/output addresses associated with the target PLC” paragraph 0025) substituting in the amendment and/or augmentation for the engineering tool the detected and/or predicted action or sequence of actions with a call to the determined function in the control library. (Noetzelmann: “For example, referring to FIG. 6, the code generation rule 621 utilizes the port 613 to accept a string input received from the port 617 through connection 619. In this example, port 613 may receive a code string from another code entity 615 associated with another PLC in the automation discipline via port 617. The code generation rule 621 replaces a code string in code entity 611 with the string received from code entity 615 via port 617. Alternatively, port 613 may receive a text string from an application object 615 associated with a different engineering application via port 617, such as the length of an up-line conveyor represented in the automation designer application. The code generation rule 621 replaces a variable in code entity 611 with the string received from code entity 615 via port 617.” Paragraph 0051; “In this example, code from another PLC may be reused with modifications, such as dynamically updating the code with input/output addresses associated with the target PLC” paragraph 025) Claim 8: The cited prior art describes the method of claim 1, wherein an engineering tool is chosen that is configured to assemble the distributed control system from building blocks in a predetermined catalogue, (Noetzelmann: “A server stores a plurality of code models for PLC hardware. The server identifies at least one of the plurality code models for receiving PLC code.” Paragraph 0005; “For example, engineering data and code from the automation designer may be reused to generate code for local functions of the target PLC. In this example, code from another PLC may be reused with modifications, such as dynamically updating the code with input/output addresses associated with the target PLC.” Paragraph 0025; “The connections between ports in the multidisciplinary engineering system allow the automation design application to reuse code entities, engineering data, application objects and the data structure to generate PLC code for the conveyors.” Paragraph 0039) wherein at least one such building block is a programmable logic controller, PLC; and (Noetzelmann: “In a third aspect, a method is provided for generating programmable logic controller (PLC) code based on a connectivity model in a multidisciplinary engineering system. A server stores a plurality of code models for PLC hardware. The server identifies at least one of the plurality code models for receiving PLC code.” Paragraph 0005) generate application code that comprises control code for this PLC. (Noetzelmann: “In a first aspect, a method is provided for generating programmable logic controller (PLC) code based on a connectivity model in a multidisciplinary engineering system.” Paragraph 0003) Claim 9: The cited prior art describes the method of claim 1, further comprising: re-generating, by the amended and/or augmented engineering tool, application code for the distributed control system; and (Noetzelmann: see the generated code as illustrated in figure 6; “The server generates PLC code for the identified code models.” Paragraph 0005; “Alternatively, the code in the target PLC may need to be updated with external code provided by a supplier or other third party. In another example, engineering data may be provided from the line designer and electrical designer applications to accomplish for broader functionality of the target PLC with other equipment in the production line.” Paragraph 0025; “At act 707, PLC code is generated by the server, workstation, computer and/or engineering application.” Paragraph 0051) executing the re-generated application code in the distributed control system, thereby controlling the industrial plant according to the control strategy implemented in the re-generated application code. (Noetzelmann: “The server stores the generated PLC code in the identified code models and exports the generated PLC from the server to the PLC hardware.” Paragraph 0005; “The workstation receives the PLC code in an engineering application for use in PLC hardware. The PLC code may be ready for export and use by a target PLC, or additional acts may be performed by the workstation, such as additional programming specific to the target PLC. Further, a compilation act may be required before exporting the PLC code. The compilation act may be performed by an engineering application in the multidisciplinary engineering system, or by an application outside of the multidisciplinary engineering system. The PLC code is exported from the workstation to the target PLC. Alternatively, the server can transmit or export the PLC code directly to the target PLC.” Paragraph 0055) Claim 10: The cited prior art describes the method of claim 9, further comprising: before the re-generating of the application code, prompting a control engineer for approval of the amendment and/or augmentation for the engineering tool. (Noetzelmann: “The Teamcenter application 309 allows a user to add, delete or modify source code entities, port information, connectivity rules, code generation rules, generated code entities and other information (collectively, 311) stored on server 301.” Paragraph 0028; “The connections are user configurable and are established by the user.” Paragraph 0040; “The user can alter engineering information received through a port and connection to provide a scope of the code generation process. For example, the user can define target PLC systems. In this manner, the user assigns sub-structures of the project to a specific PLC hardware and defines code generation rules for all the code entities in the sub-structure.” Paragraph 0060) 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. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 6-7 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2018/0136910 (Noetzelmann) (cited by Applicant) in view of U.S. Patent Application Publication No. 2021/0096827 (Stump). Claim 6: Noetzelmann does not explicitly describe a new control element as described below. However, Stump teaches the new control element as described below. The cited prior art describes the method of claim 1, wherein the amendment and/or augmentation is configured to cause, when the application code is re-generated by the amended engineering tool and executed in the distributed control system, in a human-machine interface of the distributed control system: a new control element to appear such that a chain of actions that were previously executed by the plant operator repeatedly in sequence is executed upon actuation of this new control element; and/or (Stump: “Accordingly, conversion component 212 can replace or supplement this code segment in the new system project 302 with the appropriate automation object 222 corresponding to this industrial asset. If the automation object 222 for the asset has an associated recommended visualization for rendering a graphical representation of the asset (e.g., on an HMI or AR/VR application), this visualization will also be included in the new system project 302.” Paragraph 0096; “Project deployment component 208 can be configured to commission the system project created by the project generation component 206 to appropriate industrial devices (e.g., controllers, HMI terminals, motor drives, AR/VR systems, etc.) for execution. To this end, project deployment component 208 can identify the appropriate target devices to which respective portions of the system project should be sent for execution, translate these respective portions to formats understandable by the target devices, and deploy the translated project components to their corresponding devices.” Paragraph 0048; “Project deployment component 208 can compile or otherwise translate a completed system project 302 into one or more executable files or configuration files that can be stored and executed on respective target industrial devices of the automation system (e.g., industrial controllers 118, HMI terminals 114 or other types of visualization systems, motor drives 710, telemetry devices, vision systems, safety relays, etc.).” paragraph 0076) a control element that previously required a first number of steps to access to move within the human-machine interface such that it requires a second, lower number of steps to access. One of ordinary skill in the art would have recognized that applying the known technique of Noetzelmann, namely, generating PLC code based on a connectivity model, with the known techniques of Stump, namely, industrial programming development based on aggregated data, would have yielded predictable results and resulted in an improved system. Accordingly, applying the teachings of Noetzelmann to generate PLC code based on various data sources with the teachings of Stump to program an industrial device based on various data sources would have been recognized by those of ordinary skill in the art as resulting in an improved industrial application code generation system (i.e., the combination of the references provides for an industrial code generation that generates code based on various data sources for various scenarios based on the teachings of industrial code generation based on various data sources in Noetzelmann and the teachings of industrial code generation based on various scenarios in Stump). Claim 7: Noetzelmann does not explicitly describe an automatic response as described below. However, Stump teaches the automatic response as described below. The cited prior art describes the method of claim 1, wherein the amendment and/or augmentation is configured to cause, when the application code is re-generated by the amended engineering tool and executed in the distributed control system, one or more actions that were previously executed by the plant operator repeatedly starting from equal or substantially similar operating states to be executed automatically in response to a particular operating state occurring. (Stump: “In making coding suggestions as part of design feedback 518, project generation component 206 can invoke selected code modules 508 stored in a code module database (e.g., on memory 220). These code modules 508 comprise standardized coding segments for controlling common industrial tasks or applications (e.g., palletizing, flow control, web tension control, pick-and-place applications, conveyor control, etc.). In some embodiments, code modules 508 can be categorized according to one or more of an industrial vertical (e.g., automotive, food and drug, oil and gas, textiles, marine, pharmaceutical, etc.), an industrial application, or a type of machine or device to which the code module 508 is applicable. In some embodiments, project generation component 206 can infer a programmer's current programming task or design goal based on programmatic input being provided by a the programmer (as a subset of design input 512), and determine, based on this task or goal, whether one of the pre-defined code modules 508 may be appropriately added to the control program being developed to achieve the inferred task or goal. For example, project generation component 206 may infer, based on analysis of design input 512, that the programmer is currently developing control code for transferring material from a first tank to another tank, and in response, recommend inclusion of a predefined code module 508 comprising standardized or frequently utilized code for controlling the valves, pumps, or other assets necessary to achieve the material transfer.” Paragraph 0067) Noetzelmann and Stump are combinable for the same rationale as set forth above with respect to claim 6. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. U.S. Patent Application Publication No. 2021/0341893 describes tracking changes in configuration data of a control system. U.S. Patent Application Publication No. 2018/0267496 describes control application development. U.S. Patent No. 10,877,450 describes a workflow based change management system. Any inquiry concerning this communication or earlier communications from the examiner should be directed to CHRISTOPHER E EVERETT whose telephone number is (571)272-2851. The examiner can normally be reached Monday-Friday 8:00 am to 5:00 pm (Pacific). 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, Robert Fennema can be reached at 571-272-2748. 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. /Christopher E. Everett/Primary Examiner, Art Unit 2117
Read full office action

Prosecution Timeline

Aug 11, 2023
Application Filed
Dec 15, 2025
Non-Final Rejection — §102, §103, §112
Mar 20, 2026
Response Filed

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12603509
MICROGRID WITH AUTOMATIC LOAD SHARING CONTROL DURING OFF-GRID STANDALONE OPERATION
2y 5m to grant Granted Apr 14, 2026
Patent 12596352
System and method for controlling a production plant consisting of a plurality of plant parts, in particular a production plant for producing industrial goods such as metallic semi-finished products
2y 5m to grant Granted Apr 07, 2026
Patent 12596338
METHOD AND APPARATUS FOR PERFORMING OPTIMAL CONTROL
2y 5m to grant Granted Apr 07, 2026
Patent 12585251
METHOD FOR THE DISTRIBUTED CALCULATION OF COMPUTATIONAL TASKS
2y 5m to grant Granted Mar 24, 2026
Patent 12571552
DIGITAL CONTROLLER FOR AIR CONDITIONER USED IN ENCLOSURE COOLING
2y 5m to grant Granted Mar 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
83%
Grant Probability
99%
With Interview (+21.8%)
2y 7m
Median Time to Grant
Low
PTA Risk
Based on 830 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in for Full Analysis

Enter your email to receive a magic link. No password needed.

Free tier: 3 strategy analyses per month