Zum Inhalt springen

Speicherprogrammierbare Steuerung

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 3. April 2007 um 14:15 Uhr durch 62.225.123.35 (Diskussion) (SPS-Zustände). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Speicherprogrammierbare Steuerung

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

Im Prinzip handelt es sich dabei um ein Gerät mit spezialisierten Eingabe- und Ausgabe-Schnittstellen. Über diese Sensoren und Aktoren kann sie Fertigungsprozesse steuern, überwachen und beeinflussen.

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 SPS kann durchaus Regelungsfunktionen übernehmen, d. h. Teil von Rückkopplungen sein. Beispiele für Ein- und Ausgänge sind:

  • Digitale oder analoge Signale von Sensoren, aber auch komplexere Eingänge wie zum Beispiel eine serielle Schnittstelle sind möglich. 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.
  • Die Ausgangssignale der SPS sind die Eingangsdaten des Industrie-Prozesses; die SPS steuert in dieser Eigenschaft z. B. Relais, Pneumatikventile, Hydraulikventile. Die Ausgangssignale 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 Kernenergie, 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. An besonders kritischen Stellen kann die Steuerung, oder Teile davon, redundant ausgeführt werden, so dass bei einem Fehler in der Steuerung die Sicherheit aufrecht erhalten bleibt. Dies ist eine Grundanforderung an die Personensicherheit. Normale, nicht redundant aufgebaute SPSen sind für Personen-sicherheitsrelevante Steuerungsfunktionen nicht zugelassen. Zu diesen Funktionen zählen beispielsweise Schutzüberwachungen, Lichtschrankenauswertung, Zweihandbedienung oder die Not-Aus-Funktion. Redundant aufgebaute und von unabhängigen Prüfstellen zertifizierte Steuerungen für den Einsatz zur Personensicherheit werden allgemein als Sicherheits-Steuerungen (SSPS, sicherheitsgerichtete Speicherprogrammierbare Steuerung) bezeichnet. Bekannte Hersteller von Sicherheits-Steuerungen sind beispielsweise Allen Bradley( jetzt Rockwell), HIMA, Pilz und Siemens, B&R. Sie können entweder als separate Sicherheits-SPS ausgeführt sein oder durch eine Kombination aus sicheren und konventionellen SPS-Kompontenten die gesamte Steuerung übernehmen.

Bei Prozessen mit hohen Anforderungen an die Verfügbarkeit kann außerdem gefordert sein, dass bei einem Steuerungsfehler eine unterbrechungsfreie Funktion der Anlage oder Maschine bis zur Reparatur gewährleistet bleibt. Auch während des Austauschs der Steuerung darf die Anlage nicht gestört werden. Für diese Zwecke werden dreifach redundante Systeme mit Mehrheitsentscheider (zwei Rechner überstimmen den dritten) eingesetzt.

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.

Vor-/ Nachteile von SPS gegenüber VPS (Verbindungsprogrammierte Steuerung)

Vorteile

  • viel flexibler
  • kleiner
  • zuverlässiger (fehlersichere SPS)
  • langfristig kostengünstiger
  • mit anderen IT-Anlagen vernetzbar
  • schnelle Fehleranalyse
  • Anlage aus der Ferne veränderbar (Internet)
  • weniger Stromverbrauch
  • geringerer Aufwand bei Umverdrahtung bzw. Funktionswechsel gegenüber der VPS

Nachteile

  • zusätzliche Infrastruktur notwendig (Programmiergeräte bzw. Software, Datensicherung etc.)
  • relativ hoch qualifiziertes Personal notwendig
  • für weniger komplexe Anlagen/Programmabläufe zu teuer
  • Lasten können meist nicht direkt geschaltet werden, es werden Leistungsschütze benötigt

Aufbau und Programmierung

