US20150168946A1 - Multiple frame rate system - Google Patents

Multiple frame rate system Download PDF

Info

Publication number
US20150168946A1
US20150168946A1 US14/106,176 US201314106176A US2015168946A1 US 20150168946 A1 US20150168946 A1 US 20150168946A1 US 201314106176 A US201314106176 A US 201314106176A US 2015168946 A1 US2015168946 A1 US 2015168946A1
Authority
US
United States
Prior art keywords
frame
data
control set
frame period
frame rate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US14/106,176
Other versions
US9915939B2 (en
Inventor
Muralidhar Venkata Subrahmanya Duvvuri
Harry Paul Ridenour, III
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
GE Infrastructure Technology LLC
Original Assignee
General Electric Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by General Electric Co filed Critical General Electric Co
Priority to US14/106,176 priority Critical patent/US9915939B2/en
Assigned to GENERAL ELECTRIC COMPANY reassignment GENERAL ELECTRIC COMPANY ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: Ridenour, Harry Paul, Duvvuri, Muralidhar Venkata Subrahmanya
Priority to JP2014248510A priority patent/JP6475484B2/en
Priority to EP14197327.1A priority patent/EP2884359B1/en
Priority to CN201410760266.6A priority patent/CN104717050B/en
Publication of US20150168946A1 publication Critical patent/US20150168946A1/en
Application granted granted Critical
Publication of US9915939B2 publication Critical patent/US9915939B2/en
Assigned to GE INFRASTRUCTURE TECHNOLOGY LLC reassignment GE INFRASTRUCTURE TECHNOLOGY LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: GENERAL ELECTRIC COMPANY
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • G05B19/41855Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication by local area network [LAN], network structure
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by the network communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31222Mixed traffic scheduler, ed for high speed and dm for low speed messages
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42263Different sample rates, multiple sample rates for the different loops
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the subject matter disclosed herein relates to an automation control system. Specifically, the current application relates to incorporating multiple controllers with different frame rates/periods on a common physical network.
  • Certain systems may provide for control capabilities that enable the execution of control instructions in various types of devices, such as sensors, pumps, valves, and the like. As these systems become more sophisticated, the number of devices may increase substantially, resulting in increased supporting hardware, increased data, and increased network traffic across the system.
  • controllers can reside on a common physical network and consume data from each other's input/output modules (e.g., I/O packs).
  • controllers in an industrial control system may send and/or receive data at different frame rates/periods than other controllers in the network.
  • controllers that share input/output modules on a common physical network are not allowed to have different frame transmission and/or reception rates.
  • an industrial control system in a first embodiment, includes a first control set, having a first frame period.
  • the first control set includes at least one first input/output (I/O) pack; and at least one first controller.
  • the industrial control system also has a second control set with a second frame period.
  • the second control set includes at least one second input/output (I/O) pack; and at least one second controller.
  • a mixed-frame rate logic device e.g., logic within the controller
  • This device may handle sharing of input data, output data, or both provided by the first control set to the second control set when the first and second frame periods are different.
  • a tangible, non-transitory, machine-readable medium includes machine-readable instructions to: transmit input data, output data, or both from a first control set configured with a first frame period; receive the input data, the output data, or both at a second control set configured with a second frame period, wherein the first and second frame periods are different; modify a timeout threshold to account for the different first and second frame periods; and modify processing of the input data, the output data, or both by the second control set to account for the different first and second frame periods.
  • an industrial control system includes at least one mixed-frame rate logic module.
  • the mixed-frame rate logic modules sets a timeout threshold for receiving data based upon the slower of a first frame rate associated with a data-sending device and a second frame rate associated with a data-receiving device and provides data to the data-receiving device for subsequent processing at the slower of the first frame rate and the second frame rate.
  • FIG. 1 is a schematic diagram of an embodiment of an automation control system (e.g., an industrial control system), including a multi-frame rate logic module to handle sharing of data across multi-frame rate control sets, in accordance with an embodiment;
  • an automation control system e.g., an industrial control system
  • multi-frame rate logic module to handle sharing of data across multi-frame rate control sets, in accordance with an embodiment
  • FIG. 2 is a block diagram illustrating input/output module sharing among controllers with different frame rates/periods, in accordance with an embodiment
  • FIG. 3 is a flowchart illustrating a process for implementing multi-rate controller inputs when the expected frame rate of the controller is faster than the frame rate of the I/O pack, in accordance with an embodiment
  • FIG. 4 is a flowchart illustrating a process for implementing multi-rate controller inputs when the expected frame rate of the controller is slower than the frame rate of the I/O pack, in accordance with an embodiment
  • FIG. 5 is a flowchart illustrating a process for implementing multi-rate controller outputs when the expected frame rate of the I/O pack is faster than the frame rate of the controller sending the output data, in accordance with an embodiment
  • FIG. 6 is a flowchart illustrating a process for implementing multi-rate controller outputs when the expected frame rate of the I/O pack is slower than the frame rate of the controller sending the output data, in accordance with an embodiment.
  • Industrial control systems may include controllers and/or input/output modules (e.g., I/O packs) that send and/or receive data a certain rate (e.g., a certain frame rate/period).
  • these controllers and/or I/O packs may be configured with various frame periods (e.g., transmission/reception of one frame every 10 ms, 20 ms, 40 ms, 80 ms, 160 ms, 320 ms, etc.). This may also be measured as a frame rate (e.g., 10 ms/frame, 20 ms/frame, 40 ms/frame, 80 ms/frame, 160 ms/frame, 320 ms/frame, etc.).
  • control sets e.g., a controller and its associated I/O packs
  • I/O packs were associated with a particular controller, where there was a common timing between the I/O packs and the associated controller. This created predictability between the I/O packs and the associated controller, enabling ease of communication between these components.
  • I/O ports of a first I/O pack in a first control set may be utilized by a controller in a second control set. This may be useful, for example, to allow free ports of the first control set to be used by the second control set when there are no available ports in the second control set. Accordingly, hardware costs may be reduced by utilizing free ports of alternative control rather than purchasing additional hardware for the first control set.
  • the frame rates/periods may differ among control sets, causing data inputs and/or outputs to be received and/or sent at mismatched times.
  • the embodiments discussed below provide mixed-frame rate logic for an industrial control system that enables control sets to communicate with one another at a matched frame rate/period. Accordingly, data may be shared among the control sets using a uniform timing, regardless of whether or not the control sets have a uniform transmission/reception frame rate/period. This may provide new efficiencies for the industrial control system.
  • the control system 10 may include a computer 12 suitable for executing a variety of field device configuration and monitoring applications, and for providing an operator interface through which an engineer or technician may monitor the components of the control system 10 .
  • the computer 12 may be any type of computing device suitable for running software applications, such as a laptop, a workstation, a tablet computer, or a handheld portable device (e.g., personal digital assistant or cell phone). Indeed, the computer 12 may include any of a variety of hardware and/or operating system platforms.
  • the computer 12 may host an industrial control software, such as a human-machine interface (HMI) software 14 , a manufacturing execution system (MES) 16 , a distributed control system (DCS) 18 , and/or a supervisor control and data acquisition (SCADA) system 20 .
  • HMI human-machine interface
  • MES manufacturing execution system
  • DCS distributed control system
  • SCADA supervisor control and data acquisition
  • the computer 12 may host the ControlSTTM software, available from General Electric Company, of Schenectady, N.Y.
  • the computer 12 is communicatively connected to a plant data highway 22 suitable for enabling communication between the depicted computer 12 and other computers 12 in the plant.
  • the industrial control system 10 may include multiple computers 12 interconnected through the plant data highway 22 .
  • the computer 12 may be further communicatively connected to a unit data highway 24 , suitable for communicatively coupling the computer 12 to industrial controllers 26 .
  • the system 10 may include other computers coupled to the plant data highway 22 and/or the unit data highway 24 .
  • embodiments of the system 10 may include a computer 28 that executes a virtual controller, a computer 30 that hosts an Ethernet Global Data (EGD) configuration server, an Object Linking and Embedding for Process Control (OPC) Data Access (DA) server, an alarm server, or a combination thereof, a computer 32 hosting a General Electric Device System Standard Message (GSM) server, a computer 34 hosting an OPC Alarm and Events (AE) server, and a computer 36 hosting an alarm viewer.
  • Other computers coupled to the plant data highway 22 and/or the unit data highway 24 may include computers hosting CimplicityTM, ControlSTTM, and ToolboxSTTM, available from General Electric Co., of Schenectady, N.Y.
  • the system 10 may include any number and suitable configuration of industrial controllers 26 .
  • the system 10 may include one industrial controller 26 , two industrial controllers 26 , three, or more industrial controllers for redundancy.
  • the industrial controllers 26 may enable control logic useful in automating a variety of plant equipment, such as a turbine system 38 , a valve 40 , and a pump 42 .
  • the industrial controllers 26 may communicate with a variety of devices, including but not limited to temperature sensors 44 , flow meters, pH sensors, temperature sensors, vibration sensors, clearance sensors (e.g., measuring distances between a rotating component and a stationary component), and pressure sensors.
  • the industrial controller 26 may further communicate with electric actuators, switches (e.g., Hall switches, solenoid switches, relay switches, limit switches), and so forth.
  • the turbine system 38 , the valve 40 , the pump 42 , and the temperature sensor 44 are communicatively interlinked to the automation controller 26 by using linking devices 46 and 48 suitable for interfacing between an I/O NET 50 and a H1 network 52 .
  • the linking devices 46 and 48 may include the FG-100 linking device, available from Softing AG, of Haar, Germany.
  • a linking device such as the linking device 48
  • other components coupled to the I/O NET 50 such as one of the industrial controllers 26 , may also be coupled to the switch 54 .
  • data transmitted and received through the I/O NET 50 such as a 100 Megabit (MB) high speed Ethernet (HSE) network
  • the H1 network 52 such as a 31.25 kilobit/sec network. That is, the linking devices 46 and 48 may act as bridges between the I/O Net 50 and the H1 network 52 .
  • the devices may include industrial devices, such as Foundation Fieldbus devices that include support for the Foundation H1 bi-directional communications protocol.
  • a Foundation Fieldbus power supply 53 such as a Phoenix Contact Fieldbus Power Supply available from Phoenix Contact of Middletown, Pa., may also be coupled to the H1 network 52 and may be coupled to a power source, such as AC or DC power.
  • the power supply 53 may be suitable for providing power to the devices 38 , 40 , 42 , and 44 , as well as for enabling communications between the devices 38 , 40 , 42 , and 44 .
  • the H1 network 52 may carry both power and communications signals (e.g., alert signals) over the same wiring, with minimal communicative interference.
  • the devices 38 , 40 , 42 , and 44 may also include support for other communication protocols, such as those included in the HART® Communications Foundation (HCF) protocol, and the Profibus National Organization e.V. (PNO) protocol.
  • HCF HART® Communications Foundation
  • PNO Profibus Profibus National Organization e.V.
  • Each of the linking devices 46 and 48 may include one or more segment ports 56 and 58 useful in segmenting the H1 network 52 .
  • the linking device 46 may use the segment port 56 to communicatively couple with the devices 38 and 44
  • the linking device 48 may use the segment port 58 to communicatively couple with the devices 40 and 42 .
  • Distributing the input/output between the devices 38 , 44 , 40 , and 42 by using, for example, the segment ports 56 and 58 may enable a physical separation useful in maintaining fault tolerance, redundancy, and improving communications time.
  • additional devices may be coupled to the I/O NET 50 .
  • an I/O pack 60 may be coupled to the I/O NET 50 .
  • the I/O pack 60 may provide for the attachment of additional sensors and actuators to the system 10 .
  • controllers 26 may reside on the same physical network.
  • I/O packs 60 e.g., input/output modules
  • control set 62 and control set 64 are associated with a particular controller 26 , forming a control set (e.g., control set 62 and control set 64 ).
  • control set 64 it may be useful for one control set (e.g., control set 62 ) to consume and/or transmit data to a separate control set (e.g., control set 64 ).
  • one or more of the controllers 26 of the system 10 may consume and/or send data to an I/O pack 60 of a separate control set (e.g., I/O pack 60 in control set 64 .
  • the control sets e.g., a controller 26 and its associated I/O packs 60
  • a uniform frame rate/period may be used in cross-transmission and/or cross-consumption to/from an I/O pack 60 of another controller 26 .
  • the system 10 may include a mixed-frame rate logic 62 module (e.g., machine-implemented instructions, stored on a non-transitory, machine-readable medium) that, when implemented by a processor, may stabilize frame rates/periods among control sets with differing frame rates/periods (e.g., control set 64 ).
  • the logic 62 may modify data communication timeout settings and data intake settings.
  • the mixed-frame rate logic 62 may be implemented on the I/O NET 50 .
  • the mixed-frame rate logic 62 may be implemented on a processing device such as one or more of the controllers 26 attached to the I/O NET 50 .
  • FIG. 2 is a block diagram illustrating input/output module (e.g., I/O pack 60 ) sharing among control sets with different frame rates/periods, in accordance with an embodiment.
  • input/output module e.g., I/O pack 60
  • there are two control sets namely control set 82 and control set 84 .
  • reference numerals with an “A” represent portions of control set 82
  • reference numerals with a “B” represent portions of control set 84 .
  • the control set 82 includes a controller 26 A, a switch 90 A with one or more ports 92 A, and one or more I/O packs 60 A.
  • the controller 26 A may include communications hardware 93 A, a driver 94 A (e.g., machine-executable instructions for interpreting data) for the communications hardware 93 A, mixed-frame rate logic 62 A, and an application layer 96 A.
  • the communications hardware 93 A may receive packets from the I/O NET 50
  • the driver 94 A may provide instructions to the controller 26 A for interpreting data received by the hardware 93 A
  • the application layer 96 A may make use of the interpreted data.
  • the switches 70 A of the control set 62 may direct data to/from the proper controller 26 A of the particular control set 62 via the I/O NET 50 and switch 54 .
  • control set 62 may have a frame period of 10 ms.
  • control set 84 may also include a controller 26 B, a switch 90 B with one or more ports 92 B, and one or more I/O packs 60 B.
  • the communications hardware 93 B may receive packets from the I/O NET 50
  • the driver 94 B may provide instructions to the controller 26 B for interpreting data received by the hardware 93 B
  • the application layer 96 B may make use of the interpreted data.
  • the switches 90 B of the control set 84 may direct data to/from the proper controller 26 B of control set 84 via the I/O NET 50 and switch 54 .
  • control set 84 may have a frame period of 40 ms.
  • an I/O pack 60 of one control set may be desirable to share with another control set.
  • ports 92 A e.g., 10 ports
  • 10 I/O packs 60 A are already coupled to the 10 ports 92 A of switch 90 A, no additional I/O packs 60 A may be added to the control set 82 .
  • control sets 82 and 84 are configured to send data at particular rates. Because control set 82 is configured with a 10 ms frame period and control set 84 is configured with a 40 ms frame period, control set 82 sends and receives data 4 times faster than control set 84 . Accordingly, to share data from an I/O pack 60 B with controller 26 A of control set 82 , the control sets 82 and 84 may discern and handle any challenges associated with the different frame periods. As discussed above, the mixed-frame rate logic 62 (e.g., 62 A and/or 62 B) may provide this mixed-frame rate/period handling.
  • the mixed-frame rate logic 62 e.g., 62 A and/or 62 B
  • the mixed-frame rate logic 62 may be implemented on any processing device attached to the I/O NET 50 .
  • Two example cases that the mixed-frame logic 62 may handle, regarding mixed-frame rates among control sets, include: a) frames of data that are received by a controller 26 more often than the frame period of the receiving controller 26 and b) frames of data that are received by a controller 26 less often than the frame period of the receiving controller 26 .
  • the hardware of the control set may be overloaded. For instance, if the control sets 82 and/or 84 are configured to share date of an I/O pack 60 A with controller 26 B, the data from the I/O pack 60 A may be sent 4 times as fast as controller 26 B receives data, because control set 82 has a 10 ms frame period, while control set 84 has a 40 ms frame period. Because the data is sent 4 times as fast as it is received, the application layer 96 B may be bombarded with unutilized data. Accordingly, as will be discussed in more detail below, the mixed-frame rate logic 62 B may counter-act this bombardment.
  • the hardware of the control set may erroneously discern that the system 10 is unhealthy (e.g., erroneously indicate that data from the I/O packs 60 have timed out). For instance, if the control sets 82 and/or 84 are configured to share date of an I/O pack 60 B with controller 26 A, the data from the I/O pack 60 B may be sent 4 times slower than controller 26 A receives data, because control set 82 has a 10 ms frame period, while control set 84 has a 40 ms frame period.
  • the controller 26 A may erroneously indicate that data transmission has timed out, because data is not received in each 10 ms period. Accordingly, as will be discussed in more detail below, the mixed-frame rate logic 62 B may counter-act this erroneous timeout indication.
  • FIGS. 3 and 4 illustrate computer-implemented processes that the mixed-frame rate logic 62 may follow to handle cases where input data is sent by the I/O packs 60 at a different rate than it is received by the controller 26 .
  • FIG. 3 is a flowchart illustrating a computer-implemented process 100 for handling the transmission and/or reception of I/O pack input data when the frame rate of the controller 26 receiving the data is faster than the frame rate of the I/O pack 60 sending the data (e.g., the case discussed in FIG. 2 , where control set 84 shares I/O pack 60 B data with control set 82 ).
  • the frame rate/period of the I/O pack 60 sending the input data is determined (block 102 ).
  • the frame rate/period of the I/O pack 60 may be determined, for example, by accessing configuration files of a configuration program for the industrial control system 10 (e.g., ToolboxSTTM, available from General Electric Co., of Schenectady, N.Y.) or through a periodic packet analysis of transmissions sent from the I/O pack 60 .
  • a configuration program for the industrial control system 10 e.g., ToolboxSTTM, available from General Electric Co., of Schenectady, N.Y.
  • the timeout threshold (e.g., the amount of time before a timeout indication is triggered) may be based upon the receiving control set's frame period
  • the timeout threshold is set based upon the sending I/O pack's frame period (block 104 ).
  • the sending I/O pack 60 B's frame period is 40 ms.
  • the controller 26 A that receives the input data from I/O pack 60 B may be configured to timeout when data is not provided by the I/O pack 60 B within a 40 ms period.
  • the controller 26 A will provide a timeout indication for the sending I/O pack 60 (e.g., I/O pack 60 B) upon breaching the set timeout threshold (e.g., 40 ms) (block 106 ).
  • controller 26 may be configured to update (e.g., take in) input data at the frame rate of the I/O pack 60 (block 108 ).
  • the controller 26 A may be configured to receive data from I/O packs 60 B based upon the I/O packs' frame period/rate, thus overriding the controller 26 A's frame period/rate.
  • the mixed-frame rate logic 62 determines that the sending rate is slower than the receiving rate, several multi-frame rate obstacles are overcome. Erroneous timeout indications are avoided. Further, valid data is received at the controller despite being transmitted to the controller 26 at a rate slower than expected by the controller 26 .
  • FIG. 4 is a flowchart illustrating a computer-implemented process 120 for handling the transmission and/or reception of I/O pack input data when the frame rate of the controller 26 receiving the data is slower than the frame rate of the I/O pack 60 sending the data (e.g., the case discussed in FIG. 2 , where control set 82 shares I/O pack 60 A data with control set 84 ).
  • the logic 62 determines if a frame number is a multiple of the receiving frame period/rate (block 122 ).
  • the frame number may be a reference number of a frame of data sent that is based upon a synchronized time across the industrial control system 10 .
  • the synchronized time may be defined according to the IEEE 1588 precision time protocol (PTP).
  • PTP Precision time protocol
  • the frame numbers may be, for example, 0, 10, 20, 30, 40, etc. (indicating a new frame of data every 10 ms).
  • controller 26 B is configured to receive frames every 40 ms, the controller 26 B expects to receive frames 0, 40, 80, 120, 160, etc. (e.g., each frame number that is associated with (e.g., is a multiple of) the 40 ms period).
  • Each of the transmitted frames of data that are not a multiple of the receiving frame period is discarded (block 124 ).
  • the application layer 96 e.g., 96 A and/or 96 B
  • a filter may be implemented to discard the non-multiple frames prior to the frames reaching the application layer 96 .
  • a fast user datagram protocol (UDP) filter may be used to filter out any non-multiple frames prior to the frame reaching the application layer 96 .
  • the processing burden of the application layers 96 may be reduced, because the application layers 96 may receive fewer frames of data.
  • the I/O packs 60 A send frames 0, 10, 20, 30, 40, 50, etc.
  • frames 10, 20, 30, 50, etc. will be discarded, because they are not multiples of the receiving frame period/rate of 40 ms.
  • Each frame of data that is a multiple of the receiving frame rate may be processed by the application layer 96 (block 126 ). Accordingly, in the current example, referring back to FIG. 2 , each frame sent by the I/O packs 60 A that is a multiple of 40 may be processed (e.g., frames 0, 40, 80, 120, etc.). These frames are provided to the application layer 96 , where the controller-based processing may occur.
  • the discussion turns to cases regarding output data sent from the controllers 26 to the I/O packs 60 .
  • the controllers 26 may provide output data to the I/O packs 60 which is then propagated to devices attached to the I/O packs 60 .
  • the same mixed-frame rate issues may arise when transmitting this output data from the controllers 26 to the I/O packs 60 .
  • the output data may be sent by the controller 26 to an I/O pack 60 at a different rate than the I/O pack 60 receives data (e.g., more rapidly or more slowly). Accordingly, the mixed-frame rate logic 62 may counteract effects of this mismatched rate.
  • the mixed-frame rate logic 62 may reside on any processing device of the I/O NET 50 .
  • the logic 62 may reside on the transmitting controller 26 , the receiving switch 90 , and/or the receiving I/O pack 60 .
  • FIGS. 5 and 6 illustrate a process that the mixed-frame rate logic 62 may follow.
  • FIG. 5 is a flowchart illustrating a computer-implemented process 140 for handling multi-frame rates when the sending frame rate of the I/O pack 60 is faster than the receiving frame rate of the controller 26 sending the controller output data.
  • the frame rate/period of the controller 26 sending the output data is determined (block 142 ).
  • the frame rate/period of the controller 26 may be determined, for example, by accessing configuration files of a configuration program for the industrial control system 10 (e.g., ToolboxSTTM, available from General Electric Co., of Schenectady, N.Y.) or through a periodic packet analysis of transmissions sent from the controller 26 .
  • a configuration program for the industrial control system 10 e.g., ToolboxSTTM, available from General Electric Co., of Schenectady, N.Y.
  • the timeout threshold (e.g., the amount of time before a timeout indication is triggered) may be based upon the receiving control set's frame period
  • the timeout threshold (or expected output rate) is set based upon the sending I/O pack's frame period (block 144 ).
  • the sending controller 26 B's frame period is 40 ms.
  • the I/O pack 60 A that receives the output data from controller 26 B may be configured to timeout when data is not provided by the controller 26 B within a 40 ms period.
  • the I/O pack 60 A may provide a timeout indication for the sending controller 26 (e.g., controller 26 B) upon breaching the set timeout threshold (e.g., 40 ms) (block 146 ).
  • the I/O pack 60 may be configured to update (e.g., take in) controller output data at the frame rate of the controller 26 (block 148 ).
  • the I/O pack 60 A may be configured to receive data from controller 26 B based upon the controller 26 A's frame period/rate, thus overriding the I/O pack 60 A's frame period/rate.
  • the mixed-frame rate logic 62 determines that the sending rate of controller output data is slower than the receiving rate, several multi-frame rate obstacles are overcome. Erroneous timeout indications are avoided. Further, valid data is received at the I/O packs 60 despite being transmitted to the I/O packs 60 at a rate slower than expected.
  • FIG. 6 is a flowchart illustrating a computer-implemented process 160 for handling the transmission and/or reception of controller output data when the frame rate of the I/O pack 60 receiving the data is slower than the frame rate of the controller 26 sending the data (e.g., the case where control set 82 shares controller 26 A data with control set 84 ).
  • the logic 62 determines if a frame number is a multiple of the receiving frame period/rate (block 162 ).
  • the frame number may be a reference number of a frame of data sent that is based upon a synchronized time across the industrial control system 10 . Referring to FIG. 2 , for example, where the controller output data is sent from controller 26 A at 10 ms, the frame numbers may be, for example, 0, 10, 20, 30, 40, etc. (indicating a new frame of data every 10 ms). Because the I/O pack 60 B is configured to receive frames every 40 ms, the I/O pack 60 B may receive frames 0, 40, 80, 120, 160, etc. (e.g., each frame number that is associated with (e.g., is a multiple of) the 40 ms period).
  • Each of the transmitted frames of data that are not a multiple of the receiving frame period is discarded (block 164 ).
  • the application layer 96 e.g., 96 A and/or 96 B
  • a filter may be implemented to discard the non-multiple frames.
  • a fast user datagram protocol (UDP) filter may be used to filter out any non-multiple frames prior to the frame reaching the application layer 96 .
  • the processing burden of the application layers 96 may be reduced, because the application layers 96 may receive fewer frames of data.
  • the controller 26 A sends frames 0, 10, 20, 30, 40, 50, etc.
  • frames 10, 20, 30, 50, etc. will be discarded, because they are not multiples of the receiving frame period/rate of 40 ms.
  • Each frame of data that is a multiple of the receiving frame rate may be processed by the application layer 96 (block 126 ). Accordingly, in the current example, referring back to FIG. 2 , each frame sent by the controller 26 A that is a multiple of 40 may processed (e.g., frames 0, 40, 80, 120, etc.). These frames are provided to the application layer 96 , where the controller-based processing may occur.
  • data frame rates/periods may be adjusted by mixed frame logic that adjusts a timeout setting for expected data and/or discards excessive data. Accordingly, the mixed frame logic may result in an enhanced industrial control system. For example, multiple controllers and/or I/O packs having differing frame rates may share data on the same physical network.

