berger automatisieren mit simatic s7-1500download.e-bookshelf.de/download/0000/8392/08/l-g... ·...

30

Upload: others

Post on 25-Apr-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Dateianlage
covergif

Berger Automatisieren mit SIMATIC S7-1500

Automatisieren mit SIMATIC S7-1500Projektieren Programmieren und Testenmit STEP 7 Professional

von Hans Berger

Publicis Publishing

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar

Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen

wwwpublicis-booksde

Print ISBN 978-3-89578-403-3 ePDF ISBN 978-3-89578-903-8

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH

Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr 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-sierungsloumlsung 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 Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1500 Eine S7-1500-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr die Kommunikation mit anderen Automatisierungssystemen bietendie CPU-Baugruppen integrierte Busschnittstellen fuumlr Industrial Ethernet und ndashabhaumlngig vom Baugruppentyp ndash auch fuumlr PROFIBUS DP

Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-1500-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose

Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnfProgrammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Structured ControlLanguage (SCL) mit einer Pascal-aumlhnlichen Hochsprache Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bear-beitung des Anwenderprogramms

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

Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-1500 mit der Engineeringsoftware STEP 7 Professio-nal in der Version V12 SP 1 in Verbindung mit einer CPU 1500 mit der FirmwareVersion V11 und der Simulationssoftware PLCSIM Version V12 SP 1

Erlangen im September 2013 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Berger Automatisieren mit SIMATIC S7-1500

Automatisieren mit SIMATIC S7-1500Projektieren Programmieren und Testenmit STEP 7 Professional

von Hans Berger

Publicis Publishing

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar

Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen

wwwpublicis-booksde

Print ISBN 978-3-89578-403-3 ePDF ISBN 978-3-89578-903-8

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH

Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr 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-sierungsloumlsung 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 Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1500 Eine S7-1500-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr die Kommunikation mit anderen Automatisierungssystemen bietendie CPU-Baugruppen integrierte Busschnittstellen fuumlr Industrial Ethernet und ndashabhaumlngig vom Baugruppentyp ndash auch fuumlr PROFIBUS DP

Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-1500-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose

Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnfProgrammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Structured ControlLanguage (SCL) mit einer Pascal-aumlhnlichen Hochsprache Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bear-beitung des Anwenderprogramms

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

Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-1500 mit der Engineeringsoftware STEP 7 Professio-nal in der Version V12 SP 1 in Verbindung mit einer CPU 1500 mit der FirmwareVersion V11 und der Simulationssoftware PLCSIM Version V12 SP 1

Erlangen im September 2013 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Automatisieren mit SIMATIC S7-1500Projektieren Programmieren und Testenmit STEP 7 Professional

von Hans Berger

Publicis Publishing

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar

Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen

wwwpublicis-booksde

Print ISBN 978-3-89578-403-3 ePDF ISBN 978-3-89578-903-8

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH

Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr 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-sierungsloumlsung 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 Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1500 Eine S7-1500-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr die Kommunikation mit anderen Automatisierungssystemen bietendie CPU-Baugruppen integrierte Busschnittstellen fuumlr Industrial Ethernet und ndashabhaumlngig vom Baugruppentyp ndash auch fuumlr PROFIBUS DP

Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-1500-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose

Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnfProgrammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Structured ControlLanguage (SCL) mit einer Pascal-aumlhnlichen Hochsprache Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bear-beitung des Anwenderprogramms

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

Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-1500 mit der Engineeringsoftware STEP 7 Professio-nal in der Version V12 SP 1 in Verbindung mit einer CPU 1500 mit der FirmwareVersion V11 und der Simulationssoftware PLCSIM Version V12 SP 1

Erlangen im September 2013 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar

Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen

wwwpublicis-booksde

Print ISBN 978-3-89578-403-3 ePDF ISBN 978-3-89578-903-8

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH

Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr 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-sierungsloumlsung 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 Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1500 Eine S7-1500-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr die Kommunikation mit anderen Automatisierungssystemen bietendie CPU-Baugruppen integrierte Busschnittstellen fuumlr Industrial Ethernet und ndashabhaumlngig vom Baugruppentyp ndash auch fuumlr PROFIBUS DP

Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-1500-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose

Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnfProgrammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Structured ControlLanguage (SCL) mit einer Pascal-aumlhnlichen Hochsprache Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bear-beitung des Anwenderprogramms

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

Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-1500 mit der Engineeringsoftware STEP 7 Professio-nal in der Version V12 SP 1 in Verbindung mit einer CPU 1500 mit der FirmwareVersion V11 und der Simulationssoftware PLCSIM Version V12 SP 1

Erlangen im September 2013 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Vorwort

5

Vorwort

Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung 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 Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1500 Eine S7-1500-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr die Kommunikation mit anderen Automatisierungssystemen bietendie CPU-Baugruppen integrierte Busschnittstellen fuumlr Industrial Ethernet und ndashabhaumlngig vom Baugruppentyp ndash auch fuumlr PROFIBUS DP

Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-1500-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose

Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnfProgrammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Structured ControlLanguage (SCL) mit einer Pascal-aumlhnlichen Hochsprache Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bear-beitung des Anwenderprogramms

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

Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-1500 mit der Engineeringsoftware STEP 7 Professio-nal in der Version V12 SP 1 in Verbindung mit einer CPU 1500 mit der FirmwareVersion V11 und der Simulationssoftware PLCSIM Version V12 SP 1

Erlangen im September 2013 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Das Automatisierungssystem SIMATIC S7-1500 in der Uumlbersicht

Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12

Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten

Automatisierungssystem SIMATIC S7-1500

Die Baugruppen von SIMATIC S7-1500 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Technologie- und Kommunikationsbaugruppen

Geraumltekonfiguration

Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen

Variablen Adressierung und Datentypen

Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt

Die Beschreibung der elementaren und strukturierten Datentypen Datentypen fuumlr Baustein-parameter Zeiger Anwender- und Systemdatentypen

Programmbearbeitung

Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt

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 uumlbersetzen 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 ENENO-Boxen

Die Programmiersprache Funktionsplan FUP

Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen

Die Programmiersprache Structured Control Language SCL

Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Der Inhalt des Buchs auf einen Blick

7

Die Programmiersprache Anweisungsliste AWL

Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung

Die Programmiersprache Ablaufsteuerung GRAPH

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

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC-Zeit-Zaumlhlfunktionen IEC-Zeit-Zaumlhlfunktionen

Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen

Programmsteuerung Mit Sprungfunktionen im Programm verzweigen Funktionen und Funktionsbausteine aufrufen und beenden ARRAY- und CPU-Datenbausteine

Online-Betrieb und Programmtest

Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen

Die Anwenderbausteine laden aumlndern loumlschen und vergleichen

Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen

Dezentrale Peripherie

In der Uumlbersicht 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

Kommunikation

Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird

