Präsentation herunterladen
1
Programmierung nach IEC 61131
2
Inhalt Ziele und Inhalte der IEC 61131 Programmiertools
Modelle der IEC 61131 Variablen und Datentypen Programmorganisation
3
Lernziele IEC 61131 Sie kennen die wesentlichen Ziele und Inhalte und können sie mit eigenen Worten erläutern Sie die Architektur eines Systemes nach IEC 61131 Sie kennen die 3 Programmorganisationseinheiten und die Datenorganisation (Uebungsbeispiele) Sie können ein einfaches Beispiel in zwei grafischen Programmiersprachen einer SPS programmieren
4
Die Erstellung und Wartung von Programmen von Anlagensteuerungen sind:
wesentliche Kostenfaktoren schwierige Unsicherheitsfaktoren
5
Aspekte: 15-30% der Planungskosten zur Programmierung
hohe Folgekosten bei Problemen Anlageschäden verzögerte Inbetriebnahme
6
Worin unterscheidet sich Steuerungssoftware von 'Bürosoftware'?
Echtzeit oft zeitkritisch kompliziertes Prozessinterface Restart- und Resume-fähig viele zeitlich andauernde Aufgaben kaum Fehlertoleranz hohe Verfügbarkeit viele, aber einfache Funktionen
7
Variablennamen: was ist wahr?
8
Bei Alarmen leider oft:
9
Darstellung von y:= A und (B oder C) in Tabellenform: Wahrheitstabelle
10
Beispiel einer Wahrheitstabelle:
11
richtigen Zeit auslösen
Steuerproblem: richtige Aktion zur richtigen Zeit auslösen Zeitdiagramme
12
Beispiel: Einschaltverzögerung
13
Zeitdiagramm: IN Q ET PT
14
Entwicklung der Programmierung von SPS
Proprietäre Sprachen und Softwarestrukturen verschiedener Hersteller Starke Verbreitung einzelner Sprachen durch die Dominanz der Hersteller (Siemens) Erste internationale Normierungsbestrebungen (Grafcet, DIN und 2880)
15
Was ist die IEC 1131? weltweit einheitliche Norm für die Automation speziell für SPS-Systeme anerkanntes Werk, da gemeinsam erarbeitet(PLCopen) Wegweiser für zukünftige Entwicklungen Definition systemunabhängiger Sprachen ein Muss für jemanden der Automation
16
Entwicklung der IEC 61131 Gründung der PLCopen 1992 als treibende Kraft der Normierung Ziele: Anwendung eines internationalen Standards IEC konforme SPS anbieten und einsetzen Definition von Konformitätskriterien Zusammenfassung der bisherigen Erfahrungen und Entwicklungen in der IEC 61131
17
Vorteile für Hersteller
Gemeinsame Entwicklung von Software (Editoren, Programmiersystem) Wiederverwendbarkeit bestehender Software durch einheitliche Programmierung Normgerecht - bedeutet - marktgerecht Integration von Modulen verschiedener Hersteller
18
Vorteile Anwender Einheitliche Programmierung und Planung verschiedener Systeme Minimierte Ausbildungs- und Einarbeitungs-kosten Einsatz normgerechter Komponenten bedeutet ein erhöhtes und kalkulierbares Mass an Sicherheit der Anlagen
19
Wofür IEC 61131 Für verteilte Automatisierungssysteme Logische Einheit
Steuerung Steuerung Kommuni- kation Kommuni- kation Betriebssystem Betriebssystem Anwendung Anwendung Prozessgeräte Prozessgeräte
20
Ziel ist Funktionssicht Implementierungsunabhängig
Leitsystem Teilanlage oder -system Funktionen und Gruppen Prozessgeräte
21
Was enthält die IEC 61131?
22
Schwerpunkt Programmierung:
Bildung von Programmstrukturen Einführung abgeleiteter Strukturen, d.h. eigene Datentypen und Steuerbibliotheken SPS-Programmierung grafisch oder wie in einer Hochsprache Programmierung von SPS-Systemen! (wo gibt es dies sonst noch ?)
23
Modelle der IEC 61131: Softwaremodell - Struktur der Software
Kommunikationsmodell - Informationsfluss zwischen verschiedenen Steuerungen Programmiermodell - Datendarstellung und Programmiersprachen Hardwaremodell
24
Projektverwaltung Projektname SPS-Parameter (Typ, Speicher) Task
Globale Variablen Funktionsbaustein Funktion Programme
25
Programmiermodell Variablen und Datentypen
Programmorganisationseinheiten Programme Funktionsbausteine Funktionen Programmiersprachen
26
Programmorganisationseinheiten (POE)
Funktion Funktionsbaustein Programm englische Bezeichnung: POU (Program Organisation Units)
27
Elemente einer POE Deklarationsteil Anweisungsteil Variablen
Formalparameter und Rückgabewerte Externe und interne Variablen Anweisungsteil Funktion in einer Programmiersprache realisiert
28
Variablen symbolische Namen physikalischer Standort (I/O, Merker)
Müssen dort deklariert werden, wo sie benutzt werden. Variablenart Bezeichner Datentyp Initialisierung
29
Variablenart
30
Datentypen elementare strukturierte bool, int, float, time
enum - Aufzähltypen array - Felder structure - Datenstrukturen
31
Geltungsbereich der Variablen
lokal: nur in der Programmeinheit global: in ganzer Ressource oder Konfiguration (lokal als extern definieren) gültig in den POE in denen sie deklariert sind und in allen untergeordneten Einheiten (Eine Variable in einem Programm gilt auch in den Funktionsbausteinen die das Programm aufruft)
32
Initialisierung Initialisierung übernimmt Wert vor letzten Stop
übernimmt anwenderspezifischen Wert übernimmt voreingestellten Wert des Datentyps Warmstart gepufferte Variablen (RETAIN) übernehmen letzten Wert andere die definierten Anfangswerte Kaltstart alle übernehmen Anfangswerte
33
Programmiersprachen graphische Programmiersprachen Textsprachen
KOP (Kontaktplan) FBS (Funktionsbausteinsprache) AS (Ablaufsprache ) Textsprachen AWL (Anweisungsliste) ST (Strukturierter Text)
34
graphische Sprachen vs. Textsprachen
einfach, teilweise auch für Laien verständlich Kommunikation über Programm einfacher effizienter bei Inbetrieb-nahme und Wartung keine Nachdoku-mentation nötig zwingt zu Program-mierdisziplin effizienter in der Programmierung kleinere Dokumente in MB einfacher im Umgang mit komplexen Datenstrukturen
35
1. Sprache: FBS Programmierung mit Funktionen in der Funktions-Bausteinen-Sprache: Variablen: Signallinien Funktionen: Rechteck mit Funktionsname und Signalverbindungsstellen Alle Datenverarbeitungselemente werden als Funktionsblöcke dargestellt
36
Programmierung = Netz von FB verbunden mit Signalen
Darstellung in FBS Funktionsblöcke (Funktionen und Funktionsbausteine) Linien Variablen (Eingang) Variablen (Ausgang) Programmierung = Netz von FB verbunden mit Signalen
37
Silo
38
2. Sprache: KOP Programmierung mit Kontaktplandarstellung und Funktionsbausteinen, Sprache: Variablen: Bezeichnung von Oeffner, Schliesser, Spulen Funktionen: durch 'Stromverdrahtung' und Funktionsbausteinen
39
Beispiel KOP - Silo Kontakte Spulen Funktionsblöcke
40
Elemente:
41
Elemente:
42
Elemente:
43
Elemente:
44
Elemente:
45
Elemente:
46
Funktion eine oder mehrere Eingangsvariablen werden zu genau einem Ausgangswert berechnet. Speichern intern keine Daten Liefert bei gleichen Eingangswerten immer das gleicher Ergebnis
47
Standardfunktionen vordefinierte Funktionen
SPS wird zu einer vollwertigen Rechnereinheit SPS kann auch Texte bearbeiten SPS kann Datentypen konvertieren die meisten aus Informatik bekannt
48
Funktionsbaustein aus einer oder mehreren Eingangsvariablen werden mehrere Ausgangsvariablen berechnet Strukturierungshilfsmittel innerhalb eines Programmes Kann mehrfach genutzt werden Kann intern Daten speichern und muss instanziert werden
49
FB definieren Deklaration Anweisungen Ergebnis muss gespeichert werden
50
FB RS-Flip-Flop UND-Bausteine können das Resultat direkt aus den Eingängen berechnen bei RS-Bausteinen hängt es aber noch zusätzlich vom Wert von Q1 ab:
51
Konsequenz: Baustein muss Variable zwischen zwei Ausführungen abspeichern Namen gefordert gelöst durch Instanzennamen = gleich Pointer auf Objekt
52
Instanz: Die Instanz ist ein individuelles Exemplar einer Datenstruktur, verknüpft mit einem Funktionsbaustein-Typ oder Programm-Typ, das von einem Aufruf der zugehörigen Operation bis zum nächsten erhalten bleibt.
53
Instanzierung Deklaration Anwendung
54
Zeitgeber: Einschaltverzögerung
Q ET PT
55
Zeitgeber: Ausschaltverzögerung
IN Q ET PT
56
Programm logische Anordnung von Funktionen und Funktionsbausteinen mit ihren Verknüpfungen Ausführung eines Programmes kommt durch die Zuordnung in einer Task zum Ausdruck Kann Funktionen und Funktionsbausteine aufrufen
57
Ausführung der Programme: Tasks
Ein Task fasst innerhalb einer Ressource ein oder mehrere Programme mit gleichem Ausführungs- und Zeitverhalten zusammen. (Wann sollen sie bearbeitet werden) Wann, bei welchem Ereignis Wie oft Wie dringend
58
Aufrufhierarchie Ressource Task II Task I Programm A Programm B … … …
Funktion 1 Funktionsbaustein a Funktion 2 Funktion3 Funktionsbaustein b
59
Kommunikationsmodell (wird nur gestreift)
Durch Uebergabe der Variablen bei Funktionsaufruf Kommunikation über globale Variablen Kommunikation über SEND und RECEIVE-Funktionen Kommunikation über Zugriffspfade
60
Uebung: Selbsthaltung
POE einrichten - Programm Variablen deklarieren mit Kontaktplan programmieren
61
Aufgabe: wie werden die folgenden Funktionen programmiert (sie sind gegenüber der FBS-Darstellung verschwunden)? UND ODER
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.