15

Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten
Dateianlage
covergif

Berger Automatisieren mit SIMATIC S7-1200

Automatisieren mit SIMATIC S7-1200Programmieren Projektieren und Testen mit STEP 7 Basic V11Visualisieren mit WinCC Basic V11

von Hans Berger

2 uumlberarbeitete und erweiterte Auflage 2013

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 in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund ist ausgeschlossen Die in diesem Buch wiedergegebenen Bezeichnungen koumlnnen Warenzeichen sein deren Benutzung durch Dritte fuumlr deren Zwecke die Rechte der Inhaber verletzen kann

wwwpublicis-booksde

Print ISBN 978-3-89578-384-5 ePDF ISBN 978-3-89578-697-6

2 Auflage 2013

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2013 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 bedeutet mit einer einzigen Systemba-sis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisierungs-komponenten einheitlich zu behandeln Diesen Anforderungen wird das Automati-sierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei Projektierung Program-mierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1200 Eine S7-1200-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr viele Kleinanwendungen genuumlgt bereits der Einsatz der CPU-Bau-gruppe mit der Onboard-Peripherie Die in der CPU-Baugruppe integriertentechnologischen Funktionen machen das Geraumlt aumluszligerst vielseitig einsetzbar MitKontaktplan (KOP) und Funktionsplan (FUP) stehen zwei etablierte Programmier-sprachen fuumlr die Loumlsung der Automatisierungsaufgabe zur Verfuumlgung

Passend zu den S7-1200-Steuerungen sind mit den SIMATIC HMI Basic Panels neueBedien- und Beobachtungsgeraumlte konzipiert worden mit einer fuumlr Kleinanwendun-gen optimierten Leistung und Funktionalitaumlt Ein Touchscreen in verschiedenenMonitorgroumlszligen und eine aufeinander abgestimmte Kommunikation uumlber Industri-al Ethernet sind ideale Voraussetzungen fuumlr das Zusammenspiel mit S7-1200

Die Engineeringsoftware STEP 7 Basic erschlieszligt alle Moumlglichkeiten der S7-1200-Controller STEP 7 Basic ist das gemeinsame Werkzeug fuumlr die Konfiguration desHardware-Aufbaus und die Programmierung des Steuerungsprogramms genausowie fuumlr den Programmtest und die Diagnose Mit der in STEP 7 Basic enthaltenenProjektierungssoftware SIMATIC WinCC Basic werden die Basic Panels projektiertDie moderne und intuitive Benutzerfuumlhrung gestattet ein effizientes aufgabenori-entiertes Engineering von Steuerungs- und Visualisierungsgeraumlten

Das vorliegende Buch beschreibt das Automatisierungssystem S7-1200 mit den S7-1200-Controllern und den HMI Basic Panels Der Schwerpunkt der Beschreibungliegt in der Programmierung des Steuerungsprogramms mit der Engineeringsoft-ware STEP 7 Basic in der Version 105 SP2

Nuumlrnberg im September 2012 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 2: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Berger Automatisieren mit SIMATIC S7-1200

Automatisieren mit SIMATIC S7-1200Programmieren Projektieren und Testen mit STEP 7 Basic V11Visualisieren mit WinCC Basic V11

von Hans Berger

2 uumlberarbeitete und erweiterte Auflage 2013

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 in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund ist ausgeschlossen Die in diesem Buch wiedergegebenen Bezeichnungen koumlnnen Warenzeichen sein deren Benutzung durch Dritte fuumlr deren Zwecke die Rechte der Inhaber verletzen kann

wwwpublicis-booksde

Print ISBN 978-3-89578-384-5 ePDF ISBN 978-3-89578-697-6

2 Auflage 2013

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2013 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 bedeutet mit einer einzigen Systemba-sis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisierungs-komponenten einheitlich zu behandeln Diesen Anforderungen wird das Automati-sierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei Projektierung Program-mierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1200 Eine S7-1200-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr viele Kleinanwendungen genuumlgt bereits der Einsatz der CPU-Bau-gruppe mit der Onboard-Peripherie Die in der CPU-Baugruppe integriertentechnologischen Funktionen machen das Geraumlt aumluszligerst vielseitig einsetzbar MitKontaktplan (KOP) und Funktionsplan (FUP) stehen zwei etablierte Programmier-sprachen fuumlr die Loumlsung der Automatisierungsaufgabe zur Verfuumlgung

