IP Library › Granted Patent US 12,386,343
Granted Patent B2
US 12,386,343 · App. 18/219,262 · Granted Aug 12, 2025

Industrial control system architecture for real-time simulation and process control

Inventors: Mark J. Nixon (Thorndale, TX); Anthony Amaro, Jr. (Cedar Park, TX); Noel Howard Bell (Austin, TX); John M. Caldwell (Austin, TX); Gary K. Law (Georgetown, TX)
Assignee: FISHER-ROSEMOUNT SYSTEMS, INC.
G05B19/41885G05B19/4183G05B19/41835G05B19/41845G05B19/4185G05B19/41865G06F9/3017G06F13/4022H04L67/12G05B17/00G05B2219/13125G05B2219/13185G05B2219/2214G05B2219/31231G05B2219/32301G05B2219/32343G05B2219/32355G05B2219/32359G05B2219/32407G05B2219/40311
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,386,343
App. No.
18/219,262
Granted
Aug 12, 2025
Kind
B2
Abstract

A Multi-Purpose Dynamic Simulation and run-time Control platform includes a virtual process environment coupled to a physical process environment, where components/nodes of the virtual and physical process environments cooperate to dynamically perform run-time process control of an industrial process plant and/or simulations thereof. Virtual components may include virtual run-time nodes and/or simulated nodes. The MPDSC includes an I/O Switch which delivers I/O data between virtual and/or physical nodes, e.g., by using publish/subscribe mechanisms, thereby virtualizing physical I/O process data delivery. Nodes serviced by the I/O Switch may include respective component behavior modules that are unaware as to whether or not they are being utilized on a virtual or physical node. Simulations may be performed in real-time and even in conjunction with run-time operations of the plant, and/or simulations may be manipulated as desired (speed, values, administration, etc.). The platform simultaneously supports simulation and run-time operations and interactions/intersections therebetween.

Claims (59)

1. A system of an industrial process plant, the system comprising:

a process control system including one or more control loops operating to control an industrial process during run-time operations of the industrial process plant,

each control loop of the one or more control loops including a respective field device disposed in a physical environment of the industrial process plant and a respective process controller disposed in a virtual environment of the industrial process plant, and

a first node of the each control loop publishing, via a virtual communication network of the process control system, data in a first publication to which an I/O switch subscribes, and the I/O switch publishing, via the virtual communication network, the data in a second publication to which a second node corresponding to the each control loop subscribes to thereby deliver respective abstracted I/O data between the respective field device and the respective process controller within the each control loop and thereby control the industrial process,

the first node being one of the respective process controller or a third node corresponding to the respective field device, and the second node being the other one of the respective process controller or the third node, and

the first node, the second node, the third node, and the I/O switch included in the virtual communication network.

2. The system of claim 1 , wherein the process control system includes more than one control loop utilizing the I/O switch.

3. The system of claim 1 , wherein at least one of the one or more process controllers is a virtual process controller or a virtual safety controller utilizing the I/O switch.

4. The system of claim 3 , wherein at least one other one of the one or more process controllers is a simulated process controller utilizing the I/O switch.

5. The system of claim 1 , further comprising the I/O switch.

6. The system of claim 1 , wherein the I/O switch delivers abstracted I/O data of at least one control loop to more than one recipient node or device.

7. The system of claim 1 , wherein each of the I/O switch and the respective process controller includes a respective publish/subscribe layer via which the respective abstracted I/O data is delivered within the each process control loop.

8. The system of claim 1 , wherein:

the respective process controller is included in a plurality of virtual nodes disposed in the virtual environment of the industrial process plant; and

the I/O switch communicates at least a portion of the abstracted I/O data to at least one of: one or more other virtual nodes included in the plurality of virtual nodes, or one or more physical nodes of the industrial process plant.

9. The system of claim 8 , wherein at least one of:

the plurality of virtual nodes include at least one of: a virtual process controller, a virtual safety controller; a virtual safety logic solver; a virtual I/O card, device, or node; a virtual wireless device; a virtual Ethernet device; a virtual operator workstation; a virtual user interface device; a virtual tool; a virtual gateway; a virtual electronic marshalling cabinet or system; a virtualization of another type of physical device or component disposed within a physical environment of the industrial process plant; or a simulated node simulating at least a portion of a physical node disposed in the physical environment of the industrial process plant; or

the plurality of physical nodes includes one or more physical process controllers and/or one or more physical safety controllers.

10. The system of claim 8 , wherein the system further comprises a virtualization management node that creates, configures, and administrates the plurality of virtual nodes based on one or more configurations of the process control system stored in a configuration database of the process control system.

11. The system of claim 10 , wherein the virtualization management node further creates and configures the I/O switch.

12. The system of claim 1 , further comprising an edge gateway communicatively connected to one or more applications, each of the one or more applications being a respective consumer of a respective at least a portion of the abstracted I/O data.

13. The system of claim 12 , wherein each of the I/O switch, the respective process controller, and the edge gateway system includes a respective publish/subscribe layer via which one or more parts of the abstracted I/O data is sent and/or received.

14. The system of claim 12 , wherein the edge gateway system includes one or more security mechanisms utilized in delivering the respective at least the portions of the abstracted I/O data between the I/O switch and the one or more applications.

15. A system of an industrial process plant, the system comprising:

a process control system including one or more control loops operating to control an industrial process during run-time operations of the industrial process plant,

each control loop of the one or more control loops including a respective field device disposed in a physical environment of the industrial process plant and a respective process control device disposed in a virtual environment of the industrial process plant, and

the each control loop utilizing an I/O switch to deliver respective abstracted I/O data within the each control loop,

wherein:

at least one of the one or more respective process control devices is a first virtual process controller or a first virtual safety controller utilizing the I/O switch,

at least one other one of the one or more respective process control devices is a simulated process controller utilizing the I/O switch, the simulated process controller being a virtual run-time node operating as the simulated process controller during the run-time operations of the industrial process plant, and

upon an approval of the simulated process controller, the virtual run-time node changes from operating as the simulated process controller to operating as a second virtual process controller or a second virtual safety controller during the run-time operations of the industrial process plant to control the industrial process.

16. The system of claim 1 , wherein at least one of:

the I/O switch is a subscriber to first data generated by the respective field device and a publisher of second data indicative of the first data, and the respective process controller is a subscriber to the second data and operates on contents of the second data to generate a control signal to control the industrial process; or

the I/O switch is a subscriber to third data indicative of the control signal and published by the respective process controller and a publisher of fourth data indicative of the third data.

17. The system of claim 16 , wherein at least one of:

the respective field device or a first intervening device communicatively disposed between the I/O switch and the respective field device is a subscriber to the fourth data, and the field device operates responsively to contents of the fourth data; or

another process control device or a second intervening device communicatively disposed between the I/O switch and the another process control device is a subscriber to the fourth data, and the another process controller operates on the contents of the fourth data to control the industrial process.

18. A system of an industrial process plant, the system comprising:

a process control system including one or more control loops operating to control an industrial process during run-time operations of the industrial process plant,

each control loop of the one or more control loops including a respective field device disposed in a physical environment of the industrial process plant and a respective process control device disposed in a virtual environment of the industrial process plant, and

the each control loop utilizing an I/O switch to deliver respective abstracted I/O data within the each control loop, and

wherein:

(i) at least one of:

the I/O switch is a subscriber to first data generated by the respective field device and a publisher of second data indicative of the first data, and the respective process control device is a subscriber to the second data and operates on contents of the second data to generate a control signal to control the industrial process; or

the I/O switch is a subscriber to third data indicative of the control signal and published by the respective process control device and a publisher of fourth data indicative of the third data;

(ii) at least one of:

the respective field device or a first intervening device communicatively disposed between the I/O switch and the respective field device is a subscriber to the fourth data, and the field device operates responsively to contents of the fourth data; or

