Programmierbare Steuerung - Programmable logic controller

SPS für ein Überwachungssystem in der Pharmaindustrie.

Eine speicherprogrammierbare Steuerung ( SPS ) oder programmierbare Steuerung ist ein Industrie - Computer , der wurde ruggedized für die Kontrolle von Fertigungsprozessen und angepasst ist , wie beispielsweise Fertigungsstraßen , Maschinen, Roboter - Vorrichtungen oder jede Aktivität, die eine hohe Zuverlässigkeit erfordert, eine einfache Programmierung und Prozessfehlerdiagnose. Dick Morley gilt als Vater der PLC, da er 1968 die erste PLC, die Modicon 084, für General Motors erfunden hatte .

SPSen können von kleinen modularen Geräten mit Dutzenden von Ein- und Ausgängen (E/A) in einem mit dem Prozessor integrierten Gehäuse bis hin zu großen, im Rack montierten modularen Geräten mit Tausenden von E/A reichen, die oft mit anderen SPS und SCADA- Systeme.

Sie können für viele digitale und analoge E/A-Anordnungen, erweiterte Temperaturbereiche, Immunität gegen elektrisches Rauschen und Vibrations- und Stoßfestigkeit ausgelegt werden. Programme zur Steuerung des Maschinenbetriebs werden typischerweise in einem batteriegepufferten oder nichtflüchtigen Speicher gespeichert .

SPS wurden erstmals in der Automobilindustrie entwickelt, um flexible, robuste und leicht programmierbare Controller bereitzustellen, die festverdrahtete Relaislogiksysteme ersetzen . Seitdem sind sie weit verbreitet als hochzuverlässige Automatisierungssteuerungen, die für raue Umgebungen geeignet sind.

Eine SPS ist ein Beispiel für ein hartes Echtzeitsystem , da Ausgabeergebnisse als Reaktion auf Eingabebedingungen innerhalb einer begrenzten Zeit erzeugt werden müssen, andernfalls kommt es zu einem unbeabsichtigten Betrieb.

Erfindung und frühe Entwicklung

PLC entstand in den späten 1960er Jahren in der Automobilindustrie in den USA und wurde entwickelt, um Relaislogiksysteme zu ersetzen. Vorher bestand die Steuerungslogik für die Fertigung hauptsächlich aus Relais , Nockenschaltuhren , Drum-Sequencern und dedizierten Closed-Loop-Controllern.

Die fest verdrahtete Natur machte es Konstrukteuren schwer, den Automatisierungsprozess zu ändern. Änderungen würden eine Neuverkabelung und eine sorgfältige Aktualisierung der Dokumentation erfordern. Wenn auch nur ein Kabel verrutscht oder ein Relais ausfällt, wird das gesamte System fehlerhaft. Oftmals verbrachten Techniker Stunden damit, Fehler zu beheben, indem sie die Schaltpläne untersuchten und sie mit der vorhandenen Verkabelung verglichen. Als Universalcomputer verfügbar wurden, wurden sie bald auf die Steuerungslogik in industriellen Prozessen angewendet. Diese frühen Computer waren unzuverlässig und erforderten spezialisierte Programmierer und eine strenge Kontrolle der Arbeitsbedingungen wie Temperatur, Sauberkeit und Stromqualität.

Die SPS bietet gegenüber früheren Automatisierungssystemen mehrere Vorteile. Es tolerierte die industrielle Umgebung besser als Computer und war zuverlässiger, kompakter und wartungsärmer als Relaissysteme. Es war leicht mit zusätzlichen I/O-Modulen erweiterbar, während Relaissysteme im Falle einer Neukonfiguration komplizierte Hardwareänderungen erforderten. Dies ermöglichte eine einfachere Iteration über das Design des Herstellungsprozesses. Mit einer einfachen Programmiersprache, die sich auf Logik und Schaltvorgänge konzentrierte, war es benutzerfreundlicher als Computer mit universellen Programmiersprachen . Es erlaubte auch, seinen Betrieb zu überwachen. Frühe PLCs wurde in programmierten Leiterlogik , die stark eine schematische Darstellung ähnelte Relaislogik . Diese Programmnotation wurde gewählt, um den Schulungsbedarf für die bestehenden Techniker zu reduzieren. Weitere Steuerungen verwendet , um eine Form von Anweisungsliste Programmierung, basierend auf einem Stack-basierten Logic - Solver.

Modicon

1968 veröffentlichte GM Hydramatic (die Automatikgetriebeabteilung von General Motors ) eine Aufforderung zur Einreichung von Vorschlägen für einen elektronischen Ersatz für festverdrahtete Relaissysteme, basierend auf einem Whitepaper des Ingenieurs Edward R. Clark. Der siegreiche Vorschlag kam von Bedford Associates aus Bedford, Massachusetts . Das Ergebnis war die erste PLC – gebaut im Jahr 1969 – die als 084 bezeichnet wurde, weil es das vierundachtzigste Projekt von Bedford Associates war.

