Distributed real-time operating system
AssigneeRockwell Automation Technologies, Inc.
InventorSivaram Balasubramanian
Life of this patent
Estimating the term…
Abstract
A distributed control system and methods of operating such a control system are disclosed. In one embodiment, the distributed control system is operated in a manner in which interrupts are at least temporarily inhibited from being processed to avoid excessive delays in the processing of non-interrupt tasks. In another embodiment, the distributed control system is operated in a manner in which tasks are queued based upon relative timing constraints that they have been assigned. In a further embodiment, application programs that are executed on the distributed control system are operated in accordance with high-level and/or low-level requirements allocated to resources of the distributed control system.
Claims20
A method of scheduling messages being transmitted on a network among spatially-distributed control components of a distributed real-time control system, wherein the messages are associated with a control task performed by the control components to control an industrial process and wherein the messages are periodically transmitted, the method comprising:
- receiving a current transmission of the periodically transmitted message;
- receiving a relative timing constraint concerning the message from one of the current message and an execution history, wherein the relative timing constraint is indicative of an amount of time to complete processing of the message;
- receiving a priority associated with the message;
- determining if a network bandwidth limit for the message can be met;
- inserting the message into a queue for transmission over the network upon determining that the network bandwidth limit can be met, wherein the message is inserted into the queue at a location that is a function of the priority and of the relative timing constraint, and preventing the message from inserting into the queue upon determining that the network bandwidth limit cannot be met;
- and
- storing an execution period of the current message in the execution history.
A communication card for interfacing between a network medium and a spatially-distributed real-time control component configured to operate in an industrial control system, the communication card comprising:
- a queue operable to store a plurality of messages for transmission on the network medium, wherein at least a portion of the messages are transmitted at a periodic interval;
- a scheduler operable to receive a transmission of each of the periodically transmitted messages, extract scheduling data from the transmission of the message, determine if a network bandwidth limit for the message can be met, insert the message into the queue for transmission over the network upon determining that the network bandwidth limit can be met, wherein the message is inserted into the queue according to one of the scheduling data from the transmission of the message and a stored record of execution times of prior transmissions of the periodically transmitted message, and prevent the message from inserting into the queue upon determining that the network bandwidth limit cannot be met;
- and
- a memory device storing the record of execution periods of the messages received by the queue.
A communication interface for a spatially-distributed real-time control component configured to operate in an industrial control system having a plurality of spatially-distributed control components connected by an industrial network, the communication interface comprising:
- a transceiver device configured to communicate with a network medium connecting at least two of the spatially-distributed control components and with a processor on the spatially-distributed control component;
- a memory configured to store a plurality of instructions and an execution history;
- a processor in communication with the transceiver device configured to execute the plurality of instructions to:
- receive a message wherein the message is associated with a control task performed by the control components to control an industrial process,
- extract scheduling data from at least one of the message and an execution history, wherein the scheduling data includes a priority associated with the message and at least one timing constraint,
- determine if a network bandwidth limit for the message can be met;
- insert the message into a queue for transmission over the network upon determining that the network bandwidth limit can be met, wherein the message is inserted into the queue at a position which is a function of the priority and of the timing constraint, and prevent the message from inserting into the queue upon determining that the network bandwidth limit cannot be met,
- transfer the message from the queue to the network medium via the transceiver device according to the position in the queue;
- and
- store an execution period of the message in the execution history.
Dependencies are inferred from the claim text.