Welche Eigenschaften die S7-Kommunikation hat und mit welchen Kommunikationsfunkti-onen sie programmiert wird

Wie die PtP-Kommunikation realisiert wird

Anhang

Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden

Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird

Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet

Technologiefunktionen Zaumlhlen Messen Motion Control PID Control

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

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 24

11 Uumlbersicht Automatisierungssystem S7-1500 24

111 Automatisierungsgeraumlt SIMATIC S7-1500 25

112 Uumlbersicht STEP 7 Professional V12 26

113 Verschiedene Programmiersprachen 28

114 Bearbeitung des Anwenderprogramms 30

115 Datenhaltung im SIMATIC-Automatisierungssystem 33

12 Einfuumlhrung in STEP 7 Professional V12 34

121 STEP 7 installieren 34

122 Automation License Manager 35

123 STEP 7 Professional starten 35

124 Portalansicht 35

125 Die Fenster der Projektansicht 36

126 Hilfe-Informationssystem 39

127 Bedienoberflaumlche anpassen 40

13 Ein SIMATIC-Projekt bearbeiten 40

131 Strukturierte Darstellung der Projektdaten 41

132 Projektdaten und Editoren fuumlr eine PLC-Station 41

133 Ein Projekt erstellen und bearbeiten 45

134 Mit Referenzprojekten arbeiten 48

135 Bibliotheken anlegen und bearbeiten 49

2 Automatisierungssystem SIMATIC S7-1500 50

21 Komponenten einer S7-1500-Station 50

22 CPU-Baugruppen S7-1500 52

221 CPU-Varianten 52

222 Bedien- und Anzeigeelemente 52

223 SIMATIC Memory Card 54

224 Speicherbereiche in einer S7-1500-Station 55

225 Busschnittstellen 57

23 Signalbaugruppen 58

231 Digitaleingabebaugruppen 58

232 Digitalausgabebaugruppen 59

233 Analogeingabebaugruppen 60

234 Analogausgabebaugruppe 60

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

9

24 Technologiebaugruppen 61

25 Kommunikationsbaugruppen 62

26 Sonstige Baugruppen 63261 Systemstromversorgungsbaugruppen 63262 Laststromversorgungsbaugruppen 63

3 Geraumltekonfiguration 64

31 Einfuumlhrung 64

32 Eine Station konfigurieren 66321 Eine PLC-Station hinzufuumlgen 66322 Eine Baugruppe hinzufuumlgen 67

33 Baugruppen parametrieren 68331 Die CPU-Eigenschaften parametrieren 68332 Baugruppen adressieren 71333 Signalbaugruppen parametrieren 73

34 Eine Vernetzung projektieren 77341 Einfuumlhrung Uumlbersicht 77342 Eine Station vernetzen 78343 Teilnehmeradressen in einem Subnetz 79344 Kommunikationsdienste und Verbindungstypen 80345 Eine Verbindung projektieren 82346 Ein PROFINET-Subnetz projektieren 84347 Ein PROFIBUS-Subnetz projektieren 88

4 Variablen Adressierung und Datentypen 91

41 Operanden und Variablen 91411 Einfuumlhrung Uumlbersicht 91412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 95414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 98

42 Adressierung von Operanden und Variablen 99421 Signalweg 99422 Absolute Adressierung 100423 Symbolische Adressierung 103424 Adressierung eines Variablenbereichs 104425 Adressierung einer Konstanten 105

43 Indirekte Adressierung 105431 Uumlbersicht 105432 Indirekte Adressierung von ARRAY-Komponenten 106433 Indirekte Adressierung einer Variablen in einem ARRAY-DB 107434 Indirekte Adressierung eines Datenbausteins 108435 Indirekte Adressierung mit einem ANY-Zeiger 108436 Indirekte Adressierung mit PEEK und POKE (SCL) 110

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

10

44 Adressierung von Hardware-Objekten 113

45 Allgemeines zu Datentypen 113451 Uumlbersicht der Datentypen 113452 Implizite Datentypkonvertierung 115453 Variablen uumlberlagern (Datentypsichten) 117

46 Elementare Datentypen 119461 Bitfolge-Datentypen BOOL BYTE WORD DWORD und LWORD 119462 Datentyp CHAR 121463 BCD-Zahlen BCD16 und BCD32 122464 Festpunkt-Datentypen ohne Vorzeichen USINT UINT UDINT ULINT 122465 Festpunkt-Datentypen mit Vorzeichen SINT INT DINT und LINT 123466 Gleitpunkt-Datentypen REAL und LREAL 124467 Datentypen fuumlr Zeitdauern 126468 Datentypen fuumlr Zeitpunkte 127

47 Strukturierte Datentypen 129471 Datum und Uhrzeit DATE_AND_TIME (DT) 130472 Datum und Uhrzeit DATE_AND_LTIME (DTL) 130473 Zeichenkette STRING 131474 Datenfeld ARRAY 133475 Datenstruktur STRUCT 135

48 Parametertypen 137481 Uumlbersicht 137482 Parametertypen TIMER und COUNTER 138483 Parametertypen fuumlr IEC-Zeitfunktionen 138484 Parametertypen fuumlr IEC-Zaumlhlfunktionen 138485 Parametertypen BLOCK_FC und BLOCK_FB (AWL) 139486 Parametertyp DB_ANY 139487 Parametertyp VOID 140488 Parametertypen POINTER ANY und VARIANT 140

49 Zeiger 141491 Einfuumlhrung 141492 Bereichszeiger 141493 DB-Zeiger 143494 ANY-Zeiger 143

410 PLC-Datentypen 1444101 Einen PLC-Datentyp programmieren 1444102 Einen PLC-Datentyp anwenden 1454103 PLC-Datentypen vergleichen 145

411 Systemdatentypen 1464111 Systemdatentypen fuumlr IEC-Zeitfunktionen 1464112 Systemdatentypen fuumlr IEC-Zaumlhlfunktionen 1474113 Datentyp ERROR_STRUCT 1474114 Startinformation 149

412 Hardware-Datentypen 150

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

11

5 Programmbearbeitung 152

51 Betriebszustaumlnde der CPU-Baugruppe 152511 Betriebszustand STOP 153512 Betriebszustand ANLAUF 154513 Betriebszustand RUN 156514 Remanenzverhalten von Operanden 156

52 Anwenderprogramm erstellen 157521 Programmentwurf 157522 Programmbearbeitung 161

53 Bausteine programmieren 163531 Bausteinarten 163532 Bausteineigenschaften 165533 Bausteinschnittstelle 167534 Bausteinparameter programmieren 170

54 Bausteine aufrufen 172541 Allgemeines zu Aufrufen von Codebausteinen 172542 Bausteinparameter versorgen 174543 Aufruf einer Funktion (FC) 176544 Aufruf eines Funktionsbausteins (FB) 176545 bdquoWeiterreichenldquo von Bausteinparametern 178