Abstract

An industrial control system is provided that includes a first control set, having a first frame period. The first control set includes at least one first input/output (I/O) pack; and at least one first controller. The industrial control system also has a second control set with a second frame period. The second control set includes at least one second input/output (I/O) pack; and at least one second controller. A mixed-frame rate logic device is also included with the industrial control system. This device may handle sharing of input data, output data, or both provided by the first control set to the second control set when the first and second frame periods are different.

Description

    BACKGROUND
  • The subject matter disclosed herein relates to an automation control system. Specifically, the current application relates to incorporating multiple controllers with different frame rates/periods on a common physical network.
  • Certain systems, such industrial control systems, may provide for control capabilities that enable the execution of control instructions in various types of devices, such as sensors, pumps, valves, and the like. As these systems become more sophisticated, the number of devices may increase substantially, resulting in increased supporting hardware, increased data, and increased network traffic across the system.
  • In certain control systems, multiple controllers can reside on a common physical network and consume data from each other's input/output modules (e.g., I/O packs). In many cases, controllers in an industrial control system may send and/or receive data at different frame rates/periods than other controllers in the network. Unfortunately, in traditional implementations, controllers that share input/output modules on a common physical network are not allowed to have different frame transmission and/or reception rates.
  • BRIEF DESCRIPTION
  • Certain embodiments commensurate in scope with the originally claimed invention are summarized below. These embodiments are not intended to limit the scope of the claimed invention, but rather these embodiments are intended only to provide a brief summary of possible forms of the invention. Indeed, the invention may encompass a variety of forms that may be similar to or different from the embodiments set forth below.
  • In a first embodiment, an industrial control system is provided that includes a first control set, having a first frame period. The first control set includes at least one first input/output (I/O) pack; and at least one first controller. The industrial control system also has a second control set with a second frame period. The second control set includes at least one second input/output (I/O) pack; and at least one second controller. A mixed-frame rate logic device (e.g., logic within the controller) is also included with the industrial control system. This device may handle sharing of input data, output data, or both provided by the first control set to the second control set when the first and second frame periods are different.
  • In a second embodiment, a tangible, non-transitory, machine-readable medium, includes machine-readable instructions to: transmit input data, output data, or both from a first control set configured with a first frame period; receive the input data, the output data, or both at a second control set configured with a second frame period, wherein the first and second frame periods are different; modify a timeout threshold to account for the different first and second frame periods; and modify processing of the input data, the output data, or both by the second control set to account for the different first and second frame periods.
  • In a third embodiment, an industrial control system includes at least one mixed-frame rate logic module. The mixed-frame rate logic modules sets a timeout threshold for receiving data based upon the slower of a first frame rate associated with a data-sending device and a second frame rate associated with a data-receiving device and provides data to the data-receiving device for subsequent processing at the slower of the first frame rate and the second frame rate.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • These and other features, aspects, and advantages of the present invention will become better understood when the following detailed description is read with reference to the accompanying drawings in which like characters represent like parts throughout the drawings, wherein:
  • FIG. 1 is a schematic diagram of an embodiment of an automation control system (e.g., an industrial control system), including a multi-frame rate logic module to handle sharing of data across multi-frame rate control sets, in accordance with an embodiment;
  • FIG. 2 is a block diagram illustrating input/output module sharing among controllers with different frame rates/periods, in accordance with an embodiment;
  • FIG. 3 is a flowchart illustrating a process for implementing multi-rate controller inputs when the expected frame rate of the controller is faster than the frame rate of the I/O pack, in accordance with an embodiment;
  • FIG. 4 is a flowchart illustrating a process for implementing multi-rate controller inputs when the expected frame rate of the controller is slower than the frame rate of the I/O pack, in accordance with an embodiment;
  • FIG. 5 is a flowchart illustrating a process for implementing multi-rate controller outputs when the expected frame rate of the I/O pack is faster than the frame rate of the controller sending the output data, in accordance with an embodiment; and
  • FIG. 6 is a flowchart illustrating a process for implementing multi-rate controller outputs when the expected frame rate of the I/O pack is slower than the frame rate of the controller sending the output data, in accordance with an embodiment.
  • DETAILED DESCRIPTION OF THE INVENTION
  • One or more specific embodiments of the present invention will be described below. In an effort to provide a concise description of these embodiments, all features of an actual implementation may not be described in the specification. It should be appreciated that in the development of any such actual implementation, as in any engineering or design project, numerous implementation-specific decisions must be made to achieve the developers' specific goals, such as compliance with system-related and business-related constraints, which may vary from one implementation to another. Moreover, it should be appreciated that such a development effort might be complex and time consuming, but would nevertheless be a routine undertaking of design, fabrication, and manufacture for those of ordinary skill having the benefit of this disclosure.
  • When introducing elements of various embodiments of the present invention, the articles “a,” “an,” “the,” and “said” are intended to mean that there are one or more of the elements. The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that there may be additional elements other than the listed elements.
  • Industrial control systems may include controllers and/or input/output modules (e.g., I/O packs) that send and/or receive data a certain rate (e.g., a certain frame rate/period). For example, these controllers and/or I/O packs may be configured with various frame periods (e.g., transmission/reception of one frame every 10 ms, 20 ms, 40 ms, 80 ms, 160 ms, 320 ms, etc.). This may also be measured as a frame rate (e.g., 10 ms/frame, 20 ms/frame, 40 ms/frame, 80 ms/frame, 160 ms/frame, 320 ms/frame, etc.). Traditionally, control sets (e.g., a controller and its associated I/O packs) have utilized to stabilize communication of data within the control system. For example, in traditional systems, I/O packs were associated with a particular controller, where there was a common timing between the I/O packs and the associated controller. This created predictability between the I/O packs and the associated controller, enabling ease of communication between these components.
  • However, more recently, there has been a move towards sharing among separate control sets. For example, in more modern approaches, I/O ports of a first I/O pack in a first control set may be utilized by a controller in a second control set. This may be useful, for example, to allow free ports of the first control set to be used by the second control set when there are no available ports in the second control set. Accordingly, hardware costs may be reduced by utilizing free ports of alternative control rather than purchasing additional hardware for the first control set. Unfortunately, the frame rates/periods may differ among control sets, causing data inputs and/or outputs to be received and/or sent at mismatched times.
  • The embodiments discussed below provide mixed-frame rate logic for an industrial control system that enables control sets to communicate with one another at a matched frame rate/period. Accordingly, data may be shared among the control sets using a uniform timing, regardless of whether or not the control sets have a uniform transmission/reception frame rate/period. This may provide new efficiencies for the industrial control system.
  • Turning to FIG. 1, an embodiment of an industrial process control system 10 is depicted. The control system 10 may include a computer 12 suitable for executing a variety of field device configuration and monitoring applications, and for providing an operator interface through which an engineer or technician may monitor the components of the control system 10. The computer 12 may be any type of computing device suitable for running software applications, such as a laptop, a workstation, a tablet computer, or a handheld portable device (e.g., personal digital assistant or cell phone). Indeed, the computer 12 may include any of a variety of hardware and/or operating system platforms. In accordance with one embodiment, the computer 12 may host an industrial control software, such as a human-machine interface (HMI) software 14, a manufacturing execution system (MES) 16, a distributed control system (DCS) 18, and/or a supervisor control and data acquisition (SCADA) system 20. For example, the computer 12 may host the ControlST™ software, available from General Electric Company, of Schenectady, N.Y.
  • Further, the computer 12 is communicatively connected to a plant data highway 22 suitable for enabling communication between the depicted computer 12 and other computers 12 in the plant. Indeed, the industrial control system 10 may include multiple computers 12 interconnected through the plant data highway 22. The computer 12 may be further communicatively connected to a unit data highway 24, suitable for communicatively coupling the computer 12 to industrial controllers 26. The system 10 may include other computers coupled to the plant data highway 22 and/or the unit data highway 24. For example, embodiments of the system 10 may include a computer 28 that executes a virtual controller, a computer 30 that hosts an Ethernet Global Data (EGD) configuration server, an Object Linking and Embedding for Process Control (OPC) Data Access (DA) server, an alarm server, or a combination thereof, a computer 32 hosting a General Electric Device System Standard Message (GSM) server, a computer 34 hosting an OPC Alarm and Events (AE) server, and a computer 36 hosting an alarm viewer. Other computers coupled to the plant data highway 22 and/or the unit data highway 24 may include computers hosting Cimplicity™, ControlST™, and ToolboxST™, available from General Electric Co., of Schenectady, N.Y.
  • The system 10 may include any number and suitable configuration of industrial controllers 26. For example, in some embodiments the system 10 may include one industrial controller 26, two industrial controllers 26, three, or more industrial controllers for redundancy. The industrial controllers 26 may enable control logic useful in automating a variety of plant equipment, such as a turbine system 38, a valve 40, and a pump 42. Indeed, the industrial controllers 26 may communicate with a variety of devices, including but not limited to temperature sensors 44, flow meters, pH sensors, temperature sensors, vibration sensors, clearance sensors (e.g., measuring distances between a rotating component and a stationary component), and pressure sensors. The industrial controller 26 may further communicate with electric actuators, switches (e.g., Hall switches, solenoid switches, relay switches, limit switches), and so forth.
  • In the depicted embodiment, the turbine system 38, the valve 40, the pump 42, and the temperature sensor 44 are communicatively interlinked to the automation controller 26 by using linking devices 46 and 48 suitable for interfacing between an I/O NET 50 and a H1 network 52. For example, the linking devices 46 and 48 may include the FG-100 linking device, available from Softing AG, of Haar, Germany. In some embodiments, a linking device, such as the linking device 48, may be coupled to the I/O NET through a switch 54. In such an embodiment, other components coupled to the I/O NET 50, such as one of the industrial controllers 26, may also be coupled to the switch 54. Accordingly, data transmitted and received through the I/O NET 50, such as a 100 Megabit (MB) high speed Ethernet (HSE) network, may in turn be transmitted and received by the H1 network 52, such as a 31.25 kilobit/sec network. That is, the linking devices 46 and 48 may act as bridges between the I/O Net 50 and the H1 network 52.
  • A variety of devices may be linked to the industrial controller 26 and to the computer 12. For example, the devices, such as the turbine system 38, the valve 40, the pump 42, and the temperature sensor 44, may include industrial devices, such as Foundation Fieldbus devices that include support for the Foundation H1 bi-directional communications protocol. In such an embodiment, a Foundation Fieldbus power supply 53, such as a Phoenix Contact Fieldbus Power Supply available from Phoenix Contact of Middletown, Pa., may also be coupled to the H1 network 52 and may be coupled to a power source, such as AC or DC power. The power supply 53 may be suitable for providing power to the devices 38, 40, 42, and 44, as well as for enabling communications between the devices 38, 40, 42, and 44. Advantageously, the H1 network 52 may carry both power and communications signals (e.g., alert signals) over the same wiring, with minimal communicative interference. The devices 38, 40, 42, and 44 may also include support for other communication protocols, such as those included in the HART® Communications Foundation (HCF) protocol, and the Profibus Nutzer Organization e.V. (PNO) protocol.
  • Each of the linking devices 46 and 48 may include one or more segment ports 56 and 58 useful in segmenting the H1 network 52. For example, the linking device 46 may use the segment port 56 to communicatively couple with the devices 38 and 44, while the linking device 48 may use the segment port 58 to communicatively couple with the devices 40 and 42. Distributing the input/output between the devices 38, 44, 40, and 42 by using, for example, the segment ports 56 and 58 may enable a physical separation useful in maintaining fault tolerance, redundancy, and improving communications time. In some embodiments, additional devices may be coupled to the I/O NET 50. For example, in one embodiment an I/O pack 60 may be coupled to the I/O NET 50. The I/O pack 60 may provide for the attachment of additional sensors and actuators to the system 10.
  • As illustrated, multiple controllers 26 may reside on the same physical network. I/O packs 60 (e.g., input/output modules) are associated with a particular controller 26, forming a control set (e.g., control set 62 and control set 64). However, as discussed above, in certain situations, it may be useful for one control set (e.g., control set 62) to consume and/or transmit data to a separate control set (e.g., control set 64). For example, as will be discussed in more detail below, one or more of the controllers 26 of the system 10 (e.g., controller 26 in control set 62) may consume and/or send data to an I/O pack 60 of a separate control set (e.g., I/O pack 60 in control set 64. However, because the control sets (e.g., a controller 26 and its associated I/O packs 60) are configured to receive data a particular frame rate, a uniform frame rate/period may be used in cross-transmission and/or cross-consumption to/from an I/O pack 60 of another controller 26.
  • Accordingly, the system 10 may include a mixed-frame rate logic 62 module (e.g., machine-implemented instructions, stored on a non-transitory, machine-readable medium) that, when implemented by a processor, may stabilize frame rates/periods among control sets with differing frame rates/periods (e.g., control set 64). For example, the logic 62 may modify data communication timeout settings and data intake settings. As illustrated in FIG. 1, the mixed-frame rate logic 62 may be implemented on the I/O NET 50. For example, the mixed-frame rate logic 62 may be implemented on a processing device such as one or more of the controllers 26 attached to the I/O NET 50.
  • Having discussed the industrial control system 10 having the mixed-frame rate logic 62, FIG. 2 is a block diagram illustrating input/output module (e.g., I/O pack 60) sharing among control sets with different frame rates/periods, in accordance with an embodiment. In the example provided in FIG. 2, there are two control sets, namely control set 82 and control set 84. For clarity, reference numerals with an “A” represent portions of control set 82, while reference numerals with a “B” represent portions of control set 84. As illustrated, the control set 82 includes a controller 26A, a switch 90A with one or more ports 92A, and one or more I/O packs 60A. The controller 26A may include communications hardware 93A, a driver 94A (e.g., machine-executable instructions for interpreting data) for the communications hardware 93A, mixed-frame rate logic 62A, and an application layer 96A. The communications hardware 93A may receive packets from the I/O NET 50, the driver 94A may provide instructions to the controller 26A for interpreting data received by the hardware 93A, and the application layer 96A may make use of the interpreted data. When communicating within the control set 62, the switches 70A of the control set 62 may direct data to/from the proper controller 26A of the particular control set 62 via the I/O NET 50 and switch 54. As depicted in FIG. 5, control set 62 may have a frame period of 10 ms.
  • Additionally, control set 84 may also include a controller 26B, a switch 90B with one or more ports 92B, and one or more I/O packs 60B. The communications hardware 93B may receive packets from the I/O NET 50, the driver 94B may provide instructions to the controller 26B for interpreting data received by the hardware 93B, and the application layer 96B may make use of the interpreted data. Similar to the control set 82, when communicating within the control set, the switches 90B of the control set 84 may direct data to/from the proper controller 26B of control set 84 via the I/O NET 50 and switch 54. As depicted, in the current example, control set 84 may have a frame period of 40 ms.
  • As mentioned above, it may be desirable to share an I/O pack 60 of one control set with another control set. For example, there may be a limited number of ports 92A (e.g., 10 ports) on the switch 90A. If 10 I/O packs 60A are already coupled to the 10 ports 92A of switch 90A, no additional I/O packs 60A may be added to the control set 82. Accordingly, if there are no free ports 92B on the switch 90B of control set 84, it may be desirable to couple a new I/O pack 60B to switch 90B and share the new I/O pack 60B's data with control set 82 (e.g., share it with controller 26A of control set 82).
  • However, as mentioned above, the control sets 82 and 84 are configured to send data at particular rates. Because control set 82 is configured with a 10 ms frame period and control set 84 is configured with a 40 ms frame period, control set 82 sends and receives data 4 times faster than control set 84. Accordingly, to share data from an I/O pack 60B with controller 26A of control set 82, the control sets 82 and 84 may discern and handle any challenges associated with the different frame periods. As discussed above, the mixed-frame rate logic 62 (e.g., 62A and/or 62B) may provide this mixed-frame rate/period handling. Though the current example illustrates the mixed-frame rate logic 62 integrated in one or more controllers 26 (e.g., controllers 26A and/or 26B), the mixed-frame rate logic 62 may be implemented on any processing device attached to the I/O NET 50.
  • Two example cases that the mixed-frame logic 62 may handle, regarding mixed-frame rates among control sets, include: a) frames of data that are received by a controller 26 more often than the frame period of the receiving controller 26 and b) frames of data that are received by a controller 26 less often than the frame period of the receiving controller 26.
  • In the first case, when frames of data are received/sent more rapidly than the frame period of a receiving controller, the hardware of the control set may be overloaded. For instance, if the control sets 82 and/or 84 are configured to share date of an I/O pack 60A with controller 26B, the data from the I/O pack 60A may be sent 4 times as fast as controller 26B receives data, because control set 82 has a 10 ms frame period, while control set 84 has a 40 ms frame period. Because the data is sent 4 times as fast as it is received, the application layer 96B may be bombarded with unutilized data. Accordingly, as will be discussed in more detail below, the mixed-frame rate logic 62B may counter-act this bombardment.
  • In the second case, when frames of data are received/sent less rapidly than the frame period of a receiving controller, the hardware of the control set may erroneously discern that the system 10 is unhealthy (e.g., erroneously indicate that data from the I/O packs 60 have timed out). For instance, if the control sets 82 and/or 84 are configured to share date of an I/O pack 60B with controller 26A, the data from the I/O pack 60B may be sent 4 times slower than controller 26A receives data, because control set 82 has a 10 ms frame period, while control set 84 has a 40 ms frame period. Because the data is sent 4 times slower than it is received, the controller 26A may erroneously indicate that data transmission has timed out, because data is not received in each 10 ms period. Accordingly, as will be discussed in more detail below, the mixed-frame rate logic 62B may counter-act this erroneous timeout indication.
  • FIGS. 3 and 4 illustrate computer-implemented processes that the mixed-frame rate logic 62 may follow to handle cases where input data is sent by the I/O packs 60 at a different rate than it is received by the controller 26. FIG. 3 is a flowchart illustrating a computer-implemented process 100 for handling the transmission and/or reception of I/O pack input data when the frame rate of the controller 26 receiving the data is faster than the frame rate of the I/O pack 60 sending the data (e.g., the case discussed in FIG. 2, where control set 84 shares I/O pack 60B data with control set 82).
  • First, the frame rate/period of the I/O pack 60 sending the input data is determined (block 102). The frame rate/period of the I/O pack 60 may be determined, for example, by accessing configuration files of a configuration program for the industrial control system 10 (e.g., ToolboxST™, available from General Electric Co., of Schenectady, N.Y.) or through a periodic packet analysis of transmissions sent from the I/O pack 60.
  • Next, in contrast to systems where the timeout threshold (e.g., the amount of time before a timeout indication is triggered) may be based upon the receiving control set's frame period, the timeout threshold is set based upon the sending I/O pack's frame period (block 104). For instance, in the example provided in FIG. 2, the sending I/O pack 60B's frame period is 40 ms. Accordingly, the controller 26A that receives the input data from I/O pack 60B may be configured to timeout when data is not provided by the I/O pack 60B within a 40 ms period. Thus, the controller 26A will provide a timeout indication for the sending I/O pack 60 (e.g., I/O pack 60B) upon breaching the set timeout threshold (e.g., 40 ms) (block 106).
  • Further, the controller 26 may be configured to update (e.g., take in) input data at the frame rate of the I/O pack 60 (block 108). For example, the controller 26A may be configured to receive data from I/O packs 60B based upon the I/O packs' frame period/rate, thus overriding the controller 26A's frame period/rate.
  • By implementing the process 100, when the mixed-frame rate logic 62 determines that the sending rate is slower than the receiving rate, several multi-frame rate obstacles are overcome. Erroneous timeout indications are avoided. Further, valid data is received at the controller despite being transmitted to the controller 26 at a rate slower than expected by the controller 26.
  • FIG. 4 is a flowchart illustrating a computer-implemented process 120 for handling the transmission and/or reception of I/O pack input data when the frame rate of the controller 26 receiving the data is slower than the frame rate of the I/O pack 60 sending the data (e.g., the case discussed in FIG. 2, where control set 82 shares I/O pack 60A data with control set 84).
  • When the mixed-frame rate logic 62 determines that the receiving rate is slower than the sending rate, the logic 62 determines if a frame number is a multiple of the receiving frame period/rate (block 122). The frame number may be a reference number of a frame of data sent that is based upon a synchronized time across the industrial control system 10. The synchronized time may be defined according to the IEEE 1588 precision time protocol (PTP). In the example discussed regarding FIG. 2 where the input data is sent from I/O packs 60A at 10 ms, the frame numbers may be, for example, 0, 10, 20, 30, 40, etc. (indicating a new frame of data every 10 ms). Because the controller 26B is configured to receive frames every 40 ms, the controller 26B expects to receive frames 0, 40, 80, 120, 160, etc. (e.g., each frame number that is associated with (e.g., is a multiple of) the 40 ms period).
  • Each of the transmitted frames of data that are not a multiple of the receiving frame period is discarded (block 124). In certain embodiments, the application layer 96 (e.g., 96A and/or 96B) may discard the non-multiple frames. However, this may lead to processing inefficiencies, as the application layer 96 may need to exert processing power (e.g., processing power of the controllers 26) to discard these frames. Accordingly, in certain embodiments, a filter may be implemented to discard the non-multiple frames prior to the frames reaching the application layer 96. For example, in certain embodiments, a fast user datagram protocol (UDP) filter may be used to filter out any non-multiple frames prior to the frame reaching the application layer 96. Accordingly, the processing burden of the application layers 96 may be reduced, because the application layers 96 may receive fewer frames of data. In the current example, referring back to FIG. 2, the I/O packs 60A send frames 0, 10, 20, 30, 40, 50, etc. However, frames 10, 20, 30, 50, etc. will be discarded, because they are not multiples of the receiving frame period/rate of 40 ms.
  • Each frame of data that is a multiple of the receiving frame rate may be processed by the application layer 96 (block 126). Accordingly, in the current example, referring back to FIG. 2, each frame sent by the I/O packs 60A that is a multiple of 40 may be processed (e.g., frames 0, 40, 80, 120, etc.). These frames are provided to the application layer 96, where the controller-based processing may occur.
  • Having now discussed cases regarding input data from the I/O packs 60, the discussion turns to cases regarding output data sent from the controllers 26 to the I/O packs 60. As mentioned above, the controllers 26 may provide output data to the I/O packs 60 which is then propagated to devices attached to the I/O packs 60. The same mixed-frame rate issues may arise when transmitting this output data from the controllers 26 to the I/O packs 60. For example, the output data may be sent by the controller 26 to an I/O pack 60 at a different rate than the I/O pack 60 receives data (e.g., more rapidly or more slowly). Accordingly, the mixed-frame rate logic 62 may counteract effects of this mismatched rate. Once again, the mixed-frame rate logic 62 may reside on any processing device of the I/O NET 50. In certain embodiments, the logic 62 may reside on the transmitting controller 26, the receiving switch 90, and/or the receiving I/O pack 60. FIGS. 5 and 6 illustrate a process that the mixed-frame rate logic 62 may follow.
  • FIG. 5 is a flowchart illustrating a computer-implemented process 140 for handling multi-frame rates when the sending frame rate of the I/O pack 60 is faster than the receiving frame rate of the controller 26 sending the controller output data.
  • First, the frame rate/period of the controller 26 sending the output data is determined (block 142). The frame rate/period of the controller 26 may be determined, for example, by accessing configuration files of a configuration program for the industrial control system 10 (e.g., ToolboxST™, available from General Electric Co., of Schenectady, N.Y.) or through a periodic packet analysis of transmissions sent from the controller 26.
  • Next, in contrast to traditional systems where the timeout threshold (e.g., the amount of time before a timeout indication is triggered) may be based upon the receiving control set's frame period, the timeout threshold (or expected output rate) is set based upon the sending I/O pack's frame period (block 144). For instance, in the example provided in FIG. 2, the sending controller 26B's frame period is 40 ms. Accordingly, the I/O pack 60A that receives the output data from controller 26B may be configured to timeout when data is not provided by the controller 26B within a 40 ms period. Thus, the I/O pack 60A may provide a timeout indication for the sending controller 26 (e.g., controller 26B) upon breaching the set timeout threshold (e.g., 40 ms) (block 146).
  • Further, the I/O pack 60 may be configured to update (e.g., take in) controller output data at the frame rate of the controller 26 (block 148). For example, the I/O pack 60A may be configured to receive data from controller 26B based upon the controller 26A's frame period/rate, thus overriding the I/O pack 60A's frame period/rate.
  • By implementing the process 140, when the mixed-frame rate logic 62 determines that the sending rate of controller output data is slower than the receiving rate, several multi-frame rate obstacles are overcome. Erroneous timeout indications are avoided. Further, valid data is received at the I/O packs 60 despite being transmitted to the I/O packs 60 at a rate slower than expected.
  • FIG. 6 is a flowchart illustrating a computer-implemented process 160 for handling the transmission and/or reception of controller output data when the frame rate of the I/O pack 60 receiving the data is slower than the frame rate of the controller 26 sending the data (e.g., the case where control set 82 shares controller 26A data with control set 84).
  • When the mixed-frame rate logic 62 determines that the receiving rate is slower than the sending rate, the logic 62 determines if a frame number is a multiple of the receiving frame period/rate (block 162). The frame number may be a reference number of a frame of data sent that is based upon a synchronized time across the industrial control system 10. Referring to FIG. 2, for example, where the controller output data is sent from controller 26A at 10 ms, the frame numbers may be, for example, 0, 10, 20, 30, 40, etc. (indicating a new frame of data every 10 ms). Because the I/O pack 60B is configured to receive frames every 40 ms, the I/O pack 60B may receive frames 0, 40, 80, 120, 160, etc. (e.g., each frame number that is associated with (e.g., is a multiple of) the 40 ms period).
  • Each of the transmitted frames of data that are not a multiple of the receiving frame period is discarded (block 164). In certain embodiments, the application layer 96 (e.g., 96A and/or 96B) may discard the non-multiple frames. However, this may lead to processing inefficiencies, as the application layer 96 may need to exert processing power of the controllers 26, switches 54 or 90, and/or the I/O packs 60 to discard these frames. Accordingly, in certain embodiments, a filter may be implemented to discard the non-multiple frames. For example, in certain embodiments, a fast user datagram protocol (UDP) filter may be used to filter out any non-multiple frames prior to the frame reaching the application layer 96. Accordingly, the processing burden of the application layers 96 may be reduced, because the application layers 96 may receive fewer frames of data. In the current example, referring back to FIG. 2, the controller 26A sends frames 0, 10, 20, 30, 40, 50, etc. However, frames 10, 20, 30, 50, etc. will be discarded, because they are not multiples of the receiving frame period/rate of 40 ms.
  • Each frame of data that is a multiple of the receiving frame rate may be processed by the application layer 96 (block 126). Accordingly, in the current example, referring back to FIG. 2, each frame sent by the controller 26A that is a multiple of 40 may processed (e.g., frames 0, 40, 80, 120, etc.). These frames are provided to the application layer 96, where the controller-based processing may occur.
  • Technical effects of the invention include adjustment of frame rates/periods of controllers and/or I/O packs on common physical networks. Specifically, data frame rates/periods may be adjusted by mixed frame logic that adjusts a timeout setting for expected data and/or discards excessive data. Accordingly, the mixed frame logic may result in an enhanced industrial control system. For example, multiple controllers and/or I/O packs having differing frame rates may share data on the same physical network.
  • This written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims.