Bedford Associates gründete ein Unternehmen, das sich der Entwicklung, Herstellung, dem Verkauf und der Wartung dieses neuen Produkts widmete, das sie nannten Modicon (steht für modulare digitale Steuerung). Einer der Leute, die an diesem Projekt mitgearbeitet haben, war Dick Morley , der als "Vater" der PLC gilt. Die Marke Modicon wurde 1977 an Gould Electronics und später an Schneider Electric , den jetzigen Eigentümer, verkauft. Ungefähr zur gleichen Zeit entwickelte Modicon Modbus , ein Datenkommunikationsprotokoll, das mit seinen SPS verwendet wird. Modbus hat sich seitdem zu einem offenen Standardprotokoll entwickelt, das häufig verwendet wird, um viele industrielle elektrische Geräte zu verbinden.

Eines der ersten gebauten 084-Modelle ist jetzt im Werk von Schneider Electric in North Andover, Massachusetts, ausgestellt . Es wurde Modicon von GM überreicht , als die Einheit nach fast zwanzig Jahren ununterbrochenen Betriebs in den Ruhestand ging. Modicon verwendete den 84-Moniker am Ende seiner Produktpalette, bis der 984 auf den Markt kam.

Alleine bradley

Parallel dazu wird Odo Josef Struger manchmal auch als "Vater der speicherprogrammierbaren Steuerung" bezeichnet. Er war an der Erfindung der speicherprogrammierbaren Steuerung von Allen-Bradley beteiligt und gilt als Erfinder der SPS-Initialisierung. Allen-Bradley (jetzt eine Marke im Besitz von Rockwell Automation ) wurde während seiner Amtszeit zu einem bedeutenden SPS-Hersteller in den Vereinigten Staaten. Struger spielte eine führende Rolle bei der Entwicklung von IEC 61131-3 SPS-Programmiersprachenstandards.

Frühe Methoden der Programmierung

Viele frühe SPSen waren nicht in der Lage, die Logik grafisch darzustellen, und so wurde sie stattdessen als eine Reihe von logischen Ausdrücken in einer Art Booleschen Format dargestellt, ähnlich der Booleschen Algebra . Mit der Entwicklung von Programmierterminals wurde die Verwendung von Kontaktplanlogik immer häufiger, da dies ein bekanntes Format für elektromechanische Bedienfelder war. Neuere Formate wie Zustandslogik und Funktionsblock (die der Darstellung von Logik bei der Verwendung digitaler integrierter Logikschaltungen ähnlich sind) gibt es, aber sie sind immer noch nicht so beliebt wie Leiterlogik. Ein Hauptgrund dafür ist, dass SPS die Logik in einer vorhersehbaren und sich wiederholenden Sequenz lösen und die Kontaktplanlogik es der Person, die die Logik schreibt, ermöglicht, Probleme mit dem Timing der Logiksequenz leichter zu erkennen, als dies in anderen Formaten möglich wäre.

Bis Mitte der 1990er Jahre wurden die Steuerungen programmiert mit proprietären Programmiergeräte oder Spezial-Programmierterminals , die oft spezielle Funktionstasten hatte , die die verschiedenen logischen Elemente von SPS - Programmen. Einige proprietäre Programmierterminals zeigten die Elemente von SPS-Programmen als grafische Symbole an, aber einfache ASCII- Zeichendarstellungen von Kontakten, Spulen und Drähten waren üblich. Programme wurden auf Kassettenbandkassetten gespeichert . Druck- und Dokumentationsmöglichkeiten waren mangels Speicherkapazität minimal. Die ältesten SPS verwendeten nichtflüchtigen Magnetkernspeicher .

Die Architektur

Eine SPS ist ein industrieller mikroprozessorbasierter Controller mit programmierbarem Speicher, der zum Speichern von Programmanweisungen und verschiedenen Funktionen verwendet wird. Es besteht aus:

  • eine Prozessoreinheit (CPU), die Eingaben interpretiert, das im Speicher abgelegte Steuerprogramm ausführt und Ausgangssignale sendet,
  • ein Netzteil, das Wechselspannung in Gleichspannung umwandelt,
  • eine Speichereinheit, die Daten von Eingaben und von dem Prozessor auszuführendes Programm speichert,
  • eine Eingabe- und Ausgabeschnittstelle, an der der Controller Daten von/zu externen Geräten empfängt und sendet,
  • eine Kommunikationsschnittstelle zum Empfangen und Übertragen von Daten in Kommunikationsnetzwerken von/zu entfernten SPS.

SPS benötigen ein Programmiergerät, mit dem das erstellte Programm entwickelt und später in den Speicher der Steuerung geladen wird.

Moderne SPS enthalten in der Regel ein Echtzeit-Betriebssystem wie OS-9 oder VxWorks .

Mechanische Konstruktion

Kompakt-SPS mit 8 Eingängen und 4 Ausgängen.
Modulare SPS mit EtherNet/IP-Modul, digitaler und analoger E/A, wobei einige Steckplätze leer sind.
Modulare SPS mit EtherNet/IP- Modul, diskreten und analogen E/A, wobei einige Steckplätze leer sind.