55 Anlaufprogramm 178551 Anlauf-Organisationsbausteine 178552 Remanente Daten zuruumlcksetzen 180553 Baugruppenadresse ermitteln 180554 Baugruppen parametrieren 183

56 Hauptprogramm 187561 Hauptprogramm-Organisationsbausteine 187562 Prozessabbild-Aktualisierung 189563 Zykluszeit 192564 Reaktionszeit 195565 Programm stoppen und verzoumlgern 197566 Uhrzeit 198567 Systemzeit lesen 202568 Betriebsstundenzaumlhler 202

57 Alarmbearbeitung 204571 Einfuumlhrung zur Alarmbearbeitung 204572 Uhrzeitalarme 208573 Verzoumlgerungsalarme 212574 Weckalarme 215575 Prozessalarme 219576 Alarme zur Laufzeit zuordnen 221577 Alarmzusatzinformation lesen 222

58 Fehlerbehandlung 224581 Fehlerursachen und Fehlerreaktion 224582 Lokale Fehlerbehandlung 225

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

12

583 Globale Fehlerbehandlung (Synchronfehler) 228584 Synchronfehlerbearbeitung sperren und freigeben 230585 Asynchronfehler 233586 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 236

59 Diagnose im Anwenderprogramm 238591 Diagnosealarm 238592 Startinformation lesen 240593 Diagnosefunktionen im Anwenderprogramm 240

510 Meldungen projektieren 2485101 Einfuumlhrung 2485102 Meldungen nach dem Meldenummerverfahren projektieren 2525103 Bausteine fuumlr die Meldungsprogrammierung 2565104 CPU-Meldungsanzeige 257

6 Programmeditor 261

61 Einfuumlhrung 261

62 PLC-Variablentabelle 262621 PLC-Variablentabelle anlegen und bearbeiten 262622 PLC-Variablen definieren und bearbeiten 262623 PLC-Variablentabellen vergleichen 265624 PLC-Variablentabelle exportieren und importieren 266625 Konstantentabellen 267

63 Einen Codebaustein programmieren 268631 Einen neuen Codebaustein anlegen 268632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 269633 Bausteineigenschaften fuumlr Codebausteine festlegen 271634 Bausteine schuumltzen 274635 Bausteinschnittstelle programmieren 276636 Steuerungsfunktion programmieren 278637 Variablen editieren 282638 Mit Programmkommentaren arbeiten 285

64 Einen Datenbaustein programmieren 286641 Einen neuen Datenbaustein anlegen 286642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 287643 Bausteineigenschaften fuumlr Datenbausteine festlegen 288644 Datenvariablen deklarieren 290645 Datenvariablen in Globaldatenbausteinen eingeben 292

65 Bausteine uumlbersetzen 293651 Uumlbersetzung starten 293652 SCL-Bausteine uumlbersetzen 294653 Fehler nach der Uumlbersetzung beheben 295

66 Programminformationen 296661 Querverweisliste 296662 Belegungsplan 297663 Aufrufstruktur 299664 Abhaumlngigkeitsstruktur 300

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

13

665 Konsistenzpruumlfung 301666 Speicherauslastung der CPU 302

67 Sprachen-Einstellung 303

7 Kontaktplan KOP 305

71 Einfuumlhrung 305711 Programmieren mit KOP allgemein 305712 Programmelemente des Kontaktplans 307

72 Binaumlre Verknuumlpfungen mit KOP programmieren 307721 Schlieszligerkontakt und Oumlffnerkontakt 308722 Reihen- und Parallelschaltung von Kontakten 309723 T-Abzweig offener Parallelzweig 311724 Verknuumlpfungsergebnis negieren im Kontaktplan 311725 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 312726 Guumlltigkeitspruumlfung einer Gleitpunktvariablen im Kontaktplan 313727 Vergleich-Kontakte 313

73 Speicherfunktionen mit KOP programmieren 314731 Einfache und negierende Spule 314732 Setzen- und Ruumlcksetzen-Spule 316733 Speicherndes Verhalten durch Selbsthaltung 317734 Flankenauswertung mit Impulsausgabe im Kontaktplan 317735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 319736 Spulen mit Zeitverhalten 319737 Spulen mit Zaumlhlerverhalten 321

74 Q-Boxen mit KOP programmieren 322741 Speicher-Boxen im Kontaktplan 323742 Flankenauswertung des Stromflusses 323743 SIMATIC-Zeitfunktionen im Kontaktplan 324744 SIMATIC-Zaumlhlfunktionen im Kontaktplan 325745 IEC-Zeitfunktionen im Kontaktplan 325746 IEC-Zaumlhlfunktionen im Kontaktplan 326

75 ENENO-Boxen mit KOP programmieren 328751 Flankenauswertung mit einer ENENO-Box 329752 Uumlbertragungsfunktionen im Kontaktplan 330753 Arithmetische Funktionen im Kontaktplan 330754 Mathematische Funktionen im Kontaktplan 331755 Konvertierungsfunktionen im Kontaktplan 332756 Schiebefunktionen im Kontaktplan 332757 Logikfunktionen im Kontaktplan 333758 Funktionen fuumlr Zeichenketten im Kontaktplan 335

76 Programmsteuerung mit KOP 335761 Sprungfunktionen im Kontaktplan 335762 Bausteinaufruf-Funktionen im Kontaktplan 338763 Bausteinende-Funktion im Kontaktplan 338764 ENENO-Mechanismus im Kontaktplan 339

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

14

8 Funktionsplan FUP 343

81 Einfuumlhrung 343

811 Programmieren mit FUP allgemein 343

812 Programmelemente des Funktionsplans 345

82 Binaumlre Verknuumlpfungen mit FUP programmieren 345

821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 345

822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 348

823 UND-Funktion im Funktionsplan 348

824 ODER-Funktion im Funktionsplan 348

825 Exklusiv-ODER-Funktion im Funktionsplan 349

826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 349

827 T-Abzweig im Funktionsplan 350

828 Flankenauswertung von Binaumlrvariablen im Funktionsplan 351

829 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 351

8210 Vergleichsfunktionen im Funktionsplan 352

83 Standard-Boxen mit FUP programmieren 353

831 Zuweisung und negierende Zuweisung 353

832 Setzen- und Ruumlcksetzen-Box 355

833 Flankenauswertung mit Impulsausgabe im Funktionsplan 356

834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 356

835 Standard-Boxen mit Zeitverhalten 357

836 Standard-Boxen mit Zaumlhlerverhalten 359

84 Q-Boxen mit FUP programmieren 360

841 Speicher-Boxen im Funktionsplan 360

842 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 360

843 SIMATIC-Zeitfunktionen im Funktionsplan 362

844 SIMATIC-Zaumlhlfunktionen im Funktionsplan 363

