BehaviourModel (FB)

FUNCTION_BLOCK BehaviourModel IMPLEMENTS IBehaviourModel, IConfigurationProvider, IConfigurationProvider2

The BehaviourModel function block will serve as a core for other more specialized function blocks like ETrigATl. Because PLCopen defines two different variables (xEnable/xExecute) for starting the function block depending on its type, 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.

Please take a look to a more detailed description of

InOut:

Scope

Name

Type

Comment

Input

itfActionProvider

IActionProvider

The ActionProvider implements the operations which are called from the StateMachine at the apropiate moment.

itfTimingController

ITimingController

The TimingController implements the complete timing behaviour for the related BehaviourModel if neccecary.

xControl

BOOL

xControl: (xEnable/xExecute) starts the defined operation

xAbort

BOOL

TRUE: Aborts the operation

udiTimeLimit

UDINT

Max. operating time per invocation [µs], 0: No operating time limit

udiTimeOut

UDINT

Max. operating time for executing [µs], 0: No operating time limit

Output

xDone

BOOL

TRUE: Ready condition reached

xBusy

BOOL

TRUE: Operation is running

xError

BOOL

TRUE: Error condition reached

xAborted

BOOL

TRUE: Abort condition reached

iErrorID

INT

Error condition detail information

eState

STATE

Current state information

eInternalErrorID

ERROR

Internal error condition information