Zum Inhalt springen

Speicherprogrammierbare Steuerung

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 16. November 2005 um 12:52 Uhr durch 84.140.118.50 (Diskussion) (Hersteller). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Datei:Automate télémécanique tsx17.jpg
Speicherprogrammierbare Steuerung tsx17
SPS

Eine Speicherprogrammierbare Steuerung (SPS, engl. Programmable Logic Controller, PLC) ist eine elektronische Baugruppe, die in der Automatisierungstechnik für Steuerungs- und Regelungsaufgaben eingesetzt wird.

Einsatzgebiet

Die SPS steuert (mit ihren Ausgängen) die Eingangsdaten eines Industrie-Prozesses und ist zu diesem Zweck programmierbar. Die Programmierbarkeit erlaubt den Einsatz in verschiedensten Umgebungen, was die Flexibilität des Konzepts unterstreicht. Der Einsatz speicherprogrammierbarer Steuerungen (Begriff im industriellen Sinn) bedeutet nicht zwingend, dass regelungstechnisch gesehen nur gesteuert wird, die SPSen können durchaus Regelungsfunktionen übernehmen, d. h. Teile von Rückkopplungen sein. Beispiele für Ein- und Ausgänge sind:

  • Eingänge können digitale oder analoge Signale sein, aber auch komplexer wie zum Beispiel eine serielle Schnittstelle. Beispiele für Sensoren sind: Drucksensoren, Temperaturfühler, Endschalter, Grenztaster, Drehzahlgeber und Ähnliches. Zu genannten Eingangsdaten gehören auch Bedingungsdaten, so dass die Steuerung in vielen Anwendungen die Rolle der Überwachung (Regelung, s. o.) wahrnimmt. Dies schließt z. B. auch die Herbeiführung sicherer Zustände ein, falls Fehler in Prozessen auftreten und kein Mensch eingreifen kann.
  • Ausgänge sind stets die obigen Eingangsdaten des Industrie-Prozesses; die SPS steuert in dieser Eigenschaft Relais, Pneumatikventile, Hydraulikventile etc., werden aber auch zum digitalen Signalaustausch mit anderen Steuerungen genutzt. Die Steuerung verfügt mindestens über Und/Oder/Nicht-Funktionen, Zähler, Merker und Timer. Weitere Möglichkeiten hängen von der verwendeten Sprache und vom internen Befehlsvorrat der verwendeten Steuerung ab. Die Programmierung von Timern für die Steuerung zeitlicher Abläufe ist eine häufige Anwendung der SPS-Programmierung.

Weitere Hardware-Schnittstellen existieren, z. B. zu Feldbus-Systemen für die dezentrale Ein-/Ausgabe von digitalen und analogen Signalen.

Sicherheitskritisches Umfeld

Sicherheit betrifft beispielsweise Atomenergie, Chemiewirtschaft und Ölraffinerien, Erdgasförderung, Fördertechnik allgemein, Pressen, Gebäudetechnik, Rohbau-Anlagen, Hochsee-Schifffahrt, Transport und Verkehr, Fahrgeschäfte aller Art. Sie bedeutet Schutz von Menschen, Schutz von Anlagen, Schutz der Umwelt. Die Aufgabe ist also die Reduzierung des Risikos bei vollem Erhalt der Funktionalität und Produktivität. Sicherheit setzt somit eine hohe Verfügbarkeit der Überwachungs- und Reaktionsmechanismen voraus. Hierzu gehört das NOT-AUS, dass einen definierten, sicheren Zustand für Mensch und Anlage und des zu steuernden Systems herbeiführt. Risiken sind nie ganz auszuschließen und können gemäß Norm EN 954 systematisch bewertet und klassifiziert werden (Restrisiko-Analyse).

Das Abschalten von Maschinen und Anlagen über NOT-AUS darf nicht über einen Softwarekontakt erfolgen, sondern muss nach DIN VDE bzw. EN als Hardware verdrahtet werden. Dies geschieht über einen sog. Öffner-Kreis mit ruhen Strom.