Passend zu den S7-1200-Steuerungen sind mit den SIMATIC HMI Basic Panels neueBedien- und Beobachtungsgeraumlte konzipiert worden mit einer fuumlr Kleinanwendun-gen optimierten Leistung und Funktionalitaumlt Ein Touchscreen in verschiedenenMonitorgroumlszligen und eine aufeinander abgestimmte Kommunikation uumlber Industri-al Ethernet sind ideale Voraussetzungen fuumlr das Zusammenspiel mit S7-1200

Die Engineeringsoftware STEP 7 Basic erschlieszligt alle Moumlglichkeiten der S7-1200-Controller STEP 7 Basic ist das gemeinsame Werkzeug fuumlr die Konfiguration desHardware-Aufbaus und die Programmierung des Steuerungsprogramms genausowie fuumlr den Programmtest und die Diagnose Mit der in STEP 7 Basic enthaltenenProjektierungssoftware SIMATIC WinCC Basic werden die Basic Panels projektiertDie moderne und intuitive Benutzerfuumlhrung gestattet ein effizientes aufgabenori-entiertes Engineering von Steuerungs- und Visualisierungsgeraumlten

Das vorliegende Buch beschreibt das Automatisierungssystem S7-1200 mit den S7-1200-Controllern und den HMI Basic Panels Der Schwerpunkt der Beschreibungliegt in der Programmierung des Steuerungsprogramms mit der Engineeringsoft-ware STEP 7 Basic in der Version 105 SP2

Nuumlrnberg im September 2012 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 3: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Automatisieren mit SIMATIC S7-1200Programmieren Projektieren und Testen mit STEP 7 Basic V11Visualisieren mit WinCC Basic V11

von Hans Berger

2 uumlberarbeitete und erweiterte Auflage 2013

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 in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund ist ausgeschlossen Die in diesem Buch wiedergegebenen Bezeichnungen koumlnnen Warenzeichen sein deren Benutzung durch Dritte fuumlr deren Zwecke die Rechte der Inhaber verletzen kann

wwwpublicis-booksde

Print ISBN 978-3-89578-384-5 ePDF ISBN 978-3-89578-697-6

2 Auflage 2013

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2013 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 bedeutet mit einer einzigen Systemba-sis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisierungs-komponenten einheitlich zu behandeln Diesen Anforderungen wird das Automati-sierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei Projektierung Program-mierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1200 Eine S7-1200-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr viele Kleinanwendungen genuumlgt bereits der Einsatz der CPU-Bau-gruppe mit der Onboard-Peripherie Die in der CPU-Baugruppe integriertentechnologischen Funktionen machen das Geraumlt aumluszligerst vielseitig einsetzbar MitKontaktplan (KOP) und Funktionsplan (FUP) stehen zwei etablierte Programmier-sprachen fuumlr die Loumlsung der Automatisierungsaufgabe zur Verfuumlgung

Passend zu den S7-1200-Steuerungen sind mit den SIMATIC HMI Basic Panels neueBedien- und Beobachtungsgeraumlte konzipiert worden mit einer fuumlr Kleinanwendun-gen optimierten Leistung und Funktionalitaumlt Ein Touchscreen in verschiedenenMonitorgroumlszligen und eine aufeinander abgestimmte Kommunikation uumlber Industri-al Ethernet sind ideale Voraussetzungen fuumlr das Zusammenspiel mit S7-1200

Die Engineeringsoftware STEP 7 Basic erschlieszligt alle Moumlglichkeiten der S7-1200-Controller STEP 7 Basic ist das gemeinsame Werkzeug fuumlr die Konfiguration desHardware-Aufbaus und die Programmierung des Steuerungsprogramms genausowie fuumlr den Programmtest und die Diagnose Mit der in STEP 7 Basic enthaltenenProjektierungssoftware SIMATIC WinCC Basic werden die Basic Panels projektiertDie moderne und intuitive Benutzerfuumlhrung gestattet ein effizientes aufgabenori-entiertes Engineering von Steuerungs- und Visualisierungsgeraumlten