another process control device or a second intervening device communicatively disposed between the I/O switch and the another process control device is a subscriber to the fourth data, and the another process controller operates on the contents of the fourth data to control the industrial process; and

(iii) at least one of the first intervening device or the second intervening device is a respective I/O hub communicatively disposed between the I/O switch and a respective plurality of physical devices of the industrial process plant.

19. The system of claim 17 , wherein the another process control device is a physical process controller or a physical safety controller.

20. A system of an industrial process plant, the system comprising:

a process control system including one or more control loops operating to control an industrial process during run-time operations of the industrial process plant,

each control loop of the one or more control loops including a respective field device disposed in a physical environment of the industrial process plant and a respective process control device disposed in a virtual environment of the industrial process plant,

the one or more process control devices included in a plurality of virtual nodes disposed in the virtual environment of the industrial process plant; and

the each control loop utilizing an I/O switch to deliver respective abstracted I/O data within the each control loop, and

the I/O switch communicates at least a portion of the abstracted I/O data to at least one of: one or more other virtual nodes included in the plurality of virtual nodes, or one or more physical nodes of the industrial process plant; and

a virtualization management node that creates, configures, and administrates the plurality of virtual nodes based on one or more configurations of the process control system stored in a configuration database of the process control system, and administrates the plurality of virtual nodes responsive to one or more conditions of a physical computing platform that supports the virtual environment,

the physical computing platform including one or more computing devices, and the one or more conditions of the physical computing platform dynamically occurring during run-time operations of the industrial process plant; and