Claims (20)

1. An industrial control system, comprising:
a first control set configured with a first frame period, wherein the first control set comprises:
at least one first input/output (I/O) pack; and
at least one first controller;
a second control set configured with a second frame period, wherein the second control set comprises:
at least one second input/output (I/O) pack; and
at least one second controller; and
a mixed-frame rate logic device configured to handle sharing of input data, output data, or both provided by the first control set to the second control set when the first and second frame periods are different.
2. The system of claim 1, wherein the mixed-frame rate logic device is configured to handle sharing of input data, output data, or both when the first frame period is slower than the second frame period, by:
setting a timeout threshold for receiving the input data, output data, or both based upon the second frame period; and
providing a timeout indication only when the input data is not received within a time period defined by the timeout threshold.
3. The system of claim 1, wherein the mixed-frame rate logic device is configured to handle sharing of input data, output data, or both when the first frame period is slower than the second frame period, by:
providing the input data, output data, or both to the second control set for subsequent processing based upon the first frame period.
4. The system of claim 1, wherein the mixed-frame rate logic device is configured to handle sharing of input data, output data, or both when the first frame period is faster than the second frame period, by:
determining if a frame number of the input data, output data, or both is a multiple of the second frame period; and
discarding any frames that have an associated frame number that is not a multiple of the second frame period.
5. The system of claim 4, wherein the frames that have the associated frame number that is not the multiple of the second frame period are discarded prior to reaching an application layer of the second control set.
6. The system of claim 4, wherein the frames that have the associated frame number that is not the multiple of the second frame period are discarded using a fast user datagram protocol (UDP) filter.
7. The system of claim 4, wherein the mixed-frame rate logic device is configured to handle sharing of input data, output data, or both when the first frame period is faster than the second frame period, by:
providing the input data, output data, or both with the associated frame number that is the multiple of the second frame period to the second control set for subsequent processing.
8. The system of claim 4, wherein the frame number is based upon a synchronization time of the industrial control system.
9. The system of claim 8, wherein the synchronization time is defined based upon the IEEE 1588 precision time protocol.
10. The system of claim 1, wherein the first controller, the second controller, or both comprise the mixed-frame rate logic device.
11. The system of claim 1, wherein the first I/O pack, the second I/O, or both comprise the mixed-frame rate logic device.
12. The system of claim 1, comprising at least one switch having the mixed-frame rate logic device.
13. A tangible, non-transitory, machine-readable medium, comprising machine-readable instructions to:
transmit input data, output data, or both from a first control set configured with a first frame period;
receive the input data, the output data, or both at a second control set configured with a second frame period, wherein the first and second frame periods are different;
modify a timeout threshold to account for the different first and second frame periods; and
modify processing of the input data, the output data, or both by the second control set to account for the different first and second frame periods.
14. The machine-readable medium of claim 13, comprising machine-readable instructions to modify the timeout threshold by:
setting the timeout threshold based upon the slower of the first frame period and the second frame period, wherein the timeout threshold indicates a threshold time period under which input data, output data, or both should be received.
15. The machine-readable medium of claim 13, comprising machine-readable instructions to modify processing of the input data, the output data, or both by:
providing the input data, the output data, or both to processing components of the second control set, based upon the slower of the first frame rate and the second frame rate.
16. The machine-readable medium of claim 13, comprising machine-readable instructions to modify processing of the input data, the output data, or both by:
providing the input data, the output data, or both to an application layer of the second control set, based upon the slower of the first frame rate and the second frame rate.
17. The machine-readable medium of claim 13, comprising machine-readable instructions to determine the first frame period, the second frame period, or both by interpreting one or more configuration files of one or more configuration systems of an industrial control system.
18. The machine-readable medium of claim 13, comprising machine-readable instructions to determine the first frame period, the second frame period, or both by monitoring a data transfer rate of the first control set, the second control set, or both.
19. An industrial control system, comprising:
at least one mixed-frame rate logic module configured to:
set a timeout threshold for receiving data based upon a slower one of a first frame rate associated with a data-sending device and a second frame rate associated with a data-receiving device; and
provide data to the data-receiving device for subsequent processing at the slower one of the first frame rate and the second frame rate.
20. The industrial control system of claim 19, comprising an industrial control system controller, a network switch, an input/output module, or any combination thereof, configured to host the at least one mixed-frame rate logic module;
wherein the data-sending device comprises a first controller, a first input/output module, or both of a first control set, wherein the data-receiving device comprises a second controller, second input/output module, or both of a second control set.
US14/106,176 2013-12-13 2013-12-13 Systems and methods for providing multiple frame rates on a common physical network Active 2036-04-29 US9915939B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US14/106,176 US9915939B2 (en) 2013-12-13 2013-12-13 Systems and methods for providing multiple frame rates on a common physical network
JP2014248510A JP6475484B2 (en) 2013-12-13 2014-12-09 Multi frame rate system
EP14197327.1A EP2884359B1 (en) 2013-12-13 2014-12-11 Communications between devices running at different rates in a control system
CN201410760266.6A CN104717050B (en) 2013-12-13 2014-12-12 Multiframe rate system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US14/106,176 US9915939B2 (en) 2013-12-13 2013-12-13 Systems and methods for providing multiple frame rates on a common physical network