Es gibt zwei Arten der mechanischen Konstruktion für SPS-Systeme. Eine einzelne Box oder ein Brick ist eine kleine programmierbare Steuerung, die alle Einheiten und Schnittstellen in einem kompakten Gehäuse unterbringt, obwohl normalerweise zusätzliche Erweiterungsmodule für Ein- und Ausgänge erhältlich sind. Der zweite Bautyp – eine modulare SPS – verfügt über ein Chassis (auch Rack genannt ), das Platz für Module mit unterschiedlichen Funktionen wie Stromversorgung, Prozessor, Auswahl an E/A-Modulen und Kommunikationsschnittstellen bietet – die alle für besondere Anwendung. Mehrere Racks können von einem einzigen Prozessor verwaltet werden und können Tausende von Ein- und Ausgängen haben. Entweder wird eine spezielle High-Speed-Seriell-I/O-Verbindung oder eine vergleichbare Kommunikationsmethode verwendet, um die Racks vom Prozessor weg zu verteilen und den Verdrahtungsaufwand für große Anlagen zu reduzieren. Es sind auch Optionen erhältlich, um E/A-Punkte direkt an der Maschine zu montieren und Kabel mit Schnellkupplung zu Sensoren und Ventilen zu verwenden, was Zeit für die Verkabelung und den Austausch von Komponenten spart.

Diskrete und analoge Signale

Diskrete (digital) Signale können nur auf oder off - Wert (1 oder 0 ist , wahr oder falsch ). Beispiele für Geräte, die ein diskretes Signal liefern, sind Endschalter , Lichtschranken und Encoder . Diskrete Signale werden unter Verwendung von entweder gesendet Spannung oder Strom , wo bestimmte extreme Bereiche werden als o bezeichnet n und o ff . Zum Beispiel könnte eine Steuereinheit 24 V DC - Eingang mit Werten über 22 V DC verwendet o darstellen n , Werte unterhalb von 2 V DC o darstellen ff und Zwischen undefinierten Werten.

Analogsignale können eine Spannung oder einen Strom verwenden, der proportional zur Größe der überwachten Variablen ist und jeden Wert innerhalb ihrer Skala annehmen kann. Druck, Temperatur, Durchfluss und Gewicht werden oft durch analoge Signale dargestellt. Diese werden typischerweise als ganzzahlige Werte mit unterschiedlichen Genauigkeitsbereichen interpretiert, abhängig vom Gerät und der Anzahl der zum Speichern der Daten verfügbaren Bits. Zum Beispiel kann ein analoger 0 bis 10 V oder 4-20 mA Stromschleifeneingabe würde umgewandelt in einen ganzzahligen Wert von 0 bis 32.767. Die SPS nimmt diesen Wert und setzt ihn in die gewünschten Einheiten des Prozesses um, damit der Bediener oder das Programm ihn lesen kann. Eine ordnungsgemäße Integration umfasst auch Filterzeiten zur Reduzierung des Rauschens sowie obere und untere Grenzwerte zum Melden von Fehlern. Stromeingänge sind weniger empfindlich gegenüber elektrischem Rauschen (z. B. von Schweißgeräten oder Elektromotorstarts) als Spannungseingänge. Die Entfernung zum Gerät und zur Steuerung ist ebenfalls ein Problem, da die maximale Laufstrecke eines 0-10-V-Signals guter Qualität im Vergleich zum 4-20-mA-Signal sehr kurz ist. Das 4-20-mA-Signal kann auch melden, wenn der Draht entlang des Pfads getrennt wird, da ein <4 mA-Signal einen Fehler anzeigen würde.

Redundanz

Einige spezielle Prozesse müssen dauerhaft mit minimalen ungewollten Ausfallzeiten funktionieren. Daher ist es notwendig, ein System zu entwerfen, das fehlertolerant ist und in der Lage ist, den Prozess mit fehlerhaften Modulen zu bewältigen. In solchen Fällen können zur Erhöhung der Systemverfügbarkeit bei Ausfall von Hardwarekomponenten redundante CPU- oder E/A-Module mit gleicher Funktionalität zur Hardwarekonfiguration hinzugefügt werden, um ein vollständiges oder teilweises Herunterfahren des Prozesses aufgrund eines Hardwareausfalls zu verhindern. Andere Redundanzszenarien könnten mit sicherheitskritischen Prozessen zusammenhängen, zum Beispiel könnten große hydraulische Pressen erfordern, dass beide SPS einen Ausgang einschalten, bevor die Presse herunterfahren kann, falls ein Ausgang nicht ordnungsgemäß abschaltet.

Programmierung

Beispiel für eine Kontaktplanlogik

Speicherprogrammierbare Steuerungen sind für Ingenieure ohne Programmierkenntnisse gedacht. Aus diesem Grund wurde zunächst eine grafische Programmiersprache namens Ladder Diagram (LD, LAD) entwickelt. Es ähnelt dem Schaltplan eines Systems mit elektromechanischen Relais und wurde von vielen Herstellern übernommen und später in der Programmiernorm IEC 61131-3 für Steuerungssysteme standardisiert. Seit 2015 ist es dank seiner Einfachheit immer noch weit verbreitet.

