The ProductionStateMachineType describes a fundamental statemachine for processing jobs from glass machines and is formally defined in Table 38. An implementation of this statemachine is mandatory. Furthermore, it can be extended by further substatemachines (e.g. for a detailed description of the Running state). The name of each transition consists of the names of the states it connects: [FromState]To[ToState]. Their References are specified in Table 37.
On the first level, the state machine consists of the states Initialized (there is a sub-state-machine with Idle, Queued, Released), Running, Interrupted, Aborted and Ended. The state transitions can be initiated by HLS or by the machine itself. Figure 15 shows the state machine and the state transitions graphically.
Table 35 – ProductionStateMachineType Definition
Subtype of the FiniteStateMachineType defined in OPC 10000-5, i.e. inheriting the InstanceDeclarations of that Node.
Figure 15 – JobStateMachine
Initializing is the state in which the element in production is being prepared. During this state, the machine and the job doesn’t have to be ready for production, although it has to be as soon as the transition InitializingToRunning is used. The production is not yet started. This state contains a sub-statemachine of the Type InitializingSubStateMachineType. Depending on the implementation, a glass machine starts to process the jobs which have been released for production either by itself or by an operator. The machine sets the status of the next released job in the queue to Running and processes it.
Running indicates that the operation of a job in production has been started or re-started and is currently running. There can be sub-statemachines in future versions of this standard or vendor-specific sub-statemachines.
Interrupted indicates that the execution of a job in production has been reversibly halted. This is usually due to an error or an intervention by the operating personnel. It is possible to restart operation of or on the element in production after it was in the interrupted state. From Interrupted you can switch back to the Running state by Continue or, if the processing is to be aborted with Abort to the State Aborted (both transitions are machine internal). Furthermore, an interrupted job can be brought back to the Queued state with the SuspendMethod called by an HLS.
The state Aborted indicates, that the operation of a job in production has been irreversibly stopped before finishing. In addition, an already scheduled job can be moved directly to the Aborted state with the Abort-Method from HLS if the job is not to be produced.
Ended is reached when the operation of a job in production has been finished. Jobs can only be removed in the states Ended and Initializing (only in sub-states Idle and Queued).
Table 36 – ProductionStateMachineType Attribute values for child Nodes
|Source Path||Value Attribute||Description Attribute|
Fields may be empty which means this Attribute is not defined.
InitializingToRunning is triggered when the operation of a job in production starts.
RunningToEnded is triggered when the operation of a job in production finishes.
EndedToInitializing is triggered when re-initialization of the operation of a job in production starts.
RunningToRunning is triggered when another consecutive run of the operation of a job in production in direct succession starts.
RunningToInterrupted is triggered when the operation of a job in production is interrupted.
InterruptedToRunning is triggered when an interruption ends and the operation of a job in production continues running.
RunningToAborted is triggered when the operation of a job in production is aborted while in the Running state.
InterruptedToAborted is triggered when the operation of a job in production is aborted while in the Interrupted state. AbortedToInitializing is triggered if the operation of a job in production is being re-initialized after an abort.
InitializingToAborted is triggered when the operation of a job in production is aborted while in the Initializing state.
Table 37 – ProductionStateMachineType Additional References
|Source Path||ReferenceType||Is Forward||Target Path|