Zur Benutz- und Einsetzbarkeit einer SPS im industriellen Umfeld gehören auch geeignete Diagnose-Schnittstellen, die den Anwender über den Systemzustand informieren und eventuelle Fehler melden.

Aufbau und Programmierung

Die klassische SPS hat eine Prozessor-Architektur, die im wesentlichen für die Bit- (oder Wort-)Verknüpfung optimiert ist. Die Anpassung der Bit-Verarbeitung an die zu steuernde Maschine oder Anlage erfolgt durch ein Programm, das den gewünschten Ablauf festlegt und im Speicher abgelegt wird.

Üblicherweise wird bei der SPS auch Software zur Kommunikation mit einem Programmiergerät mitgeliefert. Die Programmierung geschieht über dieses Programmiergerät, zum Beispiel eine Anwendung unter Windows auf einem PC. Die hier bereitgestellte, sogenannte Konfiguration wird beim Programmieren auf die Steuerung geladen. Sie bleibt dort solange im Speicher, bis sie gelöscht oder überschrieben wird.

Moderne SPSen sind klassische Microcontroller mit eigener CPU und einer Basis-Software, die auch die wortweise Verknüpfung von I/O-Signalen erlaubt. Die Basis-Software besteht aus einem Echtzeitbetriebssystem und SPS-spezifischen "Bausteinen", die SPS-Funktionen wie Zeitfunktionen und Schnittstellen zu Erweiterungsboards realisieren.

Baugruppenbezogene Abgrenzung

Technisches Gegenstück ist die Verbindungsprogrammierte Steuerung (VPS) oder festverdrahtete Logik , d. h. Schaltungen vorwiegend aus Relais, Zeitrelais und Überwachungsrelais, was allerdings platzaufwändiger und unflexibler ist. Derartige verbindungsprogrammierte Steuerungen müssen bei jeder Änderung im Steuerungsablauf hardwareseitig umgebaut werden. Es gibt aber kritische Prozesse oder sicherheitsbedingte Fälle, die diese Festverdrahtung verlangen und bei denen es sogar verboten ist, sie per SPS zu steuern.

Programmiersprachen

Speicherprogrammierbare Steuerungen werden meist mit speziellen (oft grafischen) Programmiersprachen programmiert. Früher waren Syntax und Umfang der Programmiersprache meist herstellerspezifisch. Heute hat sich ein genormter Standard nach IEC/EN etabliert.

Nach IEC 61131-3 (International Electrotechnical Commission), zwischenzeitlich übernommen in die DIN EN 61131, sind fünf Sprachen spezifiziert:

Die Sprachen IL und ST sind textbasiert, die anderen drei Sprachen (LD, FBD und SFC) grafisch. In allen Sprachen können Funktionen und Funktionsblöcke verwendet werden, die in einer der Sprachen geschrieben oder vom SPS-Hersteller in Form von Software-Bibliotheken ohne Quelltext zur Verfügung gestellt werden.

Je nach Leistungsfähigkeit der SPS müssen nicht alle Sprachen zur Verfügung stehen. Die Umwandlung zwischen Sprachen ist herstellerabhängig nicht oder nur mit Einschränkungen möglich. Viele Programmierumgebungen bieten auch die Möglichkeit, weitere Sprachen wie z. B. C zu verwenden.

Hersteller