Die klassische SPS hat eine Prozessor-Architektur, die im Wesentlichen für die Bit-, Byte- oder Wort-Verknüpfung optimiert ist. Siemens-Steuerungen werden beispielsweise Byte-weise adressiert, Omron-Steuerungen adressieren dagegen ein volles Wort. Die unterschiedliche Adressierung ist dann besonders zu beachten, wenn unterschiedliche Steuerungen über Feldbus, z.B. Profibus miteinander verknüpft werden. Unter Umständen müssen dann Bytes innerhalb des Programms paarweise getauscht werden, um die richtige Information abzubilden. Die Anpassung der Bit, Byte, Wort-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 des Programmiergerätes (kurz: PG) mit der Steuerung, mitgeliefert. Die Programmierung geschieht über dieses Programmiergerät, zum Beispiel eine Anwendung unter Windows/Linux auf einem PC oder ein zugeschnittenes System. Die hier bereitgestellte, sogenannte Konfiguration wird beim Programmieren auf die Steuerung geladen. Sie bleibt dort solange im Speicher, bis sie vom Benutzer gelöscht oder überschrieben wird.

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

In den letzten Jahren wurden auf Druck der Anwender die Steuerungen in Hinsicht auf minimalen Platzbedarf im Schaltschrank optimiert. Für diese miniaturisierten Steuerungskomponenten wird von manchen Firmen der Begriff der Busklemme verwendet, wobei es für diesen Begriff keine eindeutige Definition gibt. Eine Busklemme ist eine intelligente Reihenklemme, welche die unterschiedlichsten analogen und digitalen Eingangs- und Ausgangssignale verarbeiten kann. Sie wird so einfach und kompakt wie eine konventionelle Reihenklemme untergebracht und verdrahtet, verfügt aber im Gegensatz zur Reihenklemme über eine intelligente Elektronik.

Der Kopf dieser elektronischen Reihenklemme ist der Buskoppler. Er verfügt in der Regel über eine Schnittstelle für einen Feldbus. Buskoppler mit eigener Intelligenz werden als Busklemmen-Controller bezeichnet. Sie verfügen oftmals bereits über SPS-Funktionalität.

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 Sicherheit bedingte Fälle, die diese Festverdrahtung verlangen und bei denen es sogar verboten ist (Not-Aus-Schalter), sie per Standard-SPS zu steuern. Für solche Zwecke können auf Sicherheitsaufgaben spezialisierte SPS verwendet werden.

Programmiersprachen

Speicherprogrammierbare Steuerungen werden meist mit speziellen (oft grafischen) Programmiersprachen programmiert. Als Reaktion auf die Forderung der amerikanischen Automobilindustrie wurde eine elektronische Steuerung mit einer Bildschirmdarstellung entwickelt, die an die Darstellung in der elektrischen Steuerungstechnik angelehnt ist. Diese Darstellung/Sprache (Ladder Diagram) war die erste grafische Programmierung elektronischer Steuerungen. Mehrere Firmen (Texas Instruments, Modicon, ISSC, Allen-Bradley (später Rockwell)) haben diese Sprache in den 70ern in ihren Systemen weiterentwickelt. Erster deutscher Hersteller war 1975 die Firma Klaschka mit den SECON-Steuerungen. Bereits Anfang der 80er Jahre boten diese Steuerungen Bit-, Byte- und Wortverarbeitung sowohl für die E/A-Ebene als auch für die Merker-Ebene sowie Sonderfunktionen wie Sequenzer (Schrittschaltwerke), Analogwertverarbeitung, PID-Regler und grafische Bedienschnittstellen.

Heute hat sich ein genormter Standard etabliert: Nach IEC 61131-3, zwischenzeitlich übernommen in die DIN EN 61131-3, sind fünf Sprachen (CFC gehört nicht dazu) spezifiziert:

