ST Supported Datatypes Coming Soon
This section lists all the supported IEC 61131-3 Structured Text datatypes.
Standard Datatypes
Name | Size | Properties |
---|---|---|
BOOL | 8 bit | Signed |
BYTE | 8 bit | Unsigned |
WORD | 16 bit | Unsigned |
DWORD | 32 bit | Unsigned |
LWORD | 64 bit | unsigned |
SINT | 8 bit | Signed |
USINT | 8 bit | Unsigned |
INT | 16 bit | Signed |
UINT | 16 bit | Unsigned |
DINT | 32 bit | Signed |
UDINT | 32 bit | Unsigned |
LINT | 64 bit | Signed |
ULINT | 64 bit | Unsigned |
REAL | 32 bit | Float |
LREAL | 64 bit | Float |
__VOID | Undefined |
Declaration examples
ST
A := BOOL#0
A := TRUE
A := UNIT#2
A := abc=USINT#16#FFFF
Strings
Name | Size | Encoding |
---|---|---|
STRING | n+1 | UTF-8 |
WSTRING | 2n+2 | UTF-16 |
String simple examples
ST
A : STRING;
A : STRING[10];
A : WSTRING := 'Hello World';
A : STRING[20] := 'Hello World';
Date & Time
Name | Size | Internally stored as |
---|---|---|
TIME | 64 bit | Timespan in nanoseconds |
TIME_OF_DAY | 64 bit | Nanoseconds since Jan 1, 1970 UTC |
DATE | 64 bit | Nanoseconds since Jan 1, 1970 UTC |
DATE_AND_TIME | 64 bit | Nanoseconds since Jan 1, 1970 UTC |
Date examples
ST
A : DATE := DATE#2024-04-02;
A : DATE := DATE#1-12-24;
A : DATE := D#2024-1-1;
Date & Time examples
ST
A : DATE_AND_TIME := DATE_AND_TIME#2024-05-02-14:20:10.25;
A : DATE_AND_TIME := DATE_AND_TIME#1-11-24-00:00:1;
A : DATE_AND_TIME := DT#2024-11-1-23:59:59.999;
Time Of Day examples
ST
A : TIME_OF_DAY := TIME_OF_DAY#15:06:3.35;
A : TIME_OF_DAY := TIME_OF_DY#1:00:1;
A : TIME_OF_DAY := TOD#23:59:59.999;
Time examples
ST
A : TIME := TIME#4d1h8m8s11ms;
A : TIME := T#3d4.4h;
A : TIME := T#-11s3ms23ns;
Structure type supported
Example
ST
TYPE ANALOG_CHANNEL_CONFIGURATION :
STRUCT
RANGE : ANALOG_SIGNAL_RANGE ; MIN_SCALE : ANALOG_DATA ; MAX_SCALE : ANALOG_DATA;
END_STRUCT;
ANALOG_16_INPUT_CONFIGURATION :
STRUCT
SIGNAL_TYPE : ANALOG_SIGNAL_TYPE;
FILTER_PARAMETER : SINT (0..99);
CHANNEL : ARRAY [1..16] OF ANALOG_CHANNEL_CONFIGURATION;
END_STRUCT ;
END_TYPE
Enumerated type
Example
ST
TYPE
ANALOG_SIGNAL_TYPE : (SINGLE_ENDED, DIFFERENTIAL);
END_TYPE
Sub-range type
Example
ST
TYPE
ANALOG_DATA : INT (-4095..4095);
END_TYPE
Array type
Example
ST
TYPE ANALOG_16_INPUT_DATA :
ARRAY [1..16] OF ANALOG_DATA;
END_TYPE