automatisieren mit simatic s7-300 im tia portal · automatisieren mit simatic s7-300 im tia portal...
Post on 30-Aug-2019
69 Views
Preview:
TRANSCRIPT
Berger Automatisieren mit SIMATIC S7-300 im TIA Portal
Automatisieren mit SIMATIC S7-300 im TIA PortalProjektieren Programmieren und Testen mit STEP 7 Professional
von Hans Berger
2 uumlberarbeitete und erweiterte Auflage 2014(korrigierter Nachdruck)
Publicis Publishing
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar
Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen
wwwpublicis-booksde
Print ISBN 978-3-89578-432-3 ePDF ISBN 978-3-89578-902-1
2 Auflage 2014
Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH
Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr die Entnahme von einzelnen Abbildungen und bei auszugsweiser Verwertung von Texten
Printed in Germany
Vorwort
5
Vorwort
Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik
Das Konzept Totally Integrated Automation (TIA) bedeutet mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation
Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Moumlglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINETFuumlr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fuumlr Multipoint Interface (MPI) PROFIBUS undIndustrial Ethernet
Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-300-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose
Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnf Pro-grammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen Structured Control Language (SCL) mit einer Pascal-aumlhnlichen Hochspra-che und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms
Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fuumlr das Beobachten Steuern und Forcen von Variablenwerten mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgeraumlts
Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2
Erlangen im Dezember 2013 Hans Berger
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Berger Automatisieren mit SIMATIC S7-300 im TIA Portal
Automatisieren mit SIMATIC S7-300 im TIA PortalProjektieren Programmieren und Testen mit STEP 7 Professional
von Hans Berger
2 uumlberarbeitete und erweiterte Auflage 2014(korrigierter Nachdruck)
Publicis Publishing
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar
Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen
wwwpublicis-booksde
Print ISBN 978-3-89578-432-3 ePDF ISBN 978-3-89578-902-1
2 Auflage 2014
Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH
Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr die Entnahme von einzelnen Abbildungen und bei auszugsweiser Verwertung von Texten
Printed in Germany
Vorwort
5
Vorwort
Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik
Das Konzept Totally Integrated Automation (TIA) bedeutet mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation
Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Moumlglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINETFuumlr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fuumlr Multipoint Interface (MPI) PROFIBUS undIndustrial Ethernet
Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-300-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose
Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnf Pro-grammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen Structured Control Language (SCL) mit einer Pascal-aumlhnlichen Hochspra-che und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms
Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fuumlr das Beobachten Steuern und Forcen von Variablenwerten mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgeraumlts
Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2
Erlangen im Dezember 2013 Hans Berger
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Automatisieren mit SIMATIC S7-300 im TIA PortalProjektieren Programmieren und Testen mit STEP 7 Professional
von Hans Berger
2 uumlberarbeitete und erweiterte Auflage 2014(korrigierter Nachdruck)
Publicis Publishing
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar
Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen
wwwpublicis-booksde
Print ISBN 978-3-89578-432-3 ePDF ISBN 978-3-89578-902-1
2 Auflage 2014
Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH
Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr die Entnahme von einzelnen Abbildungen und bei auszugsweiser Verwertung von Texten
Printed in Germany
Vorwort
5
Vorwort
Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik
Das Konzept Totally Integrated Automation (TIA) bedeutet mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation
Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Moumlglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINETFuumlr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fuumlr Multipoint Interface (MPI) PROFIBUS undIndustrial Ethernet
Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-300-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose
Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnf Pro-grammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen Structured Control Language (SCL) mit einer Pascal-aumlhnlichen Hochspra-che und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms
Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fuumlr das Beobachten Steuern und Forcen von Variablenwerten mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgeraumlts
Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2
Erlangen im Dezember 2013 Hans Berger
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie detaillierte bibliografische Daten sind im Internet uumlber httpdnbd-nbde abrufbar
Autor und Verlag haben alle Texte und Abbildungen in diesem Buch mit groszliger Sorgfalt erarbeitet Dennoch koumlnnen Fehler nicht ausgeschlossen werden Eine Haftung des Verlags oder des Autors gleich aus welchem Rechtsgrund fuumlr durch die Verwendung der Programmierbeispiele verursachte Schaumlden ist ausgeschlossen
wwwpublicis-booksde
Print ISBN 978-3-89578-432-3 ePDF ISBN 978-3-89578-902-1
2 Auflage 2014
Herausgeber Siemens Aktiengesellschaft Berlin und Muumlnchen Verlag Publicis Publishing Erlangen copy 2014 by Publicis Erlangen Zweigniederlassung der PWW GmbH
Das Werk einschlieszliglich aller seiner Teile ist urheberrechtlich geschuumltzt Jede Verwendung auszligerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlags unzulaumlssig und strafbar Das gilt insbesondere fuumlr Vervielfaumlltigungen Uumlbersetzungen Mikroverfilmungen Bearbeitungen sonstiger Art sowie fuumlr die Einspeicherung und Verarbeitung in elektronischen Systemen Dies gilt auch fuumlr die Entnahme von einzelnen Abbildungen und bei auszugsweiser Verwertung von Texten
Printed in Germany
Vorwort
5
Vorwort
Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik
Das Konzept Totally Integrated Automation (TIA) bedeutet mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation
Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Moumlglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINETFuumlr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fuumlr Multipoint Interface (MPI) PROFIBUS undIndustrial Ethernet
Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-300-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose
Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnf Pro-grammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen Structured Control Language (SCL) mit einer Pascal-aumlhnlichen Hochspra-che und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms
Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fuumlr das Beobachten Steuern und Forcen von Variablenwerten mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgeraumlts
Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2
Erlangen im Dezember 2013 Hans Berger
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Vorwort
5
Vorwort
Das Automatisierungssystem SIMATIC vereinigt alle Teilsysteme einer Automati-sierungsloumlsung unter einer einheitlichen Systemarchitektur zu einem homogenenGesamtsystem von der Feldebene bis zur Leittechnik
Das Konzept Totally Integrated Automation (TIA) bedeutet mit einer einzigen Sys-tembasis und Werkzeugen mit einheitlichen Bedienoberflaumlchen alle Automatisie-rungskomponenten einheitlich zu behandeln Diesen Anforderungen wird dasAutomatisierungssystem SIMATIC gerecht mit Durchgaumlngigkeit bei ProjektierungProgrammierung Datenhaltung und Kommunikation
Das vorliegende Buch beschreibt die Hardware-Komponenten des Automatisie-rungssystems SIMATIC S7-300 mit Standard-Controllern und die Moumlglichkeitenzum Aufbau eines dezentralen Steuerungskonzepts mit PROFIBUS und PROFINETFuumlr die Kommunikation mit anderen Automatisierungssystemen bieten die Cont-roller integrierte Busschnittstellen fuumlr Multipoint Interface (MPI) PROFIBUS undIndustrial Ethernet
Die Engineeringsoftware STEP 7 Professional im TIA Portal erschlieszligt die gesamteFunktionalitaumlt der S7-300-Controller STEP 7 Professional ist das gemeinsameWerkzeug fuumlr die Konfiguration des Hardware-Aufbaus und die Programmierungdes Anwenderprogramms genauso wie fuumlr den Programmtest und die Diagnose
Fuumlr die Gestaltung des Anwenderprogramms stellt STEP 7 Professional fuumlnf Pro-grammiersprachen zur Verfuumlgung Kontaktplan (KOP) mit einer Stromlaufplan-aumlhnlichen grafischen Darstellung Funktionsplan (FUP) mit einer an elektronischeSchaltkreissysteme angelehnten grafischen Darstellung Anweisungsliste (AWL)mit der Formulierung der Steuerungsaufgabe als Auflistung von maschinennahenBefehlen Structured Control Language (SCL) mit einer Pascal-aumlhnlichen Hochspra-che und schlieszliglich mit GRAPH eine Ablaufsteuerung mit sequenzieller Bearbei-tung des Anwenderprogramms
Das Testen des Anwenderprogramms erleichtert STEP 7 Professional mit Beobach-tungstabellen fuumlr das Beobachten Steuern und Forcen von Variablenwerten mitder Darstellung des Programms mit den aktuellen Variablenwerten im laufendenBetrieb und mit einer Offline-Simulation des Automatisierungsgeraumlts
Das vorliegende Buch beschreibt das Projektieren Programmieren und Testen desAutomatisierungssystems S7-300 mit der Engineeringsoftware STEP 7 Professionalin der Version 12 mit Service Pack 1 Update 2
Erlangen im Dezember 2013 Hans Berger
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Der Inhalt des Buchs auf einen Blick
6
Der Inhalt des Buchs auf einen Blick
Start
Das Automatisierungssystem SIMATIC S7-300 in der Uumlbersicht
Eine Einfuumlhrung in die Engineeringsoftware SIMATIC STEP 7 Professional V12
Die Grundlage der Automatisierungsloumlsung Ein Projekt erstellen und bearbeiten
Automatisierungssystem SIMATIC S7-300
Die Baugruppen von SIMATIC S7-300 in der Uumlbersicht Aufbau eines Automatisierungs-systems CPU-Baugruppen Signal- Funktions- und Kommunikationsbaugruppen
Geraumltekonfiguration
Eine Station konfigurieren Baugruppen parametrieren und Stationen vernetzen
Variablen Adressierung und Datentypen
Die Eigenschaften der Operandenbereiche Eingaumlnge Ausgaumlnge Peripherie Merker Daten und temporaumlre Lokaldaten und wie sie adressiert werden absolut symbolisch und indirekt
Die Beschreibung der elementaren und zusammengesetzten Datentypen Datentypen fuumlr Bausteinparameter Zeiger und Anwenderdatentypen
Programmbearbeitung
Wie sich die CPU-Baugruppe in den Betriebszustaumlnden ANLAUF RUN und STOP verhaumllt
Wie das Anwenderprogramm durch Bausteine strukturiert wird welche Eigenschaften die Bausteine haben und wie sie aufgerufen werden
Wie das Anwenderprogramm bearbeitet wird Anlaufverhalten Hauptprogramm Alarmbe-arbeitung Fehlerbehandlung und Diagnose
Der Programmeditor
Arbeiten mit der PLC-Variablentabelle Codebausteine und Datenbausteine erstellen und bearbeiten Bausteine uumlbersetzen und Programminformationen auswerten
Die Programmiersprache Kontaktplan KOP
Das Charakteristische der KOP-Programmierung Reihen- und Parallelschaltung von Kontak-ten der Einsatz von Spulen Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Funktionsplan FUP
Das Charakteristische der FUP-Programmierung Boxen fuumlr binaumlre Verknuumlpfungen der Ein-satz von Standard-Boxen Q-Boxen und ENENO-Boxen
Die Programmiersprache Anweisungsliste AWL
Das Charakteristische der AWL-Programmierung Programmierung von binaumlren Verknuumlp-fungen Anwendung von Digitalfunktionen und Steuern der Programmbearbeitung
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Der Inhalt des Buchs auf einen Blick
7
Die Programmiersprache Structured Control Language SCL
Das Charakteristische der SCL-Programmierung Operatoren und Ausdruumlcke Arbeiten mit Binaumlr- und Digitalfunktionen Programmbearbeitung steuern mit Kontrollanweisungen
Die Ablaufsteuerung S7-GRAPH
Was eine Ablaufsteuerung ist und was ihre Elemente sind Ablaufketten Schritte Transitio-nen und Verzweigungen Wie eine Ablaufsteuerung mit S7-GRAPH projektiert wird
Die Beschreibung der Steuerungsfunktionen
Basisfunktionen Funktionen fuumlr Binaumlrsignale binaumlre Verknuumlpfungen Speicherfunktio-nen Flankenauswertungen SIMATIC- und IEC-Zeit- und Zaumlhlfunktionen
Digitalfunktionen Funktionen fuumlr Digitalvariablen Uumlbertragungs- Vergleichs- Arithme-tik- Mathematik- Konvertierungs- Schiebe- und Logikfunktionen
Programmfluss-Steuerung Mit Statusbits arbeiten Sprungfunktionen programmieren Bausteine aufrufen und beenden das Master Control Relay verwenden
Online-Betrieb und Programmtest
Ein Programmiergeraumlt an die PLC-Station anschlieszligen den Online-Betrieb einschalten die Projektdaten uumlbertragen und das Anwenderprogramm schuumltzen
Die Anwenderbausteine laden aumlndern loumlschen und vergleichen
Mit der Hardware-Diagnose arbeiten und das Anwenderprogramm testen
Dezentrale Peripherie
In der Uumlbersicht das dezentrale Peripheriesystem ET 200
Wie ein PROFINET IO System projektiert wird und welche Eigenschaften es hat
Wie ein PROFIBUS DP Mastersystem projektiert wird und welche Eigenschaften es hat
Wie ein AktorSensor-Interface System projektiert wird und welche Eigenschaften es hat
Kommunikation
Welche Eigenschaften die S7-Basis-Kommunikation und die S7-Kommunikation haben und mit welchen Kommunikationsfunktionen sie programmiert werden
Mit welchen Kommunikationsfunktionen die Open User Communication realisiert wird
Anhang
Wie externe Quelldateien fuumlr AWL- und SCL-Bausteine erstellt und importiert werden
Wie ein mit STEP 7 V5x erstelltes Projekt in das TIA Portal migriert wird
Wie mit der Simulationssoftware S7-PLCSIM ein Anwenderprogramm offline getestet wird
Wie der Webserver in der CPU projektiert wird und welche Moumlglichkeiten er bietet
Wie Bausteinparameter und Lokalvariablen im Speicher abgelegt werden
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
8
Inhaltsverzeichnis
1 Einfuumlhrung 22
11 Uumlbersicht Automatisierungssystem S7-300 22111 Automatisierungsgeraumlt SIMATIC S7-300 23112 Uumlbersicht STEP 7 Professional V12 24113 Fuumlnf Programmiersprachen 26114 Bearbeitung des Anwenderprogramms 27115 Datenhaltung im SIMATIC-Automatisierungssystem 30
12 Einfuumlhrung in STEP 7 Professional V12 31121 STEP 7 installieren 31122 Automation License Manager 32123 STEP 7 Professional starten 32124 Portalansicht 32125 Die Fenster der Projektansicht 33126 Hilfe-Informationssystem 36127 Bedienoberflaumlche anpassen 37
13 Ein SIMATIC-Projekt bearbeiten 37131 Strukturierte Darstellung der Projektdaten 38132 Projektdaten und Editoren fuumlr eine PLC-Station 38133 Ein Projekt erstellen und bearbeiten 42134 Mit Referenzprojekten arbeiten 45135 Bibliotheken anlegen und bearbeiten 46
2 Automatisierungssystem SIMATIC S7-300 47
21 Komponenten einer S7-300-Station 47
22 CPU-Baugruppen S7-300 49221 CPU-Varianten 49222 Bedien- und Anzeigeelemente 51223 SIMATIC Micro Memory Card 52224 Speicherbereiche in einer S7-300-Station 52225 Busschnittstellen 54
23 Signalbaugruppen 56231 Digitaleingabebaugruppen 56232 Digitalausgabebaugruppen 57233 Digitalein-ausgabebaugruppen 57234 Analogeingabebaugruppen 58235 Analogausgabebaugruppen 58236 Analogein-ausgabebaugruppen 59
24 Funktionsbaugruppen 60
25 Kommunikationsbaugruppen 61
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
9
26 Sonstige Baugruppen 63261 Anschaltungsbaugruppen (IM) 63262 Stromversorgungsbaugruppen (PS) 63263 Simulatorbaugruppe 64264 Platzhalterbaugruppe 64
27 SIPLUS S7-300 65
3 Geraumltekonfiguration 66
31 Einfuumlhrung 66
32 Eine Station konfigurieren 69321 Eine PLC-Station hinzufuumlgen 69322 Eine Baugruppe hinzufuumlgen 69323 Einen Erweiterungsbaugruppentraumlger hinzufuumlgen 70
33 Baugruppen parametrieren 71331 Die CPU-Eigenschaften parametrieren 71332 Baugruppen adressieren 74333 Signalbaugruppen parametrieren 77
34 Netz projektieren 78341 Einfuumlhrung Uumlbersicht 78342 Stationen vernetzen 79343 Teilnehmeradressen in einem Subnetz 80344 Verbindungen 81345 Ein MPI-Subnetz projektieren 84346 Ein PROFIBUS-Subnetz projektieren 85347 Ein PROFINET-Subnetz projektieren 87348 Ein AS-i-Subnetz projektieren 90
4 Variablen Adressierung und Datentypen 92
41 Operanden und Variablen 92411 Einfuumlhrung Uumlbersicht 92412 Operandenbereiche Eingaumlnge und Ausgaumlnge 93413 Operandenbereich Merker 96414 Operandenbereich Daten 97415 Operandenbereich temporaumlre Lokaldaten 97
42 Adressierung von Operanden und Variablen 98421 Signalweg 98422 Absolute Adressierung von Variablen 99423 Symbolische Adressierung von Variablen 104424 Adressierung von Konstanten 105
43 Indirekte Adressierung 106431 Speicherindirekte Adressierung mit AWL 107432 Registerindirekte Adressierung mit AWL 110433 Arbeiten mit den Adressregistern bei AWL 111434 Direkter Zugriff auf komplexe Lokalvariablen mit AWL 119435 Indirekte Adressierung bei SCL 121
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
10
44 Elementare Datentypen 123441 Einfuumlhrung 123442 Bitfolge-Datentypen BOOL BYTE WORD und DWORD 126443 BCD-Zahlen BCD16 und BCD32 126444 Festpunkt-Datentypen mit Vorzeichen INT und DINT 128445 Gleitpunkt-Datentyp REAL 128446 Datentyp CHAR 129447 Datentypen fuumlr Zeitdauern und Zeitpunkte 130
45 Zusammengesetzte Datentypen 132451 Zeichenkette STRING 132452 Datentyp ARRAY 134453 Datentyp STRUCT 136
46 Parametertypen und Zeiger 138461 Parametertypen 138462 Zeiger 139463 bdquoVariablerldquo ANY-Zeiger bei AWL 143464 bdquoVariablerldquo ANY-Zeiger bei SCL 143
47 PLC-Datentypen 146
48 Startinformation 147
5 Programmbearbeitung 148
51 Betriebszustaumlnde der CPU-Baugruppe 148511 Betriebszustand STOP 149512 Betriebszustand ANLAUF 150513 Betriebszustand RUN 152514 Betriebszustand HALT 152515 CPU urloumlschen 153516 Auslieferungszustand wiederherstellen 153517 Remanenzverhalten von Operanden 154
52 Anwenderprogramm erstellen 154521 Programmentwurf 154522 Programmbearbeitung 158523 Bausteinarten 160524 Bausteineigenschaften bearbeiten 161525 Bausteinschnittstelle 165526 Beispiel zur Verwendung von Bausteinparametern 167
53 Bausteine aufrufen 169531 Allgemeines zu Aufrufen von Codebausteinen 169532 Aufruf von Funktionen (FC) 169533 Aufruf von Funktionsbausteinen (FB) 171534 bdquoWeiterreichenldquo von Bausteinparametern 174
54 Anlaufprogramm 175541 Organisationsbaustein OB 100 175542 Baugruppenadresse ermitteln 176543 Baugruppen parametrieren 178
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
11
55 Hauptprogramm 181551 Organisationsbaustein OB 1 181552 Prozessabbild-Aktualisierung 182553 Zykluszeit und Reaktionszeit 183554 Programm anhalten stoppen und schuumltzen 185555 Uhrzeit 187556 Systemzeit lesen 189557 Betriebsstundenzaumlhler 190
56 Alarmbearbeitung 191561 Einfuumlhrung zur Alarmbearbeitung 191562 Prioritaumltsklassen 192563 Uhrzeitalarm Organisationsbaustein OB 10 192564 Verzoumlgerungsalarme Organisationsbausteine OB 20 und OB 21 196565 Weckalarme Organisationsbausteine OB 32 bis OB 35 198566 Prozessalarm Organisationsbaustein OB 40 200567 DPV1-Alarme Organisationsbausteine OB 55 bis OB 57 202568 Taktsynchronalarm Organisationsbaustein OB 61 202569 Alarmzusatzinformation lesen 205
57 Fehlerbehandlung 206571 Fehlerursachen und Fehlerreaktion 206572 Synchronfehler 206573 Synchronfehlerbearbeitung sperren und freigeben 208574 Ersatzwert eintragen 211575 Asynchronfehler 212576 Alarme und Asynchronfehler sperren verzoumlgern und freigeben 215
58 Diagnose 217581 Diagnosealarm Organisationsbaustein OB 82 217582 Systemzustandsliste lesen 219583 Startinformation lesen 220584 Anwender-Diagnoseereignis in den Diagnosepuffer schreiben 221585 Systemdiagnose mit Report System Errors 222
6 Programmeditor 225
61 Einfuumlhrung 225
62 PLC-Variablentabelle 226621 Mit PLC-Variablentabellen arbeiten 226622 PLC-Variablen definieren und bearbeiten 226623 PLC-Variablen vergleichen 228624 PLC-Variablentabelle exportieren und importieren 229625 Konstantentabellen 230
63 Einen Codebaustein programmieren 230631 Einen neuen Codebaustein anlegen 230632 Arbeitsbereich des Programmeditors fuumlr Codebausteine 232633 Bausteineigenschaften fuumlr Codebausteine festlegen 233634 Bausteinschnittstelle programmieren 234635 Steuerungsfunktion programmieren 236
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
12
636 Variablen editieren 240637 Mit Programmkommentaren arbeiten 242
64 Einen Datenbaustein programmieren 244641 Einen neuen Datenbaustein anlegen 244642 Arbeitsbereich des Programmeditors fuumlr Datenbausteine 244643 Bausteineigenschaften fuumlr Datenbausteine festlegen 246644 Datenvariablen deklarieren 246645 Datenvariablen in Globaldatenbausteinen eingeben 247
65 Bausteine uumlbersetzen 248651 Uumlbersetzung starten 248652 SCL-Bausteine uumlbersetzen 249653 Fehler nach der Uumlbersetzung beheben 249
66 Programminformationen 250661 Querverweisliste 251662 Belegungsplan 253663 Aufrufstruktur 254664 Abhaumlngigkeitsstruktur 255665 Konsistenzpruumlfung 255666 Speicherauslastung der CPU 256
7 Kontaktplan KOP 258
71 Einfuumlhrung 258711 Programmieren mit KOP allgemein 258712 Programmelemente des Kontaktplans 260
72 Binaumlre Verknuumlpfungen mit KOP programmieren 260721 Schlieszligerkontakt und Oumlffnerkontakt 260722 Reihen- und Parallelschaltung von Kontakten 262723 T-Abzweig offener Parallelzweig 263724 Verknuumlpfungsergebnis negieren 264725 Flankenauswertung einer Binaumlrvariablen 265726 Vergleich-Kontakte 265
73 Speicherfunktionen mit KOP programmieren 266731 Einfache Spule Zuweisung 266732 Setzen- und Ruumlcksetzen-Spule 268733 Speicherndes Verhalten durch Selbsthaltung 268734 Spulen mit Zeitverhalten 269735 Spulen mit Zaumlhlerverhalten 270
74 Q-Boxen mit KOP programmieren 271741 Speicher-Boxen 272742 Flankenauswertung des Stromflusses 272743 SIMATIC-Zeitfunktionen 273744 SIMATIC-Zaumlhlfunktionen 274745 IEC-Zeitfunktionen 274746 IEC-Zaumlhlfunktionen 276
75 ENENO-Boxen mit KOP programmieren 277751 Uumlbertragungsfunktion MOVE 277
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
13
752 Arithmetische Funktionen 278753 Mathematische Funktionen 279754 Konvertierungsfunktionen 280755 Schiebefunktionen 281756 Wortverknuumlpfungen 282
76 Programmfluss bei KOP steuern 284761 Mit Statusbits im Kontaktplan arbeiten 284762 ENENO-Mechanismus bei KOP 286763 Sprungfunktionen 287764 Bausteinfunktionen 288765 Master Control Relay (MCR) 290
8 Funktionsplan FUP 292
81 Einfuumlhrung 292811 Programmieren mit FUP allgemein 292812 Programmelemente des Funktionsplans 294
82 Binaumlre Verknuumlpfungen mit FUP programmieren 295821 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 295822 Eine binaumlre Verknuumlpfung im Funktionsplan programmieren 296823 UND-Funktion 297824 ODER-Funktion 297825 Exklusiv-ODER-Funktion 297826 Kombinierte binaumlre Verknuumlpfungen Verknuumlpfungsergebnis negieren 298827 T-Abzweig 299828 Flankenauswertung von Binaumlrvariablen 299829 Vergleichsfunktionen 300
83 Standard-Boxen mit FUP programmieren 301831 Zuweisung-Box 302832 Setzen- und Ruumlcksetzen-Box 302833 Standard-Boxen mit Zeitverhalten 303834 Standard-Boxen mit Zaumlhlerverhalten 304
84 Q-Boxen mit FUP programmieren 305841 Speicher-Boxen 305842 Flankenauswertung des Verknuumlpfungsergebnisses 307843 SIMATIC-Zeitfunktionen 308844 SIMATIC-Zaumlhlfunktionen 308845 IEC-Zeitfunktionen 309846 IEC-Zaumlhlfunktionen 309
85 ENENO-Boxen mit FUP programmieren 310851 Uumlbertragungsfunktion MOVE 312852 Arithmetische Funktionen 312853 Mathematische Funktionen 313854 Konvertierungsfunktionen 313855 Schiebefunktionen 315856 Wortverknuumlpfungen 316
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
Inhaltsverzeichnis
14
86 Programmfluss bei FUP steuern 318861 Mit Statusbits im Funktionsplan arbeiten 318862 ENENO-Mechanismus bei FUP 320863 Sprungfunktionen 321864 Bausteinfunktionen 322865 Master Control Relay (MCR) 324
9 Anweisungsliste AWL 326
91 Einfuumlhrung 326911 Programmieren mit AWL allgemein 326912 Aufbau einer AWL-Anweisung 327
92 Binaumlre Verknuumlpfungen mit AWL programmieren 328921 Bearbeitung einer binaumlren Verknuumlpfung Verknuumlpfungsschritt 328922 Abfrage auf Signalzustand bdquo1ldquo und auf Signalzustand bdquo0ldquo 330923 Eine binaumlre Verknuumlpfung in Anweisungsliste programmieren 331924 UND-Funktion 332925 ODER-Funktion 332926 Exklusiv-ODER-Funktion 333927 Kombinierte binaumlre Verknuumlpfungen 333928 Verknuumlpfungsergebnis steuern 336
93 Speicherfunktionen mit AWL programmieren 337931 Zuweisung 337932 Setzen und Ruumlcksetzen 338933 Flankenauswertung 338
94 Zeit- und Zaumlhlfunktionen mit AWL programmieren 339941 SIMATIC-Zeitfunktionen 339942 SIMATIC-Zaumlhlfunktionen 341943 IEC-Zeitfunktionen 342944 IEC-Zaumlhlfunktionen 343
95 Digitalfunktionen mit AWL programmieren 344951 Uumlbertragungsfunktionen 344952 Vergleichsfunktionen 346953 Arithmetische Funktionen 349954 Mathematische Funktionen 352955 Konvertierungsfunktionen 353956 Schiebefunktionen 354957 Wortverknuumlpfungen 356
96 Programmfluss bei AWL steuern 358961 Mit Statusbits in der Anweisungsliste arbeiten 359962 ENENO-Mechanismus bei AWL 361963 Sprungfunktionen 363964 Sprungverteiler 364965 Schleifensprung 364966 Bausteinfunktionen 365967 Master Control Relay (MCR) 368
97 Weitere AWL-Funktionen 369
top related