| CPC G05B 13/021 (2013.01) | 20 Claims |

|
1. An industrial controller, comprising:
a memory; and
a processor, operatively coupled to the memory that executes executable components stored on the memory, wherein the executable components comprise:
a program execution component configured to execute an industrial control program using scan-based processing, wherein the industrial control program processes input signals from industrial input devices of an automation system and controls output signals to industrial output devices of the automation system based on the input signals; and
an optimization component configured to execute a mathematical optimization routine using the scan-based processing,
wherein
the mathematical optimization routine calculates, over a series of iterations across multiple scan cycles of the industrial control program, a set of values for respective control variables that minimize an objective function subject to one or more constraints,
the optimization component performs, during respective different scan cycles of the multiple scan cycles, an initialization step of the mathematical optimization routine and multiple iteration steps of the mathematical optimization routine, and
for each scan cycle of the respective different scan cycles, the optimization component
defers execution of a current step, of the initialization step or one of the multiple iteration steps, in response to determining that the industrial controller is executing a task defined as having a high priority, and
permits execution of the current step in response to determining that the industrial controller is not performing the task defined as having the high priority.
|