IEC 61131-3
IEC 61131-3 ist der dritte Teil (von 10) des Open internationaler Standard IEC 61131 zum Programmierbare Logikkontroller. Es wurde erstmals im Dezember 1993 veröffentlicht[1] bis zum IEC; Die aktuelle (dritte) Ausgabe wurde im Februar 2013 veröffentlicht.[2]
Teil 3 von IEC 61131 befasst sich mit grundlegender Softwarearchitektur und Programmiersprachen des Kontrollprogramms innerhalb Plc. Es definiert drei grafische und zwei Textprogrammiersprache Standards:
- Leiterdiagramm (LD), grafisch
- Funktionsblockdiagramm (FBD), grafisch
- Strukturierter Text (ST), Textual
- Anweisungsliste (IL), textuell (veraltet in der 3. Auflage des Standards[3])
- Sequentielle Funktionsdiagramm (SFC) verfügt über Elemente, um Programme für sequentielle und zu organisieren und Parallele Kontrollverarbeitung, grafisch.
Datentypen
- Elementardatentyp
- Bit Strings - Gruppen von Ein/Aus -Werten
- GANZE ZAHL - Ganze Zahlen (berücksichtigt Bytegröße 8 Bit)
- SINT - Signierte kurze Ganzzahl (1 Byte)
- Int - signierte Ganzzahl (2 Byte)
- Dint - signierte Doppelgülle (4 Byte)
- Lint - Signed Long Ganzzahl (8 Byte)
- Usint - nicht signierte kurze Ganzzahl (1 Byte)
- Uint - Unsigned Ganzzahl (2 Byte)
- Udint - Unsigned Double Ganzzahl (4 Byte)
- Ulint - nicht signierte lange Ganzzahl (8 Byte)
- REAL - schwimmender Punkt IEC 60559 (gleiche wie IEEE 754-2008))
- Real - (4 Byte)
- Lreal - (8 Byte)
Einheit | Beschreibung |
---|---|
d | Tag |
h | Stunde |
m | Minute |
s | Zweite |
Frau | Millisekunde |
uns | Mikrosekunde |
ns | Nanosekunde |
- Dauer [4]
- Zeit - (4 Byte). Literale in Form von T#5M90S15Ms
- LTIME - (8 BYTE). Literale erstrecken sich auf Nanosekunden in Form von T#5M90S15MS542US15NS
- Datum
- Datum - Kalenderdatum (Größe ist nicht angegeben)
- LDATE - Kalenderdatum (Größe ist nicht angegeben)
- Uhrzeit
- TIME_OF_DAY / TOD - Uhrzeit (Größe ist nicht angegeben)
- Ltime_of_day / ltod - Uhrzeit (8 Byte)
- Datum und Uhrzeit des Tages
- DATE_AND_TIME / DT - Uhrzeit und Datum (Größe ist nicht angegeben)
- Ldate_and_time / ldt - Uhrzeit und Datum (8 Byte)
- Zeichen- / Zeichenzeichenfolge
- Char-Single-Byte-Zeichen (1 Byte)
- WCHAR-Doppel-Byte-Zeichen (2 Byte)
- String-Single-Byte-Zeichenzeichenfolge variabler Länge. Literale mit einem einzigen Zitat "Dies ist ein String -Literal" angegeben.
- WSTRING-Doppel-Byte-Zeichenzeichenfolge variabler Länge. Literale mit einem doppelten Zitat "Dies ist ein WSTRING Literal" angegeben.
- Dauer [4]
Fluchtabfolge | Produziert |
---|---|
$$ | $ |
$ ' | '' |
$ L | Linefeed |
$ N | Neue Zeile |
$ P | Seite (Formfutter) |
$ R | Rückkehr |
$ T | Tab |
$ xx | Sechskantwert |
- Generische Datentypen-Nur für die Eingabe- / Ausgabe- / Ein-Out-Variablen der systemdefinierten Programmorganisationseinheiten verfügbar (pous, siehe unten)
- IRGENDEIN
- Any_Ded
- Any_Elementary
- Any_Magnitude
- Any_Num
- Any_Real: Lreal, real
- Any_int
- Any_unsigned: Ulint, udint, uint, uint
- Any_signed: Lint, Dint, int, Sint
- Any_duration: Zeit, Limit
- Any_Num
- Any_bit: lword, dword, word, byte, bool
- Any_Chars
- Any_String: String, Wstring
- Any_char: char, wchar
- Any_Date: DATE_AND_TIME (DT), DATE_AND_TIME (LDT), Datum, time_of_day (TOD), LTIME_OF_DAY (LTOD)
- Any_Magnitude
- IRGENDEIN
- Benutzerdefinierte Datentypen
- Aufzähliger Datentyp
- Aufzählter Datentyp mit dem benannten Wert
- Unterabschnitt -Datentyp - stellt den Wert für den Strom für den Strom ein
- Array -Datentyp - Im selben gespeicherten Werte, die gespeichert sind Variable.
- Strukturierter Datentyp - Zusammensetzung aus mehreren Variablen und Typen.
- Direkt abgeleitete Datentyp - Typ, der von einem der oben genannten Typen abgeleitet wurde, um einen neuen Namen und den Anfangswert als Typ anzugeben.
- Referenzen - eine Art stark getippten Zeiger. Der arithmetische Betrieb des Wertes dieses Typs ist verboten.
Variablen
Variable Attribute: konstant, bei
- Global
- Direkt (lokal)
- I/o Mapping - Eingabe, Ausgabe, I/O
- Extern
- Vorübergehend
Aufbau
- Ressource - wie a Zentralprozessor
- Aufgaben - können mehrere pro sein Zentralprozessor.
- Programme - kann einmal auf einem Timer auf einer Veranstaltung ausgeführt werden.
Programmorganisationseinheit (POU)
- Funktionen
- Standard: Hinzufügen, SQRT, Sin, Cos, GT, Min, Max und, oder usw.
- Brauch
- Funktionsblöcke
- Standard:
- Custom - Bibliotheken mit Funktionen können von einem Anbieter oder Dritten geliefert werden.
- Programme
Konfiguration, Ressourcen, Aufgaben
- Konfiguration - Verarbeitungsressourcen, Speicher für IO, Ausführungsraten, Anzahl der Aufgaben.
Objektorientierte Programmierung (OOP)
- Die 3. Überarbeitung des Standards beschreibt, wie OOP innerhalb der Anwendungsprogrammierung implementiert werden soll
Verweise
- ^ Stevic, Tom (5. Mai 2017). "Eine sehr kurze Geschichte von SPS -Programmierplattformen". Kontrolldesign. Abgerufen 11. September 2021.
- ^ "IEC 61131-3: 2013". Internationale Elektrotechnische Kommission (IEC). Abgerufen 11. September 2021.
- ^ Plcopen: Die dritte Ausgabe von IEC 61131-3
- ^ "Zeitdauer Literale (IEC 61131-3)".
Externe Links
- Plcopen
- IEC 61131-3: 2013 Programmierbare Controller - Teil 3: Programmiersprachen
- Codesys Wichtige Implementierung unabhängig von Geräteherstellern umfasst die objektorientierte Programmierung (OOP) als Option
- DE: Schritt 7 Implementierung für Siemens -Geräte nur,