Seit 2015 halten sich die meisten SPS-Systeme an den IEC 61131-3- Standard, der 2 textuelle Programmiersprachen definiert: Structured Text (ST; ähnlich Pascal ) und Instruction List (IL); sowie 3 grafische Sprachen: Kontaktplan , Funktionsplan (FUP) und Sequential Function Chart (SFC). Instruction List (IL) wurde in der dritten Ausgabe des Standards veraltet.

Moderne SPSen lassen sich auf vielfältige Weise programmieren, von der relaisbasierten Ladder Logic bis hin zu Programmiersprachen wie speziell angepassten Dialekten von BASIC und C .

Während die grundlegenden Konzepte der SPS-Programmierung allen Herstellern gemeinsam sind, bedeuten Unterschiede in der E/A-Adressierung, Speicherorganisation und Befehlssätzen, dass SPS-Programme zwischen verschiedenen Herstellern nie perfekt austauschbar sind. Selbst innerhalb derselben Produktlinie eines einzigen Herstellers sind verschiedene Modelle möglicherweise nicht direkt kompatibel.

Programmiergerät

SPS-Programme werden typischerweise in einem Programmiergerät geschrieben, das die Form einer Desktop-Konsole, einer speziellen Software auf einem PC oder einem Handprogrammiergerät annehmen kann. Anschließend wird das Programm direkt oder über ein Netzwerk in die SPS heruntergeladen. Es wird entweder im nichtflüchtigen Flash-Speicher oder im batteriegepufferten RAM gespeichert . Bei einigen programmierbaren Steuerungen wird das Programm von einem Personalcomputer an die SPS über eine Programmierplatine übertragen, die das Programm in einen entfernbaren Chip wie z. B. EPROM schreibt .

Hersteller entwickeln Programmiersoftware für ihre Steuerungen. Sie können nicht nur SPS in mehreren Sprachen programmieren, sondern bieten auch allgemeine Funktionen wie Hardware-Diagnose und -Wartung, Software-Debugging und Offline-Simulation.

Ein auf einem PC geschriebenes oder mit einer Programmiersoftware von einer SPS hochgeladenes Programm kann einfach kopiert und auf einem externen Speicher gesichert werden.

Simulation

Die SPS-Simulation ist eine Funktion, die häufig in SPS-Programmiersoftware zu finden ist. Es ermöglicht das Testen und Debuggen zu Beginn der Projektentwicklung.

Eine falsch programmierte SPS kann zu Produktivitätsverlusten und gefährlichen Zuständen führen. Das Testen des Projekts in der Simulation verbessert dessen Qualität, erhöht die Sicherheit der Anlagen und kann kostspielige Ausfallzeiten bei der Installation und Inbetriebnahme von Automatisierungsanwendungen einsparen, da viele Szenarien getestet und getestet werden können, bevor das System aktiviert wird.

Funktionalität

SPS-System im Rack, von links nach rechts: Netzteil (PSU), CPU, Interfacemodul (IM) und Kommunikationsprozessor (CP)
Bedienfeld mit SPS (graue Elemente in der Mitte). Die Einheit besteht aus einzelnen Elementen, von links nach rechts; Netzteil , Controller, Relaiseinheiten für Ein- und Ausgang

Der Hauptunterschied zu den meisten anderen Computergeräten besteht darin, dass SPS für härtere Bedingungen (wie Staub, Feuchtigkeit, Hitze, Kälte) vorgesehen und daher tolerant sind, während sie gleichzeitig umfangreiche Ein-/Ausgabe (E/A) zum Anschließen der SPS bieten zu Sensoren und Aktoren . Die SPS-Eingabe kann einfache digitale Elemente wie Endschalter , analoge Variablen von Prozesssensoren (wie Temperatur und Druck) und komplexere Daten wie die von Positionierungs- oder Bildverarbeitungssystemen umfassen. PLC - Ausgang kann Elemente wie Anzeigelampen, Sirenen, umfasst Elektromotoren , pneumatische oder hydraulische Zylinder, magnetische Relais , Solenoide oder analoge Ausgänge. Die Eingangs-/Ausgangsanordnungen können in eine einfache SPS eingebaut sein, oder die SPS kann externe E/A-Module aufweisen, die an einen Feldbus oder ein Computernetzwerk angeschlossen sind, das an die SPS angeschlossen wird.

Die Funktionalität der SPS hat sich im Laufe der Jahre weiterentwickelt und umfasst sequentielle Relaissteuerung, Bewegungssteuerung, Prozesssteuerung , verteilte Steuerungssysteme und Vernetzung . Die Datenverarbeitungs-, Speicher-, Verarbeitungsleistungs- und Kommunikationsfähigkeiten einiger moderner SPS entsprechen ungefähr denen von Desktop-Computern . SPS-ähnliche Programmierung in Kombination mit Remote-I/O-Hardware ermöglichen es einem Universal-Desktop-Computer, einige SPS in bestimmten Anwendungen zu überlappen. Desktop-Computer-Controller wurden in der Schwerindustrie nicht allgemein akzeptiert, da die Desktop-Computer auf weniger stabilen Betriebssystemen als SPS laufen und weil die Desktop-Computer-Hardware normalerweise nicht auf die gleiche Toleranz gegenüber Temperatur, Feuchtigkeit, Vibration und Langlebigkeit ausgelegt ist wie die in SPSen verwendeten Prozessoren. Betriebssysteme wie Windows eignen sich nicht für eine deterministische Logikausführung, so dass die Steuerung möglicherweise nicht immer mit der von SPS erwarteten zeitlichen Konsistenz auf Änderungen des Eingangszustands reagiert. Desktop-Logikanwendungen finden in weniger kritischen Situationen Verwendung, wie z. B. in der Laborautomatisierung und in kleinen Einrichtungen, in denen die Anwendung weniger anspruchsvoll und kritisch ist.

