SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3...

153
Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik SPS und Kompaktregler WS 2009/2010 Technische Universität Dresden Professur für Prozessleittechnik

Transcript of SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3...

Page 1: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

SPS und Kompaktregler

WS 2009/2010Technische Universität DresdenProfessur für Prozessleittechnik

Page 2: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 2TU Dresden, 13.10.2009

• Erarbeiten von Automatisierungslösungen auf Basis einer speicherprogrammierbaren Steuerung

• Auswahl einer für die jeweilige Aufgabenstellung geeigneten, kosteneffizienten SPS

• Konzeption von Logik- und Ablaufsteuerungen unter Rückgriff auf bewährte Lösungsmuster

• Aufbau, Auswahl, Anschaltung und Parametrierung eines Regelungsalgorithmus auf einer leistungs-fähigen Steuerung oder einem Kompaktregler

Ziele

Page 3: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 3TU Dresden, 13.10.2009

Übersicht

• Speicherprogrammierbare Steuerung (SPS)– Aufgaben von Steuerungen– Funktionsweise und Aufbau– Konfiguration und Programmierung– Aktuelle Trends

• Kompaktregler– Aufgaben von Kompaktreglern– Funktionsweise und Aufbau– Konfiguration und Programmierung

• Introduction to Fuzzy Modelling & Control (Englisch)– Gastvorlesung Engin Yeşil

Page 4: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Teil 1 : SPS

Page 5: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 5TU Dresden, 13.10.2009

Beispiel 1: Turboverdichter(aus Stohrmann 2004)

• Abschaltung– Enddruck hoch (PZ+ 1)– Saugdruck tief (PZ- 1)– Öldruck tiefst (PS-Z-- 3)– Füllstand tief (LZ+ 1)– Durchfluss tief (FZ- 1)

• Einschalten Hilfsölpumpe– Öldruck tief (PS-Z-- 3)

• Einschalten verriegeln– TV zu heiß (TA+Z++ 1)– Öl zu kalt (TZ- 2)– Umgang zu (GZ- 1)

Page 6: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 6TU Dresden, 13.10.2009

Beispiel 3: Industrieofen

• Betriebstemperatur unter 650°C – Keine sichere Zündung nach kurzzeitigem Ausfall vor der

Bildung eines explosiven Gemisches

• Gas- und Luftmangelsicherung– PZ- 1– PZ- 2

• Flammenwächter– XZ- 1; 2 von 2

• Rückzündungsvermeidung– QZ+ 1; 1 von 2

Page 7: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 7TU Dresden, 13.10.2009

Elemente von Sicherungseinrichtungen

Aufnehmer, Messsignalkanal, MessumformerGrenzsignalgeber, SignalverarbeitungMeldekanal mit Meldern, Auslösekanal mit Auslösern

Page 8: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 8TU Dresden, 13.10.2009

Verbindungsprogrammierte Steuerung

• Verdrahtung von– Relais– Schütz

• Vorteil– Parallele Verarbeitung

aller Signale

• Nachteil:– Verdrahtung = Programm – Änderung der Logik:

Änderung der Verdrahtung notwendig!

K1

K1 K1S1

S2

S3

S4

H1

Page 9: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 9TU Dresden, 13.10.2009

Speicherprogrammierbare Steuerung (SPS)

• Rechner mit Ein/Ausgängen

• Rechentechnische Verknüpfung der Signale

• Nachteile:– Nur quasiparallele

Abarbeitung möglich (CPU=SISD)

• Vorteile– Änderung der Logik: Lediglich Neu-programmieren des

Steuerprogramms notwendig

Automatisierungseinheit

S3S2S4S1

H1

Page 10: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 10TU Dresden, 13.10.2009

Programmbeispiel: Verknüpfung von Binärsignalen

WENN beide Eingänge E 5.2 und E 4.7 auf 1

DANN setze Ausgang A 8.5 auf 1

SONST setze Ausgang A 8.5 auf 0

Umsetzung in AWL Programmiersprache (IEC 61131)

LD %IX5.2 ; Lade Bitwert von Eingang 5.2AND %IX4.7 ; UND-Verkn. mit Eingang 4.7ST %QX8.5 ; Ergebnis nach Ausgang 8.5

Page 11: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 11TU Dresden, 13.10.2009

Definition SPS DIN EN 61131 Teil 1

„[…] Ein digital arbeitendes elektronisches System für den Einsatz in industriellen Umgebungen mit einem programmierbaren Speicher zur internen Speicherung der anwenderorientierten Steuerungsanweisungen zur Implementierung spezifischer Funktionen wie z.B. Verknüpfungssteuerung, Ablaufsteuerung, Zeit-, Zähl- und arithmetische Funktionen, um durch digitale oder analoge Eingangs- und Ausgangssignale verschiedene Arten von Maschinen und Prozessen zu steuern. […]“

Page 12: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 12TU Dresden, 13.10.2009

I&KT rund um die SPS

SPS

Aktoren Sensoren

Feldbusse

Aktoren Sensoren

SPS

VisualisierungProzeßrechner

Page 13: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Speicherprogrammierbare Steuerungen

• Befehlssatzarchitektur• Funktionsweise• Zykluszeiten

Page 14: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 14TU Dresden, 13.10.2009

Ein Blick in das Steuergerät

Page 15: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 15TU Dresden, 13.10.2009

Zyklische Funktionsweise

Initialisierung ProzessabbildAusgänge

Einlesen der Eingänge ProzessabbildEingänge

Abarbeiten von Operationen der Programmbausteine

Schreiben der AusgängeProzessabbild

Ausgänge

Typische Bearbeitungszeiten :1µs Bitoperationen2µs Wortoperationen

12µs Zeit /Zähloperationen3µs Festpunktaddition

50µs Gleitpunktaddition

Page 16: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 16TU Dresden, 13.10.2009

Prozessabbild

• Speicherbereich zur Aufnahme der Signalwerte der Ein- und Ausgänge

– Eingabewerte werden zu Beginn eingelesen, zwischenzeitliche Änderungen während Programmzyklus ignoriert!

– Ausgabewerte werden zwischengespeichert, d.h. Änderungen während der Programmabarbeitung sind nach außen nicht sichtbar!

• Manche SPSen erlauben direkten Zugriff auf die Prozesssignale

– Üblicherweise langsamer als direkter Zugriff auf PA

Page 17: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 17TU Dresden, 13.10.2009

Minimale Impulszeit, maximale Reaktionszeit

LD %IX0.1ST %QX0.1

... ...

Eingängelesen

Ausgängeschreiben

Zykluszeit

%IX0.1

%QX0.1

Worst Case Reaktionszeit= 2 x Zykluszeit

Impuls zu kurz

Page 18: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Komponenten einer modularen SPS

• Übersicht• Baugruppen• Zykluszeiten

Page 19: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 19TU Dresden, 13.10.2009

Modularer Aufbau einer SPS

CPU-Baugruppe

Eingangsbaugruppen

Ausgangsbaugruppen

Kommunikationsbaugruppen

Funktionsbaugruppen

Stromversorgung

optional

Programmier-gerät

Bedieneinheit

Page 20: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 20TU Dresden, 13.10.2009

Stromversorgung

• Bereitstellung der Betriebsspannung

– 5 / 10 / 24V

• Ggf. zusätzliche Wandler für Leistungsbaugruppen

• Batterie zur Speicherpufferung

Page 21: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 21TU Dresden, 13.10.2009

CPU-Baugruppe

Prozessor

Speicher

Schlüsselschalter

EPROM mit Programm (optional)

Speicherkarte

Programmierschnittstelle (optional)

Page 22: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 22TU Dresden, 13.10.2009

Eingabebaugruppen

• Digitaleingabebaugruppen– DC 24 V, AC 120/230 V, f < 50 Hz– Potentialtrennung mit Optokopplern– Entstörmaßnahmen– Lokale Anzeige mit Leuchtdioden

• Analogeingabebaugruppen– Spannung (+- 10V)– Strom (4 bis 20 mA)– Widerstand (0…300 Ohm)– Thermoelement (E, N, K)– Widerstandsthermometer ( Pt 100, …)– Üblicherweise Auflösung 9-15 Bit + Vorzeichen,

Messbereich, Grenzwerte parametrierbar

Page 23: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 23TU Dresden, 13.10.2009

Ausgabebaugruppen

• Digitalausgabebaugruppe– Lastspannung DC24V, AC120/230V– Spezifizierte Strombelastbarkeit– Potenzialtrennung– Lokale Anzeigen– f < 100 Hz

• Analogausgabebaugruppen– Spannung (+- 10 V)– Strom (0 bis 20 mA)– Auflösung 12-15 bit– Alarmierung bei Fehlern

Page 24: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 24TU Dresden, 13.10.2009

Kommunikationsbaugruppen