Publications (2)

Publication Number Publication Date
US20150168946A1 true US20150168946A1 (en) 2015-06-18
US9915939B2 US9915939B2 (en) 2018-03-13

Family

ID=52146093

Family Applications (1)

Application Number Title Priority Date Filing Date
US14/106,176 Active 2036-04-29 US9915939B2 (en) 2013-12-13 2013-12-13 Systems and methods for providing multiple frame rates on a common physical network

Country Status (4)

Country Link
US (1) US9915939B2 (en)
EP (1) EP2884359B1 (en)
JP (1) JP6475484B2 (en)
CN (1) CN104717050B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170272693A1 (en) * 2016-03-15 2017-09-21 Disney Enterprises, Inc. Carriage of ptp time reference data in a real-time video signal
US20190086892A1 (en) * 2017-09-20 2019-03-21 General Electric Company System and method for synchronization of device communication
US10277417B2 (en) * 2014-03-04 2019-04-30 Omron Corporation Control system, control apparatus and control method with input-only communication frame
US11533522B2 (en) * 2017-04-24 2022-12-20 Saturn Licensing Llc Transmission apparatus, transmission method, reception apparatus, and reception method
US11895309B2 (en) 2017-06-19 2024-02-06 Saturn Licensing Llc Transmitting apparatus, transmitting method, receiving apparatus, and receiving method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6973956B2 (en) * 2019-07-04 2021-12-01 株式会社Kokusai Electric Substrate processing equipment, semiconductor device manufacturing methods, programs and recording media

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030016419A1 (en) * 2001-05-29 2003-01-23 Mark Palmer Programmable identification in a communications controller
JP2003324644A (en) * 2002-05-07 2003-11-14 Canon Inc Video signal processing apparatus, image display control method, storage medium and program
US20080056124A1 (en) * 2003-06-05 2008-03-06 Sameer Nanda Using TCP/IP offload to accelerate packet filtering
US20080249641A1 (en) * 2006-09-29 2008-10-09 Fisher-Rosemount Systems, Inc. Automatic Configuration of Synchronous Block Execution for Control Modules Run in Fieldbus Networks
US20080294275A1 (en) * 2007-05-25 2008-11-27 Rockwell Automation Tecnologies, Inc. Diagnostic tool for retroactive assessment of industrial process performance
US7647131B1 (en) * 2006-03-09 2010-01-12 Rockwell Automation Technologies, Inc. Dynamic determination of sampling rates
US20100235486A1 (en) * 2007-05-11 2010-09-16 Andrew White Systems, methods and computer-readable media for configuring receiver latency
US20120065748A1 (en) * 2010-09-09 2012-03-15 Mark Nixon Methods and apparatus to collect process control data
US8347015B2 (en) * 2006-03-30 2013-01-01 Intel Corporation Power-optimized frame synchronization for multiple USB controllers with non-uniform frame rates
US20130173072A1 (en) * 2012-01-04 2013-07-04 General Electric Company Control System For A Power Application
US20130212420A1 (en) * 2012-02-09 2013-08-15 Rockwell Automation Technologies, Inc. Time-stamping of industrial cloud data for synchronization
US20140306892A1 (en) * 2013-04-10 2014-10-16 Chip Goal Electronics Corporation Method of dynamically adjusting image frame rate and device using same
US9442758B1 (en) * 2008-01-21 2016-09-13 Marvell International Ltd. Dynamic processor core switching

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5485463A (en) 1994-09-09 1996-01-16 Glenayre Electronics, Inc. System for transmitting paging signals using time-division-multiplexing
JPH09172434A (en) * 1995-12-20 1997-06-30 Matsushita Electric Ind Co Ltd Communication controller
JP2004007172A (en) * 2002-05-31 2004-01-08 Sony Corp Information distributing system, device and method, information terminal equipment and information processing method, recording medium and program
EP1532599B1 (en) 2002-08-17 2009-11-04 Abb Research Ltd. Method for operating a system comprising a plurality of nodes and a base station according to tdma, and associated system
CN100403822C (en) * 2005-06-30 2008-07-16 华为技术有限公司 Adaptive rate consulting device and method
CN101030926A (en) * 2006-02-28 2007-09-05 华为技术有限公司 Method for controlling network data flow of global microwave access inter-operation
US8234420B2 (en) * 2010-07-14 2012-07-31 Ge Intelligent Platforms, Inc. Method, system, and apparatus for communicating using multiple controllers

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030016419A1 (en) * 2001-05-29 2003-01-23 Mark Palmer Programmable identification in a communications controller
JP2003324644A (en) * 2002-05-07 2003-11-14 Canon Inc Video signal processing apparatus, image display control method, storage medium and program
US20080056124A1 (en) * 2003-06-05 2008-03-06 Sameer Nanda Using TCP/IP offload to accelerate packet filtering
US7647131B1 (en) * 2006-03-09 2010-01-12 Rockwell Automation Technologies, Inc. Dynamic determination of sampling rates
US8347015B2 (en) * 2006-03-30 2013-01-01 Intel Corporation Power-optimized frame synchronization for multiple USB controllers with non-uniform frame rates
US20080249641A1 (en) * 2006-09-29 2008-10-09 Fisher-Rosemount Systems, Inc. Automatic Configuration of Synchronous Block Execution for Control Modules Run in Fieldbus Networks
US20100235486A1 (en) * 2007-05-11 2010-09-16 Andrew White Systems, methods and computer-readable media for configuring receiver latency
US20080294275A1 (en) * 2007-05-25 2008-11-27 Rockwell Automation Tecnologies, Inc. Diagnostic tool for retroactive assessment of industrial process performance
US9442758B1 (en) * 2008-01-21 2016-09-13 Marvell International Ltd. Dynamic processor core switching
US20120065748A1 (en) * 2010-09-09 2012-03-15 Mark Nixon Methods and apparatus to collect process control data
US20130173072A1 (en) * 2012-01-04 2013-07-04 General Electric Company Control System For A Power Application
US20130212420A1 (en) * 2012-02-09 2013-08-15 Rockwell Automation Technologies, Inc. Time-stamping of industrial cloud data for synchronization
US20140306892A1 (en) * 2013-04-10 2014-10-16 Chip Goal Electronics Corporation Method of dynamically adjusting image frame rate and device using same

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10277417B2 (en) * 2014-03-04 2019-04-30 Omron Corporation Control system, control apparatus and control method with input-only communication frame
US20170272693A1 (en) * 2016-03-15 2017-09-21 Disney Enterprises, Inc. Carriage of ptp time reference data in a real-time video signal
US10097790B2 (en) * 2016-03-15 2018-10-09 Disney Enterprises, Inc. Carriage of PTP time reference data in a real-time video signal
US11533522B2 (en) * 2017-04-24 2022-12-20 Saturn Licensing Llc Transmission apparatus, transmission method, reception apparatus, and reception method
US11895309B2 (en) 2017-06-19 2024-02-06 Saturn Licensing Llc Transmitting apparatus, transmitting method, receiving apparatus, and receiving method
US20190086892A1 (en) * 2017-09-20 2019-03-21 General Electric Company System and method for synchronization of device communication
US10571880B2 (en) * 2017-09-20 2020-02-25 General Electric Company System and method for synchronization of device communication