845 IEC-Zeitfunktionen im Funktionsplan 363

846 IEC-Zaumlhlfunktionen im Funktionsplan 364

85 ENENO-Boxen mit FUP programmieren 366

851 Flankenauswertung mit einer ENENO-Box 367

852 Uumlbertragungsfunktionen im Funktionsplan 368

853 Arithmetische Funktionen im Funktionsplan 368

854 Mathematische Funktionen im Funktionsplan 369

855 Konvertierungsfunktionen im Funktionsplan 370

856 Schiebefunktionen im Funktionsplan 371

857 Logikfunktionen im Funktionsplan 372

858 Funktionen fuumlr Zeichenketten im Funktionsplan 372

86 Programmsteuerung mit FUP 373

861 Sprungfunktionen im Funktionsplan 374

862 Bausteinaufruf-Funktionen im Funktionsplan 376

863 Bausteinende-Funktion im Funktionsplan 377

864 ENENO-Mechanismus im Funktionsplan 378

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

15

9 Structured Control Language SCL 381

91 Einfuumlhrung 381911 Programmieren mit SCL allgemein 381912 SCL-Anweisungen und Operatoren 383

92 Binaumlre Verknuumlpfungen mit SCL programmieren 385921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 385922 UND-Funktion in SCL 386923 ODER-Funktion in SCL 387924 Exklusiv-ODER-Funktion in SCL 387925 Kombinierte binaumlre Verknuumlpfungen in SCL 387926 Verknuumlpfungsergebnis negieren in SCL 388

93 Speicherfunktionen mit SCL programmieren 389931 Wertzuweisung einer Binaumlrvariablen 389932 Setzen und Ruumlcksetzen in SCL 389933 Flankenauswertung in SCL 389

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 390941 SIMATIC-Zeitfunktionen in SCL 390942 SIMATIC-Zaumlhlfunktionen in SCL 392943 IEC-Zeitfunktionen in SCL 393944 IEC-Zaumlhlfunktionen in SCL 393

95 Digitalfunktionen mit SCL programmieren 394951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 394952 Vergleichsfunktionen in SCL 395953 Arithmetische Funktionen in SCL 396954 Mathematische Funktionen in SCL 397955 Konvertierungsfunktionen in SCL 398956 Schiebefunktionen in SCL 400957 Wortverknuumlpfungen logischer Ausdruck in SCL 401958 Funktionen fuumlr Zeichenketten in SCL 402

96 Programmsteuerung mit SCL 403961 Mit der Variablen ENO arbeiten 403962 ENENO-Mechanismus bei SCL 404963 Kontrollanweisungen 406964 Bausteinfunktionen 417

10 Anweisungsliste AWL 419

101 Einfuumlhrung 4191011 Programmieren mit AWL allgemein 4191012 Aufbau einer AWL-Anweisung 4211013 Eine AWL-Anweisung eingeben 4211014 Adressierung von 64-Bit-Variablen 4231015 AWL-Netzwerke in KOP- und FUP-Bausteinen 423

102 Binaumlre Verknuumlpfungen mit AWL programmieren 4241021 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 4241022 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 4261023 UND-Funktion in der Anweisungsliste 427

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

16

1024 ODER-Funktion in der Anweisungsliste 4281025 Exklusiv-ODER-Funktion in der Anweisungsliste 4281026 Kombinierte binaumlre Verknuumlpfungen in der Anweisungsliste 4281027 Verknuumlpfungsergebnis steuern 431

103 Speicherfunktionen mit AWL programmieren 4321031 Zuweisung in der Anweisungsliste 4321032 Setzen und Ruumlcksetzen in der Anweisungsliste 4321033 Flankenauswertung in der Anweisungsliste 433

104 Zeit- und Zaumlhlfunktionen mit AWL programmieren 4341041 SIMATIC-Zeitfunktionen in der Anweisungsliste 4341042 SIMATIC-Zaumlhlfunktionen in der Anweisungsliste 4361043 IEC-Zeitfunktionen in der Anweisungsliste 4371044 IEC-Zaumlhlfunktionen in der Anweisungsliste 438

105 Digitalfunktionen mit AWL programmieren 4391051 Uumlbertragungsfunktionen in der Anweisungsliste 4411052 Vergleichsfunktionen in der Anweisungsliste 4431053 Arithmetische Funktionen in der Anweisungsliste 4471054 Mathematische Funktionen in der Anweisungsliste 4511055 Konvertierungsfunktionen in der Anweisungsliste 4531056 Schiebefunktionen in der Anweisungsliste 4551057 Wortverknuumlpfungen in der Anweisungsliste 4571058 Funktionen fuumlr Zeichenketten in der Anweisungsliste 459

106 Programmsteuerung mit AWL 4611061 Sprungfunktionen in der Anweisungsliste 4621062 Bausteinaufruf-Funktion in der Anweisungsliste 4631063 Bausteinende-Funktionen in der Anweisungsliste 466

107 Weitere AWL-Funktionen 4671071 Mit Statusbits arbeiten 4681072 ENENO-Mechanismus in der Anweisungsliste 4731073 Akkumulatorfunktionen 4751074 Arbeiten mit den Datenbausteinregistern 4771075 Teiladressierung von Datenoperanden 4791076 Absolute Adressierung von temporaumlren Lokaldaten 4801077 Arbeiten mit den Adressregistern 4811078 Speicherindirekte Adressierung 4831079 Registerindirekte Adressierung 48810710 Direkter Zugriff auf komplexe Lokalvariablen 48910711 Datenablage der Bausteinparameter einer Funktion (FC) 49110712 Datenablage der Bausteinparameter eines Funktionsbausteins (FB) 49510713 Datenablage einer Lokalinstanz in einer Multiinstanz 49710714 Nullanweisungen 498

11 Ablaufsteuerung S7-GRAPH 500

111 Einfuumlhrung 5001111 Was ist eine Ablaufsteuerung 5001112 Eigenschaften einer Ablaufsteuerung 501

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

17

1113 Programm fuumlr eine Ablaufsteuerung Mengengeruumlst 5021114 Betriebsarten 5021115 Vorgehen bei der Projektierung 503

112 Elemente einer Ablaufsteuerung 5031121 Schritte und Transitionen 5031122 Spruumlnge in einer Ablaufsteuerung 5051123 Verzweigungen einer Ablaufkette 5051124 GRAPH-spezifische Variablen 5071125 Permanente Anweisungen 5081126 Schritt- und Transitionsfunktionen 5081127 Bearbeitung von Aktionen 512

113 Eine Ablaufsteuerung projektieren 5181131 Den GRAPH-Funktionsbaustein programmieren 5191132 Projektieren der Kettenstruktur 5201133 Schritte und Transitionen programmieren 5211134 Permanente Anweisungen programmieren 5231135 Bausteinuumlbergreifende Meldungen projektieren 5231136 Attribute des GRAPH-Funktionsbausteins 5241137 GRAPH-Funktionsbaustein anwenden 526

