Function block calls
Important
Before you use a library function block, you must be acquainted with the documentation for this function block. The documentation of the library block must correspond to the version of the library block currently used in the application. You can verify this by comparing the version information of the function block documentation with the object version of the function block, which is displayed on the Objects tab of the safety application object editor.
Function block calls are made using the Insert Box or Insert Empty Box command. Function blocks are displayed in yellow in the Safety FBD Editor if at least one block output is SAFE.
The Input Assistant contains the libraries with the function blocks in the User-defined types category.
No direct or indirect recursion of FBs may occur. This means that instances of a function block type X cannot occur as variables in the function block X itself, nor as variables in function blocks Y whose instances occur in X, and so on.
Instances of normal FB types can occur only as global variables and internal variables. (Input variables, output variables and logical I/Os can only be of a Basic type)
The variable must not be declared as a constant.
Flag: Single call
The flag can be set when creating a POU of the type FUNCTION_BLOCK (see: Adding a POU).
If this check box is not set, then PLCopen function blocks cannot be used in the POU. In general, instances of function blocks with Single call set can be used only in POUs that have Single call set themselves.
Basic Level function block types
The user-defined types for the Basic Level are all the function blocks of the application and the following function blocks:
All function blocks of the SafetyPLCopen library:
Function block PROFIsafeHost of the SafetyProfisafeHost library
Function block FSoEMaster of the SafetyFSoEMaster library
The following function blocks from the SafetyStandard library:
Extended Level function block types
The user-defined types for the Extended Level are all the function blocks of the application and all the function blocks of the following libraries:
All function blocks of the SafetyPLCopen library:
All function blocks of the SafetyStandard library:
Function block PROFIsafeHost of the SafetyProfisafeHost library
Function block FSoEMaster of the SafetyFSoEMaster library