Englisch Deutsch  
Abk. Bezeichnung Abk. Bezeichnung Hinweise
IL Instruction List AWL Anweisungsliste Vergleichbar mit Assembler
LD Ladder Diagram KOP Kontaktplan Vergleichbar mit einem Elektro-Schaltplan der um 90° gedreht ist
FBD Function Block Diagram FBS Funktionsbaustein-Sprache Teilweise (insbesondere bei Siemens STEP 7) auch als FUP (Funktionsplan) bekannt. (Der eigentliche FUP nach DIN 40719-6 ist inzwischen von Grafcet nach EN 60848 abgelöst worden.)
SFC Sequential Function Chart AS Ablaufsprache eine Art Zustandsdiagramm, bei STEP 7 als S7 GRAPH bekannt.
ST Structured Text ST Strukturierter Text angelehnt an Hochsprachen
CFC Continuous Function Chart CFC Continuous Function Chart Vollgrafisches Projektierwerkzeug, speziell für Regelungen und Verriegelungen, jedoch nicht in der IEC 61131 enthalten

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

Je nach Leistungsfähigkeit der SPS bzw. des Programmiergeräts 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 nach der Menge auf dem Gebiet der Entwicklung und Produktion von SPS-Systemen ist heute Siemens. Die aktuelle Baureihe des Konzerns, die SIMATIC S7, ist die in der Steuerungs- und Automatisierungstechnik wohl am häufigsten anzutreffende SPS. Die S7 ist, verglichen mit anderen Fabrikaten, auch die kostspieligste SPS, dann kommt mit einem etwas größerem Abstand die Bosch Rexroth AG, der mit der CL150/151 eine kostengünstige Lösung für weniger komplexe Anlagen geschaffen hat. Andere Hersteller, wie etwa 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 KEBA, Schneider Electric, ABB, B&R, Sigmatek, Rockwell Automation (Allen Bradley), Mitsubishi Electric (MEL), Panasonic Electric Works, Phoenix Contact, Omron und Toyota. Neben den beschriebenen Hardware-SPS existieren am Markt Software-SPS. Dazu gehören z.B. WinLC/WinLC RTX von Siemens oder TwinCAT von Beckhoff. Sie dienen dazu, Standard-CPU-Plattformen (z. B. PCs, typischerweise Industrie-PCs) als klassische SPS-Systeme verwenden zu können. Sie sind nach IEC 61131-3 programmierbar.

Neben den oben genannten Herstellern gibt es die hardwareunabhängige Programmiersoftware CoDeSys, eine Entwicklungsumgebung für die IEC 61131-3-Programmiersprachen, die von verschiedenen Herstellern auf unterschiedlichen Hardwareplattformen und Betriebssystemen genutzt wird.

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.

Interoperabilitä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 angeschlossener Sensoren während des Zyklusdurchlaufs ereignen, werden nur erkannt, wenn sie 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

  • STOP,
  • START (engl. RUN).

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

Im STOP kann eine neue Konfiguration vom Programmiergerät geladen werden. Im START führt die SPS ihre eigentliche Arbeit durch. Beim Übergang STOP -> START werden eine Initialisierungs- und anschließend eine Zyklusphase durchlaufen, und diese wird wiederholt, bis zum Übergang zurück START -> STOP. 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 -> STOP 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. z. B. : 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
  • 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
  • Moeller-Schaltungsbuch (Download)
  • Manfred Ochs SPS für die handwerkliche Ausbildung Grundlagen und Praxis 4. völlig neu bearbeitete Auflage Hüthig Verlag Heidelberg 2001 ISBN 3-7785-2825-4
  • Matthias Seitz: Speicherprogrammierbare Steuerungen - Von den Grundlagen der Programmierung bis zur vertikalen Integration, ISBN 3-446-22174-3, Hanser Fachbuchverlag Leipzig, 2003.
  • Günter Wellenreuter, Dieter Zastrow: Automatisieren mit SPS Theorie und Praxis, ISBN 3-528-13910-2 [www.vieweg.de], 2002.