Also Published As

Publication number Publication date
JP2015115956A (en) 2015-06-22
CN104717050A (en) 2015-06-17
JP6475484B2 (en) 2019-02-27
CN104717050B (en) 2019-11-01
EP2884359A1 (en) 2015-06-17
US9915939B2 (en) 2018-03-13
EP2884359B1 (en) 2019-12-11

Similar Documents

Publication Publication Date Title
US9915939B2 (en) Systems and methods for providing multiple frame rates on a common physical network
JP7257329B2 (en) Open architecture industrial control system
US20220053074A1 (en) Multi-Protocol Field Device in Process Control Systems
US8856302B2 (en) Systems and methods for foundation fieldbus alerts
AU2013272166B2 (en) Process controller having multi-channel serial communications link
EP2530549A2 (en) Systems and methods for alert capture and transmission
US8792518B2 (en) Automation system
EP3032365A1 (en) Systems and methods for memory map utilization
CN103827760A (en) Method for transmitting a process map via a gateway device
CN102843288A (en) Method for transmitting data packets
US9344296B2 (en) Access protection accessory for an automation network
US20170244791A1 (en) Network system and method for transmitting data in a network system
CN110300055B (en) Gateway system for heterogeneous field bus
EP2530544B1 (en) Systems and methods for foundation fieldbus alerts
WO2014084784A1 (en) Communication module in an industrial network for reducing latency
CN108696375B (en) Industrial network information acquisition device, method, monitoring system and storage medium
US20150088281A1 (en) Systems and methods to overlay behaviors on foundation fieldbus alerts
US8952804B2 (en) Systems and methods to overlay additional information onto foundation fieldbus alerts
EP2859417A1 (en) Optimized communications with hart instruments
EP2530538A2 (en) Systems and methods to overlay behaviors on foundation fieldbus alerts
CN114616815A (en) Method for transmitting subscription data, and data providing component, data consuming component, network and device
KR20160080831A (en) Communication Device for Supporting Multi Communication Protocol and Control System Having The Same
Chowdhury Synchronization for Industrial Networks
EP3029536A1 (en) Systems and methods to overlay behaviors on foundation fieldbus alerts
Pei et al. Research on Communication of PROFIBUS Single-master System

Legal Events

Date Code Title Description
AS Assignment

Owner name: GENERAL ELECTRIC COMPANY, NEW YORK

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DUVVURI, MURALIDHAR VENKATA SUBRAHMANYA;RIDENOUR, HARRY PAUL;SIGNING DATES FROM 20131031 TO 20131213;REEL/FRAME:031782/0206

STCF Information on status: patent grant

Free format text: PATENTED CASE

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 4

AS Assignment

Owner name: GE INFRASTRUCTURE TECHNOLOGY LLC, SOUTH CAROLINA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:GENERAL ELECTRIC COMPANY;REEL/FRAME:065727/0001

Effective date: 20231110