• Feldbusse (ASI, Profibus ...)

• Industrial Ethernet

• Programmierschnittstellen

• Serielle Schnittstellen – RS232, RS422, RS485– z.B. für Waagen

Page 25: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 25TU Dresden, 13.10.2009

Funktionsbaugruppen

• Positionierbaugruppen

• Reglerbaugruppen

• Nockensteuerwerke

• Zählerbaugruppen

• Uhrenbaugruppen

• Bildauswertungsmodul

• usw.

Page 26: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 26TU Dresden, 13.10.2009

Bedieneinheiten

• Operator Panels

• Touch Screens

• Text Displays

• Tastaturen

Page 27: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 27TU Dresden, 13.10.2009

Programmiergeräte

• Handprogrammiergeräte:– kleinere Projekte, z.B.

Fehlersuche, Kontrolle und Anpassung vor Ort

– überwiegend textbasierte Programmierung

• Bildschirmprogrammiergeräte– große Funktionalität– gute Debugging-Möglichkeiten– übersichtliche Darstellung– grafische Programmierung– Simulation

Page 28: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 28TU Dresden, 13.10.2009

Gibt es die SPS?

• Mehr als 100 verschiedene Hersteller

• Verschiedene Grundtypen– Modulare SPS: Wie vorgestellt, Bausteinkonzept– Kompakt SPS: alle Funktionen in einem Block– Slot SPS: SPS als Steckkarte eines Industrie PCs– Soft SPS: SPS als Software auf einem Industrie PC,

Ankopplung an Prozess über IO-Karten

• Auswahlkriterien– Preis (Anschaffung, Projektierung, Wartung, Ersatz)– Funktionalität (Leistung µP, Baugruppen, Erweiterbarkeit,

Ausfallsicherheit, Zertifizierbar)– Integration (CAE, Programmiersystem, Kommunikation)

Page 29: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 29TU Dresden, 13.10.2009

Herstellerübersicht: Industrie PC als SPS

www.beck-ipc.com

www.festo.de

www.ferrocontrol.de

Page 30: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 30TU Dresden, 13.10.2009

Herstellerübersicht 2

www.keyence.com www.kuhnke.de

Page 31: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 31TU Dresden, 13.10.2009

Herstellerübersicht 3

www.schneiderelectric.com www.phoenix-contact.de

Page 32: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 32TU Dresden, 13.10.2009

Herstellerübersicht 4

www.siemens.dewww.moeller.net

Page 33: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 33TU Dresden, 13.10.2009

Kompatibilitätsprobleme

Viele (>100) Hersteller von SPS, mit proprietären Standards, die Vor- und Nachteile bieten.

Nachteil: Anwender müssen häufig mit SPS-Systemen verschiedener Hersteller gleichzeitig arbeiten können

Schulung, Fehler, …

Kommunikation verschiedener SPS-Systeme untereinander nur bedingt möglich

Kompatibilität zwischen alten und neuen Systemen?

Page 34: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 34TU Dresden, 13.10.2009

Lösungsansatz IEC 61131

IEC 61131 (DIN EN 61131) legt in 5 Blättern eine weltweite einheitliche Basis der SPS-Technik fest.

– Begriffsbestimmungen und Funktionsmerkmale– Elektrische, mechanische und funktionelle Anforderungen– Fünf Programmiersprachen– Anwenderrichtlinien für alle Projektphasen– Kommunikation von SPSen unterschiedlicher Hersteller

Die Implementierung der Norm ist bei den Herstellern noch nicht abgeschlossen !

PLCOpen – Gesellschaft zur Förderung herstellübergreifender PLC-Programmierung

Page 35: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 35TU Dresden, 13.10.2009

Ein wenig Geschichte…

(aus John & Tiegelkamp, 2001)

Page 36: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 36TU Dresden, 13.10.2009

61131-3 SPS-SoftwaremodellKonfiguration

RessourceRessourceTask Task

Programm Programm

FB FB

Task Task

Programm Programm

FB FB

Global und direkt dargestellte Variablen und Instanz -spezifische Initialisierungen

Zugriffspfad

Pfad des Variablenzugriffs

Variable

Pfad der Ausführungs-Steuerung

FunktionsbausteinFB

Page 37: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 37TU Dresden, 13.10.2009

61131-3 Softwaremodell

Konfiguration

RessourceRessourceTask Task

Programm Programm

FB FB

Task Task

Programm Programm

FB FB

Global und direkt dargestellte Variablen und Instanz -spezifische Initialisierungen

Zugriffspfad

Pfad des Variablenzugriffs

Variable

Pfad der Ausführungs -Steuerung

FunktionsbausteinFB

• Konfiguration: – SPS-System, enthält ggf. mehrere Ressourcen (~SPS)

• Ressource: – Signalverarbeitungsfkt incl. Sensor/Aktorschnittstellen

(~CPU+IO-Bus)– Enthält ggf. mehrere Programme

• Programm – wird unter Steuerung von Tasks ausgeführt– Kann mehrere Funktionsbausteine oder andere

Sprachelemente enthalten

Page 38: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 38TU Dresden, 13.10.2009

61131-3 Softwaremodell: Starten/Stoppen von Konfiguration und/oder Ressourcen

• Starten einer Konfiguration– Schritt 1: Initialisierung der globalen Variablen– Schritt 2: Starten aller Ressourcen

• Starten einer Ressource– Schritt 1: Initialisierung aller Variablen der Res.– Schritt 2: Freigabe aller Tasks der Res.

• Stoppen einer Ressource– Sperren aller Tasks

• Stoppen einer Konfiguration– Stoppen aller Ressourcen

Page 39: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 39TU Dresden, 13.10.2009

Anfangswerte der Variablen beim Starten eines Konfigurationselements

• Verschiedene Anfangswerte möglich:– gepufferter Wert (als das KE gestoppt wurde - RETAIN),– anwender-spezifizierten Anfangswert,– voreingestellter typ-spezifischer Anfangswert

• Regeln zur Ermittlung des Anfangswertes– Warmstart: gepufferte V nehmen gepufferte Werte an– Kaltstart: gepufferte V nehmen anw-spez Wert ein, wenn

nicht definiert typ-spez Wert– Nichtgepufferte V nehmen anw-spez Wert ein, wenn nicht

definiert typ-spez Wert– Eingangsvariblen werden implementierungsabhängig

initialisiert

Page 40: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 40TU Dresden, 13.10.2009

Wiederanlauf nach Spannungsausfall oder Störung

• Kaltstart: Alle dynamischen Daten (Variablen, Register, Zähler, Zeitglieder, Prozessabbid) werden auf definierten Zustand zurückgesetzt

– Automatisch oder manuell

• Warmstart: Wiederanlauf von einem vorbestimmten Zustand des Anwendungsprogramms und vorbestimmer Menge an Rest-Daten

– Status-Merker zur programmtechnischen Berücksichtigung

• Heißstart: Alle dynamischen Daten sind unverändert– Netzunabhängige Echtzeituhr, um Zeit seit Stromausfall

bestimmen zu können

Page 41: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 41TU Dresden, 13.10.2009

Programm-organisationseinheiten

Programm (PRG): Hauptprogramm, Zuordnung der Peripherie und der globalen Variablen

– Kann FB und FC aufrufen

Funktionsbaustein (FB): Baustein mit Eingangs-, Ausgangs- und statischen Variablen (= Gedächtnis)

– Kann FB und FC aufrufen

Funktion (FC): Unterprogramm mit Eingangs- und Ausgangsvariablen

– Darf keine internen Zustandgrößen besitzen– Kann weitere FC aufrufen

Page 42: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 42TU Dresden, 13.10.2009

Textbasiert Grafisch

Anweisungsliste (AWL)

Strukturierter Text (ST)

Kontaktplan (KOP)

Funktionsbausteinsprache (FBS)

Ablaufsprache (AS)

IEC 61131-3 definiert 5 Programmiersprachen:

Page 43: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 43TU Dresden, 13.10.2009

Gemeinsame Elemente der Programmiersprachen

• Zeichensatz– Textelemente Saplten 002-007 der ISO/IEC-646 IRV– Zusätzlich Kleinbuchstaben (aber nicht case sensitiv), #

oder £, $ oder ¤, | oder !

• Bezeichner: – Folge von Buchstaben, Ziffern und Unterstrich– Muss mit Buchstaben oder Unterstrich beginnnen– Mehrere oder angehängte Unterstriche sind nicht zulässig– Mindestens sechs Zeichen werden zur eindeutigen

Unterscheidung genutzt, Maximum impl.-abh.

• Leerzeichen, Kommentare (* *), Numerische Literale, Zeichenfolgeliteral, Zeitdauer

Page 44: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 44TU Dresden, 13.10.2009

Zahlen und Zeitdauerliterale

