Programmierung nach IEC 61131

Slides:



Advertisements
Ähnliche Präsentationen
Developing your Business to Success We are looking for business partners. Enterprise Content Management with OS|ECM Version 6.
Advertisements

Anzahl der ausgefüllten und eingesandten Fragebögen: 211
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Konzeption und Implementation visueller Editoren zur Bearbeitung von SPS-Schrittketten mit dem Editorgeneratorsystem DEViL Dennis Klassen Höxterstraße.
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
Java: Objektorientierte Programmierung
Rechneraufbau & Rechnerstrukturen, Folie 2.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 2.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Internet facts 2008-II Graphiken zu dem Berichtsband AGOF e.V. September 2008.
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Vererbung Spezialisierung von Klassen in JAVA möglich durch
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Bewegte Bezugssysteme
Astronomisch, Physikalische und Mathematische Geodäsie II
AC Analyse.
Differentielles Paar UIN rds gm UIN
Prof. Dr. Bernhard Wasmayr
Studienverlauf im Ausländerstudium
Schieferdeckarten Dach.ppt
Prof. Dr. Bernhard Wasmayr VWL 2. Semester
AWA 2007 Natur und Umwelt Natürlich Leben
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele
2 Distanzbasierte Sprachkommunikation für Peer-to-Peer-Spiele.
20:00.
„Küsse deine Freunde“ – FlexKom-App teilen
Zusatzfolien zu B-Bäumen
Leistungsbeschreibung Brückenplanung RVS RVS
Eine Einführung in die CD-ROM
für Weihnachten oder als Tischdekoration für das ganze Jahr
Wir üben die Malsätzchen
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
PROCAM Score Alter (Jahre)
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Geometrische Aufgaben
Symmetrische Blockchiffren DES – der Data Encryption Standard
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Zahlentheorie und Zahlenspiele Hartmut Menzer, Ingo Althöfer ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Einführung in die Astronomie und Astrophysik I Kapitel III: Das Planetensystem 1 Kapitel III: Das Planetensystem.
Folie Beispiel für eine Einzelauswertung der Gemeindedaten (fiktive Daten)
1 Mathematical Programming Nichtlineare Programmierung.
Imperfekt Wie sagt man das mit Imperfekt
Unternehmensbewertung Thomas Hering ISBN: © 2014 Oldenbourg Wissenschaftsverlag GmbH Abbildungsübersicht / List of Figures Tabellenübersicht.
SiLeBAT Sicherstellung der Futter- und Lebensmittelwarenkette bei bio- und agro-terroristischen (BAT)-Schadenslagen.
Folie Einzelauswertung der Gemeindedaten
Musterlösung IT-Struktur an Schulen © Zentrale Planungsgruppe Netze am Kultusministerium Baden-Württemberg Software-Verteilung mit ZENworks 4 Regionale.
J-Team: Gymnasium Ulricianum Aurich und MTV Aurich Ein Projekt im Rahmen von UlricianumBewegt.de Euro haben wir schon…  8000 mal habt ihr bereits.
Datum:17. Dezember 2014 Thema:IFRS Update zum Jahresende – die Neuerungen im Überblick Referent:Eberhard Grötzner, EMA ® Anlass:12. Arbeitskreis Internationale.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Technische Kommunikation
Einführung in die Volkswirtschaftslehre, Mikroökonomie und Wettbewerbspolitik Lothar Wildmann ISBN: © 2014 Oldenbourg Wissenschaftsverlag.
Schutzvermerk nach DIN 34 beachten Aufbau der Bausteine und deren Aufruf.
Registrar-Tag Andreas Papst.at nameservice Wer fragt Wen Was Wann? Datum:
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
Schutzvermerk nach DIN 34 beachten Einführung S40.
 Präsentation transkript:

Programmierung nach IEC 61131

Inhalt Ziele und Inhalte der IEC 61131 Programmiertools Modelle der IEC 61131 Variablen und Datentypen Programmorganisation

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

Die Erstellung und Wartung von Programmen von Anlagensteuerungen sind: wesentliche Kostenfaktoren schwierige Unsicherheitsfaktoren

Aspekte: 15-30% der Planungskosten zur Programmierung hohe Folgekosten bei Problemen Anlageschäden verzögerte Inbetriebnahme

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

Variablennamen: was ist wahr?

Bei Alarmen leider oft:

Darstellung von y:= A und (B oder C) in Tabellenform: Wahrheitstabelle

Beispiel einer Wahrheitstabelle:

richtigen Zeit auslösen Steuerproblem: richtige Aktion zur richtigen Zeit auslösen Zeitdiagramme

Beispiel: Einschaltverzögerung