Das vorliegende Buch beschreibt das Automatisierungssystem S7-1200 mit den S7-1200-Controllern und den HMI Basic Panels Der Schwerpunkt der Beschreibungliegt in der Programmierung des Steuerungsprogramms mit der Engineeringsoft-ware STEP 7 Basic in der Version 105 SP2

Nuumlrnberg im September 2012 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 4: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

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 in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund ist ausgeschlossen Die in diesem Buch wiedergegebenen Bezeichnungen koumlnnen Warenzeichen sein deren Benutzung durch Dritte fuumlr deren Zwecke die Rechte der Inhaber verletzen kann

wwwpublicis-booksde

Print ISBN 978-3-89578-384-5 ePDF ISBN 978-3-89578-697-6

2 Auflage 2013

Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2013 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 bedeutet mit einer einzigen Systemba-sis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisierungs-komponenten einheitlich zu behandeln Diesen Anforderungen wird das Automati-sierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei Projektierung Program-mierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1200 Eine S7-1200-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr viele Kleinanwendungen genuumlgt bereits der Einsatz der CPU-Bau-gruppe mit der Onboard-Peripherie Die in der CPU-Baugruppe integriertentechnologischen Funktionen machen das Geraumlt aumluszligerst vielseitig einsetzbar MitKontaktplan (KOP) und Funktionsplan (FUP) stehen zwei etablierte Programmier-sprachen fuumlr die Loumlsung der Automatisierungsaufgabe zur Verfuumlgung

Passend zu den S7-1200-Steuerungen sind mit den SIMATIC HMI Basic Panels neueBedien- und Beobachtungsgeraumlte konzipiert worden mit einer fuumlr Kleinanwendun-gen optimierten Leistung und Funktionalitaumlt Ein Touchscreen in verschiedenenMonitorgroumlszligen und eine aufeinander abgestimmte Kommunikation uumlber Industri-al Ethernet sind ideale Voraussetzungen fuumlr das Zusammenspiel mit S7-1200

Die Engineeringsoftware STEP 7 Basic erschlieszligt alle Moumlglichkeiten der S7-1200-Controller STEP 7 Basic ist das gemeinsame Werkzeug fuumlr die Konfiguration desHardware-Aufbaus und die Programmierung des Steuerungsprogramms genausowie fuumlr den Programmtest und die Diagnose Mit der in STEP 7 Basic enthaltenenProjektierungssoftware SIMATIC WinCC Basic werden die Basic Panels projektiertDie moderne und intuitive Benutzerfuumlhrung gestattet ein effizientes aufgabenori-entiertes Engineering von Steuerungs- und Visualisierungsgeraumlten

Das vorliegende Buch beschreibt das Automatisierungssystem S7-1200 mit den S7-1200-Controllern und den HMI Basic Panels Der Schwerpunkt der Beschreibungliegt in der Programmierung des Steuerungsprogramms mit der Engineeringsoft-ware STEP 7 Basic in der Version 105 SP2

Nuumlrnberg im September 2012 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 5: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

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 bedeutet mit einer einzigen Systemba-sis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisierungs-komponenten einheitlich zu behandeln Diesen Anforderungen wird das Automati-sierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei Projektierung Program-mierung Datenhaltung und Kommunikation

Das vorliegende Buch beschreibt das neu entwickelte AutomatisierungssystemSIMATIC S7-1200 Eine S7-1200-Steuerung ist kompakt aufgebaut und modular er-weiterbar Fuumlr viele Kleinanwendungen genuumlgt bereits der Einsatz der CPU-Bau-gruppe mit der Onboard-Peripherie Die in der CPU-Baugruppe integriertentechnologischen Funktionen machen das Geraumlt aumluszligerst vielseitig einsetzbar MitKontaktplan (KOP) und Funktionsplan (FUP) stehen zwei etablierte Programmier-sprachen fuumlr die Loumlsung der Automatisierungsaufgabe zur Verfuumlgung

Passend zu den S7-1200-Steuerungen sind mit den SIMATIC HMI Basic Panels neueBedien- und Beobachtungsgeraumlte konzipiert worden mit einer fuumlr Kleinanwendun-gen optimierten Leistung und Funktionalitaumlt Ein Touchscreen in verschiedenenMonitorgroumlszligen und eine aufeinander abgestimmte Kommunikation uumlber Industri-al Ethernet sind ideale Voraussetzungen fuumlr das Zusammenspiel mit S7-1200