Weltmarktführer auf dem Gebiet der Entwicklung und Produktion von SPS-Systemen ist unbestritten Siemens. Die aktuelle Baureihe des Konzerns, die Simatic S7, ist die in der Steuerungs- und Automatisierungstechnik wohl am häufigsten anzutreffende SPS. Sie zeichnet sich vorallem durch Zuverlässigkeit, Schnelligkeit und eine relativ einfache Programmierung aus. Die S7 ist jedoch, verglichen mit anderen Fabrikaten, auch die kostspieligste SPS. Andere Hersteller, wie etwa Klöckner-Möller (Moeller) oder Baumüller, liefern beispielsweise die Programmier-Software kostenlos, während bei Siemens eine Lizenz erworben werden muss. Jedoch sind die Produkte dieser Firmen kaum verbreitet, und so lohnt sich eine Anschaffung oft nicht, da die verschiedenen Fabrikate auch nicht kompatibel sind. Weitere Hersteller sind Rockwell (Allen Bradley) und Toyota. Die Rockwell Steuerungen Beruhen auf einem Rack mit motherboard worauf der PLC5 Prozesser und verschidene I/O Karten eingesteckt werden können. Zudem kann über Control Net ein Netzwerk erstellt weden das die Kommunikation untereiander sowie zu einem Pc ermöglicht.

Kompatibilität und Interoperabilität

Zu beachten ist, dass zwar die Hersteller diese "genormten" Sprachen unterstützen. Es gibt jedoch meist herstellerspezifische Anpassungen oder Erweiterungen, die die versprochene Portabilität der Programme einschränken. Bei den Bestandteilen der Software-Bibliotheken sind die Unterschiede besonders groß. Außerdem unterstützt nicht jeder Hersteller Schnittstellen, über welche die Programme in einem auch für andere Hersteller verarbeitbaren Format ausgegeben oder eingelesen werden können. Es ist nur theoretisch möglich, ein Programm zu schreiben und dieses auf Steuerungen unterschiedlicher Hersteller ohne Änderungen ablaufen zu lassen - praktisch scheitert das meist an den Eigenheiten der verschiedenen Fabrikate.

Mit Ansätzen zur Überbrückung dieser Schwierigkeiten beschäftigen sich z.B. folgende Gremien/Organisationen:

In den Dokumenten dieses Arbeitskreises wird ein XML Format festgelegt, in dem man der IEC 61131 genügende Projekte ablegen soll. Damit wird der Austausch von Projektdaten zwischen verschiedenen Werkzeugen möglich.

Interoperabiliät einer SPS ist ihre Fähigkeit, mit Steuerungen verschiedener Hersteller in einem Gesamtsystem zusammenzuarbeiten. Dies wird in der Regel durch mehrere herstellerunabhängige Standards sichergestellt. Dazu gehören zum Beispiel Vereinbarungen über den Zugriff auf symbolische Informationen und den Austausch von Variablen über Feldbusse und Netzwerke.

Arbeitsweise

Wie jeder andere Computer arbeitet die SPS nach dem EVA-Prinzip, sie besitzt also einen Eingabe-, einen Verarbeitungs- und einen Ausgabeteil. Die E/A-Geräte (die an die Eingänge/Ausgänge, englisch Input/Output, angeschlossenen Geräte) sind mit der SPS verdrahtet.

Die SPS arbeitet zyklisch: Sie liest die Werte aller Eingänge am Anfang eines Zyklus ein (man spricht in diesem Zusammenhang auch vom "Einlesen des Prozessabbildes") , sollte sich ein Befehl wiederholen dann gilt die letzte anweisung ( Dominant Setzen oder Rücksetzen ) führt dann die gespeicherten Programme (auch 'Bausteine' oder 'Netzwerke' genannt) aus und setzt am Ende die Ausgänge. Dann startet der Zyklus von Neuem - ein Programmende gibt es nicht. Ereignisorientierte Verarbeitung wird meistens nur durch sogenannte High-End-Steuerungen unterstützt.

SPS-Zustände

Zustandsänderungen, die sich an den Eingängen angeschlossenen Sensoren während des Zyklusdurchlaufs ereignen, werden nicht erkannt, sofern sie nicht mit speziellen Befehlen unmittelbar vor der Bearbeitung geladen werden. Abhängig von deren Werten werden die an ihren Ausgängen angeschlossenen Aktoren gemäß eingebautem Programm angesteuert. Dies geschieht einmal am Ende des Zyklus.