• Zahlen– Unterstriche zur Strukturierung erlaubt

• 100_000_000 3.14159_26– Basis 2/8/16 Literale möglich

• 2#1111_1111 8#377 16#ff– Literale mit Typangaben

• BOOL#0 UINT#16#FF

• Zeitdauern– kurzes/langes Präfix

• TIME#14ms T#14.7s– mit/ohne Unterstrichen

• t#5d14h12m18s3.5ms t#5d_14h_12m_18s_3.5ms

Page 45: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 45TU Dresden, 13.10.2009

Elementare Datentypen

• Wahrheitswert: BOOL1

• Ganzzahl mit/ohne Vorzeichen: SINT8, INT16, DINT32, LINT64 / USINT8, UINT16, UDINT32, ULINT64

• Reele Zahl: REAL32, LREAL64

• Zeiten: TIME, DATE, TIME_OF_DAY/TOD, DATE_AND_TIME/DT

• Variabel lange Zeichenkette: STRING8, WSTRING16

• Bit-Folgen: BYTE8, WORD16, DWORD32, LWORD64

Page 46: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 46TU Dresden, 13.10.2009

Hierarchie der allgemeinen Datentypen(zur Festlegung von Ein/Ausgängen von POE)

ANY+---- ANY_DERIVED+---- ANY_ELEMENTARY +---- ANY_MAGNITUDE | +---- ANY_NUM | | +---- ANY_REAL | | | +---- LREAL, REAL | | | | | +---- ANY_INT | | +---- LINT, DINT, INT, ULINT, SINT,

| | ULDINT, UDINT, UINT, USINT | +---- TIME | +---- ANY_BIT | +---- LWORD, DWORD, WORD, BYTE, BOOL | +---- ANY_STRING | +---- STRING, WSTRING | +---- ANY_DATE +---- DATE_AND_TIME, DATE, TIME_OF_DAY

Page 47: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 47TU Dresden, 13.10.2009

Abgeleitete Datentypen Anwender- oder herstellerdefinierte Datentypen

• TYPE Bezeichner : ... END_TYPE• Aufzählung

– TYPE A_SIG : (SINGLE, DIFF) ; END_TYPE

• Bereich– TYPE A_DATA : INT (-32000..32512) ; END_TYPE

• Feld– TYPE A_8IN : ARARY [1..16] OF A_DATA; END_TYPE

• Struktur– TYPE Bezeichner : STRUCT ... END_STRUCT; END_TYPE– Kann geschachtelt werden

Page 48: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 48TU Dresden, 13.10.2009

Einzelelementvariablen(Verwendung nur in PRG,FB zulässig!)

&I0.1

I0.0&Schalter 1

Schalter 2Q1.1 Lampe

% Q X 7.3 Adresse der Variablen

X (Einzel-)Bit-Größe kein (Einzel-)Bit-GrößeB Byte(8 Bit)-GrößeW Word(16 Bit)-GrößeD Doppelwort(32 Bit)-GrößeL Langwort(64 Bit)-Größe

Speicherort I EingangQ AusgangM Merker

Kennung einer direkten Variablen (Optional)

Page 49: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 49TU Dresden, 13.10.2009

Weitere Details DIN EN 61131→

• Speicherprogrammierbare Steuerungen. Teil 3: Programmiersprachen (225 S.)

– viele weitere Details, Regeln und Beispiele

• Speicherprogrammierbare Steuerungen. Teil 3: Beiblatt 1. Leitlinien für die Anwendung und Implementierung von Programmiersprachen (100)

• Speicherprogrammierbare Steuerungen. Teil 1: Allgemeine Informationen

– Eigenschaften, Programmieren, Anlauf, Dokumentation, Archivierung, Stromversorgung, Verfügbarkeit & Zuverlässigkeit.

Page 50: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 50TU Dresden, 13.10.2009

Siemens STEP7 vs. IEC 61131-3

Aus TIA, Anhang II, IEC 61131:

Die Programmiersprachen KOP und FUP entsprechen den in der Norm DIN EN 61131-3 (int. IEC 61131-3) festgelegten Sprachen „Kontaktplan“ und „Funktionsbaustein-Sprache“. […]

AWL entspricht der in der Norm DIN EN 61131-3 (int. IEC 61131-3) festgelegten Sprache „Anweisungsliste“, wobei hinsichtlich der Operationen wesentliche Unterschiede bestehen. […]

Die Ablaufsprache S7-GRAPH entspricht der in der Norm DIN EN 61131-3 (int. IEC 61131-3) festgelegten Sprache „Sequential Function Chart“.

Zusätzlich S7-HiGraph (Zustandsgraphen)

Page 51: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 51TU Dresden, 13.10.2009

Textbasiert Grafisch

Anweisungsliste (AWL)

Strukturierter Text (ST)

Kontaktplan (KOP)

Funktionsbausteinsprache (FBS)

Ablaufsprache (AS)

IEC 61131-3 definiert 5 Programmiersprachen:

Page 52: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 52TU Dresden, 13.10.2009

Beispiel für alle Programmiersprachenbeispiele

• Q1.1 = ( I0.1 v I0.2 v Q1.1) I0.3 I0.4

Page 53: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 53TU Dresden, 13.10.2009

KOP (engl. Ladder Diagramm, LD, STEP7: KOP)

• Funktionen werden durch Schaltsymbole aus der Elektrotechnik dargestellt:

– Schließer, Öffner usw., die schaltbildähnlich zu Netzwerken zusammengefügt werden.

– An den Seiten befinden sich zwei Stromschienen, zwischen denen die Relaislogik liegt (90° Drehung zur Anpassung an Computer/Textschreiben)

• Programmiersprache beschränkt sich im Wesentlichen auf boolsche Signale

– Reihenschaltung: UND– Parallelschaltung: ODER– Negation: Arbeitskontakt / Ruhekontakt

Page 54: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 54TU Dresden, 13.10.2009

KOP Beispiel

( )I0.1

I0.2

Q1.1

I0.3 I0.4 Q1.1

Eingang: Schaltkontakt --| |--Ausgang: Relaisspule --( )--Negation: --|/|--

--(/)--

Page 55: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 55TU Dresden, 13.10.2009

FBS (engl. Function Block Language, FB, STEP7: FUP)

Symbolik der Digitalen-Schaltungen

• UND- , ODER-Gatter,

• INVERTIERTER Eingang, usw.

gut strukturierte und übersichtliche Programmierung bool´scher Verknüpfungen.

Grafisch anschauliche Programmierung des Informationsfluss von ganzzahligen und Gleitkomma-Operationen.

Page 56: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 56TU Dresden, 13.10.2009

FBS Beispiel

>1&

=

I0.1I0.2Q1.1

Q1.1I0.3

I0.4

Page 57: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 57TU Dresden, 13.10.2009

AWL (engl. Instruction List, IL, STEP7: AWL)

AWL: universell einsetzbare Maschinensprache, vergleichbar mit einem Assembler.

– Nach wie vor am weitesten verbreitet.– wenig Möglichkeiten zur strukturierten Programmierung.– Zum Teil unterschiedliche Operatoren und Sprachumfänge

Syntax:

[Sprungmarke:] Operator Operand [(* Text *)]

Page 58: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 58TU Dresden, 13.10.2009

AWL Beispiel

LD %IX0.1 (* Lade Eingang 0.1 in Akku *)OR %IX0.2 (* Akku=Akku oder Eingang 0.2 *)OR %QX1.1 (* Akku=Akku oder Ausgang 1.1 *)AND %IX0.3 (* Akku=Akku und Eingang 0.3 *)AND %IX0.4 (* Akku=Akku und Eingang 0.4 *)ST %QX1.1 (* Ausgang 1.1=Akku *)

Page 59: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 59TU Dresden, 13.10.2009

ST, engl. Structured Text (ST), STEP7 SCL

Pascal-ähnliche, höhere Programmiersprache

Vorteile:– sehr kompakte Formulierung– abstrakte maschinenferne Befehle– übersichtlicher Aufbau durch Anweisungsblöcke– umfangreiche, komplexe Aufgaben realisierbar

Nachteile:– Qualität des Maschinencode ist abhängig von Compiler

(Übersetzer). – Bei einigen Compilern Effizienzverlust zur Laufzeit durch

höhere Abstraktion (ST-Code i.d.R. langsamer als AWL-Code)

Page 60: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 60TU Dresden, 13.10.2009

ST Beispiele (Viele Wege führen nach Rom)

Beispiel 1:

Q1.1:=(I0.1 OR I0.2 OR Q1.1) AND I0.3 AND I0.4;

Beispiel 2:

Q1.1:=0;IF (I0.1 OR I0.2 OR Q1.1) THEN

IF (I0.3 AND I0.4) THENQ1.1:=1;

END_IF;END_IF;

Beispiel 3:

Q1.1:=((I0.1+I0.2+Q1.1)>0)*I0.3*I0.4

Page 61: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 61TU Dresden, 13.10.2009

AS (engl. Sequential Function Chart Language (SFC))

Industrielle Automatisierungsaufgaben lassen sich häufig als Sequenz einzelner Schritte darstellen.

– Die Ausführung der Schritte hängt vom Erreichen einer Bedingung ab

– Verschiedene Schritte können/müssen auch parallel ausgeführt werden

Vereinfachte Petrinetze:– Übergang von einem Schritt zu einen oder mehreren

(parallelen) folgenden Schritten erfolgt durch eine Übergangsbedingung (Transition).

– Aktionen und Transitionen werden in einer der vorgenannten Sprachen spezifiziert.

Page 62: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 62TU Dresden, 13.10.2009

AS Beispiel

S0

S1

T0

T1

I0.1

I0.2 I0.3 I0.4

I0.3

I0.4

Step 0R Q1.1

Step 1S Q1.1

S0

Page 63: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 63TU Dresden, 13.10.2009

Operationen einer SPS

Binäre Abfragen und Verknüpfungen• Negation• UND-Verknüpfung• ODER-Verknüpfung

Page 64: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 64TU Dresden, 13.10.2009

Negation

Funktion: Inversion des SignalwertsNotationen:

E A0 11 0

1E A24V 0VE A

E=A

E=!A

E=¬A

Page 65: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 65TU Dresden, 13.10.2009

Beispiel: Werkzeugbrucherkennung

Bohrerkontrolle mit Lichtschranke: Ist der Bohrer nicht abgebrochen, so wird der Lichtstrahl unter-brochen und ein Freigabesignal für den Bohrvor-gang erteilt. Im umgekehrten Fall wird die Freigabe unterdrückt.

I X 0.0Unterbrochen E=0BOOLELichtschranke

Keine Freigabe A=0

Logische Zuordnung AdresseDatentypSymbolEingangsvariable

Q X 4.0BOOLAFreigabe

Ausgangsvariable

(Bildquelle: www.renishaw.com)

Page 66: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 66TU Dresden, 13.10.2009

Implementierung in den verschiedenen Sprachen der EN ISO 61131-3

AWL LDN %IX0.0 LD %IX0.0 LD %IX0.0 ST %QX4.0 NOT STN %QX4.0 ST %QX4.0ST %QX4.0 := NOT %IX0.0FUP

KOP %IX0.0 %QX4.0 %IX0.0 %QX4.0|----|/|------( )------| |----| |------(/)------|

NOT%IX0.0 %QX4.0

Page 67: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 67TU Dresden, 13.10.2009

UND-Verknüpfung

Funktion: Der Ausgang ist 1 wenn alle Eingänge 1 sindNotationen:

E2 A0 01 0

&E1 A

24V 0V

E1

A

E100

0 01 1

11

E2 E2

A=E ∧ E2

A=E1 & E2

A =E1 E2

Page 68: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 68TU Dresden, 13.10.2009

Beispiel: optisches Schutzgitter

Die Presse führt den Arbeitshub nur aus, wenn die Lichtstrahlen nicht unterbrochen sind und der Starttaster S1 betätigt ist.

IX 0.1IX 0.2

Betätigt S1=1Nicht Unterbrochen S2=1

BOOLBOOL

S1S2

Taster StartLichtgitter

Arbeitshub K=1

Logische Zuordnung AdresseDatentypSymbolEingangsvariable

QX 4.0BOOLKPressenschütz

Ausgangsvariable

(Bildquelle: www.leuze.de)

Page 69: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 69TU Dresden, 13.10.2009

ODER-Verknüpfung

Funktion: Der Ausgang ist 1 wenn ein oder mehrere Eingänge 1 sind.

Notationen:

E2 A0 01 1

≥1E1 A

24V 0V

E1

A

E100

0 11 1

11

E2

E2A=E ∨ E2A=E1 | E2A = E1+E2

Page 70: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 70TU Dresden, 13.10.2009

Beispiel: Turbinenüberwachung

Die Alarmleuchte einer Turbine geht an, wenn die Drehzahl zu hoch oder die Lagertemperatur zu hoch oder der Kühlkreislauf ausgefallen ist

IX 0.1IX 0.2IX 0.3

n zu groß S1=0ϑ zu hoch S2=0In Betrieb S3=0

BOOLBOOLBOOL

S1S2S3

Drehzahl nLagertemperatur ϑKühlkreislauf K

Ein H=1

Logische Zuordnung AdresseDatentypSymbolEingangsvariable

QX 4.0BOOLHAlarmleuchte

Ausgangsvariable

(Bildquelle: www.leuze.de)

K

ϑ>

n>

H

Page 71: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Systementwurf für binäre Steuerungen

•Wahrheitstabelle & Normalformen•Minimierungsverfahren•(Zustandsmodelle)

Page 72: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 72TU Dresden, 13.10.2009

Wahrheitstabelle und Normalformen

Tabellarische Auflistung aller Systemzuständedes Schaltnetzes

– Üblicherweise Eingänge links, Ausgang rechts – 1 = Wahr; 0 = Falsch; X oder 0/1 = don‘t care

Disjunktive (DNF) und konjunktive Normalform (KNF)

• DNF: Alle Zeilen mit Ausgang = 1, – UND-Verknüpfung der Eingänge einer Zeile, – ODER-Verknüpfung der Zeilen

• KNF: Alle Zeilen mit Ausgang=0– ODER-Verknüpfung der Eingänge einer Zeile– UND-Verknüpfung der Zeilen

E2 A0 01 1

E100

0 11 1

11

ODER-Verknüpfung

A = E1vE2

A=E1E2vE1E2vE1E2

Page 73: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 73TU Dresden, 13.10.2009

Algebraische Minimierung

Neutrale Elemente

Reduktionsregeln

Kommutativgesetz

Assoziativgesetz

Distributivgesetz

E∨0=E E∨1=1E∧1=E E∧0=0

E∨E=E E∨E=1E∧E=E E∧E=0

E1∨E2=E2∨E1E1∧E2=E2∧E1

E1∨E2∨E3=E1∨E2∨E3=E1∨E2∨E3E1∧E2∧E3=E1∧E2∧E3=E1∧E2∧E3

E1∧E2∨E1∧E3=E1∧E2∨E3E1∨E2∧E1∨E3=E1∨E2∧E3

E1∨E1∧E2=E1E1∧E1∨E2=E1E1∧E1∨E2=E1∧E2E1∨E1∧E2=E1∨E2

Page 74: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 74TU Dresden, 13.10.2009

KVS-Diagramm

Karnaugh-Veitch-Symetrie-Diagramm: Symetrischer Aufbau einer Funktionstabelle durch wechselweises Spiegeln

Ziffern in den Zellen im Octalsystem!

Page 75: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 75TU Dresden, 13.10.2009

Zuordnung Zeilen zu Feldern

11110000X3

7654

1113101211010000AX1X2Nr

45

67

x3

Page 76: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 76TU Dresden, 13.10.2009

Grafische Minimierung

• Zusammenfassen von maximal viel 1-er Feldern:- Anzahl der Felder: Potenzen von 2, d.h. 1,2,4,8- Überlappung erlaubt- Wegen Symetrie Fortsetzung über die Ränder

0

1

!E2,!E3

111! E1

010E1

E2,!E3!E2, E3E2, E3

! E1 & E2

! E2 & E3E1 & ! E2

Page 77: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Speicherfunktionen, Zeit- und Zählerbausteine

Page 78: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 78TU Dresden, 13.10.2009

Speicherfunktion

1 (S1 dominant)

0 (S0 dominant)113

1012

0101

1 (S1 war 1)

0 (S0 war 1)000

HS0S1Nr

1

0

1

0

0

S0

0 (S0 dom.)?17,8

1?15,6

0?03,4

1102

0001

HQS1Nr

Ein/Austaster für Meldeleuchte H: Leuchte wird durch kurzeitiges Betätigen eines EIN-Tasters S1 ein, durch kurzzeitiges Betätigen eines AUS-Tasters S0 wieder ausgeschaltet werden.

Auswirkung auf H abhängig von Vorgeschichte

Einführung einer neuen Zustandsvariablen Q (für Vorgeschichte) → vollständige Funktionstabelle

Page 79: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 79TU Dresden, 13.10.2009

Disjunktive Normalform

Schütztechnik Selbsthaltung

1

0

1

0

0

S0

0 (S0 dom.)0/117,8

10/115,6

00/103,4

1102

0001

HHS1Nr

≥1&

H

S1

S0

L1

S0

S1

K1

N

HK1

K1

Alle Elemente H=1

Nach Minimierung

N

H=S1S0HvS1S0HvS1S0H

H=HS0∨S1S0=S0H∨S1

