STATE (ENUM)

TYPE STATE :

Every state listed below is represented by an element in the state chart.

The PLCopen defines two different variables (xEnable/xExecute) for starting a function block depending on its type. For this reason a neutral name xControl has been chosen. The xControl input variable can act as a xExecute or an xEnable input variable. This depends on how the related action provider is decorated. If the action provider is decorated with IEdgeTriggered then the xControl input variable acts as an xExecute. If the action provider is decorated with ILevelControlled then the xControl input variable acts as an xEnable.

../../../_images/Behaviour-Model_Enums_STATE.png
Dormant:

⇒ Waiting for xControl (xEnable/xExecute)

Starting:
StartAction is running, until xComplete is TRUE, xBusyTRUE.
At its beginning the SampleAction is probably executed one time.
Executing:

CyclicAction is running until xComplete is TRUE

Cleaning:
CleanupAction is running.
At its end the ExitAction is probably executed one time.
After a Ready Condition as input, only the output states
Done (xComplete is TRUE) or Error (eErrorIDERROR.NO_ERROR) are possible.
After a Error Condition as input, only the output state
Error (eErrorIDERROR.NO_ERROR) is possible.
Done:

xDoneTRUE, xBusyFALSE

Error:

xErrorTRUE, eErrorIDERROR.NO_ERROR, xBusyFALSE

Resetting:
ResetAction is running, until xComplete is TRUE.
After that:
- the outputs xDone and xError will be set to FALSE.
- The output eErrorID will be set to ERROR.NO_ERROR.
Attributes:
qualified_only
InOut:

Name

Initial

Comment

UNKNOWN

0

DORMANT

Waiting for xControl ⇒ (xEnable/xExecute)

STARTING

IStartActionProvider.StartAction is running

EXECUTING

ICyclicActionProvider.CyclicAction is running

CLEANING

ICleanupActionProvider.CleanupAction is running

DONE

Ready condition reached

ERROR

Error condition reached

ABORTED

Abort condition reached

RESETTING

IResetActionProvider.ResetAction is running