Basisfunktionen

Die grundlegendste Funktion einer programmierbaren Steuerung besteht darin, die Funktionen elektromechanischer Relais zu emulieren. Diskreten Eingängen wird eine eindeutige Adresse zugewiesen, und ein SPS-Befehl kann testen, ob der Eingangszustand ein- oder ausgeschaltet ist. Genauso wie eine Reihe von Relaiskontakten eine logische UND-Funktion ausführt und keinen Strom durchlässt, es sei denn, alle Kontakte sind geschlossen, so aktiviert eine Reihe von "Prüfen, wenn ein"-Befehlen das Ausgangsspeicherbit, wenn alle Eingangsbits eingeschaltet sind. In ähnlicher Weise führt ein paralleler Befehlssatz ein logisches ODER durch. In einem elektromechanischen Relaisschaltplan wird eine Gruppe von Kontakten, die eine Spule steuern, als "Sprung" eines "Kontaktplans" bezeichnet, und dieses Konzept wird auch verwendet, um die SPS-Logik zu beschreiben. Einige SPS-Modelle begrenzen die Anzahl von seriellen und parallelen Befehlen in einem "Sprung" der Logik. Der Ausgang jedes Strompfads setzt oder löscht ein Speicherbit, das einer physikalischen Ausgangsadresse zugeordnet sein kann oder das eine "interne Spule" ohne physikalische Verbindung sein kann. Solche Innenspulen können beispielsweise als gemeinsames Element in mehreren separaten Sprossen verwendet werden. Im Gegensatz zu physischen Relais kann in einem SPS-Programm normalerweise unbegrenzt auf einen Eingang, Ausgang oder eine interne Spule verwiesen werden.

Einige SPS erzwingen eine strikte Ausführungsreihenfolge von links nach rechts und von oben nach unten zur Auswertung der Strompfadlogik. Dies unterscheidet sich von elektromechanischen Relaiskontakten, die in einer ausreichend komplexen Schaltung den Strom je nach Konfiguration der umgebenden Kontakte entweder von links nach rechts oder von rechts nach links durchlassen können. Die Beseitigung dieser "Schleichenpfade" ist je nach Programmierstil entweder ein Bug oder ein Feature.

Fortgeschrittenere Befehle der SPS können als Funktionsblöcke implementiert werden, die bei Aktivierung durch einen logischen Eingang eine Operation ausführen und die Ausgänge erzeugen, um beispielsweise den Abschluss oder Fehler zu signalisieren, während intern Variablen manipuliert werden, die möglicherweise nicht der diskreten Logik entsprechen.

Kommunikation

SPS verwenden eingebaute Ports wie USB , Ethernet , RS-232 , RS-485 oder RS-422 , um mit externen Geräten (Sensoren, Aktoren) und Systemen (Programmiersoftware, SCADA , HMI ) zu kommunizieren . Die Kommunikation erfolgt über verschiedene industrielle Netzwerkprotokolle wie Modbus oder EtherNet/IP . Viele dieser Protokolle sind herstellerspezifisch.

SPS, die in größeren E/A-Systemen verwendet werden, können eine Peer-to-Peer (P2P)-Kommunikation zwischen den Prozessoren haben. Dadurch können separate Teile eines komplexen Prozesses individuell gesteuert werden, während sich die Subsysteme über die Kommunikationsverbindung koordinieren können. Diese Kommunikationsverbindungen werden auch häufig für HMI- Geräte wie Tastaturen oder PC- Arbeitsplätze verwendet.

Früher boten einige Hersteller dedizierte Kommunikationsmodule als Zusatzfunktion an, bei denen der Prozessor keine Netzwerkverbindung eingebaut hatte.

Benutzeroberfläche

Bedienfeld mit einer SPS-Benutzeroberfläche für die Regelung des thermischen Oxidationsmittels .

SPSen müssen möglicherweise zum Zwecke der Konfiguration, der Alarmmeldung oder der alltäglichen Steuerung mit Personen interagieren. Dazu wird eine Mensch-Maschine-Schnittstelle (HMI) verwendet. HMIs werden auch als Mensch-Maschine-Schnittstellen (MMIs) und grafische Benutzeroberflächen (GUIs) bezeichnet. Ein einfaches System kann Knöpfe und Lichter verwenden, um mit dem Benutzer zu interagieren. Textdisplays stehen ebenso zur Verfügung wie grafische Touchscreens. Komplexere Systeme verwenden eine auf einem Computer installierte Programmier- und Überwachungssoftware, wobei die SPS über eine Kommunikationsschnittstelle verbunden ist.