Page 80: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 80TU Dresden, 13.10.2009

Hausübung: Sammelbecken

Der Inhalt eines Beckens wird mit zwei Schwimmschalter überwacht. Übersteigt der Level den oberen Signalgeber S2 (S2=1), so ist über Ablaufventil Y vollständig zu Leeren. Ist das Becken entleert, meldet der untere Schwimmschalter S1=0 und das Ventil Y ist zu schließen.

• Stellen Sie eine Zuordnungstabelle der Ein- und Ausgänge auf

• Stellen Sie den Zusammenhang zwischen Eingangsvariablen S1, S2 und Y in einer Funktionstabelle dar

• Lesen Sie die Schaltfunktion ab und Minimieren sie ggf.

• Implementieren Sie die Schaltfunktion als FUP/KOP/AWL

S2

S1

Y

Page 81: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 81TU Dresden, 13.10.2009

RS-Speicherbaustein

≥1&

H

S1

S0HS

R

S

Q R Q

S1

S0 H

H=S0 H∨S1

RS

Page 82: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 82TU Dresden, 13.10.2009

Verriegelungen

• Gegenseitiges Verriegeln: Zwei Speicher sind nicht gleichzeitig „ein“

– GVS) Verriegelung über Setz-Eingang (&,n)– GVR) Verriegelung über Rücksetzeingang (≥1)

• Reihenfolgeverriegelung: Damit eine Speicher-funktion gesetzt werden kann, muss vorher ein anderer gesetzt sein

– RVS) Verriegelung über Setz-Eingang (&)– RVR) Verriegelung über Rücksetzeingang (≥1,n)

Page 83: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 83TU Dresden, 13.10.2009

Verriegelung von Speichern

&S

R Q

S1

A2 A1S2

&S

R Q

S3

A1 A2S4

>=1

S

R QS4A1

A2S3

>=1

S

R QS2A2

A1S1

Verriegelung durch Setzeingang

Setz-Befehl wird nur wirksam, wenn der andere Speicher auf 0 gesetzt ist

… durch Rücksetzeingang

Bei Verwendung von Rücksetz-dominanten Speicherbausteinen kann ein Speicher ebenfalls nur eingeschaltet werden, wenn der andere auf 0 gesetzt ist

Page 84: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 84TU Dresden, 13.10.2009

Flankenauswertung = Änderung

Positive Flanke• Merken des letzten Wertes eines Flankenoperanden (FO) in Flankenmerker

FM

• Setzen des Merkers mit E * ¬ FM

• Rücksetzen des Merkers mit ¬E

Negative Flanke• Merken des letzten Wertes eines Flankenoperanden (FO)

• Setzen des Merkers mit E

• Rücksetzen des Merkers mit ¬E * FM

&E

FM S R Q

E FM

010011101000FOFME

FO

Page 85: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 85TU Dresden, 13.10.2009

Zeitfunktionen

Verarbeitung von zeitlicher Information ist essentieller Bestandteil von Steuerungen

• Warte- und Überwachungszeiten, Zeitmessungen, Taktimpulse, ...

• EN ISO 61131-3: drei Standardfunktionsbausteine– TP: Erzeugen eines Impulses– TON: Einschaltverzögerung– TOF: Ausschaltverzögerung

• Häufig weitere firmenspezifische Bausteine

Page 86: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 86TU Dresden, 13.10.2009

Zeitdiagramm TON

Page 87: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 87TU Dresden, 13.10.2009

Zeitdiagramm TOF

Page 88: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 88TU Dresden, 13.10.2009

Zeitdiagramm TP

Page 89: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 89TU Dresden, 13.10.2009

Zweihandverriegelung mit Feststellungsschutz M K1

S1 S2

IX 0.1IX 0.2

Betätigt S1=1Betätigt S2=1

BOOLBOOL

S1S2

Taster linksTaster rechts

Angezogen K=1

Logische Zuordnung AdresseTypSymbolEingangsvariable

QX 4.0BOOLKPressenschütz

Ausgangsvariable

Die Presse soll in Gang gesetzt werden, wenn die Taster S1 und S2 innerhalb 0.5 Sekunden betätigt werden. Loslassen eines Tasters stoppt die Presse.

Page 90: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Ablaufsprache

Page 91: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 91TU Dresden, 13.10.2009

Ablaufsprache

Formulierung eines Steuerungsproblems als Automat mit– Schritten (definiert durch Aktionen) und– Übergängen (definiert durch Bedingungen)

Aktionen: In jedem Schritt wird eine Anzahl von Aktionen solange ausgeführt, bis der Übergang „scharf“ geschaltet ist

– N Ausführen/Setzen solange Aktion aktiv– R Rücksetzen (bis nächstes S)– SSetzen (bis nächstes R)– L Ausführen/Setzen solange Aktion aktiv, jedoch maximal

x Zeiteinheiten– DZeitverzögert Ausführen/Setzen– PEinmalige Ausführung/Impuls bei Betreten des Schritts– SD, DS, SL - verzögert und gespeichert, gespeichert und

verzögert, gespeichert und zeitbegrenzt

Page 92: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 92TU Dresden, 13.10.2009

Beispiel: Ampelschaltung

• “Rezept”– Schritt 1: 10 Sekunden

ROT– Schritt 2: 2 Sekunden

ROTGELB– Schritt 3: 10 Sekunden

GRÜN– Schritt 4: 2 Sekunden

GELB– Schritt 5: weiter bei

Schritt 1

Page 93: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 93TU Dresden, 13.10.2009

Alternativ & Parallelverzweigung

• Alternativverzweigung– Es wird genau ein Ast abgearbeitet– Transitionen in die einzelnen Äste nach der Verweigung– üblicherweise komplementär zueinander, auswertung von

links nach rechts

• Parallelverzweigung– Es werden alle Äste parallel abgearbeitet– Transitionen vor der Verzweigung– Bei der Zusammenführung geht es erst weiter, wenn alle

Äste “angekommen” sind.

Page 94: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 94TU Dresden, 13.10.2009

Beispiel

Page 95: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 95TU Dresden, 13.10.2009

Beispiel Beschickungsanlage

Wenn Starttaster S0=1 und Wagen an Rampe (S2=1), dann 1. erst Transportband an (K1=1) und2. nach 3 Sek. Förderschnecke an (K2=1)

Wenn Wagen gefüllt (S3=1), Stoptaster bedient (S1=0), oder Wagen nicht mehr an Rampe (S2=0), dann1. Förderschnecke abschalten (K2=0)2. nach 5 Sek. Transportband aus (K1=0)

E-1Förder-

schnecke

Transportband

K1

M

K2

M

Waage

S3

S2

S0 Start

S1 Stop

Page 96: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 96TU Dresden, 13.10.2009

Entwurf Beschickungsanlage

• Vier Zustände – Z0: ( Initialisierung, K1=0, K2=0 )– Z1: ( Befüllen, K1=1, K2=0 )– Z2: ( Befüllen, K1=1, K2=1 )– Z3: ( Anhalten, K1=1, K2=0 )– ( Anhalten, K1=0, K2=0 ) = ( Initialisieren, K1=0, K2=0)

Z0 Z1 Z2 Z3S0 S2 3 secS0 S2 S1v¬S2v¬S3

5 sec

Page 97: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 97TU Dresden, 13.10.2009

Analyse Beispiel

SchritteS001, S002, S004, S005

TransitionenZustandsgesteuert

S001 S002Zeitgesteuert

S002S004S004S005

AktionenN: Setze Variable solange in SchrittD: Setze zeitverzögert einen Impuls

S0

S2

AND

T 1

OR

S2

S1

T 1

S001

S002 N K1

D T ime#3s

T 1

S004 N K1

S005 N K1

N K2

D T ime#5s

T 1

Page 98: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 98TU Dresden, 13.10.2009

Übungsaufgabe Baustellenampel

Wenn Induktionschalter anschlägt, soll die zugehörige Ampel nach 10 Sekunden auf grün schalten (die andere auf rot)

Eine Grünphase soll mindestens 20 Sekunden dauern. Liegt keine Meldung eines Induktionsschalters vor, bleibt die Anlage in ihrem jeweiligen Zustand.

Spricht während der Grünphase einer Ampel der gegenüberliegende Induktionsschalter an, sollen beide Ampeln für 10 Sekunden auf rot gehen, bevor die gegenüberliegende Seite grün bekommt.

I1

I2

H1 H3

H2 H4

Page 99: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Strukturierte SPS-Programmierung

Page 100: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 100TU Dresden, 13.10.2009

Strukturierte SPS-Programmierung

Ziel: Lesbare, verstehbare und wartbare SPS-Programme mit hohem Wiederverwendungsgrad

Lösungsansatz: Prinzipien der Objektorientierung