Die Engineeringsoftware STEP 7 Basic erschlieszligt alle Moumlglichkeiten der S7-1200-Controller STEP 7 Basic ist das gemeinsame Werkzeug fuumlr die Konfiguration desHardware-Aufbaus und die Programmierung des Steuerungsprogramms genausowie fuumlr den Programmtest und die Diagnose Mit der in STEP 7 Basic enthaltenenProjektierungssoftware SIMATIC WinCC Basic werden die Basic Panels projektiertDie moderne und intuitive Benutzerfuumlhrung gestattet ein effizientes aufgabenori-entiertes Engineering von Steuerungs- und Visualisierungsgeraumlten

Das vorliegende Buch beschreibt das Automatisierungssystem S7-1200 mit den S7-1200-Controllern und den HMI Basic Panels Der Schwerpunkt der Beschreibungliegt in der Programmierung des Steuerungsprogramms mit der Engineeringsoft-ware STEP 7 Basic in der Version 105 SP2

Nuumlrnberg im September 2012 Hans Berger

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 6: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Der Inhalt des Buchs auf einen Blick

6

Der Inhalt des Buchs auf einen Blick

Start

Einfuumlhrung

SIMATIC S7-1200 Das Automatisierungssystem SIMATIC S7-1200 in der UumlbersichtSTEP 7 Basic Eine Einfuumlhrung in die Engineeringsoftware fuumlr SIMATIC S7-1200SIMATIC-Projekt Die Grundlage fuumlr die Automatisierungsloumlsung

Geraumlte amp Netze

Die Hardware-Komponenten von S7-1200

Baugruppen Eine Uumlbersicht uumlber die Baugruppen und Module von SIMATIC S7-1200

Geraumltekonfiguration

Hardware-Konfiguration Die Projektierung des Hardware-AufbausNetz-Projektierung Die Projektierung eines Kommunikationsnetzwerks

PLC-Programmierung

Das Steuerungsprogramm

Betriebszustaumlnde Wie sich die CPU-Baugruppe bei STARTUP RUN und STOP verhaumlltBearbeitungsarten Anlaufverhalten Hauptprogramm Alarmbearbeitung und Fehler-behandlung bestimmen die Bearbeitung des SteuerungsprogrammsBausteine Organisationsbausteine Funktionsbausteine Funktionen und Datenbausteine strukturieren das Steuerungsprogramm

Der Programmeditor

Programmierung Wie das Steuerungsprogramm erstellt wirdProgramminformation Werkzeuge zur Unterstuumltzung der Programmierung

Die Programmiersprachen Kontaktplan und Funktionsplan

Programmelemente Das Charakteristische der KOP- und FUP-Programmierung der Einsatz von Kontakten Spulen Standard-Boxen Q-Boxen und ENENO-Boxen

Variablen und Datentypen

Variablen Operandenbereiche projektweite und bausteinlokale Variablen AdressierungDatentypen Beschreibung der elementaren und zusammengesetzten Datentypen

Die Beschreibung der Steuerungsfunktionen

Basisfunktionen Binaumlre Verknuumlpfungen Speicherfunktionen Flankenauswertung Zeit- und ZaumlhlfunktionenDigitalfunktionen Uumlbertragungs- Vergleichs- Arithmetik- Mathematik- Konvertie-rungs- Schiebe- und LogikfunktionenProgrammfluss-Steuerung Sprungfunktionen Bausteinende-Funktion Baustein-aufrufe

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 7: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Der Inhalt des Buchs auf einen Blick

7

Online amp Diagnose

Das Programmiergeraumlt an die PLC-Station anschlieszligen

Online-Betrieb Die Verbindung mit der PLC-Station aufnehmenStatusanzeigen Die Baugruppen melden von sich aus einen FehlerDiagnose-Informationen Mit den Diagnose-Informationen den Fehler findenOnline-Tools Mit den Online-Tools die CPU-Baugruppe steuern

Die Projektdaten online amp offline