114 Ablaufsteuerung testen 5271141 GRAPH-Funktionsbaustein laden 5271142 Einstellungen zum Programmtest 5281143 Betriebsarten verwenden 5291144 Ablaufkette synchronisieren 5291145 Mit Programmstatus testen 530

12 Basisfunktionen 533

121 Binaumlre Verknuumlpfungen 5331211 Einfuumlhrung 5331212 Arbeiten mit Binaumlrsignalen 5341213 UND-Funktion Reihenschaltung 5371214 ODER-Funktion Parallelschaltung 5381215 Exklusiv-ODER-Funktion Antivalenzfunktion 5391216 Verknuumlpfungsergebnis negieren NOT-Kontakt 539

122 Speicherfunktionen 5411221 Einfuumlhrung 5411222 Einfache und negierende Spule Zuweisung 5411223 Einzelnes Setzen und Ruumlcksetzen 5421224 Mehrfaches Setzen und Ruumlcksetzen 5431225 Vorrangiges Setzen und Ruumlcksetzen Speicherfunktion 545

123 Flankenauswertung 5461231 Funktionsweise einer Flankenauswertung 5461232 Flankenauswertung einer Binaumlrvariablen (KOP FUP) 5481233 Flankenauswertung mit Impulsausgabe (KOP FUP) 5491234 Flankenauswertung mit einer Q-Box (KOP FUP) 5501235 Flankenauswertung mit einer ENENO-Box (KOP FUP) 551

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

18

1236 Flankenauswertung bei SCL 5521237 Flankenauswertung bei AWL 554

124 SIMATIC-Zeitfunktionen 5551241 Uumlbersicht 5551242 Programmieren einer Zeitfunktion 5571243 Zeitverhalten als Impuls 5611244 Zeitverhalten als verlaumlngerter Impuls 5631245 Zeitverhalten als Einschaltverzoumlgerung 5641246 Zeitverhalten als speichernde Einschaltverzoumlgerung 5661247 Zeitverhalten als Ausschaltverzoumlgerung 568

125 IEC-Zeitfunktionen 5701251 Einfuumlhrung 5701252 Impulsbildung TP 5711253 Einschaltverzoumlgerung TON 5721254 Ausschaltverzoumlgerung TOF 5731255 Akkumulierende Einschaltverzoumlgerung TONR 5741256 Eine IEC-Zeitfunktion mit einer Zeitdauer laden 5761257 Eine IEC-Zeitfunktion zuruumlcksetzen 576

126 SIMATIC-Zaumlhlfunktionen 5771261 Uumlbersicht 5771262 Programmieren einer Zaumlhlfunktion 5781263 Funktionsweise einer Zaumlhlfunktion 5821264 Freigeben einer Zaumlhlfunktion bei AWL 583

127 IEC-Zaumlhlfunktionen 5851271 Einfuumlhrung 5851272 Vorwaumlrtszaumlhler CTU 5861273 Ruumlckwaumlrtszaumlhler CTD 5871274 VorwaumlrtsRuumlckwaumlrtszaumlhler CTUD 588

13 Digitalfunktionen 590

131 Allgemeines 590

132 Uumlbertragungsfunktionen 5911321 Allgemeines zur bdquoeinfachenldquo Uumlbertragungsfunktion 5911322 Variable kopieren MOVE-Box bei KOP und FUP 5911323 Zeichenkette kopieren S_MOVE-Box bei KOP und FUP 5921324 Wertzuweisungen bei SCL 5921325 Laden und Transferieren bei AWL 5951326 Datenbereich kopieren (MOVE_BLK_VARIANT) 5961327 Datenbereich kopieren (MOVE_BLK UMOVE_BLK) 5981328 Datenbereich fuumlllen (FILL_BLK UFILL_BLK) 5981329 Datenbereich kopieren und fuumlllen (BLKMOV UBLKMOV FILL) 60013210 Bytes tauschen (SWAP) 602

133 Vergleichsfunktionen 6021331 Ausfuumlhrung der bdquoeinfachenldquo Vergleichsfunktion 6031332 Vergleichsfunktion T_COMP 6051333 Vergleichsfunktion S_COMP 605

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

19

1334 Bereichsvergleich 606

134 Arithmetische Funktionen 6071341 Arithmetische Funktionen fuumlr Zahlenwerte 6071342 Arithmetische Funktionen fuumlr Datum und Uhrzeit 6071343 Dekrementieren und Inkrementieren 610

135 Mathematische Funktionen 6111351 Allgemeine Funktionsbeschreibung 6111352 Winkelfunktionen SIN COS TAN 6121353 Arcusfunktionen ASIN ACOS ATAN 6121354 Quadrat bilden und Quadratwurzel ziehen 6131355 Logarithmus und Potenz 6131356 Nachkommastellen extrahieren Absolutwert und Negation bilden 6151357 Rechnen mit der CALCULATE-Box bei KOP und FUP 617

136 Konvertierungsfunktionen 6191361 Datentypwandlung mit der Konvertierungsfunktion CONVERT 6191362 Datentypwandlung mit ROUND CEIL FLOOR und TRUNC 6241363 Datentypwandlung mit T_CONV 6251364 Datentypwandlung mit S_CONV 6261365 Konvertierungsfunktionen STRG_TO_CHARS und CHARS_TO_STRG 6261366 Konvertierungsfunktionen STRG_VAL und VAL_STRG 6271367 Datentypwandlung von Hexadezimalzahlen 6311368 Skalieren und Normieren 631

137 Schiebefunktionen 6361371 Allgemeine Funktionsbeschreibung 6361372 Rechts schieben 6361373 Links schieben 6381374 Rechts rotieren 6381375 Links rotieren 639

138 Logikfunktionen 6401381 Wortverknuumlpfungen 6401382 Invertieren Einerkomplement bilden 6421383 Codierfunktionen DECO und ENCO 6431384 Auswahlfunktionen SEL MUX und DEMUX 6441385 Minimumauswahl MIN Maximumauswahl MAX 6451386 Begrenzer LIMIT 645

139 Bearbeitung von Zeichenketten (Datentyp STRING) 6481391 Aktuelle Laumlnge einer Zeichenkette ausgeben LEN 6481392 Maximale Laumlnge einer Zeichenkette ausgeben MAX_LEN 6481393 Zeichenketten zusammenfassen CONCAT 6491394 Linke Teilzeichenkette ausgeben LEFT 6501395 Rechte Teilzeichenkette ausgeben RIGHT 6501396 Mittlere Teilzeichenkette ausgeben MID 6501397 Teilzeichenkette loumlschen DELETE 6511398 Zeichenkette einfuumlgen INSERT 6511399 Teilzeichenkette ersetzen REPLACE 65313910 Teilzeichenkette finden FIND 653

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