Ablauf eines Scanzyklus

Eine SPS arbeitet in einem Programmzyklus, in dem sie ihr Programm wiederholt abarbeitet. Der einfachste Scanzyklus besteht aus 3 Schritten:

  1. Eingänge lesen,
  2. das Programm ausführen,
  3. Ausgänge schreiben.

Das Programm folgt der Reihenfolge der Anweisungen. Der Prozessor benötigt typischerweise eine Zeitspanne von mehreren zehn Millisekunden, um alle Anweisungen auszuwerten und den Status aller Ausgänge zu aktualisieren. Wenn das System dezentrale E/A enthält – zum Beispiel ein externes Rack mit E/A-Modulen – führt dies zu zusätzlicher Unsicherheit in der Reaktionszeit des SPS-Systems.

Mit der Weiterentwicklung der SPS wurden Methoden entwickelt, um die Reihenfolge der Kontaktplanausführung zu ändern, und Unterprogramme wurden implementiert. Diese verbesserte Programmierung könnte verwendet werden, um Scanzeit für Hochgeschwindigkeitsprozesse zu sparen; zum Beispiel könnten Teile des Programms, die nur zum Einrichten der Maschine verwendet werden, von den Teilen getrennt werden, die für den Betrieb mit höherer Geschwindigkeit erforderlich sind. Neuere SPS haben jetzt die Möglichkeit, das Logikprogramm synchron mit der IO-Abfrage auszuführen. Das bedeutet, dass IO im Hintergrund aktualisiert wird und die Logik während der Logikabfrage nach Bedarf Werte liest und schreibt.

E/A-Module für spezielle Zwecke können verwendet werden, wenn die Zykluszeit der SPS zu lang ist, um eine vorhersehbare Leistung zu ermöglichen. Präzisions-Zeitmessmodule oder Zählermodule für den Einsatz mit Drehgebern werden dort eingesetzt, wo die Abtastzeit zu lang wäre, um zuverlässig Impulse zu zählen oder die Drehrichtung eines Drehgebers zu erkennen. Dies ermöglicht es selbst einer relativ langsamen SPS, die gezählten Werte noch zur Steuerung einer Maschine zu interpretieren, da die Akkumulation der Impulse von einem dedizierten Modul durchgeführt wird, das von der Geschwindigkeit der Programmausführung nicht beeinflusst wird.

Sicherheit

In seinem Buch aus dem Jahr 1998 wies EA Parr darauf hin, dass, obwohl die meisten programmierbaren Steuerungen physische Schlüssel und Passwörter erfordern, das Fehlen strenger Zugangs- und Versionskontrollsysteme sowie einer leicht verständlichen Programmiersprache es wahrscheinlich macht, dass unbefugte Änderungen an Programmen vorgenommen werden wird passieren und unbemerkt bleiben.

Vor der Entdeckung des Computerwurms Stuxnet im Juni 2010 wurde der Sicherheit von SPS wenig Aufmerksamkeit geschenkt. Moderne speicherprogrammierbare Steuerungen enthalten im Allgemeinen ein Echtzeit-Betriebssystem, das ähnlich anfällig für Exploits sein kann wie Desktop-Betriebssysteme wie Microsoft Windows . SPS können auch angegriffen werden, indem sie die Kontrolle über einen Computer erlangen, mit dem sie kommunizieren. Seit 2011 sind diese Bedenken gewachsen, da die Vernetzung in der SPS-Umgebung, die die zuvor getrennten Fabriknetzwerke und Büronetzwerke verbindet, immer häufiger wird.

Im Februar 2021 hat Rockwell Automation eine kritische Sicherheitslücke veröffentlicht, die seine Logix-Steuerungsfamilie betrifft. Der geheime kryptografische Schlüssel, der verwendet wird, um die Kommunikation zwischen der SPS und der Workstation zu überprüfen, kann aus der Programmiersoftware Studio 5000 Logix Designer extrahiert und verwendet werden, um den Programmcode und die Konfiguration der angeschlossenen Steuerung aus der Ferne zu ändern. Die Schwachstelle wurde auf der CVSS-Schwachstellenskala mit einem Schweregrad von 10 von 10 bewertet . Zum Zeitpunkt des Schreibens bestand die Abschwächung der Schwachstelle darin , den Netzwerkzugriff auf betroffene Geräte einzuschränken .

Sicherheits-SPS

