Patent ID: 7813831

Claim:
A controller for controlling a plurality of devices in a machine operable to perform a series of steps in a cycle of operation, wherein the controller can communicate on a communications network, the controller comprising: a first software operating layer configured to control the operation of at least one of the devices in a first operational state in response to messages sent on the communications network, wherein the first software operating layer only permits the at least one of the devices to operate in a manner to perform a predetermined cycle of operation, and a second software operating layer configured to control the operation of the at least one of the devices in a second operational state in response to messages sent on the communications network, where the second operating layer provides a different level of intervention between the messages and the operation of the devices than the first software operating layer, wherein the second software operating layer permits the at least one of the devices to operate in at least one additional cycle of operation, wherein the additional cycle of operation is at least one of: a demonstration cycle; a development cycle; an error detection cycle; a diagnostic cycle; a cycle that reduces the length of time of at least one timed step of one of the predetermined cycles of operation; a cycle that bypasses at least one operational step of one of the predetermined cycles of operation; a cycle that substitutes a timed step for a step that responds to an event of one of the predetermined cycles of operation; and a cycle that exposes a low level API to the communications network, whereby the at least one of the devices can be controlled by the second software operating layer independently of the first software operating layer and independently of other devices within the plurality of devices.