Zeitdiagramm: IN Q ET PT

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 19239 und 2880)

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

Entwicklung der IEC 61131 Gründung der PLCopen 1992 als treibende Kraft der Normierung Ziele: Anwendung eines internationalen Standards IEC 61131 konforme SPS anbieten und einsetzen Definition von Konformitätskriterien Zusammenfassung der bisherigen Erfahrungen und Entwicklungen in der IEC 61131

Vorteile für Hersteller Gemeinsame Entwicklung von Software (Editoren, Programmiersystem) Wiederverwendbarkeit bestehender Software durch einheitliche Programmierung Normgerecht - bedeutet - marktgerecht Integration von Modulen verschiedener Hersteller

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

Wofür IEC 61131 Für verteilte Automatisierungssysteme Logische Einheit Steuerung Steuerung Kommuni- kation Kommuni- kation Betriebssystem Betriebssystem Anwendung Anwendung Prozessgeräte Prozessgeräte

Ziel ist Funktionssicht Implementierungsunabhängig Leitsystem Teilanlage oder -system Funktionen und Gruppen Prozessgeräte

Was enthält die IEC 61131?

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 ?)

Modelle der IEC 61131: Softwaremodell - Struktur der Software Kommunikationsmodell - Informationsfluss zwischen verschiedenen Steuerungen Programmiermodell - Datendarstellung und Programmiersprachen Hardwaremodell

Projektverwaltung Projektname SPS-Parameter (Typ, Speicher) Task Globale Variablen Funktionsbaustein Funktion Programme

Programmiermodell Variablen und Datentypen Programmorganisationseinheiten Programme Funktionsbausteine Funktionen Programmiersprachen

Programmorganisationseinheiten (POE) Funktion Funktionsbaustein Programm englische Bezeichnung: POU (Program Organisation Units)

Elemente einer POE Deklarationsteil Anweisungsteil Variablen Formalparameter und Rückgabewerte Externe und interne Variablen Anweisungsteil Funktion in einer Programmiersprache realisiert

Variablen symbolische Namen physikalischer Standort (I/O, Merker) Müssen dort deklariert werden, wo sie benutzt werden. Variablenart Bezeichner Datentyp Initialisierung

Variablenart

Datentypen elementare strukturierte bool, int, float, time enum - Aufzähltypen array - Felder structure - Datenstrukturen

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)

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

Programmiersprachen graphische Programmiersprachen Textsprachen KOP (Kontaktplan) FBS (Funktionsbausteinsprache) AS (Ablaufsprache ) Textsprachen AWL (Anweisungsliste) ST (Strukturierter Text)

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

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

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

Silo

2. Sprache: KOP Programmierung mit Kontaktplandarstellung und Funktionsbausteinen, Sprache: Variablen: Bezeichnung von Oeffner, Schliesser, Spulen Funktionen: durch 'Stromverdrahtung' und Funktionsbausteinen

Beispiel KOP - Silo Kontakte Spulen Funktionsblöcke

Elemente:

Elemente:

Elemente:

Elemente:

Elemente:

Elemente:

Funktion eine oder mehrere Eingangsvariablen werden zu genau einem Ausgangswert berechnet. Speichern intern keine Daten Liefert bei gleichen Eingangswerten immer das gleicher Ergebnis

Standardfunktionen vordefinierte Funktionen SPS wird zu einer vollwertigen Rechnereinheit SPS kann auch Texte bearbeiten SPS kann Datentypen konvertieren die meisten aus Informatik bekannt

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

FB definieren Deklaration Anweisungen Ergebnis muss gespeichert werden

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:

Konsequenz: Baustein muss Variable zwischen zwei Ausführungen abspeichern Namen gefordert gelöst durch Instanzennamen = gleich Pointer auf Objekt

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.

Instanzierung Deklaration Anwendung

Zeitgeber: Einschaltverzögerung Q ET PT

Zeitgeber: Ausschaltverzögerung IN Q ET PT

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

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

Aufrufhierarchie Ressource Task II Task I Programm A Programm B … … … Funktion 1 Funktionsbaustein a Funktion 2 Funktion3 Funktionsbaustein b

Kommunikationsmodell (wird nur gestreift) Durch Uebergabe der Variablen bei Funktionsaufruf Kommunikation über globale Variablen Kommunikation über SEND und RECEIVE-Funktionen Kommunikation über Zugriffspfade

Uebung: Selbsthaltung POE einrichten - Programm Variablen deklarieren mit Kontaktplan programmieren

Aufgabe: wie werden die folgenden Funktionen programmiert (sie sind gegenüber der FBS-Darstellung verschwunden)? UND ODER