Laden Das Steuerungsprogramm in den CPU-Speicher ladenBausteine Die Bausteine offlineonline editieren und vergleichenTest Mit Programmstatus und Beobachtungstabellen die Steuerungsfunktion testen

Datenkommunikation

Open User Communication

Datenuumlbertragung Der Datenaustausch von PLC zu PLC uumlber Ethernet

Punkt-zu-Punkt-Verbindung

PtP Die Datenuumlbertragung mit CM-Baugruppen uumlber RS232 und RS485

Visualisierung

Basic Panels projektieren

Einfuumlhrung Die Basic Panels in der UumlbersichtStart Ein HMI-Projekt einrichten der Bediengeraumlte-AssistentVerbindung zur PLC HMI-Variablen und Bereichszeiger anlegenBilder erstellen Die Projektierung der Prozessbilder ndash Vorlagen Ebenen und BildwechselArbeiten mit Bildelementen Bedien- und Anzeigeelemente anordnen und editieren ein Meldesystem projektieren Rezepturen anlegen und Datensaumltze uumlbertragen die Benutzer-verwaltung einrichten

Das HMI-Programm fertigstellen

Simulation Das HMI-Programm mit PLC-Station oder mit Variablentabelle simulierenVerbindung Das HMI-Programm zur HMI-Station uumlbertragen

Anhang

Integrierte und technologische Funktionen

Funktionen High Speed Counter Impulsgenerator Motion Control PID-Regler

Globale Bibliotheken

Uumlbersicht USS-Antriebssteuerung MODBUS-Bausteine

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 8: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

8

Inhaltsverzeichnis

1 Einfuumlhrung 21

11 Uumlbersicht Automatisierungssystem S7-1200 21111 SIMATIC S7-1200 22112 Uumlbersicht STEP 7 Basic 24113 Drei Programmiersprachen 25114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 29116 Bedienen und Beobachten mit Prozessbildern 30

12 Einfuumlhrung in STEP 7 Basic fuumlr S7-1200 31121 STEP 7 installieren 31122 Automation License Manager 31123 STEP 7 Basic starten 32124 Portalansicht 32125 Informationssystem 33126 Die Fenster der Projektansicht 34127 Bedienoberflaumlche anpassen 36

13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 39133 Ein Projekt erstellen und bearbeiten 41134 Bibliotheken anlegen und bearbeiten 42

2 Automatisierungssystem SIMATIC S7-1200 43

21 Komponenten einer S7-1200-Station 43

22 CPU-Baugruppen S7-1200 44221 Onboard-Peripherie 44222 PROFINET-Anschluss 46223 Status-Leuchtdioden 47224 SIMATIC Memory Card 47225 Erweiterungen der CPU-Baugruppe 47

23 Signal Modules (SM) 49231 Digitalein-ausgabebaugruppen 49232 Analogein-ausgabebaugruppen 50233 Eigenschaften der Peripherieanschluumlsse 50

24 Communication Modules (CM) 52241 Punkt-zu-Punkt-Kommunikation 52242 PROFIBUS DP 53243 AktorSensor-Interface 53244 GPRS-Uumlbertragung 53

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 9: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

9

25 Weitere Baugruppen 54251 Compact Switch Module (CSM) 54252 Power Module (PM) 55253 TS-Adapter IE Basic 55254 Simulator SIM 1274 56

26 SIPLUS S7-1200 56

3 Geraumltekonfiguration 58

31 Einfuumlhrung 58

32 Eine Station konfigurieren 61321 Eine PLC-Station hinzufuumlgen 61322 Baugruppen anordnen 62323 Eine HMI-Station hinzufuumlgen 62

33 Baugruppen parametrieren 62331 Die CPU-Eigenschaften parametrieren 62332 Ein- und Ausgabesignale adressieren 64333 Digitaleingaben parametrieren 66334 Digitalausgaben parametrieren 66335 Analogeingaben parametrieren 67336 Analogausgaben parametrieren 67

34 Netz projektieren 68341 Einfuumlhrung 68342 Stationen vernetzen 69343 Teilnehmeradressen in einem Subnetz 71344 Verbindungen 72345 Ein PROFINET-Subnetz projektieren 74346 Ein PROFIBUS-Subnetz projektieren 77347 Ein AS-i-Subnetz projektieren 79