In den letzten Jahren sind "Sicherheits"-SPS populär geworden, entweder als eigenständige Modelle oder als funktions- und sicherheitsbewertete Hardware, die zu bestehenden Steuerungsarchitekturen ( Allen-Bradley Guardlogix, Siemens F-Serie usw.) hinzugefügt wird . Diese unterscheiden sich von herkömmlichen SPS-Typen dadurch, dass sie für sicherheitskritische Anwendungen geeignet sind, für die SPS traditionell durch fest verdrahtete Sicherheitsrelais und Speicherbereiche für die Sicherheitsanweisungen ergänzt werden. Der Sicherheitsstandard ist der SIL . Beispielsweise kann eine Sicherheits-SPS verwendet werden, um den Zugang zu einer Roboterzelle mit Schlüsseleingriff zu kontrollieren , oder um die Abschaltreaktion auf einen Notstopp einer Förderband-Produktionslinie zu verwalten. Solche PLCs haben typischerweise einen eingeschränkten regulären Befehlssatz, der durch sicherheitsspezifische Befehle ergänzt wird, die entworfen sind, um mit Not-Aus, Lichtvorhängen usw. zu kommunizieren. Die Flexibilität, die solche Systeme bieten, hat zu einem raschen Anstieg der Nachfrage nach diesen Controllern geführt.

SPS im Vergleich zu anderen Steuerungen

SPS in einer Schalttafel installiert
Leitstelle mit einer SPS für eine RTO

SPS sind an eine Reihe von Automatisierungsaufgaben gut angepasst . Dies sind typischerweise industrielle Prozesse in der Fertigung, bei denen die Kosten für die Entwicklung und Wartung des Automatisierungssystems im Verhältnis zu den Gesamtkosten der Automatisierung hoch sind und bei denen Änderungen am System während seiner Betriebslebensdauer zu erwarten wären. SPS enthalten Eingabe- und Ausgabegeräte, die mit industriellen Pilotgeräten und Steuerungen kompatibel sind; Es ist nur wenig elektrisches Design erforderlich, und das Designproblem konzentriert sich darauf, die gewünschte Abfolge von Operationen auszudrücken. SPS-Anwendungen sind in der Regel hochgradig kundenspezifische Systeme, daher sind die Kosten einer kompakten SPS im Vergleich zu den Kosten eines spezifischen kundenspezifischen Controller-Designs gering. Bei Massenware hingegen sind kundenspezifische Steuerungen wirtschaftlich. Dies liegt an den geringeren Kosten der Komponenten, die anstelle einer "generischen" Lösung optimal gewählt werden können und bei denen sich die einmaligen Engineeringkosten auf Tausende oder Millionen von Einheiten verteilen.

Programmierbare Steuerungen werden häufig in der Bewegungs-, Positionierungs- oder Drehmomentsteuerung verwendet. Einige Hersteller produzieren Bewegungssteuerungseinheiten, die in die SPS integriert werden, sodass G-Code (mit einer CNC- Maschine) verwendet werden kann, um Maschinenbewegungen anzuweisen.

SPS-Chip / Embedded Controller

Nano ACE PLC & Chip PLC für kleine Maschinenbauer / Kleine oder mittlere Stückzahlen.

Für kleine Maschinen mit geringem oder mittlerem Volumen. SPS, die SPS-Sprachen wie Ladder, Flow-Chart/Grafcet usw. ausführen können. Ähnlich wie herkömmliche SPS, aber ihre geringe Größe ermöglicht es Entwicklern, sie ohne Programmierkenntnisse in kundenspezifische Leiterplatten wie einen Mikrocontroller zu konstruieren Sprache, die einfach zu verwenden, zu ändern und zu pflegen ist. Es liegt zwischen der klassischen SPS / Mikro-SPS und den Mikrocontrollern.

Cam-Timer

Für hohe Stückzahlen oder sehr einfache feste Automatisierungsaufgaben kommen unterschiedliche Techniken zum Einsatz. Zum Beispiel würde eine billige Haushaltsgeschirrspülmaschine von einem elektromechanischen Nockenschaltuhr gesteuert , der nur wenige Dollar in Produktionsmengen kostet.

Mikrocontroller

Ein Mikrocontroller- basiertes Design wäre angemessen, wenn Hunderte oder Tausende von Einheiten produziert werden und so die Entwicklungskosten (Design von Netzteilen, Ein-/Ausgangshardware sowie erforderliche Tests und Zertifizierungen) auf viele Verkäufe verteilt werden können und wo das Ende -user müsste das Steuerelement nicht ändern. Automobilanwendungen sind ein Beispiel; Millionen von Einheiten werden jedes Jahr gebaut, und nur sehr wenige Endbenutzer ändern die Programmierung dieser Controller. Einige Spezialfahrzeuge wie Transitbusse verwenden jedoch kostengünstig SPS anstelle von kundenspezifischen Steuerungen, da die Stückzahlen gering sind und die Entwicklungskosten unwirtschaftlich wären.

Einplatinencomputer

Sehr komplexe Prozesssteuerungen, wie sie in der chemischen Industrie verwendet werden, können Algorithmen und Leistung erfordern, die selbst Hochleistungs-SPS übersteigen. Sehr schnelle oder präzise Steuerungen können auch kundenspezifische Lösungen erfordern; zum Beispiel Flugsteuerungen für Flugzeuge. Für sehr anspruchsvolle Steuerungsanwendungen, bei denen die hohen Entwicklungs- und Wartungskosten getragen werden können, können Einplatinencomputer mit halb-kundenspezifischer oder vollständig proprietärer Hardware gewählt werden. "Soft-PLCs", die auf Desktop-Computern ausgeführt werden, können mit industrieller E/A-Hardware verbunden werden, während sie Programme innerhalb einer Version von kommerziellen Betriebssystemen ausführen, die für Prozesssteuerungsanforderungen angepasst sind.