In den meisten SPS-Konzepten unterscheidet die SPS zwischen den Betriebszuständen

  • STOPP,
  • START.

Diese sind nicht mit den für die SPS bestehenden Möglichkeiten AUS und AN der globalen Stromversorgung zu verwechseln.

Im STOPP kann eine neue Konfiguration vom Programmiergerät geladen werden. Im START führt die SPS ihre eigentliche Arbeit durch. Beim Übergang STOPP -> START werden eine Initialisierungs- und anschließend eine Zyklusphase durchlaufen, und diese wird wiederholt, bis zum Übergang zurück START -> STOPP. Die Arbeitsweise lässt sich also schematisch darstellen: die einmalige Startprozedur und der periodisch wiederholte SPS-Zyklus ergeben folgenden Ablauf in wohldefinierter Reihenfolge.

System-Neustart
Komplette System-Diagnose (System-Eigentest)
System-Initialisierung (ggf. Daten-Transfer)
Zyklus System-Teil:
kurzer System-Test
ggf. Daten-Transfer
Lesen der Eingänge
Anwender-Teil:
Abarbeitung des Anwenderprogramms nach dem EVA-Prinzip (Eingabe, Verarbeitung, Ausgabe)
System-Teil:
Schreiben der Ausgänge

Ein Abarbeitungszyklus enthält einen System-Teil, der den Anwender-Teil umschließt. Dieser beginnt synchron erst dann, wenn alle Eingangsdaten stabil anliegen. Der Abarbeitungszyklus beginnt mitten im System-Teil; die SPS muss dafür sorgen, dass der letzte Zyklus auch definiert genau dort wiederum endet, wenn der Übergang START -> STOPP erfolgt. Sobald dies der Fall ist, werden die Eingänge nicht weiter verarbeitet und die Ausgänge stromlos geschaltet; die globale Stromversorgung der SPS kann unabhängig davon weiterhin bestehen.

Es gibt demgegenüber auch Steuerungen, bei denen eine Änderung / Programmierung direkt möglich ist. Hierzu ist es nicht notwendig, die SPS über STOP anzuhalten. Diese SPSen können durch Terminal-Emulation über eine serielle Schnittstelle oder Ethernet direkt bearbeitet werden. Jegliche Änderung wirkt sich dann sofort auf die SPS aus, ohne dass diese explizit angehalten und wieder gestartet werden muss. zb. : Timer oder Counter


Siehe auch

Literatur

  • Werner Braun: Speicherprogrammierbare Steuerungen in der Praxis. Programmiersprachen von STEP 7. Aufgaben und Lösungen. VIEWEG Studium Technik, ISBN 3528138580
  • Bliesener et al. (Festo): Speicherprogrammierbare Steuerungen, Lehrbuch Grundstufe; Springer-Verlag Berlin, 1997.
  • Heinrich Lepers: SPS-Programmierung nach IEC 61131-3. Mit Beispielen für CoDeSys und STEP 7. Franzis Verlag, 2005 , ISBN 3-7723-5801-2
  • Karl-Heinz John, Michael Tiegelkamp: SPS-Programmierung mit IEC 61131-3, m. CD-ROM (inkl. OpenPCS, Step7). Umfassendes IEC 61131- Lehr- und Anwendungshandbuch, 3. Auflage, ISBN 3-5406-6445-9; Leseproben siehe www.amazon.de
  • Karl-Heinz John, Michael Tiegelkamp: IEC 61131-3: Programming Industrial Automation System, w. CD-ROM (inkl. OpenPCS, Step7). Umfassendes IEC 61131- Lehr- und Anwendungshandbuch (englisch), ISBN 3-5406-7752-6
  • Karl-Heinz John, Michael Tiegelkamp: IEC 61131-3: Programming Industrial Automation System. Umfassendes IEC 61131- Lehr- und Anwendungshandbuch (chinesisch), siehe www.plcopen.org -> promotion -> order book)