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#FFFFStrings
| 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_TYPEEnumerated type
Example
ST
TYPE
ANALOG_SIGNAL_TYPE : (SINGLE_ENDED, DIFFERENTIAL);
END_TYPESub-range type
Example
ST
TYPE
ANALOG_DATA : INT (-4095..4095);
END_TYPEArray type
Example
ST
TYPE ANALOG_16_INPUT_DATA :
ARRAY [1..16] OF ANALOG_DATA;
END_TYPE