Berger Automatisieren mit SIMATIC S7-300 im TIA Portaldownload.e-bookshelf.de/download/0000/8392/07/L-G-0000839207... · Automatisieren mit SIMATIC S7-300 im TIA Portal Projektieren,

Embed Size (px)

Citation preview

  • Dateianlagecover.gif

  • Berger Automatisieren mit SIMATIC S7-300 im TIA Portal

  • Automatisieren mit SIMATIC S7-300 im TIA PortalProjektieren, Programmieren und Testen mit STEP 7 Professional

    von Hans Berger

    2., berarbeitete und erweiterte Auflage, 2014(korrigierter Nachdruck)

    Publicis Publishing

  • Bibliografische Information der Deutschen Nationalbibliothek

    Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet ber http://dnb.d-nb.de abrufbar.

    Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groer Sorgfalt erarbeitet. Dennoch knnen Fehler nicht ausgeschlossen werden. Eine Haftung des Verlags oder des Autors, gleich aus welchem Rechtsgrund, fr durch die Verwendung der Programmierbeispiele verursachte Schden ist ausgeschlossen.

    www.publicis-books.de

    Print ISBN 978-3-89578-432-3 ePDF ISBN 978-3-89578-902-1

    2. Auflage, 2014

    Herausgeber Siemens Aktiengesellschaft, Berlin und Mnchen Verlag: Publicis Publishing, Erlangen 2014 by Publicis Erlangen, Zweigniederlassung der PWW GmbH

    Das Werk einschlielich aller seiner Teile ist urheberrechtlich geschtzt. Jede Verwendung auerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulssig und strafbar. Das gilt insbesondere fr Vervielfltigungen, bersetzungen, Mikroverfilmungen, Bearbeitungen sonstiger Art sowie fr die Einspeicherung und Verarbeitung in elektronischen Systemen. Dies gilt auch fr die Entnahme von einzelnen Abbildungen und bei auszugsweiser Verwertung von Texten.

    Printed in Germany

  • Vorwort

    5

    Vorwort

    Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungslsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik.

    Das Konzept Totally Integrated Automation (TIA) bedeutet, mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflchen alle Automatisie-rungskomponenten einheitlich zu behandeln. Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgngigkeit bei Projektierung,Programmierung, Datenhaltung und Kommunikation.

    Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Mglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINET.Fr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fr Multipoint Interface (MPI), PROFIBUS undIndustrial Ethernet.

    Die Engineeringsoftware STEP 7 Professional im TIA Portal erschliet die gesamteFunktionalitt der S7-300-Controller. STEP 7 Professional ist das gemeinsameWerkzeug fr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fr den Programmtest und die Diagnose.

    Fr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fnf Pro-grammiersprachen zur Verfgung: Kontaktplan (KOP) mit einer Stromlaufplan-hnlichen grafischen Darstellung, Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung, Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen, Structured Control Language (SCL) mit einer Pascal-hnlichen Hochspra-che und schlielich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms.

    Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fr das Beobachten, Steuern und Forcen von Variablenwerten, mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgerts.

    Das vorliegende Buch beschreibt das Projektieren, Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2.

    Erlangen, im Dezember 2013 Hans Berger

  • Der Inhalt des Buchs auf einen Blick

    6

    Der Inhalt des Buchs auf einen Blick

    Start

    Das Automatisierungssystem SIMATIC S7-300 in der bersicht.

    Eine Einfhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12.

    Die Grundlage der Automatisierungslsung: Ein Projekt erstellen und bearbeiten.

    Automatisierungssystem SIMATIC S7-300

    Die Baugruppen von SIMATIC S7-300 in der bersicht: Aufbau eines Automatisierungs-systems, CPU-Baugruppen, Signal-, Funktions- und Kommunikationsbaugruppen.

    Gertekonfiguration

    Eine Station konfigurieren, Baugruppen parametrieren und Stationen vernetzen.

    Variablen, Adressierung und Datentypen

    Die Eigenschaften der Operandenbereiche Eingnge, Ausgnge, Peripherie, Merker, Daten und temporre Lokaldaten und wie sie adressiert werden: absolut, symbolisch und indirekt.

    Die Beschreibung der elementaren und zusammengesetzten Datentypen, Datentypen fr Bausteinparameter, Zeiger und Anwenderdatentypen.

    Programmbearbeitung

    Wie sich die CPU-Baugruppe in den Betriebszustnden ANLAUF, RUN und STOP verhlt.

    Wie das Anwenderprogramm durch Bausteine strukturiert wird, welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden.

    Wie das Anwenderprogramm bearbeitet wird: Anlaufverhalten, Hauptprogramm, Alarmbe-arbeitung, Fehlerbehandlung und Diagnose.

    Der Programmeditor

    Arbeiten mit der PLC-Variablentabelle, Codebausteine und Datenbausteine erstellen und bearbeiten, Bausteine bersetzen und Programminformationen auswerten.

    Die Programmiersprache Kontaktplan KOP

    Das Charakteristische der KOP-Programmierung; Reihen- und Parallelschaltung von Kontak-ten; der Einsatz von Spulen, Standard-Boxen, Q-Boxen und EN/ENO-Boxen.

    Die Programmiersprache Funktionsplan FUP

    Das Charakteristische der FUP-Programmierung; Boxen fr binre Verknpfungen; der Ein-satz von Standard-Boxen, Q-Boxen und EN/ENO-Boxen.

    Die Programmiersprache Anweisungsliste AWL

    Das Charakteristische der AWL-Programmierung; Programmierung von binren Verknp-fungen, Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung.

  • Der Inhalt des Buchs auf einen Blick

    7

    Die Programmiersprache Structured Control Language SCL

    Das Charakteristische der SCL-Programmierung; Operatoren und Ausdrcke, Arbeiten mit Binr- und Digitalfunktionen, Programmbearbeitung steuern mit Kontrollanweisungen.

    Die Ablaufsteuerung S7-GRAPH

    Was eine Ablaufsteuerung ist und was ihre Elemente sind: Ablaufketten, Schritte, Transitio-nen und Verzweigungen. Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird.

    Die Beschreibung der Steuerungsfunktionen

    Basisfunktionen: Funktionen fr Binrsignale: binre Verknpfungen, Speicherfunktio-nen, Flankenauswertungen, SIMATIC- und IEC-Zeit- und Zhlfunktionen.

    Digitalfunktionen: Funktionen fr Digitalvariablen: bertragungs-, Vergleichs-, Arithme-tik-, Mathematik-, Konvertierungs-, Schiebe- und Logikfunktionen.

    Programmfluss-Steuerung: Mit Statusbits arbeiten, Sprungfunktionen programmieren, Bausteine aufrufen und beenden, das Master Control Relay verwenden.

    Online-Betrieb und Programmtest

    Ein Programmiergert an die PLC-Station anschlieen, den Online-Betrieb einschalten, die Projektdaten bertragen und das Anwenderprogramm schtzen.

    Die Anwenderbausteine laden, ndern, lschen und vergleichen.

    Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen.

    Dezentrale Peripherie

    In der bersicht: das dezentrale Peripheriesystem ET 200.

    Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat.

    Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat.

    Wie ein Aktor/Sensor-Interface System projektiert wird und welche Eigenschaften es hat.

    Kommunikation

    Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden.

    Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird.

    Anhang

    Wie externe Quelldateien fr AWL- und SCL-Bausteine erstellt und importiert werden.

    Wie ein mit STEP 7 V5.x erstelltes Projekt in das TIA Portal migriert wird.

    Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird.

    Wie der Webserver in der CPU projektiert wird und welche Mglichkeiten er bietet.

    Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden.

  • Inhaltsverzeichnis

    8

    Inhaltsverzeichnis

    1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

    1.1 bersicht Automatisierungssystem S7-300 . . . . . . . . . . . . . . . . . . . . . . . . . . . 221.1.1 Automatisierungsgert SIMATIC S7-300 . . . . . . . . . . . . . . . . . . . . . . . . . . . 231.1.2 bersicht STEP 7 Professional V12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241.1.3 Fnf Programmiersprachen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261.1.4 Bearbeitung des Anwenderprogramms . . . . . . . . . . . . . . . . . . . . . . . . . . . 271.1.5 Datenhaltung im SIMATIC-Automatisierungssystem . . . . . . . . . . . . . . . . 30

    1.2 Einfhrung in STEP 7 Professional V12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311.2.1 STEP 7 installieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 311.2.2 Automation License Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.2.3 STEP 7 Professional starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.2.4 Portalansicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321.2.5 Die Fenster der Projektansicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331.2.6 Hilfe-Informationssystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361.2.7 Bedienoberflche anpassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

    1.3 Ein SIMATIC-Projekt bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371.3.1 Strukturierte Darstellung der Projektdaten . . . . . . . . . . . . . . . . . . . . . . . . 381.3.2 Projektdaten und Editoren fr eine PLC-Station . . . . . . . . . . . . . . . . . . . . 381.3.3 Ein Projekt erstellen und bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421.3.4 Mit Referenzprojekten arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451.3.5 Bibliotheken anlegen und bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

    2 Automatisierungssystem SIMATIC S7-300 . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    2.1 Komponenten einer S7-300-Station . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

    2.2 CPU-Baugruppen S7-300 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.2.1 CPU-Varianten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492.2.2 Bedien- und Anzeigeelemente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.2.3 SIMATIC Micro Memory Card . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522.2.4 Speicherbereiche in einer S7-300-Station . . . . . . . . . . . . . . . . . . . . . . . . . . 522.2.5 Busschnittstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

    2.3 Signalbaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562.3.1 Digitaleingabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562.3.2 Digitalausgabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.3.3 Digitalein-/ausgabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 572.3.4 Analogeingabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.3.5 Analogausgabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 582.3.6 Analogein-/ausgabebaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

    2.4 Funktionsbaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60

    2.5 Kommunikationsbaugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

  • Inhaltsverzeichnis

    9

    2.6 Sonstige Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632.6.1 Anschaltungsbaugruppen (IM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632.6.2 Stromversorgungsbaugruppen (PS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 632.6.3 Simulatorbaugruppe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 642.6.4 Platzhalterbaugruppe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

    2.7 SIPLUS S7-300 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

    3 Gertekonfiguration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    3.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

    3.2 Eine Station konfigurieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693.2.1 Eine PLC-Station hinzufgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693.2.2 Eine Baugruppe hinzufgen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693.2.3 Einen Erweiterungsbaugruppentrger hinzufgen . . . . . . . . . . . . . . . . . 70

    3.3 Baugruppen parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713.3.1 Die CPU-Eigenschaften parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 713.3.2 Baugruppen adressieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 743.3.3 Signalbaugruppen parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

    3.4 Netz projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783.4.1 Einfhrung, bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 783.4.2 Stationen vernetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 793.4.3 Teilnehmeradressen in einem Subnetz . . . . . . . . . . . . . . . . . . . . . . . . . . . . 803.4.4 Verbindungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813.4.5 Ein MPI-Subnetz projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 843.4.6 Ein PROFIBUS-Subnetz projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 853.4.7 Ein PROFINET-Subnetz projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 873.4.8 Ein AS-i-Subnetz projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    4 Variablen, Adressierung und Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    4.1 Operanden und Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924.1.1 Einfhrung, bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924.1.2 Operandenbereiche Eingnge und Ausgnge . . . . . . . . . . . . . . . . . . . . . . 934.1.3 Operandenbereich Merker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964.1.4 Operandenbereich Daten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 974.1.5 Operandenbereich temporre Lokaldaten . . . . . . . . . . . . . . . . . . . . . . . . . 97

    4.2 Adressierung von Operanden und Variablen . . . . . . . . . . . . . . . . . . . . . . . . . 984.2.1 Signalweg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 984.2.2 Absolute Adressierung von Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 994.2.3 Symbolische Adressierung von Variablen . . . . . . . . . . . . . . . . . . . . . . . . 1044.2.4 Adressierung von Konstanten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105

    4.3 Indirekte Adressierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064.3.1 Speicherindirekte Adressierung mit AWL . . . . . . . . . . . . . . . . . . . . . . . . . 1074.3.2 Registerindirekte Adressierung mit AWL . . . . . . . . . . . . . . . . . . . . . . . . . 1104.3.3 Arbeiten mit den Adressregistern bei AWL . . . . . . . . . . . . . . . . . . . . . . . . 1114.3.4 Direkter Zugriff auf komplexe Lokalvariablen mit AWL . . . . . . . . . . . . . 1194.3.5 Indirekte Adressierung bei SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121

  • Inhaltsverzeichnis

    10

    4.4 Elementare Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234.4.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1234.4.2 Bitfolge-Datentypen BOOL, BYTE, WORD und DWORD . . . . . . . . . . . . . . 1264.4.3 BCD-Zahlen BCD16 und BCD32 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1264.4.4 Festpunkt-Datentypen mit Vorzeichen INT und DINT . . . . . . . . . . . . . . . 1284.4.5 Gleitpunkt-Datentyp REAL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1284.4.6 Datentyp CHAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1294.4.7 Datentypen fr Zeitdauern und Zeitpunkte . . . . . . . . . . . . . . . . . . . . . . . 130

    4.5 Zusammengesetzte Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1324.5.1 Zeichenkette STRING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1324.5.2 Datentyp ARRAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1344.5.3 Datentyp STRUCT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

    4.6 Parametertypen und Zeiger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1384.6.1 Parametertypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1384.6.2 Zeiger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1394.6.3 Variabler ANY-Zeiger bei AWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1434.6.4 Variabler ANY-Zeiger bei SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

    4.7 PLC-Datentypen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146

    4.8 Startinformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

    5 Programmbearbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

    5.1 Betriebszustnde der CPU-Baugruppe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1485.1.1 Betriebszustand STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1495.1.2 Betriebszustand ANLAUF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1505.1.3 Betriebszustand RUN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1525.1.4 Betriebszustand HALT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1525.1.5 CPU urlschen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1535.1.6 Auslieferungszustand wiederherstellen . . . . . . . . . . . . . . . . . . . . . . . . . . 1535.1.7 Remanenzverhalten von Operanden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154

    5.2 Anwenderprogramm erstellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1545.2.1 Programmentwurf . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1545.2.2 Programmbearbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1585.2.3 Bausteinarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1605.2.4 Bausteineigenschaften bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1615.2.5 Bausteinschnittstelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1655.2.6 Beispiel zur Verwendung von Bausteinparametern . . . . . . . . . . . . . . . . 167

    5.3 Bausteine aufrufen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1695.3.1 Allgemeines zu Aufrufen von Codebausteinen . . . . . . . . . . . . . . . . . . . . 1695.3.2 Aufruf von Funktionen (FC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1695.3.3 Aufruf von Funktionsbausteinen (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1715.3.4 Weiterreichen von Bausteinparametern . . . . . . . . . . . . . . . . . . . . . . . . 174

    5.4 Anlaufprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1755.4.1 Organisationsbaustein OB 100 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1755.4.2 Baugruppenadresse ermitteln . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1765.4.3 Baugruppen parametrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

  • Inhaltsverzeichnis

    11

    5.5 Hauptprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1815.5.1 Organisationsbaustein OB 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1815.5.2 Prozessabbild-Aktualisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1825.5.3 Zykluszeit und Reaktionszeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1835.5.4 Programm anhalten, stoppen und schtzen . . . . . . . . . . . . . . . . . . . . . . 1855.5.5 Uhrzeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1875.5.6 Systemzeit lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1895.5.7 Betriebsstundenzhler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

    5.6 Alarmbearbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1915.6.1 Einfhrung zur Alarmbearbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1915.6.2 Priorittsklassen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1925.6.3 Uhrzeitalarm, Organisationsbaustein OB 10 . . . . . . . . . . . . . . . . . . . . . 1925.6.4 Verzgerungsalarme, Organisationsbausteine OB 20 und OB 21 . . . . . 1965.6.5 Weckalarme, Organisationsbausteine OB 32 bis OB 35 . . . . . . . . . . . . . 1985.6.6 Prozessalarm, Organisationsbaustein OB 40 . . . . . . . . . . . . . . . . . . . . . . 2005.6.7 DPV1-Alarme, Organisationsbausteine OB 55 bis OB 57 . . . . . . . . . . . . 2025.6.8 Taktsynchronalarm, Organisationsbaustein OB 61 . . . . . . . . . . . . . . . . . 2025.6.9 Alarmzusatzinformation lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205

    5.7 Fehlerbehandlung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.7.1 Fehlerursachen und Fehlerreaktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.7.2 Synchronfehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2065.7.3 Synchronfehlerbearbeitung sperren und freigeben . . . . . . . . . . . . . . . . 2085.7.4 Ersatzwert eintragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2115.7.5 Asynchronfehler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2125.7.6 Alarme und Asynchronfehler sperren, verzgern und freigeben . . . . . 215

    5.8 Diagnose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2175.8.1 Diagnosealarm, Organisationsbaustein OB 82 . . . . . . . . . . . . . . . . . . . . 2175.8.2 Systemzustandsliste lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2195.8.3 Startinformation lesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2205.8.4 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben . . . . . . 2215.8.5 Systemdiagnose mit Report System Errors . . . . . . . . . . . . . . . . . . . . . . . 222

    6 Programmeditor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

    6.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225

    6.2 PLC-Variablentabelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2266.2.1 Mit PLC-Variablentabellen arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2266.2.2 PLC-Variablen definieren und bearbeiten . . . . . . . . . . . . . . . . . . . . . . . . 2266.2.3 PLC-Variablen vergleichen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2286.2.4 PLC-Variablentabelle exportieren und importieren . . . . . . . . . . . . . . . . 2296.2.5 Konstantentabellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

    6.3 Einen Codebaustein programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306.3.1 Einen neuen Codebaustein anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2306.3.2 Arbeitsbereich des Programmeditors fr Codebausteine . . . . . . . . . . . . 2326.3.3 Bausteineigenschaften fr Codebausteine festlegen . . . . . . . . . . . . . . . . 2336.3.4 Bausteinschnittstelle programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . 2346.3.5 Steuerungsfunktion programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236

  • Inhaltsverzeichnis

    12

    6.3.6 Variablen editieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2406.3.7 Mit Programmkommentaren arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . 242

    6.4 Einen Datenbaustein programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2446.4.1 Einen neuen Datenbaustein anlegen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2446.4.2 Arbeitsbereich des Programmeditors fr Datenbausteine . . . . . . . . . . . 2446.4.3 Bausteineigenschaften fr Datenbausteine festlegen . . . . . . . . . . . . . . . 2466.4.4 Datenvariablen deklarieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2466.4.5 Datenvariablen in Globaldatenbausteinen eingeben . . . . . . . . . . . . . . . 247

    6.5 Bausteine bersetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2486.5.1 bersetzung starten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2486.5.2 SCL-Bausteine bersetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2496.5.3 Fehler nach der bersetzung beheben . . . . . . . . . . . . . . . . . . . . . . . . . . . 249

    6.6 Programminformationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2506.6.1 Querverweisliste . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2516.6.2 Belegungsplan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2536.6.3 Aufrufstruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2546.6.4 Abhngigkeitsstruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556.6.5 Konsistenzprfung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2556.6.6 Speicherauslastung der CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

    7 Kontaktplan KOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258

    7.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2587.1.1 Programmieren mit KOP allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2587.1.2 Programmelemente des Kontaktplans . . . . . . . . . . . . . . . . . . . . . . . . . . . 260

    7.2 Binre Verknpfungen mit KOP programmieren . . . . . . . . . . . . . . . . . . . . . 2607.2.1 Schlieerkontakt und ffnerkontakt . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2607.2.2 Reihen- und Parallelschaltung von Kontakten . . . . . . . . . . . . . . . . . . . . . 2627.2.3 T-Abzweig, offener Parallelzweig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2637.2.4 Verknpfungsergebnis negieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2647.2.5 Flankenauswertung einer Binrvariablen . . . . . . . . . . . . . . . . . . . . . . . . 2657.2.6 Vergleich-Kontakte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265

    7.3 Speicherfunktionen mit KOP programmieren . . . . . . . . . . . . . . . . . . . . . . . . 2667.3.1 Einfache Spule, Zuweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2667.3.2 Setzen- und Rcksetzen-Spule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2687.3.3 Speicherndes Verhalten durch Selbsthaltung . . . . . . . . . . . . . . . . . . . . . 2687.3.4 Spulen mit Zeitverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2697.3.5 Spulen mit Zhlerverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

    7.4 Q-Boxen mit KOP programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2717.4.1 Speicher-Boxen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2727.4.2 Flankenauswertung des Stromflusses . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2727.4.3 SIMATIC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2737.4.4 SIMATIC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2747.4.5 IEC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2747.4.6 IEC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

    7.5 EN/ENO-Boxen mit KOP programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2777.5.1 bertragungsfunktion, MOVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277

  • Inhaltsverzeichnis

    13

    7.5.2 Arithmetische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2787.5.3 Mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2797.5.4 Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2807.5.5 Schiebefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2817.5.6 Wortverknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282

    7.6 Programmfluss bei KOP steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2847.6.1 Mit Statusbits im Kontaktplan arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . 2847.6.2 EN/ENO-Mechanismus bei KOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2867.6.3 Sprungfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2877.6.4 Bausteinfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2887.6.5 Master Control Relay (MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290

    8 Funktionsplan FUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292

    8.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2928.1.1 Programmieren mit FUP allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2928.1.2 Programmelemente des Funktionsplans . . . . . . . . . . . . . . . . . . . . . . . . . 294

    8.2 Binre Verknpfungen mit FUP programmieren . . . . . . . . . . . . . . . . . . . . . 2958.2.1 Abfrage auf Signalzustand 1 und auf Signalzustand 0 . . . . . . . . . . . 2958.2.2 Eine binre Verknpfung im Funktionsplan programmieren . . . . . . . . 2968.2.3 UND-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2978.2.4 ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2978.2.5 Exklusiv-ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2978.2.6 Kombinierte binre Verknpfungen, Verknpfungsergebnis negieren 2988.2.7 T-Abzweig . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2998.2.8 Flankenauswertung von Binrvariablen . . . . . . . . . . . . . . . . . . . . . . . . . . 2998.2.9 Vergleichsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300

    8.3 Standard-Boxen mit FUP programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . 3018.3.1 Zuweisung-Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3028.3.2 Setzen- und Rcksetzen-Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3028.3.3 Standard-Boxen mit Zeitverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3038.3.4 Standard-Boxen mit Zhlerverhalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304

    8.4 Q-Boxen mit FUP programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3058.4.1 Speicher-Boxen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3058.4.2 Flankenauswertung des Verknpfungsergebnisses . . . . . . . . . . . . . . . . 3078.4.3 SIMATIC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3088.4.4 SIMATIC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3088.4.5 IEC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3098.4.6 IEC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309

    8.5 EN/ENO-Boxen mit FUP programmieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3108.5.1 bertragungsfunktion MOVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3128.5.2 Arithmetische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3128.5.3 Mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3138.5.4 Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3138.5.5 Schiebefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3158.5.6 Wortverknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316

  • Inhaltsverzeichnis

    14

    8.6 Programmfluss bei FUP steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3188.6.1 Mit Statusbits im Funktionsplan arbeiten . . . . . . . . . . . . . . . . . . . . . . . . 3188.6.2 EN/ENO-Mechanismus bei FUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3208.6.3 Sprungfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3218.6.4 Bausteinfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3228.6.5 Master Control Relay (MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324

    9 Anweisungsliste AWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326

    9.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3269.1.1 Programmieren mit AWL allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3269.1.2 Aufbau einer AWL-Anweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327

    9.2 Binre Verknpfungen mit AWL programmieren . . . . . . . . . . . . . . . . . . . . . 3289.2.1 Bearbeitung einer binren Verknpfung, Verknpfungsschritt . . . . . . 3289.2.2 Abfrage auf Signalzustand 1 und auf Signalzustand 0 . . . . . . . . . . . 3309.2.3 Eine binre Verknpfung in Anweisungsliste programmieren . . . . . . . 3319.2.4 UND-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3329.2.5 ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3329.2.6 Exklusiv-ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3339.2.7 Kombinierte binre Verknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3339.2.8 Verknpfungsergebnis steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 336

    9.3 Speicherfunktionen mit AWL programmieren . . . . . . . . . . . . . . . . . . . . . . . 3379.3.1 Zuweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3379.3.2 Setzen und Rcksetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3389.3.3 Flankenauswertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338

    9.4 Zeit- und Zhlfunktionen mit AWL programmieren . . . . . . . . . . . . . . . . . . . 3399.4.1 SIMATIC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3399.4.2 SIMATIC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3419.4.3 IEC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3429.4.4 IEC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343

    9.5 Digitalfunktionen mit AWL programmieren . . . . . . . . . . . . . . . . . . . . . . . . . 3449.5.1 bertragungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3449.5.2 Vergleichsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3469.5.3 Arithmetische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3499.5.4 Mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3529.5.5 Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3539.5.6 Schiebefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3549.5.7 Wortverknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356

    9.6 Programmfluss bei AWL steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3589.6.1 Mit Statusbits in der Anweisungsliste arbeiten . . . . . . . . . . . . . . . . . . . . 3599.6.2 EN/ENO-Mechanismus bei AWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3619.6.3 Sprungfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3639.6.4 Sprungverteiler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3649.6.5 Schleifensprung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3649.6.6 Bausteinfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3659.6.7 Master Control Relay (MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368

    9.7 Weitere AWL-Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369

  • Inhaltsverzeichnis

    15

    9.7.1 Akkumulatorfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3699.7.2 Addieren von Konstanten zum Akkumulator 1 . . . . . . . . . . . . . . . . . . . . 3719.7.3 Dekrementieren, Inkrementieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3729.7.4 Nullanweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373

    10 Structured Control Language SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374

    10.1 Einfhrung in die Programmierung mit SCL . . . . . . . . . . . . . . . . . . . . . . . 37410.1.1 Programmieren mit SCL allgemein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37410.1.2 SCL-Anweisungen und Operatoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376

    10.2 Binre Verknpfungen mit SCL programmieren . . . . . . . . . . . . . . . . . . . . 37810.2.1 Abfrage auf Signalzustand 1 und auf Signalzustand 0 . . . . . . . . . . 37810.2.2 UND-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37910.2.3 ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37910.2.4 Exklusiv-ODER-Funktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38010.2.5 Kombinierte binre Verknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38010.2.6 Verknpfungsergebnis negieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381

    10.3 Speicherfunktionen mit SCL programmieren . . . . . . . . . . . . . . . . . . . . . . 38210.3.1 Wertzuweisung einer Binrvariablen . . . . . . . . . . . . . . . . . . . . . . . . . . . 38210.3.2 Setzen und Rcksetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38210.3.3 Flankenauswertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382

    10.4 Zeit- und Zhlfunktionen mit SCL programmieren . . . . . . . . . . . . . . . . . . 38310.4.1 SIMATIC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38310.4.2 SIMATIC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38410.4.3 IEC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38510.4.4 IEC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386

    10.5 Digitalfunktionen mit SCL programmieren . . . . . . . . . . . . . . . . . . . . . . . . 38710.5.1 bertragungsfunktion, Wertzuweisung einer Digitalvariablen . . . . . 38710.5.2 Vergleichsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38710.5.3 Arithmetische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38810.5.4 Mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38910.5.5 Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39010.5.6 Schiebefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39110.5.7 Wortverknpfungen, logischer Ausdruck . . . . . . . . . . . . . . . . . . . . . . . 392

    10.6 Programmfluss mit SCL steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39310.6.1 Mit der Variablen ENO arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39310.6.2 EN/ENO-Mechanismus bei SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39510.6.3 Kontrollanweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39610.6.4 Bausteinfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 404

    11 Ablaufsteuerung S7-GRAPH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408

    11.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40811.1.1 Was ist eine Ablaufsteuerung? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40811.1.2 Eigenschaften einer Ablaufsteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . 40911.1.3 Programm fr eine Ablaufsteuerung, Mengengerst . . . . . . . . . . . . . . 41011.1.4 Betriebsarten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41011.1.5 Vorgehen bei der Projektierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 411

  • Inhaltsverzeichnis

    16

    11.2 Elemente einer Ablaufsteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41211.2.1 Schritte und Transitionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41211.2.2 Sprnge in einer Ablaufsteuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41311.2.3 Verzweigungen einer Ablaufkette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41311.2.4 GRAPH-spezifische Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41511.2.5 Permanente Anweisungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41611.2.6 Schritt- und Transitionsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41611.2.7 Bearbeitung von Aktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420

    11.3 Eine Ablaufsteuerung projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42611.3.1 Den GRAPH-Funktionsbaustein programmieren . . . . . . . . . . . . . . . . . . 42711.3.2 Projektieren der Kettenstruktur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42811.3.3 Schritte und Transitionen programmieren . . . . . . . . . . . . . . . . . . . . . . 42911.3.4 Permanente Anweisungen programmieren . . . . . . . . . . . . . . . . . . . . . . 43111.3.5 Bausteinbergreifende Meldungen projektieren . . . . . . . . . . . . . . . . . 43111.3.6 Attribute des GRAPH-Funktionsbausteins . . . . . . . . . . . . . . . . . . . . . . . 43211.3.7 GRAPH-Funktionsbaustein anwenden . . . . . . . . . . . . . . . . . . . . . . . . . . 433

    11.4 Ablaufsteuerung testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43411.4.1 GRAPH-Funktionsbaustein laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43511.4.2 Einstellungen zum Programmtest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43511.4.3 Betriebsarten verwenden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43611.4.4 Ablaufkette synchronisieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43711.4.5 Mit Programmstatus testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438

    12 Basisfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440

    12.1 Binre Verknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44012.1.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44012.1.2 Arbeiten mit Binrsignalen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44112.1.3 UND-Funktion, Reihenschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44412.1.4 ODER-Funktion, Parallelschaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44512.1.5 Exklusiv-ODER-Funktion, Antivalenzfunktion . . . . . . . . . . . . . . . . . . . . 44512.1.6 Verknpfungsergebnis negieren, NOT-Kontakt . . . . . . . . . . . . . . . . . . . 446

    12.2 Speicherfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44812.2.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44812.2.2 Standardspule, Zuweisung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44812.2.3 Einzelnes Setzen und Rcksetzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44812.2.4 Vorrangiges Setzen und Rcksetzen, Speicherfunktion . . . . . . . . . . . . 45012.2.5 Flankenauswertung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452

    12.3 SIMATIC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45712.3.1 bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45712.3.2 Programmieren einer Zeitfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46012.3.3 Zeitverhalten als Impuls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46212.3.4 Zeitverhalten als verlngerter Impuls . . . . . . . . . . . . . . . . . . . . . . . . . . . 46412.3.5 Zeitverhalten als Einschaltverzgerung . . . . . . . . . . . . . . . . . . . . . . . . . 46612.3.6 Zeitverhalten als speichernde Einschaltverzgerung . . . . . . . . . . . . . . 46812.3.7 Zeitverhalten als Ausschaltverzgerung . . . . . . . . . . . . . . . . . . . . . . . . 470

    12.4 IEC-Zeitfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472

  • Inhaltsverzeichnis

    17

    12.4.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47212.4.2 Impulsbildung TP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47312.4.3 Einschaltverzgerung TON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47412.4.4 Ausschaltverzgerung TOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475

    12.5 SIMATIC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47612.5.1 bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47612.5.2 Programmieren einer Zhlfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47812.5.3 Funktionsweise einer Zhlfunktion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48012.5.4 Freigeben einer Zhlfunktion bei AWL . . . . . . . . . . . . . . . . . . . . . . . . . . 482

    12.6 IEC-Zhlfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48312.6.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48312.6.2 Vorwrtszhler CTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48412.6.3 Rckwrtszhler CTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48512.6.4 Vorwrts/Rckwrtszhler CTUD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487

    13 Digitalfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488

    13.1 Allgemeines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 488

    13.2 bertragungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48913.2.1 Allgemeines zur einfachen bertragungsfunktion . . . . . . . . . . . . . . 48913.2.2 MOVE-Box bei KOP und FUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48913.2.3 Laden und Transferieren bei AWL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49113.2.4 Wertzuweisungen bei SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49213.2.5 Datenbereich im Arbeitsspeicher kopieren und fllen . . . . . . . . . . . . . 49413.2.6 Datenbereich vom und zum Ladespeicher bertragen . . . . . . . . . . . . . 49713.2.7 Speicherbereich steuern bei MCR-Abhngigkeit . . . . . . . . . . . . . . . . . . 498

    13.3 Vergleichsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50113.3.1 Ausfhrung der einfachen Vergleichsfunktion . . . . . . . . . . . . . . . . . 50113.3.2 Vergleichsfunktion T_COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50313.3.3 Vergleichsfunktion S_COMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503

    13.4 Arithmetische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50413.4.1 Allgemeine Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50413.4.2 Datentypen und Statusbits bei einer arithmetischen Funktion . . . . . 50513.4.3 Ausfhrung der arithmetischen Funktion . . . . . . . . . . . . . . . . . . . . . . . 50713.4.4 Arithmetische Funktionen fr Datum und Uhrzeit . . . . . . . . . . . . . . . . 508

    13.5 Mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51013.5.1 Allgemeine Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51013.5.2 Allgemeine Ausfhrung einer mathematischen Funktion . . . . . . . . . . 51113.5.3 Winkelfunktionen SIN, COS, TAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51113.5.4 Arcusfunktionen ASIN, ACOS, ATAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51213.5.5 Sonstige mathematische Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . 512

    13.6 Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51413.6.1 Implizite Datentypwandlung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51413.6.2 Datentypwandlung von Festpunktzahlen . . . . . . . . . . . . . . . . . . . . . . . . 51513.6.3 Datentypwandlung von Gleitpunktzahlen . . . . . . . . . . . . . . . . . . . . . . . 51813.6.4 Datentypwandlung fr Datum/Uhrzeit mit T_CONV . . . . . . . . . . . . . . . 52113.6.5 Datentypwandlung fr Datentyp STRING mit S_CONV . . . . . . . . . . . . . 522

  • Inhaltsverzeichnis

    18

    13.6.6 Datentypwandlung von Hexadezimalzahlen . . . . . . . . . . . . . . . . . . . . . 52413.6.7 Skalieren und Deskalieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52513.6.8 Sonstige Konvertierungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526

    13.7 Schiebefunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52713.7.1 Allgemeine Funktionsbeschreibung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52713.7.2 Allgemeine Ausfhrung einer Schiebefunktion . . . . . . . . . . . . . . . . . . 52913.7.3 Rechts schieben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53013.7.4 Links schieben . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53013.7.5 Rechts rotieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53113.7.6 Links rotieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53213.7.7 Rotieren durch das Anzeigenbit A1 (AWL) . . . . . . . . . . . . . . . . . . . . . . . 532

    13.8 Logikfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53213.8.1 Wortverknpfungen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53313.8.2 Invertieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53513.8.3 Bit codieren und Bitnummer setzen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53613.8.4 Auswahl- und Begrenzerfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537

    13.9 Funktionen fr Zeichenketten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540

    14 Programmfluss-Steuerung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544

    14.1 Statusbits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54514.1.1 Beschreibung der Statusbits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54514.1.2 Steuern der Statusbits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54714.1.3 Verknpfungsergebnis setzen und rcksetzen . . . . . . . . . . . . . . . . . . . 54814.1.4 Binrergebnis steuern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54914.1.5 Auswertung der Statusbits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 552

    14.2 Sprungfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55314.2.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55314.2.2 Absoluter Sprung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55314.2.3 Bedingte Sprungfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55514.2.4 Von den Statusbits abhngige Sprungfunktionen . . . . . . . . . . . . . . . . 556

    14.3 Bausteinende-Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55914.3.1 Bausteinende-Funktion RET (KOP und FUP) . . . . . . . . . . . . . . . . . . . . . . 56014.3.2 Bausteinende-Funktionen BEB, BEA und BE (AWL) . . . . . . . . . . . . . . . . 56014.3.3 RETURN-Anweisung (SCL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561

    14.4 Aufruf von Codebausteinen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56114.4.1 Allgemeines zu Bausteinaufrufen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56114.4.2 Aufruf einer Funktion (FC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56214.4.3 Aufruf eines Funktionsbausteins (FB) . . . . . . . . . . . . . . . . . . . . . . . . . . . 56414.4.4 Wechsel zu einem Baustein ohne Bausteinparameter . . . . . . . . . . . . . 566

    14.5 Datenbausteinfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56814.5.1 Datenbaustein aufschlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56914.5.2 Zustzliche Datenbausteinfunktionen bei AWL . . . . . . . . . . . . . . . . . . . 57014.5.3 Datenbaustein erzeugen, lschen und testen . . . . . . . . . . . . . . . . . . . . 571

    14.6 Master Control Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57414.6.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57414.6.2 MCR-Abhngigkeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 575

  • Inhaltsverzeichnis

    19

    14.6.3 MCR-Bereich und MCR-Zone . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57514.6.4 MCR-Bereich und MCR-Zone bei einem Bausteinwechsel . . . . . . . . . . . 57814.6.5 Anweisungen fr das Master Control Relay . . . . . . . . . . . . . . . . . . . . . . 578

    15 Online-Betrieb und Programmtest . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 580

    15.1 Programmiergert an die PLC-Station anschlieen . . . . . . . . . . . . . . . . . . 58115.1.1 Einstellungen am Programmiergert . . . . . . . . . . . . . . . . . . . . . . . . . . . 58115.1.2 Das Programmiergert mit der PLC-Station verbinden . . . . . . . . . . . . 58215.1.3 Den Online-Betrieb einschalten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583

    15.2 Projektdaten bertragen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58415.2.1 Die Projektdaten erstmalig laden . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58415.2.2 Die Projektdaten nachladen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58715.2.3 Schutz des Anwenderprogramms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58815.2.4 Online-Projekt ohne Offline-Projekt bearbeiten . . . . . . . . . . . . . . . . . . 58915.2.5 Mit der Micro Memory Card arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . 590

    15.3 Mit Bausteinen im Online-Betrieb arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . 59015.3.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59015.3.2 Die Online-Version eines Bausteins bearbeiten . . . . . . . . . . . . . . . . . . . 59115.3.3 Einen Baustein in die CPU-Baugruppe laden . . . . . . . . . . . . . . . . . . . . . 59215.3.4 Den Arbeitsspeicher komprimieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59415.3.5 Bausteine aus der CPU zurckladen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59415.3.6 Mit Einstellwerten arbeiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59615.3.7 Bausteine vergleichen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 598

    15.4 Hardware-Diagnose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60115.4.1 Status-Anzeigen an den Baugruppen . . . . . . . . . . . . . . . . . . . . . . . . . . . 60115.4.2 Diagnose-Informationen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60215.4.3 Diagnosepuffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60215.4.4 Diagnose-Funktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60415.4.5 Online-Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60415.4.6 Weitere Diagnose-Informationen ber das Programmiergert . . . . . . 605

    15.5 Anwenderprogramm testen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60615.5.1 Aufrufumgebung definieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60615.5.2 Testen mit Programmstatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60715.5.3 Testen im Einzelschrittmodus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61115.5.4 PLC-Variablen beobachten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61415.5.5 Datenvariablen beobachten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61415.5.6 Testen mit Beobachtungstabellen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61515.5.7 Beobachten und Steuern im Betriebszustand STOP . . . . . . . . . . . . . . . 62015.5.8 Testen mit der Force-Tabelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 622

    16 Dezentrale Peripherie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626

    16.1 Einfhrung, bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 626

    16.2 Dezentrales Peripheriesystem ET 200 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62716.2.1 ET 200M . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62716.2.2 ET 200MP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62816.2.3 ET 200S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 628

  • Inhaltsverzeichnis

    20

    16.2.4 ET 200SP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62916.2.5 ET 200iSP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63016.2.6 ET 200pro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63116.2.7 ET 200eco . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 631

    16.3 PROFINET IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63216.3.1 Komponenten von PROFINET IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63216.3.2 Adressen bei PROFINET IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63516.3.3 Spezielle PROFINET-Konfigurationen . . . . . . . . . . . . . . . . . . . . . . . . . . . 63816.3.4 PROFINET IO projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63916.3.5 Kopplungsbaugruppen fr PROFINET IO . . . . . . . . . . . . . . . . . . . . . . . . 64316.3.6 Echtzeit-Kommunikation bei PROFINET . . . . . . . . . . . . . . . . . . . . . . . . . 644

    16.4 PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64916.4.1 Komponenten von PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64916.4.2 Adressen bei PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65216.4.3 PROFIBUS DP projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65616.4.4 Kopplungsbaugruppen fr PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . 65916.4.5 Sonderfunktionen fr PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661

    16.5 Taktsynchronitt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66216.5.1 Einfhrung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66216.5.2 Taktsynchronitt bei PROFINET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66316.5.3 Taktsynchronitt bei PROFIBUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 666

    16.6 Systembausteine fr dezentrale Peripherie . . . . . . . . . . . . . . . . . . . . . . . . . 66916.6.1 Systembausteine fr PROFIBUS DP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66916.6.2 Systembausteine fr PROFIBUS DP und PROFINET IO . . . . . . . . . . . . . 67316.6.3 Systembausteine fr PROFINET IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 676

    16.7 Aktor/Sensor-Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67916.7.1 Komponenten von Aktor/Sensor-Interface . . . . . . . . . . . . . . . . . . . . . . . 67916.7.2 Adressen am Aktor/Sensor-Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68116.7.3 Aktor/Sensor-Interface mit CP 343-2P projektieren . . . . . . . . . . . . . . . . 68116.7.4 Systemfunktionen fr AS-i . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 683

    17 Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684

    17.1 bersicht . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684

    17.2 S7-Basiskommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68517.2.1 Grundlagen der stationsinternen S7-Basiskommunikation . . . . . . . . . 68517.2.2 Stationsinterne S7-Basiskommunikation projektieren . . . . . . . . . . . . 68617.2.3 Systembausteine fr stationsinterne S7-Basiskommunikation . . . . . . 68617.2.4 Grundlagen der stationsexternen S7-Basiskommunikation . . . . . . . . 68817.2.5 Stationsexterne S7-Basiskommunikation projektieren . . . . . . . . . . . . 68917.2.6 Systembausteine fr stationsexterne S7-Basiskommunikation . . . . . 689

    17.3 S7-Kommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69217.3.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69217.3.2 S7-Kommunikation projektieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69317.3.3 Einseitiger Datenaustausch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69517.3.4 Zweiseitiger Datenaustausch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69617.3.5 berwachungsfunktionen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 699

  • Inhaltsverzeichnis

    21

    17.4 Open User Communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700

    17.4.1 Grundlagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 700

    17.4.2 Verbindungen auf- und abbauen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 702

    17.4.3 Datenbertragung mit TCP native oder ISO-on-TCP . . . . . . . . . . . . . . . 704

    17.4.4 Datenbertragung mit UDP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 707

    18 Anhang . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710

    18.1 Arbeiten mit Quelldateien . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710

    18.1.1 Allgemeines Vorgehen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 710

    18.1.2 Einen Codebaustein in der Quelldatei programmieren . . . . . . . . . . . . 712

    18.1.3 Einen Datenbaustein in der Quelldatei programmieren . . . . . . . . . . . 715

    18.1.4 Einen PLC-Datentyp in der Quelldatei programmieren . . . . . . . . . . . . 719

    18.2 Projekte migrieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 720

    18.3 Simulation mit dem TIA Portal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 724

    18.3.1 Unterschiede zu einer realen CPU-Baugruppe . . . . . . . . . . . . . . . . . . . . 724

    18.3.2 Simulation starten und speichern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 725

    18.3.3 Die Simulation bedienen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 726

    18.3.4 Programm mit der Simulation testen . . . . . . . . . . . . . . . . . . . . . . . . . . . 728

    18.3.5 Weitere Funktionen von PLCSIM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 730

    18.4 Webserver . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731

    18.4.1 Webserver aktivieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731

    18.4.2 Web-Informationen auslesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 732

    18.4.3 Standard-Webseiten . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 733

    18.5 Ablage von lokalen Variablen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736

    18.5.1 Ablage in Global-Datenbausteinen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736

    18.5.2 Ablage in Instanz-Datenbausteinen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 737

    18.5.3 Ablage in den temporren Lokaldaten . . . . . . . . . . . . . . . . . . . . . . . . . . 738

    18.5.4 Datenablage der Bausteinparameter einer Funktion (FC) . . . . . . . . . . 739

    18.5.5 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) . 742

    18.5.6 Datenablage einer Lokalinstanz in einer Multiinstanz . . . . . . . . . . . . . 744

    Stichwortverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 746

  • 1 Einfhrung

    22

    1 Einfhrung

    1.1 bersicht Automatisierungssystem S7-300

    SIMATIC S7-300 ist das modulare Kleinsteuersystem fr den unteren und mittlerenLeistungsbereich (Bild 1.1). Verschiedene Varianten der Controller passen die Leis-tungsfhigkeit an den jeweiligen Einsatzfall an. Je nach Bedarf kann das Automati-sierungsgert mit Ein-/Ausgabebaugruppen fr Digital- und Analogsignale in biszu vier Baugruppentrgern mit je acht Baugruppen modular erweitert werden.

    Eine zustzliche Erweiterung mit Ein-/Ausgabebaugruppen bietet die dezentralePeripherie ber PROFIBUS oder PROFINET. Mit besonderen Bauformen fr erhhtemechanische Anforderungen ausgestattet, knnen diese Baugruppen vor Ort ander Maschine oder Anlage installiert werden. Die Steuerungsgerte SIMATIC S7-300werden mit STEP 7 konfiguriert, projektiert und programmiert. Der Datenaus-tausch zwischen den Steuerungsgerten, der dezentralen Peripherie und dem Pro-grammiergert geschieht mit SIMATIC NET.

    Bild 1.1 Bestandteile des Automatisierungssystems SIMATIC S7-300

    SIMATIC Controller steuern dieMaschine oder Anlage.

    Die dezentrale Peripherie erweitert dieSchnittstelle zur Maschine oder Anlage.

    SIMATIC NET

    SIMATIC DP STEP 7Professional V12

    SIMATIC S7-300

    Die Vernetzung ermglicht denDatenaustausch und den zentralenOnline-Zugriff.

    Mehrere Varianten der Controllererweitern das Einsatzspektrum.

    STEP 7 ist die Engineeringsoftware zumKonfigurieren, undProgrammieren.

    Projektieren

    Automatisierungssystem SIMATIC S7-300

  • 1.1 bersicht Automatisierungssystem S7-300

    23

    1.1.1 Automatisierungsgert SIMATIC S7-300

    Die wesentlichen Bestandteile eines S7-300-Automatisierungsgerts sind im Bild1.2 dargestellt.

    Die CPU-Baugruppe enthlt das Betriebssystem und das Anwenderprogramm.Das Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden Micro Memory Card (MMC). Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt. Die auf der CPU-Baugruppe vor-handenen Busschnittstellen stellen die Verbindung zu anderen Automatisierungs-gerten her.

    Die Verbindung zur gesteuerten Anlage bernehmen SM-Baugruppen. Diese Ein-und Ausgabebaugruppen gibt es fr Digital- und Analogsignale.

    Die FM-Baugruppen sind signalvorverarbeitende, intelligente Peripheriebau-gruppen, die vom Prozess kommende Signale unabhngig von der CPU aufberei-ten, verarbeiten und entweder wieder direkt an den Prozess zurckgeben oder ander internen Schnittstelle der CPU zur Verfgung stellen. FM-Baugruppen ber-nehmen Funktionen, die die CPU meist nicht schnell genug ausfhren kann, wiez. B. Impulse zhlen, positionieren oder Antriebe regeln.

    Die CP-Baugruppen gestatten einen Datenverkehr, der die Mglichkeiten derStandard-Schnittstellen bezglich Protokolle und Kommunikationsfunktionenberschreitet.

    Die IM-Baugruppen verbinden bei einer Erweiterung den Zentralbaugruppentr-ger mit bis zu drei Erweiterungsbaugruppentrgern.

    Eine Stromversorgungsbaugruppe sorgt schlielich fr die bentigte Spannungim Automatisierungsgert.

    Bild 1.2 Bestandteile einer S7-300-Steuerung

    Erweiterungsbaugruppentrger

    Zentralbaugruppentrger SM-Baugruppen(Signal Modules)

    Auf den Baugruppen-trgern sind steckbar:

    FM-Baugruppen(Function Modules)

    CP-Baugruppen(CommunicationProcessors)

    IM-Baugruppe(Interface Module)

    IM-Baugruppe(Interface Module)

    CPU-Baugruppe(Central Processor Unit)

    PS-Baugruppe(Power Supply)

    Baugruppen-trger (Rack)

    Bestandteile einer S7-300-Steuerung

    S

  • 1 Einfhrung

    24

    1.1.2 bersicht STEP 7 Professional V12

    STEP 7 ist das zentrale Automatisierungswerkzeug fr SIMATIC. STEP 7 bentigtzum Betrieb eine Autorisierung (Lizenz) und luft auf den jeweils aktuellen Be-triebssystemen unter Microsoft Windows. Die Projektierung eines S7-300-Control-lers geschieht mit zwei Ansichten: der Portalansicht und der Projektansicht.

    Die Portalansicht ist aufgabenorientiert angelegt.

    Im Startportal ffnen Sie ein bestehendes Projekt, erstellen ein neues Projekt odermigrieren ein Projekt. Ein Projekt ist eine Datenstruktur, die alle erforderlichenProgramme und Daten fr Ihr Automatisierungsvorhaben enthlt. Von hier aussind die wichtigsten Werkzeuge und Funktionen von STEP 7 ber weitere Portale er-reichbar (Bild 1.3):

    b Im Portal Gerte & Netze konfigurieren Sie die Automatisierungsgerte, d. h. Sieplatzieren die Baugruppen in einem Baugruppentrger und parametrieren sie.

    b Im Portal PLC-Programmierung erstellen Sie das Anwenderprogramm in Formvon einzelnen Abschnitten, die man Bausteine nennt.

    b Das Portal Visualisierung bietet die wichtigsten Werkzeuge fr die Projektierungund Simulation von HMI-Systemen mit SIMATIC WinCC an.

    Bild 1.3 Werkzeuge im Startportal von STEP 7 Professional V12

  • 1.1 bersicht Automatisierungssystem S7-300

    25

    b Mit dem Portal Motion & Technology fgen Sie ein Technologie-Objekt fr PIDControl ein und bearbeiten es.

    b Mit dem Portal Online & Diagnose schalten Sie das Programmiergert online aneine CPU-Baugruppe. Sie knnen die Betriebsarten der CPU steuern und das An-wenderprogramm bertragen und testen.

    Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fenstern,deren Inhalt je nach ausgefhrter Ttigkeit wechselt. In der Gertekonfigurationsteht der Arbeitsbereich mit dem zu konfigurierenden Gert im Mittelpunkt. In derGertesicht wird der Baugruppentrger mit den bereits platzierten Baugruppen ge-zeigt (Bild 1.4). Ein weiteres Fenster das Inspektorfenster enthlt die Eigen-schaften der selektierten Baugruppe, das Aufgaben-Fenster (Task Card) gibt Unter-sttzung durch den Hardware-Katalog mit den zur Verfgung stehenden Baugrup-pen. Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Stationen.

    Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewhltenBaustein. Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und knnen diese einstellen. Das Aufgabenfenster enthlt diesmal denProgrammelemente-Katalog mit den zur Verfgung stehenden Programmelemen-ten und Anweisungen. hnliches gilt fr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen.

    Bild 1.4 Beispiel fr die Projektansicht: Arbeitsbereich der Gertekonfiguration

  • 1 Einfhrung

    26

    Und stets haben Sie die Projektnavigation im Blickfeld. Sie enthlt alle Objekte desSTEP-7-Projekts. So knnen Sie jederzeit ein Objekt, beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle, auswhlen und dieses Objekt mitden entsprechenden Editoren, die beim ffnen des Objekts automatisch starten,bearbeiten.

    1.1.3 Fnf Programmiersprachen

    Als Programmiersprache fr das Anwenderprogramm knnen Sie zwischen Kon-taktplan (KOP), Funktionsplan (FUP), Anweisungsliste (AWL), Structured ControlLanguage (SCL) und Ablaufsteuerung (GRAPH) whlen.

    Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan. Die Verknpfung der binren Signalzustnde wird durch die seriel-le oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 1.5). Kom-plexe Funktionen, wie beispielsweise die arithmetischen Funktionen, werden mitBoxen dargestellt, die Sie wie Kontakte oder Spulen im Kontaktplan anordnen.

    Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme. Binre Verknpfungen werden durch Verschaltung vonUND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild1.6). Komplexe Boxen bernehmen die Verknpfung digitaler Variablen, beispiels-weise bei den arithmetischen Funktionen.

    Bild 1.5 Beispiel fr die Darstellung in Kontaktplan

    Bild 1.6 Beispiel fr die Darstellung in Funktionsplan

  • 1.1 bersicht Automatisierungssystem S7-300

    27

    Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen. Jede AWL-Anweisung enthlt eine Vorschrift, was zu tun ist, undeventuell einen Operand, mit dem die Operation ausgefhrt wird. AWL ist gleicher-maen geeignet fr binre und digitale Verknpfungen wie fr die Programmierungkomplexer Steuerungsaufgaben (Bild 1.7).

    Structured Control Language eignet sich besonders fr die Programmierung vonkomplexen Algorithmen oder fr Aufgabenstellungen aus dem Bereich der Datenver-waltung. Das Programm besteht aus SCL-Anweisungen, die beispielsweise Wertzuwei-sungen, Vergleiche oder Kontrollanweisungen sein knnen (Bild 1.8).

    Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung, in derdie sequenzielle Folge von Aktionen vorherrscht. Die einzelnen Schritte und Verzwei-gungen werden durch Weiterschaltbedingungen freigegeben, die mit KOP oder FUPprogrammiert werden knnen (Bild 1.9).

    1.1.4 Bearbeitung des Anwenderprogramms

    Nach dem Einschalten der Versorgungsspannung prft der Steuerungsprozessordie Konsistenz der Hardware und parametriert die Baugruppen. Anschlieend wirdeinmalig falls vorhanden ein Anlaufprogramm bearbeitet. Das Anlaufpro-

    Bild 1.7 Beispiel fr AWL-Anweisungen

    Bild 1.8 Beispiel fr SCL-Anweisungen

  • 1 Einfhrung

    28

    gramm gehrt zum Anwenderprogramm, das Sie programmieren. Im Anlaufpro-gramm knnen beispielsweise Baugruppen initialisiert werden.

    Das Anwenderprogramm ist in der Regel in einzelne Abschnitte Bausteine ge-nannt eingeteilt. Die Organisationsbausteine (OB) sind die Schnittstelle zwischenBetriebssystem und Anwenderprogramm. Das Betriebssystem ruft zu bestimmtenEreignissen einen Organisationsbaustein auf, in dem dann das Anwenderpro-gramm bearbeitet wird (Bild 1.10).

    Bild 1.9 Beispiel fr eine GRAPH-Ablaufkette und eine Schrittprojektierung

    Bild 1.10 Bearbeitung des Anwenderprogramms

    Anlauf-programm

    Alarm- undFehlerprogramm

    Haupt-programm

    Bearbeitung des Anwenderprogramms

    Einschalten

    Aktualisierung derEin- und Ausgnge

    Unterbrechung(Alarm oder Fehler)

    BetriebszustandANLAUF

    Betriebssystem Anwenderprogramm

    BetriebszustandRUN

    OB

    OB

    FBFC

    FBFC

    FBFC

    FBFC

    FBFC

    FBFC

    OB

    Unterbrechung

  • 1.1 bersicht Automatisierungssystem S7-300

    29

    Zur Strukturierung das Programms stehen Funktionsbausteine (FB) und Funktio-nen (FC) zur Verfgung. Funktionsbausteine haben einen Speicher, in dem lokaleVariablen dauerhaft abgelegt sind, Funktionen haben diesen Speicher nicht.

    Fr den Aufruf (das Starten der Bearbeitung) von Funktionsbausteinen und Funk-tionen gibt es Programmanweisungen. Jeder Bausteinaufruf kann mit Ein- undAusgngen Bausteinparameter genannt versehen werden. Beim Aufruf kn-nen Variablen bergeben werden, mit denen das Programm im Baustein arbeitensoll. Auf diese Weise kann ein Baustein mit einer gewissen Funktion (z. B. der Addi-tion von drei Variablen) mehrfach mit unterschiedlichen Parameterstzen (z. B. frunterschiedliche Berechnungen) aufgerufen werden (Bild 1.11).

    Die Daten des Anwenderprogramms werden in Datenbausteinen (DB) abgelegt.Instanz-Datenbausteine sind einem Aufruf eines Funktionsbausteins fest zugeord-net und bilden den Variablenspeicher des Funktionsbausteins. Global-Datenbau-steine enthalten Daten, die keinem Baustein zugeordnet sind.

    Nach einem Anlauf aktualisiert der Steuerungsprozessor die Ein- und Ausgangs-signale in den Prozessabbildern und ruft den Organisationsbaustein OB 1 auf. Hiersteht das Hauptprogramm. Auch im Hauptprogramm ist eine Strukturierung mg-lich und zu empfehlen. Ist das Hauptprogramm bearbeitet, wechselt der Steue-rungsprozessor zurck ins Betriebssystem, hlt beispielsweise die Kommunikati-on mit dem Programmiergert aufrecht, aktualisiert die Ein- und Ausgangssignaleund beginnt dann erneut mit der Bearbeitung des Hauptprogramms.

    Die zyklische Programmbearbeitung ist ein Merkmal speicherprogrammierbarerSteuerungen. Das Anwenderprogramm wird auch dann bearbeitet, wenn von au-en keine Aktionen gefordert sind, wenn also z. B. die gesteuerte Maschine steht.Dies hat Vorteile bei der Programmierung: Sie programmieren beispielsweise den

    Bild 1.11 Beispiel fr zwei Aufrufe eines Bausteins mit jeweils verschiedenen Variablen