4 Variablen und Datentypen 80

41 Operanden und Variablen 80411 Einfuumlhrung Uumlbersicht 80412 Operandenbereiche Eingaumlnge und Ausgaumlnge 81413 Operandenbereich Merker 83414 Operandenbereich Daten 85415 Operandenbereich temporaumlre Lokaldaten 86

42 Adressierung 87421 Signalweg 87422 Absolute Adressierung eines Operanden 88423 Absolute Adressierung eines Operandenbereichs 89424 Symbolische Adressierung 90425 Adressierung eines Variablenteils 91426 Adressierung von Konstanten 91427 Indirekte Adressierung 92

43 Allgemeines zu Datentypen 94431 Uumlbersicht der Datentypen 94

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 10: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

10

432 Implizite Datentypkonvertierung 95433 Variablen uumlberlagern (Datentypsichten) 96

44 Elementare Datentypen 97441 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 98442 BCD-codierte Zahlen BCD16 und BCD32 99443 Vorzeichenlose Festpunkt-Datentypen USINT UINT und UDINT 100444 Festpunkt-Datentypen mit Vorzeichen SINT INT und DINT 100445 Gleitpunkt-Datentypen REAL und LREAL 101446 Datentyp CHAR 103447 Datentyp DATE 103448 Datentyp TIME 103449 Datentyp TIME_OF_DAY (TOD) 104

45 Strukturierte Datentypen 104451 Datentyp DTL 105452 Zeichenkette STRING 105453 Datentyp ARRAY 107454 Datentyp STRUCT 107

46 Parametertypen 110461 Parametertypen fuumlr IEC-Zeitfunktionen 110462 Parametertypen fuumlr IEC-Zaumlhlfunktionen 111463 Parametertyp VARIANT 112464 Parametertyp VOID 112

47 PLC-Datentypen 112

48 Systemdatentypen 114481 Systemdatentyp IEC_TIMER 114482 Systemdatentyp IEC_COUNTER 115483 Datentyp TCON_Param 115484 Datentyp TADDR_Param 116485 Datentyp ErrorStruct 117486 Datentyp TimeTransformationRule 118

49 Hardware-Datentypen 118

5 Anwenderprogramm bearbeiten 120

51 Betriebszustaumlnde 120511 Betriebszustand STOP 121512 Betriebszustand STARTUP 121513 Betriebszustand RUN 123514 Remanenzverhalten von Operanden 124

52 Anwenderprogramm erstellen 125521 Programmentwurf 125522 Programmbearbeitung 127523 Schachtelungstiefe 129

53 Bausteine programmieren 129531 Bausteinarten 129532 Bausteineigenschaften bearbeiten 131533 Know-how-Schutz einrichten 135

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 11: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

11

534 Kopierschutz 136535 Bausteinschnittstelle 137536 Bausteinparameter programmieren 140

54 Bausteine aufrufen 141541 Allgemeines zum Aufruf von Codebausteinen 141542 Aufruf einer Funktion (FC) 143543 Aufruf eines Funktionsbausteins (FB) 144544 bdquoWeiterreichenldquo von Bausteinparametern 146

55 Anlaufprogramm 147

56 Hauptprogramm 148561 Organisationsbausteine fuumlr das Hauptprogramm 148562 Prozessabbild-Aktualisierung 148563 Zykluszeit 149564 Reaktionszeit 151565 Programmbearbeitung stoppen 152566 Uhrzeit 153567 Betriebsstundenzaumlhler 157

57 Alarmbearbeitung 158571 Einfuumlhrung zur Alarmbearbeitung 158572 Verzoumlgerungsalarme 161573 Weckalarme 165574 Prozessalarme 169575 Alarme zur Laufzeit zuordnen 171576 Alarme verzoumlgern und freigeben 172

58 Fehlerbehandlung Diagnose 173581 Fehlerursachen und Fehlerreaktionen 173582 Fehleranzeige mit dem ENO-Ausgang 174583 Zeitfehler OB 80 174584 Lokale Fehlerbehandlung 175585 Diagnosefunktionen im Anwenderprogramm 178586 Diagnosealarm OB 82 183

6 Programmeditor 185

61 Einfuumlhrung 185

