Wenn Sie von SPS-Programmierung hören, sind die fünf darin verwendeten Sprachen: Kontaktplanlogik, strukturierter Text, Funktionsblockdiagramm, sequentielles Flussdiagramm und Anweisungsliste. Jede Sprache kann, wenn sie einmal verstanden ist, zum Schreiben eines Anwendungscodes und zum ordnungsgemäßen Betreiben einer Maschine verwendet werden.
Beste SPS-Programmiersprache
Abbildung – Beispiel für Kontaktplanlogik
Aber häufig sind neue SPS-Programmierer verwirrt, was sie zum Schreiben eines Programms verwenden sollen. Wenn sie die Vor- und Nachteile einer Sprache verstehen, können sie leicht bestimmen, was sie zum Schreiben eines SPS-Programms verwenden sollen. Daher ist es notwendig, den Unterschied zwischen ihnen zu verstehen und zu bestimmen, welche Sprache zum Codieren verwendet werden soll. In diesem Beitrag werden wir sehen, welche Sprache am besten für die SPS-Programmierung geeignet ist.
Kontaktplanlogik
Kontaktplanlogik ist die grundlegendste Art von SPS-Programmiersprache. Sie kann leicht mit einem elektrischen Schaltplan korreliert werden. Traditionell wurde elektrische Steuerverdrahtung verwendet, um Ausgänge entsprechend den bereitgestellten Eingängen zu betreiben.
Die aus Kontakten und Spulen bestehende Leiterlogikzeichnung wurde in der Leiterlogikprogrammierung auf die gleiche Weise implementiert. Sie haben eine Reihe von Sprossen, wobei jede Sprosse Kontakte und Spulen hat. Wenn die Sprosse eingeschaltet wird, arbeitet die Spule, je nach Typ, entsprechend.
Sie können so viele Sprossen wie nötig in ein Programm schreiben und der Code wird entsprechend ausgeführt. Wenn Sie es sehen, ähnelt es einer Leiter, und daher kommt der Name Leiterlogik. Zum Verständnis sehen Sie sich das folgende Diagramm an. Sie können sehen, wie einfach es ist, durchzukommen.
In der obigen Abbildung werden Eingänge, die mit einem Schaltgerät im Relaislogikdiagramm verbunden sind, als Kontakte im Leiterdiagramm angezeigt. Die M1-Ausgangsspule im Relaislogikdiagramm wird im Leiterdiagramm mit einem Ausgangsspulensymbol dargestellt.
Die Adressnummern, die über jedem Kontakt-/Spulensymbol im Leiterdiagramm erscheinen, sind Verweise auf die Positionen der externen Eingangs-/Ausgangsverbindungen zum Logikcontroller. Sie können also zwischen zwei Endstromschienen die erforderlichen Elemente platzieren und die Logik darin schreiben. Die Sprossen werden zyklisch von oben nach unten ausgeführt.
Strukturierter Text
Strukturierter Text kann als lokale Sprache auf IT-Ebene bezeichnet werden. Die Ähnlichkeit der strukturierten Textsprache ist den Codes sehr ähnlich, die wir in einer Softwaresprache schreiben. Wie der Name schon sagt, ist strukturierter Text eine Reihe von Texten, die in Zuweisungsform geschrieben sind.
Anweisungen müssen mit Semikolons abgeschlossen werden. Wenn eine Zuweisung ausgeführt wird, wird der aktuelle Wert einer Variablen mit einem oder mehreren Elementen durch das Ergebnis der Auswertung des Ausdrucks ersetzt.
Eine Zuweisung besteht aus einer Variablenspezifikation auf der linken Seite, gefolgt vom Zuweisungsoperator: =, gefolgt vom auszuwertenden Ausdruck. Beide Variablen (linke und rechte Seite des Zuweisungsoperators) müssen denselben Datentyp haben. Zum Verständnis siehe das folgende Diagramm.
Wie Sie sehen, gibt es verschiedene Arten von Operationen und Bedingungen. Im obigen Beispiel wird eine if-else-Anweisung verwendet, um einen Ausdruck auszuwerten. Wenn die Bedingung erfüllt ist, wird die auf der Ausgangsseite zugewiesene Variable eingeschaltet, und wenn die Bedingung falsch ist, wird die Variable ausgeschaltet. Die ST-Sprache eignet sich daher am besten für mathematische Berechnungen, da sie schlicht und leicht verständlich aussieht.
Sequentielles Flussdiagramm
Ein sequentielles Flussdiagramm ist das fortschrittlichste Werkzeug, wenn Sie komplexe Programme repetitiv oder sequentiell schreiben möchten. Wie der Name schon sagt, können Sie mit der SFC-Sprache ein Programm über ein Flussdiagramm schreiben. Es funktioniert in Schritten, Verzweigungen, Links, Sprüngen und Übergängen.
Ein SFC-Abschnitt ist eine „Statusmaschine“, d. h. der Status wird durch den aktiven Schritt erstellt und die Übergänge geben das Schalt-/Änderungsverhalten weiter. Schritte und Übergänge sind durch Richtungslinks miteinander verbunden.
Zwei Schritte können nie direkt verbunden werden und müssen immer durch einen Übergang getrennt sein. Die aktiven Signalstatusprozesse finden entlang der Richtungslinks statt und werden durch das Schalten eines Übergangs ausgelöst. Zum Verständnis siehe das folgende Bild.
Die Richtung des Kettenprozesses folgt den Richtungsverbindungen und verläuft vom Ende des vorhergehenden Schritts zum Anfang des nächsten Schritts. Zweige werden von links nach rechts verarbeitet. Jeder Schritt hat null oder mehr Aktionen.
Für jeden Übergang ist eine Übergangsbedingung erforderlich. Der letzte Übergang in der Kette ist immer mit einem anderen Schritt in der Kette verbunden (über eine grafische Verbindung oder ein Sprungsymbol), um eine geschlossene Schleife zu erstellen. Schrittketten werden daher zyklisch verarbeitet.
Funktionsblockdiagramm
Die Sprache Funktionsblockdiagramm (FBD), die im Allgemeinen in Mikroprozessoren verwendet wird, ist in einem ähnlichen Format auch in der SPS-Programmierung verfügbar. Es handelt sich um ein Diagramm von miteinander verbundenen Blöcken, wobei jeder Block seinen Eingang und Ausgang hat.
Die Fehlersuche in der FBD-Sprache ist sehr einfach, da Sie buchstäblich den gesamten Code in einer einzigen Ansicht anzeigen können, anstatt nach oben und unten zu scrollen. Dies hilft bei der schnellen Wartung und erhöht auch die Effizienz der Programmierung. Zum Verständnis siehe das folgende Bild.
Wie Sie sehen, können Sie verschiedene Arten von Funktionen und Blöcken einfach durch Linien verbinden, was zeigt, wie ein Fluss in der Logik abläuft. Sie müssen nur Eingangs- und Ausgangspins zuweisen, die Linien zwischen diesen Pins verbinden und Ihr Code funktioniert entsprechend.
Befehlsliste
Ein in der Befehlslistensprache geschriebenes Programm besteht aus einer Reihe von Befehlen, die vom Logikcontroller nacheinander ausgeführt werden.
Jeder Befehl wird durch eine einzelne Programmzeile dargestellt und besteht aus den folgenden Komponenten – Zeilennummer, aktueller Wert, der nur online angezeigt werden kann, Befehlsoperator und Operand. Zum Verständnis siehe das folgende Bild.
Sie können sehen, dass jede Zeile nur eine einzelne Operation ausführt. Anstelle der in der Kontaktplanlogik verwendeten Kontakte und Spulen gibt es entsprechende Ladeanweisungen und Setz-/Rücksetzanweisungen. Es handelt sich um eine Mischung aus Kontaktplanlogik und strukturiertem Text. Aus diesem Grund wird es auch als Assemblersprache bezeichnet. Wenn Sie in der SPS online gehen, können Sie in diesem Fenster animierte Werte sehen.
Wenn wir uns diese fünf Sprachen ansehen, sehen wir, dass die am häufigsten von Programmierern verwendeten Sprachen Kontaktplanlogik, strukturierter Text und Funktionsblockdiagramm sind. Jede Sprache hat ihre Vor- und Nachteile. Aber diese drei sind einfach zu verstehen, zu interpretieren und zu entwerfen. Dies hilft dem Programmierer dabei, die Logik richtig zu entwerfen.
Das bedeutet nicht, dass die verbleibenden zwei Sprachen nicht verwendet werden. Es hängt von den Fähigkeiten des Programmierers ab, was er zur Implementierung der Codierung verwenden muss. Daher ist es schwierig, die beste Sprache zu nennen; aber ja, auch von diesen drei wird die Kontaktplanlogik am häufigsten verwendet.