20

14 Programmsteuerung 655

141 Sprungfunktionen 6561411 Einfuumlhrung 6561412 Absoluter Sprung 6561413 Bedingte Sprungfunktionen 6581414 Sprungliste 6601415 Sprungverteiler 6621416 Schleifensprung 662

142 Aufruf von Codebausteinen 6641421 Allgemeines zu Bausteinaufrufen 6641422 Aufruf einer Funktion FC 6651423 Aufruf eines Funktionsbausteins FB 667

143 Bausteinende-Funktionen 6691431 Bausteinende-Funktion RET (KOP und FUP) 6701432 RETURN-Anweisung (SCL) 6701433 Bausteinende-Funktionen BEB BEA und BE (AWL) 670

144 Datenbausteinfunktionen 6721441 Datenbausteinattribute lesen 6721442 Ladespeicher lesen und schreiben 6731443 ARRAY-Datenbausteine 6751444 Systembausteine fuumlr den Zugriff auf ARRAY-Datenbausteine 6761445 CPU-Datenbausteine 678

15 Online-Betrieb und Programmtest 681

151 Programmiergeraumlt an die PLC-Station anschlieszligen 6821511 IP-Adressen des Programmiergeraumlts 6821512 Das Programmiergeraumlt mit der PLC-Station verbinden 6831513 Eine IP-Adresse der CPU-Baugruppe zuweisen 6851514 Den Online-Betrieb einschalten 6851515 Die CPU urloumlschen 6861516 Den Auslieferungszustand wiederherstellen 687

152 Projektdaten uumlbertragen 6881521 Die Projektdaten erstmalig laden 6881522 Die Projektdaten nachladen 6911523 Das Anwenderprogramm schuumltzen 6911524 Mit Online-Projektdaten arbeiten 6951525 Mit der Memory Card arbeiten 696

153 Mit Bausteinen im Online-Betrieb arbeiten 6971531 Einfuumlhrung 6971532 Einen Baustein aumlndern und laden 6981533 Laden ohne Reinitialisierung 7011534 Einen Baustein aus der CPU zuruumlckladen 7021535 Mit Einstellwerten arbeiten 7031536 Bausteine vergleichen 705

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

21

154 Hardware-Diagnose 7081541 Status-Anzeigen an den Baugruppen 7081542 Diagnose-Informationen 7091543 Diagnosepuffer 7101544 Diagnose-Funktionen 7111545 Online-Tools 7121546 Weitere Diagnose-Informationen uumlber das Programmiergeraumlt 713

155 Anwenderprogramm testen 7141551 Aufrufumgebung definieren 7141552 Testen mit Programmstatus 7151553 PLC-Variablen beobachten 7181554 Datenvariablen beobachten 7201555 Testen mit Beobachtungstabellen 7211556 Testen mit der Force-Tabelle 725

156 Messwertaufzeichnung mit der Trace-Funktion 7281561 Einfuumlhrung 7281562 Erstellen der Trace-Konfiguration 7281563 Trace laden und aufzeichnen 7291564 Messungen speichern und auswerten 730

16 Dezentrale Peripherie 733

161 Einfuumlhrung Uumlbersicht 733

162 Dezentrales Peripheriesystem ET 200 7341621 ET 200MP 7341622 ET 200M 7351623 ET 200SP 7351624 ET 200S 7361625 ET 200pro 7371626 ET 200eco und ET200eco PN 738

163 PROFINET IO 7381631 Komponenten von PROFINET IO 7381632 Adressen bei PROFINET IO 7401633 PROFINET IO projektieren 7431634 Kopplungsbaugruppen fuumlr PROFINET IO 7461635 Echtzeit-Kommunikation bei PROFINET 7481636 Spezielle PROFINET-Konfigurationen 752

164 PROFIBUS DP 7551641 Komponenten von PROFIBUS DP 7551642 Adressen bei PROFIBUS DP 7581643 PROFIBUS DP projektieren 7601644 Kopplungsbaugruppen fuumlr PROFIBUS DP 7641645 Spezielle PROFIBUS-Konfigurationen 767

165 Systembausteine fuumlr dezentrale Peripherie 7691651 Nutzdaten lesen und schreiben 7691652 Diagnosedaten von einem DP-Normslave lesen 772

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

22

1653 Datensatz empfangen und bereitstellen 7731654 Dezentrale Station aktivierendeaktivieren 775

166 DPV1-Alarme 776

167 Taktsynchronitaumlt 7781671 Einfuumlhrung 7781672 Taktsynchronitaumlt bei PROFINET 7781673 Taktsynchronitaumlt bei PROFIBUS 7821674 Taktsynchronalarm 7841675 Prozessabbilder taktsynchron aktualisieren 786

17 Kommunikation 788

171 Uumlbersicht 788

172 Open User Communication 7911721 Grundlagen 7911722 Datenstruktur der Open User Communication 7921723 Verbindung aufbauen und Daten senden mit TSEND_C 7931724 Verbindung aufbauen und Daten empfangen mit TRCV_C 7941725 Open User Communication projektieren 7961726 Weitere Funktionen der Open User Communication 798

173 S7-Kommunikation 8011731 Grundlagen 8011732 Einseitiger Datenaustausch 8021733 Zweiseitiger Datenaustausch 8041734 S7-Kommunikation projektieren 807

174 Punkt-zu-Punkt-Kommunikation 8081741 Einfuumlhrung in die Punkt-zu-Punkt-Kommunikation 8081742 Konfigurieren der Kommunikationsbaugruppe CM PtP 8091743 Punkt-zu-Punkt-Kommunikationsfunktionen 810

175 Weitere Kommunikationsfunktionen 8141751 USS-Protokoll fuumlr Antriebe 8141752 Modbus RTU 8161753 Modbus TCP 818

18 Anhang 821

181 Arbeiten mit Quelldateien 8211811 Allgemeines Vorgehen 8211812 Einen Codebaustein in der Quelldatei programmieren 8241813 Einen Datenbaustein in der Quelldatei programmieren 8301814 Einen PLC-Datentyp in der Quelldatei programmieren 832

182 Projekte migrieren und hochruumlsten 8341821 Ein Projekt migrieren 8341822 Ein Projekt hochruumlsten 837

183 Webserver 8381831 Webserver aktivieren 8381832 Web-Informationen auslesen 838

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

Inhaltsverzeichnis

23

1833 Standard-Webseiten 8391834 Service-Daten auslesen 8421835 Webserver initialisieren und Webseiten synchronisieren (WWW) 842

184 Technologiefunktionen 8431841 Technologiebaugruppen TM Count 224V und TM PosInput 2 8431842 Technologieobjekte fuumlr Zaumlhlen und Messen 8461843 Technologieobjekte fuumlr Motion Control 8491844 Technologieobjekte fuumlr PID Control 853

