SimpleCycleManager
Short summary
An implementation of the ISinlgeExecutionCycleManager to provide simple cycle managment for steps in state machines.
The body NEEDS to be called at the start of every cycle (before using the step property) ONLY ONCE.
.. <info> If used in the same step, the order of method calls should be this: configurations enter executeCommand evaluate waitFor proceed proceedWith acknowledge leave .. </info>
| Access | Abstract | Final | Extends | Implements |
|---|---|---|---|---|
| - | No | No | AbstractCycleManager | - |
UML Diagram
Parameters
| Name | Type | Comment | Kind |
|---|---|---|---|
| execute | BOOL | control bit to start or abort the cycle manager | input |
| stopRequest | BOOL | used for StopRequest evaluation if configured | input |
| pause | BOOL | if true and Pausing Enabled and busy will proceed with PAUSE | input |
| resume | BOOL | if true, will acknowledge error and return to previous step | input |
| stepControl | BOOL | must be TRUE if stepping is enabled to proceed steps automatically | input |
Properties
className
Type: CNM_AbstractObject.ClassName
This abstract property returns the class name of the concrete object, …
Code
Declaration
FUNCTION_BLOCK SimpleCycleManager EXTENDS AbstractCycleManager
VAR_INPUT
(*control bit to start or abort the cycle manager*)
execute :BOOL;
(*used for StopRequest evaluation if configured*)
stopRequest :BOOL := FALSE;
(*if true and Pausing Enabled and busy will proceed with PAUSE*)
pause :BOOL := FALSE;
(*if true, will acknowledge error and return to previous step*)
resume :BOOL := FALSE;
(* must be TRUE if stepping is enabled to proceed steps automatically *)
stepControl :BOOL := TRUE;
END_VAR
Implementation
THIS^.update(
execute := execute,
pause := pause,
resume := resume,
stepControl := stepControl,
stopRequest := stopRequest
);