62 PLC-Variablentabelle 186621 PLC-Variablentabelle anlegen und bearbeiten 186622 PLC-Variablen definieren 186623 PLC-Variablentabelle editieren 187624 PLC-Variablentabelle exportieren und importieren 189625 Konstantentabellen 189

63 Codebaustein programmieren 190631 Einen neuen Codebaustein anlegen 190632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 192633 Bausteineigenschaften fuumlr Codebausteine festlegen 193634 Bausteinschnittstelle programmieren 194635 Steuerungsfunktion programmieren 196

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 12: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

12

636 Variablen editieren 200637 Mit Programmkommentaren arbeiten 201

64 Datenbaustein programmieren 202641 Einen neuen Datenbaustein anlegen 202642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 203643 Bausteineigenschaften fuumlr Datenbausteine festlegen 204644 Datenvariablen deklarieren 204645 Datenvariablen in Globaldatenbausteinen eingeben 206

65 Bausteine uumlbersetzen 207651 Uumlbersetzung starten 207652 SCL-Bausteine uumlbersetzen 208653 Fehler nach der Uumlbersetzung beheben 209

66 Programminformationen 210661 Querverweisliste 210662 Belegungsplan 212663 Aufrufstruktur 214664 Abhaumlngigkeitsstruktur 215665 Konsistenzpruumlfung 216666 Speicherauslastung der CPU 216

67 Sprachen-Einstellung 217

7 Kontaktplan KOP 219

71 Einfuumlhrung 219711 Programmieren mit KOP allgemein 219712 Programmelemente des Kontaktplans 221

72 Programmierung mit Kontakten 222721 Schlieszligerkontakt und Oumlffnerkontakt 222722 Beruumlcksichtigung der Geberart im Kontaktplan 225723 Reihenschaltung von Kontakten 225724 Parallelschaltung von Kontakten 226725 Gemischte Reihen- und Parallelschaltung 226726 T-Abzweig offener Parallelzweig im Kontaktplan 227727 Verknuumlpfungsergebnis negieren im Kontaktplan 228728 Flankenauswertung einer Binaumlrvariablen im Kontaktplan 229729 OK-Kontakt 2297210 Vergleich-Kontakte 230

73 Programmierung mit Spulen 231731 Einfache und negierte Spule 232732 Setzen- und Ruumlcksetzen-Spule 233733 Speicherndes Verhalten durch Selbsthaltung 234734 Flankenauswertung mit Impulsausgabe im Kontaktplan 235735 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Kontaktplan 235736 IEC-Zeitfunktionen im Kontaktplan mit Spulen starten 236

74 Programmierung mit Q-Boxen im Kontaktplan 237741 Anordnung von Q-Boxen im Kontaktplan 237742 Speicher-Boxen im Kontaktplan 238

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 13: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

13

743 Flankenauswertung des Stromflusses 239744 Beispiel Binaumlruntersetzer im Kontaktplan 240745 IEC-Zeitfunktionen im Kontaktplan mit Q-Boxen steuern 242746 IEC-Zaumlhlfunktionen mit Q-Boxen steuern 243

75 Programmierung mit ENENO-Boxen im Kontaktplan 244751 Anordnung von ENENO-Boxen im Kontaktplan 245752 Uumlbertragungsfunktionen im Kontaktplan 246753 Arithmetische Funktionen fuumlr Zahlenwerte im Kontaktplan 247754 Arithmetische Funktionen fuumlr Zeitwerte im Kontaktplan 248755 Mathematische Funktionen im Kontaktplan 249756 Konvertierungsfunktionen im Kontaktplan 250757 Schiebefunktionen im Kontaktplan 251758 Logikfunktionen im Kontaktplan 251759 Funktionen fuumlr Zeichenketten im Kontaktplan 252

76 Funktionen zur Programmfluss-Steuerung (KOP) 253761 Sprungfunktionen im Kontaktplan 253762 Sprungliste im Kontaktplan 254763 Sprungverteiler im Kontaktplan 255764 Bausteinende-Funktion im Kontaktplan 256765 Bausteinaufruf-Funktionen im Kontaktplan 256

8 Funktionsplan FUP 259

81 Einfuumlhrung 259811 Programmieren mit Funktionsplan allgemein 259812 Programmelemente des Funktionsplans 261

