Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Programmierung nach IEC 61131

Ähnliche Präsentationen


Präsentation zum Thema: "Programmierung nach IEC 61131"—  Präsentation transkript:

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


Herunterladen ppt "Programmierung nach IEC 61131"

Ähnliche Präsentationen


Google-Anzeigen