Die steigende Popularität von Single Board Computern hat auch Einfluss auf die Entwicklung von SPS. Herkömmliche SPSen sind im Allgemeinen geschlossene Plattformen , aber einige neuere SPSen (zB ctrlX von Bosch Rexroth , PFC200 von Wago , PLCnext von Phoenix Contact und Revolution Pi von Kunbus) bieten die Funktionen traditioneller SPSen auf einer offenen Plattform .

PID-Regler

PLCs können eine Logik für eine analoge Rückkopplungsregelschleife mit einer Variablen umfassen, einen PID-Regler . Eine PID-Schleife könnte beispielsweise verwendet werden, um die Temperatur eines Herstellungsprozesses zu steuern. Früher wurden SPS in der Regel mit nur wenigen analogen Regelkreisen konfiguriert; Wo Prozesse Hunderte oder Tausende von Schleifen erforderten, würde stattdessen ein verteiltes Kontrollsystem (DCS) verwendet. Da SPS immer leistungsfähiger geworden sind, verwischt sich die Grenze zwischen DCS- und SPS-Anwendungen.

Programmierbare Logikrelais (PLR)

In den letzten Jahren haben sich kleine Produkte, die als programmierbare Logikrelais (PLRs) oder intelligente Relais bezeichnet werden, verbreitet und akzeptiert. Diese ähneln SPS und werden in der Leichtindustrie eingesetzt, wo nur wenige E/A-Punkte benötigt werden und geringe Kosten erwünscht sind. Diese kleinen Geräte werden in der Regel von mehreren Herstellern in einer gemeinsamen physischen Größe und Form hergestellt und von den Herstellern größerer SPS gebrandmarkt, um ihre Low-End-Produktpalette zu vervollständigen. Die meisten davon haben 8 bis 12 diskrete Eingänge, 4 bis 8 diskrete Ausgänge und bis zu 2 analoge Eingänge. Die meisten dieser Geräte verfügen über einen winzigen LCD-Bildschirm in Briefmarkengröße, um eine vereinfachte Kontaktplanlogik (nur ein sehr kleiner Teil des Programms ist zu einem bestimmten Zeitpunkt sichtbar) und den Status der E/A-Punkte anzuzeigen, und normalerweise werden diese Bildschirme von einem 4-Wege-Wipptaste plus vier weitere separate Tasten, ähnlich den Tasten einer Videorecorder-Fernbedienung, die zum Navigieren und Bearbeiten der Logik verwendet werden. Die meisten haben einen kleinen Stecker für den Anschluss über RS-232 oder RS-485 an einen PC, so dass Programmierer einfache Anwendungen in Allzweck-Betriebssystemen wie MS Windows, macOS oder Linux mit benutzerfreundlichen (G)UIs zum Programmieren verwenden können anstatt dazu gezwungen zu werden, das winzige LCD- und Drucktasten-Set zu verwenden. Im Gegensatz zu regulären SPS, die normalerweise modular und stark erweiterbar sind, sind die PLRs normalerweise nicht modular oder erweiterbar, aber ihr Preis kann zwei Größenordnungen niedriger sein als der einer SPS, und sie bieten dennoch ein robustes Design und eine deterministische Ausführung der Logik.

Eine Variante von SPS, die an entfernten Standorten verwendet wird, ist die Remote Terminal Unit oder RTU. Eine RTU ist normalerweise eine robuste SPS mit geringem Stromverbrauch, deren Hauptfunktion darin besteht, die Kommunikationsverbindungen zwischen dem Standort und dem zentralen Kontrollsystem (typischerweise SCADA ) oder in einigen modernen Systemen "The Cloud" zu verwalten. Im Gegensatz zur Fabrikautomatisierung mit Hochgeschwindigkeits- Ethernet sind Kommunikationsverbindungen zu entfernten Standorten oft funkbasiert und weniger zuverlässig. Um der verringerten Zuverlässigkeit Rechnung zu tragen, puffert die RTU Nachrichten oder schaltet auf alternative Kommunikationspfade um. Beim Puffern von Nachrichten versieht die RTU jede Nachricht mit einem Zeitstempel, sodass eine vollständige Historie der Standortereignisse rekonstruiert werden kann. RTUs als SPS verfügen über eine breite Palette von E/A und sind vollständig programmierbar, typischerweise mit Sprachen aus dem IEC 61131-3- Standard, der für viele SPS, RTUs und DCSs gebräuchlich ist. An entfernten Standorten ist es üblich, eine RTU als Gateway für eine SPS zu verwenden, wo die SPS die gesamte Standortsteuerung durchführt und die RTU die Kommunikation verwaltet, Ereignisse mit Zeitstempeln stempelt und Zusatzgeräte überwacht. An Standorten mit nur einer Handvoll E/A kann die RTU auch die Standort-SPS sein und sowohl Kommunikations- als auch Steuerungsfunktionen ausführen.

Siehe auch

Verweise

Literaturverzeichnis

Weiterlesen