82 Programmierung von binaumlren Verknuumlpfungen (FUP) 262821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 263822 Beruumlcksichtigung der Geberart im Funktionsplan 264823 UND-Funktion 266824 ODER-Funktion 266825 Exklusiv-ODER-Funktion 267826 Gemischte binaumlre Verknuumlpfungen 268827 T-Abzweig im Funktionsplan 268828 Verknuumlpfungsergebnis negieren im Funktionsplan 269829 Flankenauswertung von Binaumlrvariablen im Funktionsplan 2708210 Guumlltigkeitspruumlfung von Gleitpunktzahlen im Funktionsplan 2708211 Vergleichsfunktionen im Funktionsplan 271

83 Programmierung mit Standard-Boxen (FUP) 272831 Zuweisung und negierte Zuweisung 273832 Setzen- und Ruumlcksetzen-Box 274833 Flankenauswertung mit Impulsausgabe im Funktionsplan 274834 Mehrfaches Setzen und Ruumlcksetzen (Bitfeld fuumlllen) im Funktionsplan 275835 IEC-Zeitfunktionen im Funktionsplan mit Standardboxen starten 275

84 Programmierung mit Q-Boxen (FUP) 277841 Anordnung von Q-Boxen im Funktionsplan 277842 Speicher-Boxen im Funktionsplan 278

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316

Page 14: Automatisieren mit SIMATIC S7-1200...al Ethernet sind ideale Voraussetzungen für das Zusammenspiel mit S7-1200. Die Engineeringsoftware STEP 7 Basic erschließt alle Möglichkeiten

Inhaltsverzeichnis

14

843 Flankenauswertung des Verknuumlpfungsergebnisses im Funktionsplan 279844 Beispiel Binaumlruntersetzer im Funktionsplan 279845 IEC-Zeitfunktionen im Funktionsplan mit Q-Boxen steuern 280846 IEC-Zaumlhlfunktionen im Funktionsplan 282

85 Programmierung mit ENENO-Boxen (FUP) 283851 Anordnung von ENENO-Boxen im Funktionsplan 284852 Uumlbertragungsfunktionen im Funktionsplan 285853 Arithmetische Funktionen fuumlr Zahlenwerte im Funktionsplan 286854 Arithmetische Funktionen mit Zeitwerten im Funktionsplan 287855 Mathematische Funktionen im Funktionsplan 287856 Konvertierungsfunktionen im Funktionsplan 288857 Schiebefunktionen im Funktionsplan 290858 Logikfunktionen im Funktionsplan 290859 Funktionen fuumlr Zeichenketten im Funktionsplan 291

86 Funktionen zur Programmfluss-Steuerung (FUP) 292861 Sprungfunktionen im Funktionsplan 292862 Sprungliste im Funktionsplan 293863 Sprungverteiler im Funktionsplan 294864 Bausteinende-Funktion im Funktionsplan 295865 Bausteinaufruf-Funktionen im Funktionsplan 296

9 Structured Control Language SCL 297

91 Einfuumlhrung in die Programmierung mit SCL 297911 Programmieren mit SCL allgemein 297912 SCL-Anweisungen und Operatoren 299

92 Binaumlre Verknuumlpfungen mit SCL programmieren 301921 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 301922 Beruumlcksichtigung der Geberart bei SCL 302923 UND-Funktion 304924 ODER-Funktion 304925 Exklusiv-ODER-Funktion 305926 Kombinierte binaumlre Verknuumlpfungen 305927 Verknuumlpfungsergebnis negieren 306

93 Speicherfunktionen mit SCL programmieren 307931 Wertzuweisung einer Binaumlrvariablen 307932 Setzen und Ruumlcksetzen 307933 Flankenauswertung 308

94 Zeit- und Zaumlhlfunktionen mit SCL programmieren 309941 IEC-Zeitfunktionen 309942 IEC-Zaumlhlfunktionen 309

95 Digitalfunktionen mit SCL programmieren 311951 Uumlbertragungsfunktion Wertzuweisung einer Digitalvariablen 311952 Konvertierungsfunktionen 312953 Vergleichsfunktionen 314954 Arithmetische Funktionen 314955 Mathematische Funktionen 316