Skip to content

Builtin Functions

There are various builtin functions available in the Turck Structured Text compiler. These functions are not defined in any library but are directly implemented in the runtime. They can be used without any imports and are available globally.

Returns the length of the string. Will throw an exception if no null char is present in string.

STR_LEN : UDINT
VAR_IN_OUT
STRING: ARRAY OF USINT
END_VAR

Converts a string to an unsigned double integer.

STR_TO_UDINT : UDINT
VAR_IN_OUT
STRING: ARRAY OF USINT
END_VAR
VAR_INPUT
BASE: UDINT
END_VAR

Converts a string to a signed double integer.

STR_TO_DINT : DINT
VAR_IN_OUT
STRING: ARRAY OF USINT
END_VAR
VAR_INPUT
BASE: UDINT
END_VAR

Converts a unsigned double integer to a string.

UDINT_TO_STR : UDINT
VAR_INPUT
SOURCE: UDINT
END_VAR
VAR_IN_OUT
STRING: ARRAY OF USINT
END_VAR
VAR_INPUT
BASE: UDINT
END_VAR

Converts a signed double integer to a string.

DINT_TO_STR : DINT
VAR_INPUT
SOURCE: DINT
END_VAR
VAR_IN_OUT
STRING: ARRAY OF USINT
END_VAR
VAR_INPUT
BASE: UDINT
END_VAR
START_TIMER: UDINT
VAR_IN_OUT
TIMER: TIMER
END_VAR
VAR_INPUT
EXPIRATION_TIME: UDINT
END_VAR
EXPIRED: UDINT
VAR_IN_OUT
TIMER: TIMER
END_VAR
GET_TIME: UDINT
VAR_IN_OUT
TIMER: TIMER
END_VAR
MIN_DINT: DINT
VAR_INPUT
ONE: DINT;
TWO: DINT;
END_VAR
MIN_INT: INT
VAR_INPUT
ONE: INT;
TWO: INT;
END_VAR
MIN_SINT: SINT
VAR_INPUT
ONE: SINT;
TWO: SINT;
END_VAR
MIN_UDINT: UDINT
VAR_INPUT
ONE: UDINT;
TWO: UDINT;
END_VAR
MIN_UINT: UINT
VAR_INPUT
ONE: UINT;
TWO: UINT;
END_VAR
MIN_USINT: USINT
VAR_INPUT
ONE: USINT;
TWO: USINT;
END_VAR
MAX_DINT: DINT
VAR_INPUT
ONE: DINT;
TWO: DINT;
END_VAR
MAX_INT: INT
VAR_INPUT
ONE: INT;
TWO: INT;
END_VAR
MAX_SINT: SINT
VAR_INPUT
ONE: SINT;
TWO: SINT;
END_VAR
MAX_UDINT: UDINT
VAR_INPUT
ONE: UDINT;
TWO: UDINT;
END_VAR
MAX_UINT: UINT
VAR_INPUT
ONE: UINT;
TWO: UINT;
END_VAR
MAX_USINT: USINT
VAR_INPUT
ONE: USINT;
TWO: USINT;
END_VAR
ABS_DINT: DINT
VAR_INPUT
ONE: DINT;
END_VAR
ABS_INT: INT
VAR_INPUT
ONE: INT;
END_VAR
ABS_SINT: SINT
VAR_INPUT
ONE: SINT;
END_VAR
ABS_UDINT: UDINT
VAR_INPUT
ONE: UDINT;
END_VAR
ABS_UINT: UINT
VAR_INPUT
ONE: UINT;
END_VAR
ABS_USINT: USINT
VAR_INPUT
ONE: USINT;
END_VAR
LE_GET_UINT: UINT
VAR_IN_OUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
END_VAR
BE_GET_UINT: UINT
VAR_IN_OUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
END_VAR
LE_GET_UDINT: UDINT
VAR_IN_OUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
END_VAR
BE_GET_UDINT: UDINT
VAR_IN_OUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
END_VAR
LE_SET_UINT: UDINT
VAR_INOUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
VALUE: UDINT;
END_VAR
BE_SET_UINT: UDINT
VAR_INOUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
VALUE: UDINT;
END_VAR
LE_SET_UDINT: UDINT
VAR_INOUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
VALUE: UDINT;
END_VAR
BE_SET_UDINT: UDINT
VAR_INOUT
ARR: ARRAY OF ANY;
END_VAR
VAR_INPUT
OFFSET: UDINT;
VALUE: UDINT;
END_VAR

Change Of State. Returns TRUE if value has changed since last call.

F_COS: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR

Rising trigger. Returns TRUE if value changed to TRUE since last call.

R_TRIG: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR

Falling trigger. Returns TRUE if value changed to FALSE since last call.

F_TRIG: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR

Change Of State. Returns TRUE if value has changed since last call. Functionality similar to F_COS but F_COS_M requires an explicit memory variable.

F_COS_M: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR
VAR_IN_OUT
MEM: UDINT;
END_VAR

Rising trigger. Returns TRUE if value changed to TRUE since last call. Functionality similar to R_TRIG but R_TRIG_M requires an explicit memory variable.

R_TRIG_M: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR
VAR_IN_OUT
MEM: UDINT;
END_VAR

Falling trigger. Returns TRUE if value changed to FALSE since last call. Functionality similar to F_TRIG but F_TRIG_M requires an explicit memory variable.

F_TRIG_M: USINT
VAR_INPUT
VALUE: UDINT;
END_VAR
VAR_IN_OUT
MEM: UDINT;
END_VAR

];