DETAILED ACTION
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 .
Claims 1-9 are pending.
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-6 and 8-9 are rejected under 35 U.S.C. 102(a)(2) as being anticipated over Gruenewald et al. US 20200073371 A1.
Regarding claim 1, Gruenewald teaches the invention substantially as claimed including:
A method for sharing process data from a first controller to a least a second controller ([0001] providing universal access to process image data across a plurality of automation devices using a process image backbone. The various systems and methods may be applied to industrial automation applications, as well as various other applications where controllers are used), the first controller and the second controller including respectively a first runtime environment and a second runtime environment to execute at least a distributed automation application (Fig 1 App Containers; [0001] The various systems and methods may be applied to industrial automation applications, as well as various other applications where controllers are used; [0020] the runtime environments of the different controllers) and including respectively a first process data manager and a second process data manager to manage respectively a first process image and a second process image ([0027] the Control Application 230 reads the Process Image Component 225, executes deployed application logic, and writes results back into the Process Image Component 225; Examiner notes: multiple controllers each managing their own process image component seen in at least Fig 1 and 4), the first process data manager and the second process data manager being linked respectively to a first set of communication devices and to a second set of communication devices via a first communication line (Fig 2 Process Image 225 connecting Control Application 230 and I/O; [0027] Process Image 225 is a memory area in a controller's CPU volatile system memory which is updated in each processing/scan cycle based on data associated with the production devices (e.g., the inputs and outputs of connected I/Os). In each processing step, the Control Application 230 reads the Process Image Component 225) and being linked between them via a second communication line (Fig 2 Process Image Backbone Instance; [0009] The controller stores the process image data items into a local non-volatile computer readable medium on the first controller and uses a process image backbone instance to provide one or more second controller with access to the stored process image data items), the method comprising:
the first controller retrieving process data from the distributed automation application or from a communication device of the first set of communication devices, the first controller updating the first process image with the retrieved process data ([0009] a controller executing a control program configured to provide operating instructions to a production unit over a plurality of scan cycles and updating a process image area during each of the scan cycles with data associated with the production unit),
the first controller sending the process data on the second communication line (Fig 4A; [0038] These examples each include three controllers (labeled α, β, and δ) connected via the process image backbone … In FIG. 4A, controller α multicasts or broadcasts its new process image registry to controllers β, and δ …),
the second controller receiving the process data sent on the second communication line and updating the second process image with the received process data ([0038] Then the process image registry is stored locally by controllers β, and δ and can be used to request data stored on controller α).
Regarding claim 2, Gruenewald teaches the method according to claim 1.
Gruenewald further teaches wherein the second communication line provides deterministic data paths with high reliability and bounds on latency ([0032] The Messaging Component 214 in the PIB Instance 210 provides a way to communicate the registry and other data over the process image backbone connecting automation system devices …The Messaging Component 214 includes functionality that allows the transport protocol to be selected based on real-time requirements or a guaranteed quality of service. For example, for near-real time communications UDP may be used by default, while TCP is used for communications which have more lax timing requirements but require additional reliability).
Regarding claim 3, Gruenewald teaches the method according to claim 1.
Gruenewald further teaches wherein the process data are input data from a communication device of the first set of communication devices and are read by the first process data manager from the first communication line (Fig 2 I/O; [0027] FIG. 2 provides a conceptual view of a Controller 200, according to some embodiments. Process Image 225 is a memory area in a controller's CPU volatile system memory which is updated in each processing/scan cycle based on data associated with the production devices (e.g., the inputs and outputs of connected I/Os). In each processing step, the Control Application 230 reads the Process Image Component 225, executes deployed application logic, and writes results back into the Process Image Component 225).
Regarding claim 4, Gruenewald teaches the method according to claim 1.
Gruenewald further teaches wherein the process data are output data for a communication device of the first set of communication devices and are written by the first process data manager from the distributed automation application (Fig 2 I/O: [0027] (Fig 2; [0027] FIG. 2 provides a conceptual view of a Controller 200, according to some embodiments. Process Image 225 is a memory area in a controller's CPU volatile system memory which is updated in each processing/scan cycle based on data associated with the production devices (e.g., the inputs and outputs of connected I/Os). In each processing step, the Control Application 230 reads the Process Image Component 225, executes deployed application logic, and writes results back into the Process Image Component 225)).
Regarding claim 5, Gruenewald teaches the method according to claim 1.
Grunewald further teaches wherein the process data are published by a publisher service of a first synchronization agent implemented in the first process data manager on the second communication line ([0008] the process image backbone instance located on each controller includes a messaging component implementing a publish-subscribe messaging pattern for transmitting process image data items between the plurality of controllers).
Regarding claim 6, Gruenewald teaches the method according to claim 1.
Gruenewald further teaches wherein the process data are received through a subscriber service of a second synchronization agent implemented in the second process data manager ([0033] Devices “subscribe” to the data that is available in the queues. Thus, the Messaging Component 214 can be visualized as comprising a plurality of queues, each queue being associated with one or more subscriber. After a publisher enters data into a queue, the data in transmitted to each subscriber of the queue).
Regarding claim 8, it is the industrial system of claim 1. Therefore, it is rejected for the same reasons as claim 1.
Regarding claim 9, it is the non-transitory computer-readable medium having embodied thereon a computer program for executing the method for sharing process data from a first controller to a least a second controller according to claim 1. Therefore, it is rejected for the same reasons as claim 1.
Gruenewald further teaches a non-transitory computer-readable medium ([0040] A computer readable medium may take many forms including, but not limited to, non-transitory, non-volatile media, volatile media, and transmission media).
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.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over Gruenewald et al. US 20200073371 A1 in view of Schreder et al. US 20210132595 A1.
Regarding claim 7, Gruenewald teaches the method according to claim 1.
Gruenewald does not explicitly teach wherein the first communication line and the second communication line are merged.
However, Schreder teaches wherein the first communication line and the second communication line are merged (Fig 4 Controller Bus; [0044]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to have combined Schreder’s controller bus with the existing controller system of Gruenewald. A person of ordinary skill in the art would have been motivated to make this combination to provide the resulting system with the advantage of managed intra controller data connectivity (see Schreder [0044] Controller Bus 200 provides a unified bidirectional high-speed system bus that provides data, address and memory connectivity to components and devices of controller 304).
Conclusion
Any inquiry concerning this communication or earlier communications from the
examiner should be directed to HARRISON LI whose telephone number is (703) 756-1469. The
examiner can normally be reached Monday-Friday 9:00am-5:30pm ET.
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, Aimee Li can be reached on (571) 272-4169. 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.
/H.L./
Examiner, Art Unit 2195
/Aimee Li/Supervisory Patent Examiner, Art Unit 2195