the administration of the plurality of virtual nodes by the virtualization management node responsive to the dynamic occurrence of the one or more conditions of the physical computing platform includes at least one of: a deletion of a virtual node included in the plurality of virtual nodes, a creation of another virtual node, an activation of a stand-by virtual node, a re-allocation of resources, storing a respective configuration of at least a portion of the virtual node, storing run-time data corresponding to the at least the portion of the virtual node, storing simulation data corresponding to the at least the portion of the virtual node, storing a state of the at least the portion of the virtual node, storing other data corresponding to the at least the portion of the virtual node, restoring the at least the portion of the virtual node from respective stored data, or another administrative action.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2023
From: NIXON, MARK J.; AMARO, ANTHONY, JR.; BELL, NOEL HOWARD; CALDWELL, JOHN M.; LAW, GARY K.
To: FISHER-ROSEMOUNT SYSTEMS, INC.
Reel/Frame 065139/0836 →
Continuity (4)
Continuation 17491210 · Sep 30, 2021
Continuation 15931998 · May 14, 2020
Provisional Application 62859508 · Jun 10, 2019
Related Publication 20230350397A1 · Nov 2, 2023
References Cited (174)
US 6298377B1 · Hartikainen et al. · 2001 [cited by applicant]
US 7564805B1 · Cortez et al. · 2009 [cited by applicant]
US 7684875B2 · Jundt et al. · 2010 [cited by applicant]
US 8139474B2 · Nosley · 2012 [cited by applicant]
US 8332567B2 · Burr et al. · 2012 [cited by applicant]
US 8756041B2 · Maturana et al. · 2014 [cited by applicant]
US 8762618B2 · Burr et al. · 2014 [cited by applicant]
US 8977851B2 · Neitzel et al. · 2015 [cited by applicant]
US 9083548B2 · Holmes et al. · 2015 [cited by applicant]
US 9256222B2 · Blount et al. · 2016 [cited by applicant]
US 9304511B2 · Blount et al. · 2016 [cited by applicant]
US 9411769B2 · Erni et al. · 2016 [cited by applicant]
US 9495313B2 · Burr et al. · 2016 [cited by applicant]
US 9709978B2 · Asenjo et al. · 2017 [cited by applicant]
US 9912737B2 · Patin et al. · 2018 [cited by applicant]
US 9946240B2 · Erni · 2018 [cited by applicant]
US 9971914B2 · Maturana et al. · 2018 [cited by applicant]
US 9989958B2 · Asenjo et al. · 2018 [cited by applicant]
US 10037443B2 · Maturana et al. · 2018 [cited by applicant]
US 10372473B2 · Blount et al. · 2019 [cited by applicant]
US 10530748B2 · Rotvold et al. · 2020 [cited by applicant]
US 10620613B2 · Ong et al. · 2020 [cited by applicant]
US 11320797B2 · Nixon et al. · 2022 [cited by applicant]
US 20020107699A1 · Rivera · 2002 [cited by examiner]
US 20020135618A1 · Maes · 2002 [cited by examiner]
US 20030038842A1 · Peck · 2003 [cited by examiner]
US 20030055900A1 · Glas · 2003 [cited by examiner]
US 20040022237A1 · Elliott · 2004 [cited by examiner]
US 20040086086A1 · Butler · 2004 [cited by examiner]
US 20040158442A1 · Kondo · 2004 [cited by applicant]
US 20060146991A1 · Thompson · 2006 [cited by examiner]
US 20060265397A1 · Bryan · 2006 [cited by examiner]
US 20070043860A1 · Pabari · 2007 [cited by applicant]
US 20070150079A1 · Blevins et al. · 2007 [cited by applicant]
US 20070202471A1 · Petruzziello · 2007 [cited by examiner]
US 20070204339A1 · Bou-Diab · 2007 [cited by applicant]
US 20080034364A1 · Lam et al. · 2008 [cited by applicant]
US 20090089359A1 · Siorek et al. · 2009 [cited by applicant]
US 20090089406A1 · Roush et al. · 2009 [cited by applicant]
US 20110054640A1 · Law et al. · 2011 [cited by applicant]
US 20110178611A1 · Daraiseh et al. · 2011 [cited by applicant]
US 20120232875A1 · Devereux · 2012 [cited by applicant]
US 20130136597A1 · Hansen et al. · 2013 [cited by applicant]
US 20130205277A1 · Seven et al. · 2013 [cited by applicant]
US 20130245843A1 · Bhageria et al. · 2013 [cited by applicant]
US 20140070617A1 · Detmers et al. · 2014 [cited by applicant]
US 20140107808A1 · Yamamoto et al. · 2014 [cited by applicant]
US 20140149029A1 · Sakakibara et al. · 2014 [cited by applicant]
US 20140266392A1 · Devarajan · 2014 [cited by examiner]
US 20140269764A1 · Borgeson et al. · 2014 [cited by applicant]
US 20140355581A1 · Pulini et al. · 2014 [cited by applicant]
US 20150052519A1 · Yu · 2015 [cited by examiner]
US 20150120550A1 · Jung · 2015 [cited by examiner]
US 20150205280A1 · Tsuchiya et al. · 2015 [cited by applicant]
US 20150381538A1 · Bunte · 2015 [cited by examiner]
US 20160048408A1 · Madhu et al. · 2016 [cited by applicant]
US 20160054808A1 · Cho · 2016 [cited by applicant]
US 20160087854A1 · Jayanti Venkata et al. · 2016 [cited by applicant]
US 20160169956A1 · Kim · 2016 [cited by examiner]
US 20160179993A1 · Maturana et al. · 2016 [cited by applicant]
US 20160182285A1 · Ferguson et al. · 2016 [cited by applicant]
US 20160182288A1 · Maenpaa · 2016 [cited by applicant]
US 20160182323A1 · Ferguson et al. · 2016 [cited by applicant]
US 20160182693A1 · Ferguson et al. · 2016 [cited by applicant]
US 20160359664A1 · Malegaonkar et al. · 2016 [cited by applicant]
US 20170017211A1 · Periasamy et al. · 2017 [cited by applicant]
US 20170025040A1 · Maturana et al. · 2017 [cited by applicant]
US 20170032281A1 · Hsu · 2017 [cited by examiner]
US 20170060574A1 · Malladi et al. · 2017 [cited by applicant]
US 20170102694A1 · Enver et al. · 2017 [cited by applicant]
US 20170104826A1 · Sait et al. · 2017 [cited by applicant]
US 20170118102A1 · Majumder · 2017 [cited by examiner]
US 20170201085A1 · Dunn · 2017 [cited by examiner]
US 20170269577A1 · De Ligt et al. · 2017 [cited by applicant]
US 20170300024A1 · Nixon et al. · 2017 [cited by applicant]
US 20170329322A1 · Downor · 2017 [cited by applicant]
US 20180024537A1 · Chauvet et al. · 2018 [cited by applicant]
US 20180026942A1 · De Ligt · 2018 [cited by applicant]
US 20180112795A1 · Anderson · 2018 [cited by applicant]
US 20180113442A1 · Nixon · 2018 [cited by examiner]
US 20180115457A1 · Bonomi et al. · 2018 [cited by applicant]
US 20180115516A1 · Rotvold et al. · 2018 [cited by applicant]
US 20180115517A1 · Rotvold et al. · 2018 [cited by applicant]
US 20180115528A1 · Rotvold et al. · 2018 [cited by applicant]
US 20180210428A1 · Jundt et al. · 2018 [cited by applicant]
US 20180242312A1 · Gandhi et al. · 2018 [cited by applicant]
US 20180259222A1 · Murphy · 2018 [cited by applicant]
US 20180260251A1 · Beveridge et al. · 2018 [cited by applicant]
US 20180300214A1 · Wang · 2018 [cited by examiner]
US 20180314240A1 · Velagapalli et al. · 2018 [cited by applicant]
US 20180321662A1 · Nixon · 2018 [cited by examiner]
US 20180364688A1 · Sait et al. · 2018 [cited by applicant]
US 20190041824A1 · Chavez et al. · 2019 [cited by applicant]
US 20190068618A1 · Mestha · 2019 [cited by examiner]
US 20190101882A1 · Strinden et al. · 2019 [cited by applicant]
US 20190101899A1 · Enver · 2019 [cited by applicant]
US 20190102068A1 · Naidoo et al. · 2019 [cited by applicant]
US 20190102076A1 · Naidoo et al. · 2019 [cited by applicant]
US 20190173934A1 · Beattie, Jr. · 2019 [cited by examiner]
US 20190220703A1 · Prakash et al. · 2019 [cited by applicant]
US 20190289091A1 · Burns et al. · 2019 [cited by applicant]
US 20190384393A1 · Cruz-Hernandez · 2019 [cited by examiner]
US 20200073682A1 · Strinden et al. · 2020 [cited by applicant]
US 20200145213A1 · Mohan · 2020 [cited by examiner]
US 20200310614A1 · Choi et al. · 2020 [cited by applicant]
CN 103238143A · 2013 [cited by applicant]
CN 104142629A · 2014 [cited by applicant]
CN 104142630A · 2014 [cited by applicant]
CN 105654227A · 2016 [cited by applicant]
CN 106933204A · 2017 [cited by applicant]
CN 106933207A · 2017 [cited by applicant]
CN 107256007A · 2017 [cited by applicant]
CN 107431647A · 2017 [cited by applicant]
CN 107976967A · 2018 [cited by applicant]
CN 108123994A · 2018 [cited by applicant]
CN 108513655A · 2018 [cited by applicant]
CN 109213702A · 2019 [cited by applicant]
CN 109564411A · 2019 [cited by applicant]
CN 109597374A · 2019 [cited by applicant]
CN 109716732A · 2019 [cited by applicant]
EP 2642360A1 · 2013 [cited by applicant]
EP 2801940A1 · 2014 [cited by applicant]
EP 2840453A2 · 2015 [cited by applicant]
EP 3276887A1 · 2018 [cited by applicant]
GB 2429540A · 2007 [cited by applicant]
GB 2536339A · 2016 [cited by applicant]
JP 2001209407A · 2001 [cited by applicant]
JP 2003140711A · 2003 [cited by applicant]
JP 2011505613A · 2011 [cited by applicant]
JP 2013041596A · 2013 [cited by applicant]
JP 201361762A · 2013 [cited by applicant]
JP 201980164A · 2019 [cited by applicant]
JP 2019515375A · 2019 [cited by applicant]
WO WO2012047654A1 · 2012 [cited by applicant]
WO WO2017223535A1 · 2017 [cited by applicant]
WO WO2018096641A1 · 2018 [cited by applicant]
WO WO2018202276A1 · 2018 [cited by applicant]
WO WO2018204225A1 · 2018 [cited by applicant]
WO WO2019099111A1 · 2019 [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525946.5, dated Jul. 22, 2023. [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525949.9, dated Jul. 23, 2023. [cited by applicant]
Amaro Jr, “Improving Bandwidth Allocation in Cloud Computing Environments via “Bandwidth as a Service” Partitioning Scheme”, Texas State University, (2016). [cited by applicant]
Search Report for Application No. GB2008489.3, dated Feb. 19, 2021. [cited by applicant]
Search Report for Application No. GB2008490.1, dated Dec. 8, 2020. [cited by applicant]
Search Report for Application No. GB2008491.9, dated Feb. 19, 2021. [cited by applicant]
Search Report for Application No. GB2008492.7, dated Feb. 19, 2021. [cited by applicant]
Search Report for Application No. GB2008493.5, dated Feb. 19, 2021. [cited by applicant]
Search Report for Application No. GB2008494.3, dated Mar. 1, 2021. [cited by applicant]
Zhang et al., “Hierarchical real-time networked CNC system based on the transparent model of industrial Ethernet,” Int J Adv Manul Technol, 34:161-167 (2007). [cited by applicant]
Examination Report for Application No. GB2008494.3, dated Feb. 9, 2023. [cited by applicant]
Examination Report for Application No. GB2008489.3, dated Feb. 13, 2023. [cited by applicant]
Combined Search and Examination Report for Application No. GB2315298.6, dated Dec. 1, 2023. [cited by applicant]
Combined Search and Examination Report for Application No. GB2316287.8, dated Feb. 16, 2024. [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525409.0, dated Jul. 22, 2023. [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525410.3, dated Jul. 23, 2023. [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525418.X, dated Jul. 22, 2023. [cited by applicant]
Notification of First Office Action for Chinese Application No. 202010525419.4, dated Jul. 23, 2023. [cited by applicant]
Office Action for Japanese Application No. 2020-097851, dated Jan. 9, 2024. [cited by applicant]
Office Action for Japanese Application No. 2020-097854, dated Feb. 6, 2024. [cited by applicant]
Office Action for Japanese Application No. 2020-097855, dated Jan. 9, 2024. [cited by applicant]
Search Report for Application No. GB2305512.2, dated Oct. 16, 2023. [cited by applicant]
Search Report for Application No. GB2305513.0, dated Oct. 16, 2023. [cited by applicant]
Search Report for Application No. GB2305514.8, dated Oct. 16, 2023. [cited by applicant]
Search Report for Application No. GB2316271.1, dated Feb. 14, 2024. [cited by applicant]
Search Report for Application No. GB2316285.2, dated Feb. 14, 2024. [cited by applicant]
Search Report for Application No. GB2316288.6, dated Feb. 12, 2024. [cited by applicant]
Search Report for Application No. GB2316289.4, dated Feb. 12, 2024. [cited by applicant]
Search Report for Application No. GB2316290.2, dated Feb. 8, 2024. [cited by applicant]
Combined Search and Examination Report for Application No. GB2318172.0, dated Mar. 22, 2024. [cited by applicant]
Combined Search and Examination Report for Application No. GB2402381.4, dated Mar. 8, 2024. [cited by applicant]
Notification of Second Office Action for Chinese Application No. 202010525409.0, dated Mar. 6, 2024. [cited by applicant]
Notification of Second Office Action for Chinese Application No. 202010525418.X, dated Mar. 6, 2024. [cited by applicant]
Notification of Second Office Action for Chinese Application No. 202010525949.9, dated Mar. 6, 2024. [cited by applicant]
Search Report for Application No. GB2318173.8, dated Mar. 22, 2024. [cited by applicant]