• Modellierung/Spiegelung der automatisierten Welt– Verwendung von (globalen) Strukturen zur Beschreibung

der Automatisierungskomponenten (Sensoren, Motoren, Ventile, u.s.w.)

• Kapselung, Geheimnisprinzip, Seperation of Concern– “Verstecken” der jeweils feldgeräte-spezifischen Logik in

wiederverwendbaren Funktionsbausteinen– Trennung von Steuerungs-/Prozesslogik und Gerätelogik

Page 101: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 101TU Dresden, 13.10.2009

Vorgehensmodell strukturierte SPS-Programmierung (Seitz 2008)

1) Softwarestrukturierung / Objektmodellierung– Ein FBS und Anwenderdatentyp pro Feldgerätetyp – Je ein Ansteuerprogramm & Strukturvariable je Gerät

2) Entwurf von FBS und Funktionen– Deklaration von Ein- und Ausgangsvariablen– Entwurf der Schaltungslogik

3) Entwurf der Programme– Deklaration von Variablen für Mess- und Stellsignale und deren

E/A Zuordnung– Dekl. globaler Variablen für Steuer- und Statussignale (für jeden

Gerätetyp gesammelt als AWD)– Instanziierung der FBS von 2)– Entwurf von Zusatzlogik

Page 102: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 102TU Dresden, 13.10.2009

Strukturierte SPS-Programmierung / Forts.

1) Softwarestrukturierung / Objektmodellierung

2) Entwurf von FBS und Funktionen

3) Entwurf der Programme

4) Implementierung – Implementierung der entworfenen PRG, FBS, AWD und Variablen– Festlegung der Steuerungskonfiguration– Taskzuordnung

5) Test und Inbetriebnahme– Test in der Simulation– Laden der Software in die SPS– Inbetriebname und Protokollierung

Page 103: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Modellierung von Aktoren

Individual Drive Function (IDF)Einzelsteuerfunktion (ESF)

Page 104: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 104TU Dresden, 13.10.2009

Typische Motorbausteine

• Motor mit einer Drehrichtung– Steuersignale: EIN, AUS– Stellsignale: STELL

• Motor mit zwei Drehrichtungen– Steuersignale: LINKS, RECHTS, AUS– Stellsignale: STELL_L, STELL_R

• Schrittmotor– Steuersignale: LINKS, RECHTS, AUS, TAKTZEIT– Stellsignale: STELL, RECHTSLAUF, TAKT

• Polumschaltbarer Einrichtungsmotor– Steuersignale: SCHNELL, LANGSAM, AUS– Stellsignale: A_SCHNELL, A_LANGSAM

Page 105: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 105TU Dresden, 13.10.2009

Einrichtungsmotor, IDF1

• IDFBasic– ON, OFF RS-Flipflop OUT→ →

• Verriegelung / Überschreiben des Ein-Signals– LOCK (Temporäres Ausschalten)

• Betriebsartenumschaltung– Vorort-Bedienung, Manuell, Automatik– Gleichberechtigung/Hierarchie abhängig von

Betreiberphilosophie!

• Lauf(richtungs)rückmeldung– Läuft, Geschwindigkeit, Stromaufnahme, ...

Page 106: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 106TU Dresden, 13.10.2009

Betriebsartenumschaltung

IDF

VO/FERN ◙EIN ◙ AUS ◙

MAN/AUT ◙EIN ◙ AUS ◙

Ende Befüllen

Start Befüllen

M

Page 107: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 107TU Dresden, 13.10.2009

MANUEL – ORT - AUTOMATIK

• Umschaltung zwischen 3 Betriebsarten

Page 108: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Analogwertverarbeitung

Page 109: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 109TU Dresden, 13.10.2009

Analoge Steuersignale

Physikalische Größen sind häufig kontinuierliche Größen: Druck, Temperatur, Geschwindigkeit, Drehzahl, ph-Wert, Abstand

Können von SPS nicht direkt verarbeitet werden, Ein/-Ausgabebaugruppen arbeiten nur mit elektrischen Signalen (Strom, Spannung) Messumformer

Analoges Signal: Kann innerhalb technischer Grenzen beliebige Werte annehmen.

Induktiver Näherungsmesser:

Arbeitsbereich

0V

24V

4mA

20mA

RL

U

I

Page 110: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 110TU Dresden, 13.10.2009

Analogwertdarstellung

Umsetzung des analogen Prozesssignals in einen diskontinuierlich proportionalen Digitalwert mittel Analog-Digital-Umsetzer (ADU)

Auflösung: Anzahl der Bits (8-15 & Vorzeichen)– Bei weniger als 15 bit erfolgt Eintrag linksbündig in

Akkumulator.– Je höher die Auflösung, desto länger die Umsetzzeit und

umso kleiner die Frequenz der Störunterdrückung– Je nach Karte/Hersteller sind Auflösung, A/D-Zeit oder

Störfrequenzunterdrückung parametrierbar

Page 111: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 111TU Dresden, 13.10.2009

Messarten

Verschiedene Messarten– Spannung, Strom (Widerstand, Temperatur) – verschiedene Messbereiche.

Konfiguration herstellerabhängig einstellbar durch

– Art der Verdrahtung,– Messbereichsmodul, und/oder – Parametrierung.

Page 112: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 112TU Dresden, 13.10.2009

Messbereichsmodul (Siemens SM331)

Page 113: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 113TU Dresden, 13.10.2009

Messbereiche Phoenix Contact IB IL AI 2/SF

Page 114: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 114TU Dresden, 13.10.2009

Messbereiche Siemens SM331

Page 115: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 115TU Dresden, 13.10.2009

Analoge Messwerte einlesen und normieren

Messwert steht als WORD im Prozessabbild

Kann als 16-Bit Ganzzahl interpretiert werden

Digitales Rohsignal, Normierung notwendig

Beispiel: AE_Norm = 500/27648 * AE_Nenn

0040

Normierter Wert AE_Norm

Digitaler Eingangs-nennwert AE_Nenn

Ausgang des Sensors

[mA]

Physikalische Größe

[m³/h]

5002764820500

Page 116: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 116TU Dresden, 13.10.2009

Allgemeine Normierungsvorschrift

AE: Digitalisierter Eingangswert

REAW: Normierter Analogeingabewert

OGREB, UGREB: Grenzen Eingangsnennbereich

OGRNB, UGRNB: Grenzen Normierungsbereich

U1,U2: Spannungsmessbereich

UAE: Anliegende Spannung

OGREB

UGREB

UGRNB

OGRNB

UAE

AE

REAW

U1 U2

