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 .
Information Disclosure Statement
IDS filed 7/9/2024 is being considered by the examiner
Claim Objections
Claims 13-15 are objected to because of the following informalities:
Claims 13-15 recite, "therein the updated data is generated [line 1]." The examiner suggests, "wherein the updated data is generated"
Appropriate correction is required.
Claim Rejections - 35 USC § 103
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.
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-6, 8-12, and 14-20 are rejected under 35 U.S.C. 103 as being unpatentable over Nixon et al. [US Pub. 2024/0039870] ("Nixon") in view of Ghalami et al. [US Pub. 2023/0343145] ("Ghalami").
With regard to claim 1, Nixon teaches a system, comprising:
processing circuitry; and a memory, accessible by the processing circuitry, the memory storing instructions that, when executed by the processing circuitry, cause the processing circuitry to perform operations ("the example systems described herein are described as being implemented in software executed on a processor of one or more computer devices [par. 0378]") comprising:
deploying a first device twin in a first computing environment ("The digital twin 210A corresponding to the device 202A is implemented in the compute fabric 102 [par. 0139]"), wherein the first device twin comprises a first interface by which a first application interacts ("control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]") with an industrial automation device of an industrial automation system configured to perform an industrial automation process ("industrial process control systems and automation systems of industrial process plants [par. 0002]") wherein the industrial automation device is communicatively coupled to an operational technology (OT) network ("FIG. 1A is a block diagram of an example architecture of a Next Generation Process Control and Automation System ('NGPCAS') which may be utilized to control industrial and/or automation processes [par. 0038]");
deploying a second device twin [another] industrial automation device ("Each of the digital twins 210A-210D is, as the name implies, a 'virtual twin' of the on-premises physical device, devices, or group of devices to which it is coupled [par. 0139]" and "control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]");
receiving updated data corresponding to the industrial automation device ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]"); and
updating the first and second device twin ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]").
Although Nixon teaches on-premises digital twins [par. 0147] and remote digital twins [par. 0025], Nixon does not explicitly teach the second device twin in a second computing environment, where the second device twin comprises a second interface by which a second application interacts with the industrial automation device.
In the same field of endeavor (multiple digital twins of a device), Ghalami teaches a first device twin of a device and a second device twin in a second computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]"), where the second device twin comprises a second interface by which a second application interacts with the device ("The first digital twin 304 may also include a vehicle interface 318 and the second digital twin 306 may include a cloud interface 320 [par. 0033]").
Ghalami further teaches, "[t]he use of the dual digital twins may allow different systems external to the vehicle to interact with the 'closest' digital twin, instead of solely relying on communications directly with the vehicle itself. This improves communications efficiency and reduces communications latency [par. 0016]."
It would have been obvious to one having ordinary skill in the art at the time of filing the invention to have modified Nixon's teachings of maintain digital twins in an industrial setting, to include Ghalami's teachings of a first digital twin representing a device locally and second digital twin representing the device remotely, for the benefit of improving communication efficiency and reducing communication latency.
With regard to claim 2, the combination above teaches the system of claim 1. Ghalami in the combination further teaches wherein the first computing environment comprises an on-premises (on-prem) computing environment, and wherein the second computing environment comprises a cloud computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]").
With regard to claim 3, the combination above teaches the system of claim 2. Ghalami in the combination further teaches wherein the first application runs in the on-prem computing environment, and wherein the second application runs in the cloud computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]").
With regard to claim 4, the combination above teaches the system of claim 1. Nixon in the combination further teaches wherein the first device twin is deployed to a container running on a compute surface within the OT network ("the digital twins 210A-210D may be implemented as microservices (or other micro-encapsulated execution environments) executing, in embodiments, in joint or individual containers [par. 0141]" and "all applications may be containerized, including the applications which execute locally at physical locations at which physical devices are disposed [par. 0129]").
With regard to claim 5, the combination above teaches the system of claim 4. Nixon in the combination further teaches wherein the compute surface is part of an edge device within the OT network ("The edge devices 670 may include, for example, I/O or other servers 672, data, networking and storage servers 674 (such as data aggregators and/or VPN gateways), and local workload servers 676, which may be connected to local hardware 680, such as local controllers, field devices and other on-premise hardware [par. 0279]").
With regard to claim 6, the combination above teaches the system of claim 1. Nixon in the combination further teaches wherein the first device twin is deployed to a human-machine interface (HMI) communicatively coupled to the OT network ("control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]").
With regard to claim 8, the combination above teaches the system of claim 1. Nixon in the combination further teaches wherein the operations comprise receiving, from the industrial automation device, discovery data comprising one or more characteristics of the industrial automation device ("When the physical devices are connected to the compute fabric via their respective media converters, each is automatically associated with its digital twin based on the hardware ID, and is programmed (if programmable) according to the programming of its digital twin [par. 0100]" and "automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]"), wherein the first and second device twins are deployed based on the received discovery data ("The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]").
With regard to claim 9, the combination above teaches the system of claim 1. Nixon in the combination further teaches wherein the operations comprise receiving metadata for the industrial automation device, wherein the first and second device twins are deployed based on the received metadata ("When the physical devices are connected to the compute fabric via their respective media converters, each is automatically associated with its digital twin based on the hardware ID, and is programmed (if programmable) according to the programming of its digital twin [par. 0100]" and "automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]""The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]").
With regard to claim 10, Nixon teaches a method, comprising:
receiving discovery data comprising one or more characteristics ("automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]" and "The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]") of an industrial automation device ("The digital twin 210A corresponding to the device 202A is implemented in the compute fabric 102 [par. 0139]") of an industrial automation system configured to perform an industrial automation process ("industrial process control systems and automation systems of industrial process plants [par. 0002]"), wherein the industrial automation device is communicatively coupled to an operational technology (OT) network ("FIG. 1A is a block diagram of an example architecture of a Next Generation Process Control and Automation System ('NGPCAS') which may be utilized to control industrial and/or automation processes [par. 0038]");
deploying a first device twin in a first computing environment based on the discovery data ("The digital twin 210A corresponding to the device 202A is implemented in the compute fabric 102 [par. 0139]" and "automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]"), wherein the first device twin comprises a first interface by which a first application interacts with the industrial automation device ("control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]";
deploying a second device twin [another] industrial automation device ("Each of the digital twins 210A-210D is, as the name implies, a 'virtual twin' of the on-premises physical device, devices, or group of devices to which it is coupled [par. 0139]" and "control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]");
receiving updated data corresponding to the industrial automation device ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]"); and
updating the first and second device twins based on the received data ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]").
Although Nixon teaches on-premises digital twins [par. 0147] and remote digital twins [par. 0025], Nixon does not explicitly teach the second device twin in a second computing environment, where the second device twin comprises a second interface by which a second application interacts with the industrial automation device.
In the same field of endeavor (multiple digital twins of a device), Ghalami teaches a first device twin of a device and a second device twin in a second computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]"), where the second device twin comprises a second interface by which a second application interacts with the device ("The first digital twin 304 may also include a vehicle interface 318 and the second digital twin 306 may include a cloud interface 320 [par. 0033]").
Ghalami further teaches, "[t]he use of the dual digital twins may allow different systems external to the vehicle to interact with the 'closest' digital twin, instead of solely relying on communications directly with the vehicle itself. This improves communications efficiency and reduces communications latency [par. 0016]."
It would have been obvious to one having ordinary skill in the art at the time of filing the invention to have modified Nixon's teachings of maintain digital twins in an industrial setting, to include Ghalami's teachings of a first digital twin representing a device locally and second digital twin representing the device remotely, for the benefit of improving communication efficiency and reducing communication latency.
With regard to claim 11, the combination above teaches the method of claim 10. Nixon in the combination further teaches wherein the updated data is received from the industrial automation device ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]").
With regard to claim 12, the combination above teaches the method of claim 10. Nixon in the combination further teaches wherein the updated data is received from an edge device ("The edge devices 670 may include, for example, I/O or other servers 672, data, networking and storage servers 674 (such as data aggregators and/or VPN gateways), and local workload servers 676, which may be connected to local hardware 680, such as local controllers, field devices and other on-premise hardware [par. 0279]").
With regard to claim 14, the combination above teaches the method of claim 10. Nixon in the combination further teaches therein the updated data is generated in response to a detected change in the industrial automation device ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]").
With regard to claim 15, the combination above teaches the method of claim 10. Nixon in the combination further teaches therein the updated data is generated in response to a request ("the function blocks, control modules, and other control algorithms instantiated in the compute fabric (or in a hardware controller) send commands and data to the digital twins, which communicate those commands and data back to the hardware field devices of the second process plant via the media converters [par. 0084]" and "Physical devices 105, 108 may responsively operate and/or change their behavior based on control signals and/or other instructions received from the compute fabric 102, [par. 0104]").
With regard to claim 16, Nixon teaches a non-transitory computer readable medium storing instructions that, when executed by processing circuitry, cause the processing circuitry to perform operations ("the example systems described herein are described as being implemented in software executed on a processor of one or more computer devices [par. 0378]") comprising:
receiving update data ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]") corresponding to an industrial automation device of an industrial automation system configured to perform an industrial automation process ("industrial process control systems and automation systems of industrial process plants [par. 0002]");
updating a first device twin in a first computing environment based on the update data ("The digital twin 210A corresponding to the device 202A is implemented in the compute fabric 102 [par. 0139]" and "as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]"), wherein the first device twin comprises a first interface by which a first application interacts with the industrial automation device ("control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]"); and
updating a second device twin in a ("Each of the digital twins 210A-210D is, as the name implies, a 'virtual twin' of the on-premises physical device, devices, or group of devices to which it is coupled [par. 0139]" and "as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]" and "control/operations GUI 1010 provides a real-time view of an example process or portion thereof executing at the physical site [par. 0338]").
Although Nixon teaches on-premises digital twins [par. 0147] and remote digital twins [par. 0025], Nixon does not explicitly teach the second device twin in a second computing environment, where the second device twin comprises a second interface by which a second application interacts with the industrial automation device.
In the same field of endeavor (multiple digital twins of a device), Ghalami teaches a first device twin of a device and a second device twin in a second computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]"), where the second device twin comprises a second interface by which a second application interacts with the device ("The first digital twin 304 may also include a vehicle interface 318 and the second digital twin 306 may include a cloud interface 320 [par. 0033]").
Ghalami further teaches, "[t]he use of the dual digital twins may allow different systems external to the vehicle to interact with the 'closest' digital twin, instead of solely relying on communications directly with the vehicle itself. This improves communications efficiency and reduces communications latency [par. 0016]."
It would have been obvious to one having ordinary skill in the art at the time of filing the invention to have modified Nixon's teachings of maintain digital twins in an industrial setting, to include Ghalami's teachings of a first digital twin representing a device locally and second digital twin representing the device remotely, for the benefit of improving communication efficiency and reducing communication latency.
With regard to claim 17, the combination above teaches the computer readable medium of claim 16. Ghalami in the combination further teaches wherein the first computing environment comprises an on-premises (on-prem) computing environment, and wherein the second computing environment comprises a cloud computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]").
With regard to claim 18, the combination above teaches the computer readable medium of claim 17. Ghalami in the combination further teaches wherein the first application runs in the on-prem computing environment, and wherein the second application runs in the cloud computing environment ("One digital copy (e.g., one of the digital twins) is stored locally in the vehicle and a second digital copy (e.g., one of the digital twins) is stored in a remote system (for example, stored on 'the cloud' on one or more remote servers that are located remotely from the vehicle) [par. 0016]").
With regard to claim 19, the combination above teaches the computer readable medium of claim 16. Nixon in the combination further teaches wherein the operations comprise:
receiving discovery data comprising one or more characteristics of the industrial automation device ("When the physical devices are connected to the compute fabric via their respective media converters, each is automatically associated with its digital twin based on the hardware ID, and is programmed (if programmable) according to the programming of its digital twin [par. 0100]" and "automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]");
deploying the first device twin in the first computing environment based on the discovery data ("The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]"); and
deploying the second device twin in second first computing environment based on the discovery data ("The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]").
With regard to claim 20, the combination above teaches the computer readable medium of claim 16. Nixon in the combination further teaces wherein the operations comprise:
receiving metadata for the industrial automation device; deploying the first device twin in the first computing environment based on the metadata; and deploying the second device twin in second first computing environment based on the metadata ("When the physical devices are connected to the compute fabric via their respective media converters, each is automatically associated with its digital twin based on the hardware ID, and is programmed (if programmable) according to the programming of its digital twin [par. 0100]" and "automatic discovery (e.g., using device tags, including hardcoded device tags) can determine which devices to connect to the various containerized applications, containerized services, microservices, MEEEs, or granules instantiated in the compute fabric 102 [par. 0144]""The digital twins 210A-210D may, in embodiments, be created automatically from the descriptions of the respective physical devices 202A-202D they represent [par. 0142]").
Claims 7 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over Nixon in view of Ghalami further in view of Gao et al. [US Pub. 2018/0212705] ("Gao").
With regard to claim 7, the combination of Nixon and Ghalami teaches the system of claim 1. Nixon in the combination teaches wherein the first and second device twins are updated ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]").
Although Ghalami in the combination teaches syncing the digital twins [par. 0021], the combination does not explicitly teach according to different first and second respective update schedules.
In the same field of endeavor (preventing network conflict), Gao teaches different first and second respective schedules ("the OLT needs to coordinate sending by the ONUs in a time slice grant manner, to ensure that only one ONU is allowed to send data in a specific time period, so as to effectively avoid a conflict [par. 0006]").
It would have been obvious to one having ordinary skill in the art at the time of filing the invention to have modified the teachings of Nixon and Ghalami, to only allowed a digital twin to update at a time according to a schedule, for the benefit of avoiding conflicts in copies of the digital twin.
With regard to claim 13, the combination of Nixon and Ghalami teaches the method of claim 10. Although Nixon in the combination wherein the first and second device twins are updated ("as the field device updates the values of measured parameters or status values, those values are uploaded, via the media converters, to the digital twins within the compute fabric [par. 0084]"), the combination does not explicitly teach therein the updated data is generated at defined time intervals.
In the same field of endeavor (preventing network conflict), Gao teaches wherein data is generated at defined time intervals ("the OLT needs to coordinate sending by the ONUs in a time slice grant manner, to ensure that only one ONU is allowed to send data in a specific time period, so as to effectively avoid a conflict [par. 0006]").
It would have been obvious to one having ordinary skill in the art at the time of filing the invention to have modified the teachings of Nixon and Ghalami, to only allowed a digital twin to update at a time according to a schedule, for the benefit of avoiding conflicts in copies of the digital twin.
Citation of Pertinent Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Bentley [US Pub. 2024/0193146] teaches implementing a code service for managing codes for elements in a digital twin of infrastructure according to an edge computing paradigm. The techniques may use an “edge base,” wherein each edge computing device (e.g., a client computing device or VM) executes a code service that maintains a local, periodically-synchronized copy of a portion of a code database for the digital twin. A cloud container of a blob storage service of a cloud datacenter may maintain a master copy of the code database.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to VINCENT W CHANG whose telephone number is (571)270-1214. The examiner can normally be reached (M-F) 10:00 am - 6:00 pm.
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, Mohammad Ali can be reached at 571-272-4105. 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.
VINCENT WEN-LIANG CHANG
Examiner
Art Unit 2119
/MOHAMMAD ALI/Supervisory Patent Examiner, Art Unit 2119