IEC 61131-3
IEC 61131-3 is the third part of the open international standard IEC 61131 for programmable logic controllers, and was first published in December 1993 by the IEC. The current edition was published in February 2013.
Part 3 of IEC 61131 deals with basic software architecture and programming languages of the control program within PLC. It defines three graphical and two textual programming language standards:
Escape sequence | Produces |
$$ | $ |
$' | ' |
$L | linefeed |
$N | newline |
$P | page |
$R | return |
$T | tab |
$xx | hex value |
- Generic Data Types – Only available for the input / output/ in-out variables of system-defined Program Organization Units
- * ANY
- ** ANY_DERIVED
- ** ANY_ELEMENTARY
- *** ANY_MAGNITUDE
- **** ANY_NUM
- ***** ANY_REAL: LREAL, REAL
- ***** ANY_INT
- ****** ANY_UNSIGNED: ULINT, UDINT, UINT, USINT
- ****** ANY_SIGNED: LINT, DINT, INT, SINT
- **** ANY_DURATION: TIME, LTIME
- *** ANY_BIT: LWORD, DWORD, WORD, BYTE, BOOL
- *** ANY_CHARS
- **** ANY_STRING: STRING, WSTRING
- **** ANY_CHAR: CHAR, WCHAR
- *** ANY_DATE: DATE_AND_TIME, DATE_AND_TIME, DATE, TIME_OF_DAY, LTIME_OF_DAY
- User-defined Data Types
- * Enumerated data type
- * Enumerated data type with named value
- * Subrange data type – puts limits on value i.e., INT for current
- * Array data type – multiple values stored in the same variable.
- * Structured data type – composite of several variables and types.
- * Directly derived data type – type derived from one of the above types to give new name and initial value as a type.
- * References – a kind of strongly typed pointer. Arithmetic operation of the value of this type is prohibited.
Variables
Variable attributes: RETAIN, CONSTANT, AT
- Global
- Direct
- I/O Mapping – Input, Output, I/O
- External
- Temporary
Configuration
- Resource – Like a CPU
- Tasks – Can be multiple per CPU.
- Programs – Can be executed once, on a timer, on an event.
Program organization unit (POU)
- Functions
- * Standard: ADD, SQRT, SIN, COS, GT, MIN, MAX, AND, OR, etc.
- * Custom
- Function Blocks
- * Standard:
- * Custom – Libraries of functions can be supplied by a vendor or third party.
- Programs
Configuration, resources, tasks
- Configuration – processing resources, memory for IO, execution rates, number of tasks.
- The 3rd revision of the standard describes how to implement OOP within the application programming