ΔGREBΔGRNBUGREB)(AEUGRNBREAW −+=

Page 117: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 117TU Dresden, 13.10.2009

Realisierung als Funktion AEnorm in AWL (IL)

Realisierung als IEC-61131 Funktion in AWL

Ein-Address Maschine, alle binären Operationen ziehen verknüpfen den Akkumulator mit dem angegebenen Operanden und legen Verknüpfungs-ergebnis (VKE) dort wieder ab

Sprache ist typsicher, d.h. nur Operatoren gleichen Typs können verknüpft werden Wandlungsoperatoren *_TO_*

Benötigter Sprachumfang für diese AE

LD op (* vke := op *)ST op (* op := vke *)ADD op (* vke := vke + op *)SUB op (* vke := vke - op *)MUL op (* vke := vke * op *)DIV op (* vke := vke / op *)INT_TO_REAL (* vke := float(vke)

*)WORD_TO_REAL (*vke float(vke)

*)AE ist als WORD Variable definiert

Page 118: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 118TU Dresden, 13.10.2009

Normierungs-baustein in AWL

Funktion (ohne output-variablen)3 lokale Variablen

UIn

-30000

+30000-10.0

A ENormfUIn

+10.0

w A E

iUGREB

iOGREB

fOGRNB fUGRNB

Page 119: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

SPS-SPS Kommunikation

Page 120: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 120TU Dresden, 13.10.2009

• SPS-SPS-Kommunikation

• IEC 61131-5

• Netzvariablen a la CoDeSys

• IEC 61499

• OPC

Übersicht

Page 121: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 121TU Dresden, 13.10.2009

SPS-SPS-Kommunikation

• Vertikale Integration: Vernetzung der Prozessdaten mit überlagerten Führungssystemen

– SCADA / HMI– MES / ERP– Kleinere Abtastrate, Bulkdaten

• Horizontale Integration: Quervernetzung mit anderen Steuerungs-”inseln”

– Anbindung intelligenter Feldgeräte ( VL Bussysteme, →PRLT)

– SPS-SPS-Querverkehr – Hohe Abtastraten, kleine Datenvolumina

Page 122: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

IEC 61131-5

Page 123: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 123TU Dresden, 13.10.2009

61131-5: Bausteine zur Kommunikation

• Definition von Variablen für Fernzugriff– REMOTE_VAR

• Funktionsbausteine für– Statusabfrage: USTATUS, STATUS– Datenaustausch ohne Aufforderung: USEND, URCV– Koordinierter Datenaustausch: SEND, RCV– Steuerung durch Client: WRITE– Polling: READ– Ereignisbehandlung: NOTIFY, ALARM– Verbindungssteuerung: CONNECT

Page 124: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 124TU Dresden, 13.10.2009

STATUS, USTATUS

• USTATUS: liest Status zyklisch solange EN=TRUE

• STATUS: liest Status bei steigender Flanke auf REQ

• Ausgabe:– NDR: Neuer Status empfangen– ERROR: Fehler aufgetreten– STATUS: Fehlerstatus– PHYS: Physikalischer Status des Partners– LOG: Logischer Status des Partners– PCSTATE: Lokaler Status d. Partners

USTATUSENID

NDRERROR

STATUSPHYS

LOGPCSTATE

Page 125: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 125TU Dresden, 13.10.2009

Status anzeigende Teile (PCSTATUS)

• Teilsysteme– 1. SPS (als Ganzes)– 2. E/A Teilsystem– 3. Verarbeitungseinheit– 4. Stromversorgungs-Teilsystem– 5. Speicher-Teilsystem– 6. Kommunikations-Teilsystem– 7. Herstellerspezifisch

• Befinden: GUT/WARNUNG/SCHLECHT (2 bit, 1 var)

• Zustand: teilsystemspezifisch, bis 14 bit, z.B. SPS– Läuft, Lokal, Keine Ausgänge abgeklemmt, keine

Eingänge abgeklemmt, E/A zwangsgesetzt, ...

Page 126: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 126TU Dresden, 13.10.2009

READ – Auslesen von Daten

• Daten vom Typ VAR_ACCESS (61131-3) können via READ ausgelesen werden

– Steigende Flanke in REQ triggert auslesen– V1 .. Vn sind die Pfade zu den Variablen

READREQID

V_1...V_2

NDRERROR

STATUSRD_1

...RD_n

Page 127: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 127TU Dresden, 13.10.2009

USEND – URECV (Lesen ohne Aufforderung)

• USEND: schreibt bei steigender Flanke auf REQ

• URECV: Empfangsbereit, wenn EN_R=TRUE

URECVEN_RIDR_ID

NDRERROR

STATUSRD_1

...RD_n

USENDREQIDR_IDSD_1...SD_n

DONEERROR

STATUS

Page 128: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 128TU Dresden, 13.10.2009

Zusammenfassung

• IEC 61131-5 definiert Dienste und Funktionsbausteine zur Kommunikation

– Status, Kommunikationsschema, Verhalten genormt – Verbindungsaufbau & Zugriffspfade hersteller- und

netzwerkabhängig– Erlaubt flexible, anforderungsgerechte Programmierung

der Kommunikation

• Umfrage SPS/IPC/Drives 2009– ca. 80% geben an, IEC61131-5 in der eigenen Familie zu

unterstützen,– Stichproben der Fragebögen lassen vermuten, dass diese

Angaben zu großen Teil falsch sind Nacharbeit!→

Page 129: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Netzvariablen a la CoDeSys

Page 130: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 130TU Dresden, 13.10.2009

Netzwerkvariablen

• Master-SPS verteilt eine globale Variablenliste (GVL) im Netzwerk

– Einstellung der Kommunikationsparameter für GVL– Netzwerkart, Task, Cyclic/On Change, ...

• Slave-SPSen definieren eine identische Globale Netzwerkvariablenliste (NVL)

– NVL identisch zu GVL– Slave-SPS kann diese Werte nur auslesen!

• Bidirektionaler Verkehr?– Beide SPS-en definieren einen eigenen netzweiten GVL– Achtung! VARs befinden sich im gleichen Namensraum

>> CoDeSys:Kommunikation.project

Page 131: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 131TU Dresden, 13.10.2009

Device 3Device 2Device 1

Identischevariablen-vereinbarung

Kommunikation mittels Broadcast

GVL

Task

Transport

GVL

Task

Transport

NVL

Transport

NVL

Transport

Publish/Subscribe

Page 132: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 132TU Dresden, 13.10.2009

Beispiel: Erkennen von Netzausfall/Aussetzern

• Sender erzeugt “Heartbeat”: gB = 1 XOR gB

• Empfänger prüft auf Ausbleiben der Flanken

Sender

Empfänger

Page 133: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

IEC/EN 61499

Grafiken von James H. Christensen, http://knol.google.com/k/james-christensen/iec-61499#

Page 134: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 134TU Dresden, 13.10.2009

IEC/EN 61499: Infrastruktur zur Projektierung von AT mit verteilten intelligenten Geräte

ProjectRepository

SoftwareTools

SoftwareLibraries

PORTABILITY

INTEROPERABILITY

Distributed intelligent devices & machines

CONFIGURABILITY

Page 135: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 135TU Dresden, 13.10.2009

Kaspelung und Wiederverwendung von EN 61131-3 Funktionsblöcken

External Interface Specification

INBOOLDB_TIMETIME

OUT BOOLDEBOUNCE

INBOOL INBOOLDB_TIMETIME DB_TIMETIME

OUT BOOLOUT BOOLDEBOUNCE

Control Algorithm SpecificationControl Algorithm Specification

DB_FF

S1

R

Q1OFF_TMR

TON

IN

PT

Q

ET

OUT

DB_TIME

IN IN

PT

Q

ET

TON

ON_TMR

SR

DB_FF

S1

R

Q1OFF_TMR

TON

IN

PT

Q

ET

OUT

DB_TIME

IN IN

PT

Q

ET

TON

ON_TMR

SR

DB_FF

S1

R

Q1OFF_TMR

TON

IN

PT

Q

ET

OFF_TMR

TON

IN

PT

Q

ET

OUT

DB_TIME

IN IN

PT

Q

ET

TON

ON_TMR

IN

PT

Q

ET

TON

ON_TMR

SR

IN

PT

Q

ET

TON

OFF_TMR

ON_TMR

TON

IN

PT

Q

ET

| |IN

|/|IN

(R)OUT

(S)OUT

DB_TIME

DB_TIME

IN

PT

Q

ET

TON

OFF_TMR

ON_TMR

TON

IN

PT

Q

ET

| |IN

|/|IN

(R)OUT

(S)OUT

DB_TIME

DB_TIME

IN

PT

Q

ET

TON

OFF_TMR

IN

PT

Q

ET

TON

OFF_TMR

ON_TMR

TON

IN

PT

Q

ET

ON_TMR

TON

IN

PT

Q

ET

| |IN| |IN

|/|IN|/|IN

(R)OUT(R)

OUT

(S)OUT(S)

OUT

DB_TIMEDB_TIME

DB_TIMEDB_TIME

Page 136: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 136TU Dresden, 13.10.2009

IEC/EN 61499 Execution Control Chart: verteilte ereignisgesteuerte Ausführungskontrolle

Output variablesInput variables

Event inputs Event outputs

Algorithms

Type identifier

(IEC 1131-3)

Internalvariables

ExecutionControlChart START

INIT INIT INITOINIT INIT INITO

EC initial state

MAIN EX EXOMAIN EX EXOEC action

algorithmevent

EC state

INITINIT EXEX 1111

Output variablesInput variables

Event inputs Event outputs

Type identifier

ExecutionControl

Page 137: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 137TU Dresden, 13.10.2009

IEC/EN 61499: Service Interface Function Blocks

(application-initiated transactions) (resource-initiated transactions)

QOSTATUS

INITIATOR

SD_m:

SD_1

CNFREQINITO

: RD_n

RD_1

INDRSPINIT INITO

QOSTATUSPARAMS

RESPONDER

SD_m:

SD_1:

RD_n

RD_1

QI QOSTATUSPARAMS

RESPONDER

SD_m:

SD_1:

RD_n

RD_1

QI

resourceapplication

PARAMSQI

INIT

STATUSINITO(+)STATUSINITO(+)

RD_1,...,RD_n

CNF(+)

STATUS

RD_1,...,RD_n

CNF(+)

STATUS

tt

startServicestartService

writeOutputswriteOutputsreadInputsreadInputs

PARAMS

INIT(+)

PARAMS

INIT(+)

ANYBOOL

EVENT

ANYBOOL

EVENT

REQ(+)SD_1,...,SD_m

REQ(+)SD_1,...,SD_m

ANY:

ANY

EVENT

ANY:

ANY

EVENT

BOOLANY

EVENT

BOOLANY

EVENT

ANY:

ANY

EVENT

ANY:

ANY

EVENT

BOOLANY

EVENT

BOOLANY

EVENT

INIT(-)INIT(-)

STATUSINITO(-)STATUSINITO(-)

endServiceendService

EVENT

:ANY

ANY

EVENT

:ANY

ANY

RSP(+)SD_1,...,SD_m

RSP(+)SD_1,...,SD_m

resourceapplication

BOOLANY

EVENT

BOOLANY

EVENT

PARAMS

INIT(+)

PARAMS

INIT(+)

STATUSINITO(+)STATUSINITO(+)

RD_1,...,RD_n

IND(+)

STATUS

RD_1,...,RD_n

IND(+)

STATUS

startServicestartService

writeOutputswriteOutputs

readInputsreadInputs

INIT(-)INIT(-)

STATUSINITO(-)STATUSINITO(-)

endServiceendService

EVENT

:ANY

ANY

EVENT

:ANY

ANY

Page 138: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 138TU Dresden, 13.10.2009

Zusammenfassung

• IEC/EN 61499 definiert ein Modularisierungs- und Kommunikationskonzept für verteilte AT

– Execution Control Chart– Service Interface Function Blocks

• Bislang vor allem Forschung, erste Produkte vorhanden

– http://www.holobloc.com/– http://iec61499.de/

• Umfrage SPS/IPC/Drives 2009: Standard bei den Befragten weitgehend unbekannt.

Page 139: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

OPC / OPC-UA

Openness, Productivity & Collaboration - the Standard formerly known as OLE for Process Control

Page 140: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 140TU Dresden, 13.10.2009

Hintergrund

• Harmonisierung des Schnittstellenzoos

• OPC auf Basis von Microsofts COM/DCOM

• OPC Server– Datenlieferant– Hardware, SPS

• OPC Client– Datennutzer– Software, HMI, MES, ...

>> CoDeSys:Kommunikation.project

Quelle: Matthias Damm, ascolab

Page 141: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 141TU Dresden, 13.10.2009

Probleme mit COM/DCOM

• Nicht gut geeignet für Embedded Systems, keine Verfügbarkeit jenseits Windows CE

• Weitere Probleme:– Verteilung, Timeout, Zuverlässigkeit– Redundanz, mehrere Server– Fehlende Echtzeitinformation– Abhängigkeit von proprietärer Technik

• → OPC Unified Architecture (PC UA)

>> CoDeSys:Kommunikation.project

Page 142: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 142TU Dresden, 13.10.2009

OPC-UA Objektmodell

• Objekt besteht aus– Variablen– Ereignisse– Methoden

• Komplexe Objekte– Complex Data Types– State Machine– Programm– Historie

• Informationsmodellierung– Metainformationen

OPC UA Object

Variables_________

Methods___()___()___()

Events

OPC UA Object

Variables_________

Methods___()___()___()

Events

Page 143: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 143TU Dresden, 13.10.2009

OPC-UA Adressraum

• Hierarchie Netz→

Root

Fieldbus Sensor Bus Areas

PressureTransmitter Valve Area 1

Root

Fieldbus Sensor Bus Areas

PressureTransmitter Valve Area 1

Root

Field Bus

Sensor Bus

Areas

Pressure Xmitter

Temp Xmitter

Valve Area 1

Area 3

Area 2 Hi Limit Lo Limit

Lo Alarm Lo Alarm

Current Value

“Located In” reference

Page 144: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 144TU Dresden, 13.10.2009

Schichtenmodell

• Wenige Basisdienste

• Binär/XML

• Performance– UA Binary schneller als DCOM– UA Binary langsamer als COM– UA Binary 20 mal schneller

als XML-HTTP– XML-HTTP + WS-Secure

2 x langsamer als XML-HTTP

Page 145: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 145TU Dresden, 13.10.2009

OPC & CoDeDys

• OPC-Server– OPC-DA

• Mehrstufig überGatewayprozess

– DRAM (1)– UDP (2)

• Konfiguration einer “Symbolkonfiguration”

>> CoDeSys:OPC.project

Page 146: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 146TU Dresden, 13.10.2009

Zusammenfassung

• OPC-UA ist ein offener Middlewarestandard in der AT– Datenmodellierung – unterschiedliche Transportwege– Kooperation mit verschiedenen Initiativen und Standards

zur Datenmodellierung (S88/IEC61512, S95/IEC62264, ECT-EDD/IEC61804, FDT, FDI, Open O&M)

• Umfrage SPS/IPC/Drives 2009– 20% der Hersteller kennen OPC-UA nicht,– über 50% der Hersteller planen OPC-UA in den nächsten

beiden Jahren auf den Markt zu bringen.

Page 147: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 147TU Dresden, 13.10.2009

Zusammenfassung

• Verschiedene Ansätze zur Standardisierung der SPS-SPS-Kommunikation

– EN 61131-5 Spezifikation lässt zuviel Freiraum– EN 61499 Forschung– OPC “mühsame” horizontale Integration– OPC UA Zukunftsweisend durch Modellierung

und breiten Ansatz

• Zusammenfassung Umfrage SPS/IPC/Drives 2009– SPS-SPS Kommunikation wird von den meisten

Herstellern (noch?) stiefmütterlich behandelt,– Ansprechpartner auf Messe sind vielfach nicht informiert.

Page 148: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

Fakultät Elektrotechnik und Informationstechnik, Professur für Prozessleittechnik

Umfrage SPS/IPC/Drives 2009

Page 149: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 149TU Dresden, 13.10.2009

Umfrage zur SPS-SPS-Kommunikation SPS/IPC/Drives 2009

• 26 Hersteller– ausgewählt durch Eintrag “SPS” bzw. “SPS-Komponenten”

im messago Ausstellerkatalog

• Befragung mittels Fragebogen mit Items zu

• SPS-Programmiermodell– EN 61131-3

• SPS-SPS-Kommunikation– EN 61131-5 – EN 61499– OPC / OPC-UA

Page 150: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 150TU Dresden, 13.10.2009

Programmiermodell nach IEC EN 61131-3

• IEC EN 61131-3 hat sich im SPS-Umfeld durchgesetzt

– EN 61131 ≠ CoDeSys– Anzahl Firmen CoDeSys (50%) ≠ Marktanteil !

Einsatz von CoDeSys als Engineering Software

13 12

02468

101214

CoDeSys Eigene SW

Seitenfelder hierher ziehen

Anzahl von Firma

CoDeSys

Reihenfelder hierher ziehen

Engineering mit einem EN 61131-3 konformem SPS-Modell

23

20

5

10

15

20

25

ja weitgehend

Seitenfelder hierher ziehen

Anzahl von Firma

Eng 61131-3

Reihenfelder hierher ziehen

Page 151: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 151TU Dresden, 13.10.2009

Kommunikationsmodell nach IEC EN 61131-5

• > 70% behaupten EN 61131-5 einzusetzen; – Ergebnis spiegelt die Marktlage nicht wieder– CoDeSys implementiert diesen Standard nicht– Der Vertreter eines Marktführers, der den Standard

definitiv implementiert, verneint dies.

EN61131-5 SPS-SPS-Kommunikation

janeinunbekannt

Seitenfelder hierher ziehen

Anzahl von Firma

EN 61131-5

Reihenf elder hierher ziehen

EN61131-5 SPS-SPS-Kommunikation

0

5

10

15

Ergebnis 10 3 10 1 1

ja unbekannt ja nein unbekannt

CoDeSys Eigene SW

Seitenfelder hierher ziehen

Anzahl von Firma

CoDeSys EN 61131-5

Reihenfelder hierher ziehen

Page 152: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 152TU Dresden, 13.10.2009

Kommunikationsmodell nach IEC EN 61499

• ~ 30% behaupten EN 61499 einzusetzen; – Davon verwenden 3/5 CoDeSys, das diesen Standard

definitiv nicht implementiert.

• Mehr als 60% kennen diesen Standard nicht.

Kommunikationsmodell EN 61499

janeinunbekannt

Seitenfelder hierher ziehen

Anzahl von Firma

EN 61499

Reihenfelder hierher ziehen

Page 153: SPS und Kompaktregler - TU Dresden · TU Dresden, 13.10.2009 SPS&KR (c) Urbas 2008-2009 Folie 3 Übersicht • Speicherprogrammierbare Steuerung (SPS) – Aufgaben von Steuerungen

SPS&KR (c) Urbas 2008-2009 Folie 153TU Dresden, 13.10.2009

OPC / OPC-UA

• 70% bieten einen OPC-Server an– ähnlich viele auch einen OPC-Client? Frage? Verständnis?

• Drei Firmen haben OPC-UA Produkte, vier planen– OPC-UA ist noch nicht ausreichend bekannt!

Hat die SPS einen integrierten OPC-

Client/OPC-Server?

15 17

9 7

0

10

20

30

OPC-Client OPC-Server

neinja

Setzen Sie OPC-UA ein oder planen Sie bereits

Produkte?

14%

18%

32%

36%

ProduktPlanungk.A.nein