185 Daten protokollieren und Rezepturen uumlbertragen 8551851 Einfuumlhrung in die Datenprotokollierung 8551852 Datenprotokollierung anwenden 8561853 Funktionen fuumlr die Datenprotokollierung 8561854 Einfuumlhrung zur Rezepturenuumlbertragung 8591855 Funktionen fuumlr die Rezepturenuumlbertragung 860

186 Simulation mit PLCSIM 8611861 Unterschiede zu einer realen CPU-Baugruppe 8621862 PLCSIM installieren 8621863 Simulation starten und speichern 8631864 Mit der SIM-Tabelle testen 8651865 Mit der Sequenztabelle testen 8661866 Die Testfunktionen von STEP 7 anwenden 868

Stichwortverzeichnis 870

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

1 Einfuumlhrung

24

1 Einfuumlhrung

11 Uumlbersicht Automatisierungssystem S7-1500

SIMATIC S7-1500 ist das modulare Automatisierungssystem fuumlr den mittleren undoberen Leistungsbereich Verschiedene Varianten der Controller passen die Leis-tungsfaumlhigkeit an den jeweiligen Einsatzfall an Je nach Bedarf kann das Automati-sierungsgeraumlt mit Ein-Ausgabebaugruppen fuumlr Digital- und Analogsignale sowieTechnologie- und Kommunikationsbaugruppen modular erweitert werden DasAutomatisierungssystem SIMATIC S7-1500 ist nahtlos eingebettet in die SIMATIC-Systemarchitektur (Bild 11)

Bild 11 Bestandteile des Automatisierungssystems SIMATIC S7-1500

SIMATIC Controller steuern die Maschineoder Anlage Mehrere Varianten derController erweitern das Einsatzspektrum

Die dezentrale Peripherie erweitertdie Schnittstelle zur Maschineoder Anlage

SIMATIC NET

SIMATIC HMI

SIMATIC ET200 STEP 7 Professional(TIA Portal)

SIMATIC S7-1500

Die Vernetzung ermoumlglicht den Datenaustauschzwischen den Geraumlten und den Online-Zugriffan beliebiger Stelle

STEP 7 ist die Engineeringsoftware zumKonfigurieren undProgrammieren

Projektieren

S

Automatisierungssystem SIMATIC S7-1500

S

ESC OK

Bedienen und Beobachtenzum Fuumlhren der Anlageim laufenden Betrieb

S

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

11 Uumlbersicht Automatisierungssystem S7-1500

25

Die dezentrale Peripherie SIMATIC ET200 bietet eine zusaumltzliche Erweiterung mit Ein-Ausgabebaugruppen die mit PROFIBUS DP oder PROFINET IO mit dem zentralenSteuerungsgeraumlt verbunden sind Die dezentralen Stationen koumlnnen in einem Schalt-schrank oder ndash mit besonderen Bauformen fuumlr erhoumlhte mechanische Anforderungausgestattet ndash auch vor Ort direkt an der Maschine oder Anlage installiert werden

Mit SIMATIC HMI (HMI = Human Machine Interface) wird eine Maschine oderAnlage gefuumlhrt und deren Funktion beobachtet Die Geraumlte koumlnnen ndash je nach Vari-ante ndash uumlber Prozessbilder Bedienfunktionen zur Verfuumlgung stellen Betriebs- undStoumlrungsmeldungen anzeigen und die Automatisierungsdaten in Form von Rezep-turen oder Messwertarchiven verwalten

SIMATIC NET uumlbernimmt den Datenaustausch uumlber verschiedene Bussysteme zwi-schen den SIMATIC-Steuerungsgeraumlten der dezentralen Peripherie den Bedienge-raumlten und dem Programmiergeraumlt Das Programmiergeraumlt kann ein Personal Com-puter ein Industrierechner oder ein Notebook mit dem Betriebssystem MicrosoftWindows sein

Mit der Engineering-Software STEP 7 werden die SIMATIC-Komponenten konfigu-riert projektiert parametriert und programmiert Das TIA Portal (TIA = TotallyIntegrated Automation) ist das zentrale Werkzeug zum Verwalten der Automatisie-rungsdaten und der dazugehoumlrenden Editoren in Form eines hierarchisch geglie-derten Projekts

111 Automatisierungsgeraumlt SIMATIC S7-1500

Die wesentlichen Bestandteile eines S7-1500-Automatisierungsgeraumlts sind im Bild12 dargestellt

Bild 12 Bestandteile einer S7-1500-Steuerung

Zentralgeraumlt

SM-Baugruppen(Signal Modules)

Auf dem Baugruppentraumlger sind steckbar

Der Baugruppentraumlger hat 32 Steckplaumltzewobei eine optionale StromversorgungSteckplatz 0 und die CPU-BaugruppeSteckplatz 1 belegen Rechts von der CPU-Baugruppe finden noch maximal 30Baugruppen (einschlieszliglichStromversorgungsbaugruppen) Platz

TM-Baugruppen(Technology Modules)

CM-Baugruppen(Communication Modules)

CPU-Baugruppe(Central Processor Unit)

PS-Baugruppe(Power Supply)

Baugruppen-traumlger (Rack)

Bestandteile einer S7-1500-Steuerung

S

ESC OK

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

1 Einfuumlhrung

26

Die CPU-Baugruppe enthaumllt das Betriebssystem und das AnwenderprogrammDas Anwenderprogramm steht spannungsausfallsicher auf der in der CPU-Bau-gruppe steckenden SIMATIC Memory Card Die Bearbeitung des Anwenderpro-gramms findet im Arbeitsspeicher in der CPU statt Die auf der CPU-Baugruppevorhandenen Busschnittstellen stellen die Verbindung zu anderen Automatisie-rungsgeraumlten her

Die Verbindung zur gesteuerten Maschine oder Anlage uumlbernehmen SM-Baugrup-pen (Signalbaugruppen) Diese Ein- und Ausgabebaugruppen gibt es fuumlr Digital-und Analogsignale mit verschiedenen Spannungen und Stroumlmen

Die TM-Baugruppen (Technologiebaugruppen) sind signalvorverarbeitendebdquointelligenteldquo Peripheriebaugruppen die vom Prozess kommende Signale unab-haumlngig von der CPU aufbereiten verarbeiten und entweder wieder direkt an denProzess zuruumlckgeben oder an der internen Schnittstelle der CPU zur Verfuumlgungstellen TM-Baugruppen uumlbernehmen Funktionen die die CPU meist nicht schnellgenug ausfuumlhren kann wie z B Impulse zaumlhlen

Die CM-Baugruppen (Kommunikationsbaugruppen) ermoumlglichen einen Daten-verkehr der die Funktionalitaumlt der Standard-Schnittstellen auf der CPU-Baugruppebezuumlglich Protokolle und Kommunikationsfunktionen uumlberschreitet

(System-)Stromversorgungsbaugruppen sorgen fuumlr die benoumltigten internenSpannungen im Automatisierungsgeraumlt Bei Bedarf koumlnnen bis zu drei System-Stromversorgungsbaugruppen im Automatisierungsgeraumlt eingesetzt werdenLastspannungen bzw Laststroumlme werden uumlber externe Laststromversorgungen(Power Modules PM) bereitgestellt die auch eine 24V-Primaumlrspannung fuumlr Sys-tem-Stromversorgungsbaugruppen liefern koumlnnen

112 Uumlbersicht STEP 7 Professional V12

STEP 7 ist das zentrale Automatisierungswerkzeug fuumlr SIMATIC STEP 7 benoumltigtzum Betrieb eine Autorisierung (Lizenz) und laumluft auf den jeweils aktuellenBetriebssystemen unter Microsoft Windows Die Projektierung eines S7-1500-Con-trollers geschieht mit zwei Ansichten der Portalansicht und der Projektansicht

Die Portalansicht ist aufgabenorientiert angelegt Im Startportal oumlffnen Sie einbestehendes Projekt erstellen ein neues Projekt oder migrieren ein Projekt EinbdquoProjektldquo ist eine Datenstruktur die alle erforderlichen Programme und Daten fuumlrIhr Automatisierungsvorhaben enthaumllt Von hier aus sind die wichtigsten Werk-zeuge und Funktionen von STEP 7 uumlber weitere Portale erreichbar Das PortalGeraumlte amp Netze zur Konfiguration der Hardware das Portal PLC-Programmierungzum Bearbeiten des Anwenderprogramms das Portal Motion amp Technology zumErstellen von Technologie-Objekten das Portal Visualisierung zum Projektierenvon HMI-Systemen und das Portal Online amp Diagnose fuumlr den Online-Betrieb desProgrammiergeraumlts (Bild 13)

Die Projektansicht bietet eine objektorientierte Ansicht mit mehreren Fensternderen Inhalt je nach ausgefuumlhrter Taumltigkeit wechselt (Bild 14) In der Geraumltekonfi-guration steht der Arbeitsbereich mit dem zu konfigurierenden Geraumlt im Mittel-

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

11 Uumlbersicht Automatisierungssystem S7-1500

27

Bild 13 Werkzeuge im Startportal von STEP 7 Professional V12

Bild 14 Beispiel fuumlr die Projektansicht Arbeitsbereich der Geraumltekonfiguration

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

1 Einfuumlhrung

28

punkt In der Geraumltesicht wird der Baugruppentraumlger mit den bereits platziertenBaugruppen gezeigt Ein weiteres Fenster ndash das Inspektorfenster ndash enthaumllt dieEigenschaften der selektierten Baugruppe das Aufgaben-Fenster (Task Card) gibtUnterstuumltzung durch den Hardware-Katalog mit den zur Verfuumlgung stehendenBaugruppen Die Netzsicht gestattet die Vernetzung zwischen PLC- und HMI-Statio-nen

Bei der PLC-Programmierung bearbeiten Sie im Arbeitsbereich den ausgewaumlhltenBaustein Wiederum sehen Sie im Inspektorfenster die Eigenschaften des markier-ten Objekts und koumlnnen diese einstellen Das Aufgabenfenster enthaumllt diesmal denProgrammelemente-Katalog mit den zur Verfuumlgung stehenden Programmelemen-ten und Anweisungen Aumlhnliches gilt fuumlr die Bearbeitung der PLC-Variablen oderbeim Online-Programmtest durch Beobachtungstabellen

Und stets haben Sie die Projektnavigation im Blickfeld Sie enthaumllt alle Objekte desSTEP-7-Projekts So koumlnnen Sie jederzeit ein Objekt beispielsweise einen Pro-grammbaustein oder eine Beobachtungstabelle auswaumlhlen und dieses Objekt mitden entsprechenden Editoren die beim Oumlffnen des Objekts automatisch startenbearbeiten

113 Verschiedene Programmiersprachen

Als Programmiersprache fuumlr das Anwenderprogramm koumlnnen Sie zwischen Kon-taktplan (KOP) Funktionsplan (FUP) Structured Control Language (SCL) Anwei-sungsliste (AWL) und Ablaufsteuerung (GRAPH) waumlhlen

Mit Kontaktplan programmieren Sie die Steuerungsaufgabe angelehnt an denStromlaufplan Die Verknuumlpfung der binaumlren Signalzustaumlnde wird durch die seri-elle oder parallele Anordnung von Kontakten und Spulen dargestellt (Bild 15)Komplexe Funktionen wie beispielsweise die arithmetischen Funktionen werdenmit Boxen dargestellt die Sie wie Kontakte oder Spulen im Kontaktplan anordnen

Mit Funktionsplan programmieren Sie die Steuerungsaufgabe angelehnt an elektro-nische Schaltkreissysteme Binaumlre Verknuumlpfungen werden durch Verschaltung von

Bild 15 Beispiel fuumlr die Darstellung in Kontaktplan

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen

11 Uumlbersicht Automatisierungssystem S7-1500

29

UND- und ODER-Funktionen realisiert und mit Speicher-Boxen abgeschlossen (Bild16) Komplexe Boxen uumlbernehmen die Verknuumlpfung digitaler Variablen beispiels-weise bei den arithmetischen Funktionen

Structured Control Language eignet sich besonders fuumlr die Programmierungvon komplexen Algorithmen oder fuumlr Aufgabenstellungen aus dem Bereich derDatenverwaltung Das Programm besteht aus SCL-Anweisungen die beispielsweiseWertzuweisungen Vergleiche oder Kontrollanweisungen sein koumlnnen (Bild 17)

Mit Anweisungsliste programmieren Sie die Steuerungsaufgabe durch eine Folgevon Anweisungen Jede AWL-Anweisung enthaumllt eine Vorschrift was zu tun ist undeventuell einen Operand mit dem die Operation ausgefuumlhrt wird AWL ist gleicher-maszligen geeignet fuumlr binaumlre und digitale Verknuumlpfungen wie fuumlr die Programmie-rung komplexer Steuerungsaufgaben (Bild 18)

Mit GRAPH programmieren Sie eine Steuerungsaufgabe als Ablaufsteuerung inder die sequenzielle Folge von Aktionen vorherrscht Die einzelnen Schritte undVerzweigungen werden durch Weiterschaltbedingungen freigegeben die mit KOPoder FUP programmiert werden koumlnnen (Bild 19)

Bild 16 Beispiel fuumlr die Darstellung in Funktionsplan

Bild 17 Beispiel fuumlr SCL-Anweisungen