Anhang 333 Anhang Tabelle Al Speicherbereiche der S7-CPU Abk. 8ezeichnung Bereich Funktion des Speicherbereichs E Eingang Prozessabbild Zu Beginn des Zyklus liest das Betriebssystem der S7- EB Eingangsbyte der EingliIJge CPU die Eingllnge aus dem Prozess und zeichnet die Wer- EW Eingangswort te im Prozessabbild der Eingllnge auf. Das Programm ED Eingangsdoppelwort verwendet diese Werle bei seiner zyklischen Bearbeitung. A Ausgang Prozessabbild Wllhrend des Zyklus errechnet das Programm die Aus- AS Ausgangsbyte der Ausgange gangswerte und legt sie im Prozessabbild der AusgliIJge AW Ausgangswort abo Am Ende des Zyklus lies! das Betriebssystem der S7- AD Ausgangsdoppelwort CPU die errechneten Ausgangswerte aus dem Prozessab- bild der Ausgllnge und sendet sie zu den AusgliIJgen. M Merker Merker Dieser Bereich stell! Speicherplatz fUr Zwischenergebois- MB Merkerbyte se ZUT VerfUgung, die das Programm errechnet hat. MW Merkerwort MD Merkerdoppelwort PEB Peripherieeingangsbyte Peripherie- Dieser Bereich ermtlglichtlhrem Programm den direkten PEW Peripherieeingaogswort bereich Ein- Zugriff auf die Eingabebaugruppen. PED Peripherieeingangs- gllnge: ext. Hinweis: Analogeingabebaugruppell werden in der Regel doppelwort Eingllnge aber das PEW angesprochen. PAS Peripherieausgangsbyte Peripherie- Dieser Bereichermtlglichtlhrem Programm den direkten PAW Peripherieausgangswort bereich Aus- Zugriff auf die Ausgabebaugruppen. PAD Peripberieausgangs- gllnge: ex\. Hinweis: Analogausgabebaugruppen werden in der Regel doppelwort Ausglinge Uber das PAW angesprochen. T Zeit (T) Zeiten Dieser Bereich stell! Speicherplatz fur Zeiten ZilT VerfIJ- gung. In diesem Bereich greift der Zeitimpulsgeber auf die Zeiten ZU, um sie durch Verminderung des Zeitwertes zu aktualisieren. Zeitoperationen greifen auf die Zeiten zu . Z Zllhler (Z) Zlihler Dieser Bereich stell! Speicherplatz ftlr Zahler zur VerfIJ- gung. Zllhloperationen greifell aufsie zu. Datenbaustein tlffuen Datenbau- In diesem Bereich sind Daten enthalten, auf die von jedem mit "AUF DB" stein Baustein aus lugegriffen werden kann. Falls Sie zwei DBX Datenbit verscbiedene Datenbausteine gleichzeitig tlffnell mUssen, DBB Datenbyte ktlnnen Sie den cinen mit der Anweisung "AUF DBx" DBW Datenwort und den anderen mit der Anweisullg "AUF DIy" Offnen. OBD oatendoppelwort Die Notation der Operanden, z. B. "L DBWIO" oder "L D1WIS" bestimmt, aufwelchen Datenbaustein rhr Datenbaustein tlffnen Programm zugreifen soil, wenn beide getlffnet sind. Ob- mit "AUF DI" wohl Sie mit der Anweisung "AUF DI " aufjeden belie- DlX Datenbit bigen Datenbaustein zugreifen ktlnnen, wird diese Anwei- OrB Datenbyte sungjedoch hauptsachlich flJr das 6ffuen von Instanzda- D1W Datenwort tenbausteinen verwendet, die Funktionsbausteinen (FBs) DID Datendoppel wort und Systemfunktionsbausteinen (SFBs) zugeordnet sind. Temporlires Temporare Dieser Bereich enthall bausteintemporlire Daten eines L Lokaldatenbit Lokaldaten Codebausteins (OB, FB oder FC). Sie dienen als Zwi- LB Lokaldatenbyte schenspeicher. Wenn der Codebaustein geschlossen wird, LW Lokaldatenwort geben diese Daten verloren. Die Oaten sind im Lokalda- LD Lokaldatendoppelwort ten-Stack (L-Stack) enthalten. Die Angaben der Tabelle AI wurden aus den Siemens-Handbuch [27] entnommen und teilweise abgewandelt.
23
Embed
Anhang - Springer978-3-322-80330-6/1.pdf · E Eingang Prozessabbild Zu Beginn des Zyklus liest das Betriebssystem der S7- ... INT 16 16 Bit-Ganzzahl, ... STRING Zeichenkette mit einer
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Anhang 333
Anhang
Tabelle Al Speicherbereiche der S7-CPU
Abk. 8ezeichnung Bereich Funktion des Speicherbereichs
E Eingang Prozessabbild Zu Beginn des Zyklus liest das Betriebssystem der S7-EB Eingangsbyte der EingliIJge CPU die Eingllnge aus dem Prozess und zeichnet die Wer-EW Eingangswort te im Prozessabbild der Eingllnge auf. Das Programm ED Eingangsdoppelwort verwendet diese Werle bei seiner zyklischen Bearbeitung.
A Ausgang Prozessabbild Wllhrend des Zyklus errechnet das Programm die Aus-AS Ausgangsbyte der Ausgange gangswerte und legt sie im Prozessabbild der AusgliIJge AW Ausgangswort abo Am Ende des Zyklus lies! das Betriebssystem der S7-AD Ausgangsdoppelwort CPU die errechneten Ausgangswerte aus dem Prozessab-
bild der Ausgllnge und sendet sie zu den AusgliIJgen.
M Merker Merker Dieser Bereich stell! Speicherplatz fUr Zwischenergebois-MB Merkerbyte se ZUT VerfUgung, die das Programm errechnet hat. MW Merkerwort MD Merkerdoppelwort
PEB Peripherieeingangsbyte Peripherie- Dieser Bereich ermtlglichtlhrem Programm den direkten PEW Peripherieeingaogswort bereich Ein- Zugriff auf die Eingabebaugruppen. PED Peripherieeingangs- gllnge: ext. Hinweis: Analogeingabebaugruppell werden in der Regel
doppelwort Eingllnge aber das PEW angesprochen.
PAS Peripherieausgangsbyte Peripherie- Dieser Bereich ermtlglichtlhrem Programm den direkten PAW Peripherieausgangswort bereich Aus- Zugriff auf die Ausgabebaugruppen. PAD Peripberieausgangs- gllnge: ex\. Hinweis: Analogausgabebaugruppen werden in der Regel
doppelwort Ausglinge Uber das PAW angesprochen.
T Zeit (T) Zeiten Dieser Bereich stell! Speicherplatz fur Zeiten ZilT VerfIJ-gung. In diesem Bereich greift der Zeitimpulsgeber auf die Zeiten ZU, um sie durch Verminderung des Zeitwertes zu aktualisieren. Zeitoperationen greifen auf die Zeiten zu.
Z Zllhler (Z) Zlihler Dieser Bereich stell! Speicherplatz ftlr Zahler zur VerfIJ-gung. Zllhloperationen greifell aufsie zu.
Datenbaustein tlffuen Datenbau- In diesem Bereich sind Daten enthalten, auf die von jedem mit "AUF DB" stein Baustein aus lugegriffen werden kann. Falls Sie zwei
DBX Datenbit verscbiedene Datenbausteine gleichzeitig tlffnell mUssen, DBB Datenbyte ktlnnen Sie den cinen mit der Anweisung "AUF DBx" DBW Datenwort und den anderen mit der Anweisullg "AUF DIy" Offnen. OBD oatendoppelwort Die Notation der Operanden, z. B. "L DBWIO" oder
"L D1WIS" bestimmt, aufwelchen Datenbaustein rhr Datenbaustein tlffnen Programm zugreifen soil, wenn beide getlffnet sind. Ob-mit "AUF DI" wohl Sie mit der Anweisung "AUF DI" aufjeden belie-
DlX Datenbit bigen Datenbaustein zugreifen ktlnnen, wird diese Anwei-OrB Datenbyte sungjedoch hauptsachlich flJr das 6ffuen von Instanzda-D1W Datenwort tenbausteinen verwendet, die Funktionsbausteinen (FBs) DID Datendoppel wort und Systemfunktionsbausteinen (SFBs) zugeordnet sind.
Temporlires Temporare Dieser Bereich enthall bausteintemporlire Daten eines L Lokaldatenbit Lokaldaten Codebausteins (OB, FB oder FC). Sie dienen als Zwi-LB Lokaldatenbyte schenspeicher. Wenn der Codebaustein geschlossen wird, LW Lokaldatenwort geben diese Daten verloren. Die Oaten sind im Lokalda-LD Lokaldatendoppelwort ten-Stack (L-Stack) enthalten.
Die Angaben der Tabelle AI wurden aus den Siemens-Handbuch [27] entnommen und teilweise abgewandelt.
334 Anhang
Tabelle A2 Elementare Datentypen
Typ Bits Darstellung Bereich und Zahlendarstellung Beispiel (kleinster und gr6J3ter Wert)
BOOL I Bool-Text TRUE oder FALSE TRUE BYTE 8 Hexadezimalzahl B#I6#O bis B#I6#FF B#I6#2D WORD 16 Dualzahl 2110 bis2#I I I U I II _"l U I II 2#0001_0011 _0010_0000
Hexadezimalzahl WII16110 bis WII16#FFFF W# 16#06E7 BCD-Zahl ohne C#O bis C#999 CII238 Vorzeichen B#(O,O) bis BII(255 ,255) B#(5,210)
DWORD 32 Dualzahl 2110 bis 2# I II U I I U I I I - I1 I I 2#1000_0111 _0011_0000 _I I IUI I I_ III I_ I II I _0001_0101_0000_0101
HexadezimaLzahl DW#16#OOOO_0000 bis DWII1 6#0034_ABDS DW# 1611FFFF JFFF
Dezimalzahl ohne B#(O,O,O,O) bis B#(255,255,255,255) B#(0,75,13,88) Vorzeichen
INT 16 16 Bit-Ganzzahl, -32768 bis 32767 -580 Dezimalzahl mit Vorzeichen
DINT 32 32 Bit-Ganzzahl, LII-2147483648 bis L#2147483647 LII35008 Dezimalzahl mit Vorzeichen
REAL 32 Gleitpunktzahl -3.402823e+38 bis - 1.I75494e-38, -1.865e+12 nach IEEE 0,
I . I 75494e-38 bis 3 .402823e+ 38 SSTIME 16 S5-Zeit S5TIIOH_OM_OS_ IOMS bis S5T#2M_50S
Zeilraster: 10 ms, S5TII2H_ 46M_30S_0MS 100 ms, I s, 10 s
TIME 32 IEC-Zeit - TII24D_20H_3IM_23S_648MS bis TIIID_15H_ IM Zeitraster: I ms T1124D_20H_3IM 23S 647MS
DATE 16 IEC-Datum DII1990- 1-1 bis D# 1998-2-28 Zeitraster: I Tag 0112 168-12-31
TIME_OF - 32 Uhrzeit TOD#O:O:O.O bis TODII 16:22:30.700 DAY Zeitraster: I ms TOD #23:59:59.999
CHAR 8 ASCII-Zeichen 'A"' B ' llSW. 'K'
Tabelle A3 Zusammengesetzte Datentypen
Typ Beschreibung DATE AND Datum und Uhrzeit; Datengr6J3e 64 Bit; Zeilraster: I ms; Bereich: DT# 1990-1-1 -0:0:0.0 bis TIME DT#2089- 12-31-23:59:59.999; Beispiel: DTII1999-3-IS-IS:42: IS .O
STRING Zeichenkette mit einer maximalen Datengr6J3e von 256 Bytes (Standardbereich). In diesem Bereich k6nnen 254 Zeichen (Datentyp CHAR) und der Kopf von 2 Bytes abgespeichert werden. Der Bereich kann durch Angabe der Anzahl der Zeichen vermindert werden. Danach folgt die Zeichenkette in einfachen Anftlhrungszeichen. Beispiel: STRING[7] 'Berta'
ARRAY Legt ein 1- bis 6-dimensionales Feld von Komponenten mit gleichem Datentyp fest. Die maximale FeldgrllJ3e wird von der GrtlJ3e des CPU-Speichers bestimmt.
STRUCT Legt eine Struktur mit einer festen Anzahl von Komponenten mit gleichem oder unterschied-lichen Datentypen fest. Der CPU-Speicher begrenzt die GrllJ3e eines STRUCT.
DIe Angaben der Tabellen A2 und A3 wurden aus dem Slemens-Handbuch [27] entnommen und teIlwelse abgewandelt.
Anhang 335
Tabelle A4 Datenbaustein in der Deklarationssicht (Beispiel)
Adresse Name Typ Anfangswert Kornrnentar 0.0 STRUCT +0.0 Wertel ARRAY(l .. 5] 2.000000e+OOO, 4 (O.OOOOOOe+OOO) I-dimensionales Feld +4.0 REAL +20.0 Werte2 ARRA Y[I..2, 1..3) 1, 2, 3,4,5, 6 2-dimensionales Feld
'2.0 INT +32.0 Nummer INT 50 Integervariable +34.0 Werte3 ARRA Y(l .. 1000] 1000 (L#O) I-dimensionales Feld '4.0 DINT =4034.0 END_STRUCT
Tabelle AS Datenbaustein in der Datensicht (Beispiel)
Adresse Name Typ Anfangswerl Aktualwert Kommentar 0.0 Wertel[I ) REAL 2.000000e+000 2.000000e+000 I-dimensionales Feld 4.0 Wertel[2) REAL O.OOOOOOe+OOO O.OOOOOOe+OOO
8.0 Wertel[3) REAL O.OOOOOOe+OOO O.OOOOOOe+OOO 12.0 Wertel (4] REAL O.OOOOOOe+OOO O.OOOOOOe+OOO 16.0 Wertel [5) REAL O.OOOOOOe+OOO O.OOOOOOe+OOO 20.0 Werte2(l , I] INT 1 1 2-dimensionales Feld 22.0 Werte2[1 , 2) INT 2 2 24 .0 Werte2[1 , 3] INT 3 3 26.0 Werte2[2, I) INT 4 4 28.0 Werte2[2, 2) INT 5 5 30.0 Werte2[2, 3) INT 6 6 32.0 Nummer INT 50 50 Integervariable 34.0 Werte3[ I) DINT L#O L#O I-dimensionales Feld 38.0 Werte3(2) DINT L#O L#O 42.0 Werte3(3) DINT L#O L#O : : : : :
Die Tabelle A4 zeigt eine Struktur, die die arrays (Felder) "Wertel ", "Werte2" und "Werte3" sowie die Integervariable "Nurnmer" umschlieJ3t. Off net man einen neu angelegten globalen Datenbaustein, so enthiilt er bereits die leere Struktur. In die Struktur werden nun die einzelnen Komponenten, im vorliegenden Beispiel drei Felder und die Variable "Nurnmer" mit ihren Anfangswerten eingetragen. Der Datentyp des Anfangswertes muss zum Datentyp des Fe1des bzw. der Variable passen. Besitzen Elemente eines Fe1des den gleichen Anfangswert, so gibt man nach dem Wiederholfaktor den Anfangswert in Klammer an. In mehrdimensionalen Feldern werden die Komponenten zeilenweise (dimensionsweise) abgelegt, beginnend mit der ersten Dimension. Die in der linken Spalte angegebenen Adressen errechnet das System selbststandig. Die Tabelle A5 zeigt den gleichen Datenbaustein in der Einstellung "Datensicht". Wahrend der Laufzeit des Programms werden dann in der Spalte Aktualwert die jeweils aktuellen Werte eingetragen.
336 Anhang
Tabelle A6 Deklaration von Parametem und Variablen
Parameter, Variable Schl!lsselwOrter Codebausteine (Lokaldaten) JUr den Beginn fUr das Ende OB FC FB Eingangsparameter (in) VAR fNPUT END VAR - Ja Ja Ausgangsparameter (out) VAR OUTPUT END VAR - Ja Ja Durehgangsparameter (in out) VAR IN OUT END VAR - Ja Ja Statische Variable (stat) VAR END VAR - - Ja Tempor:lre Variable (temp) VAR TEMP END VAR Ja Ja Ja
Tabelle A 7 Lokaldaten eines Codebausteins
Parameter, Variable Erlauterung Eingangsparameter Eingangsparameter eines Bausteins werden im aufrufenden Baustein beim Baustein-
aufruf mit den Werten der zugehOrigen Aktualparameter bzw. Aktualwerte versorgt. Eingangsparameter kllnnen nur gelesen, aber nieht gesehrieben werden.
A usgangsparameter Ausgangsparameter eines Bausteins !Ibergeben beim Bausteinaufruf i.hre aktuellen Werte an die zugehOrigen Aktualparameter im aufrufenden Baustein. Ausgangspa-rameter kOnnen geschrieben, aber auch gelesen werden.
Durchgangsparameter Durchgangsparameter eines Bausteins werden belm Bausteinaufruf zuerst mit den (Ein-I Ausgangs- Werten der zugehOrigen Aktualparameter versorgt. Nach der Bearbeitung des aufge-parameter) rufenen Bausteins !Ibergeben Durehgangsparameter ihren dann aktuellen Wert an
den zugehOrigen Aktualparameter im aufrufenden Baustein . Durchgangsparameter werden gelesen und geschrieben.
Statische Variable Statische Variablen sind lokale Variablen, deren Werte auch nach dem Verlassen des Bausteins erhalten bleiben. Statische Variablen stehen nUT in Funktionsbaustei-nen zur Verftlgung. Die statischen Variablen eines Funktionsbausteins speichert sein zugehOriger Instanzdatenbaustein .
Temporllre Variable Temporllre Variablen sind lokale Variablen, deren Werte nur wahrend des Baustein-durchlaufs erhalten bleiben. Nach dem Verlassen des Bausteins geht ihr Wert verlo-reno Auf temporlire Variablen eines Bausteins kann nieht aus anderen Bausteinen zugegriffen werden.
Variablendeklaration
Variablen, die in der Variablendeklarationstabelle (AWL, FUP, KOP) oder im Deklarationsteil (SCL) eines Bausteins eingetragen sind, werden als lokale Variablen bezeichnet. Demgegenuber stehen die in der Symboltabelle eingetragenen globalen Variablen in allen Bausteinen zur Verfiigung. Je nach Bausteinart konnen temporare und statische Lokalvariablen sowie Eingangs-, Ausgangs- und Durchgangsparameter deklariert und verwendet werden. Die Lokalvariablen und die Parameter werden auch als Lokaldaten bezeichnet - siehe Tabellen A6 und A7. Die Definition von Codebausteinen mit lokalen, das heiBt geschlitzten Datenbereichen stellt eine der wichtigsten Neuerungen von STEP 7 gegenuber der herkommlichen Art der Programmierung dar. Musste der Programmierer fruher seine Daten se1bst verwalten, so ubernimmt dies heute STEP 7. Dadurch lassen sich vorgefertigte Funktionen und Funktionsbausteine problemlos in neue Programme ubemehmen, ohne dass Adressenkonflikte zu bef-urchten sind. Durch die Kapselung der Daten innerhalb des Bausteins ist kein versehentliches Dberschreiben mehr moglich.
Anhang 337
Speicherbereiche und Remanenz der S7-300-CPUs Bezuglich des Speicher- und Remanenzverhaltens bestehen Unterschiede zwischen den S7-300- und S7-400-CPUs. Nachfolgend werden die Speicherbereiche und das Remanenzverhalten der neueren S7-300-CPUs beschrieben. Diese CPUs sind wartungsfrei: Die Batterie wurde durch eine Micro Memory Card (MMC) ersetzt.
Ladespeicher
Systemspeicher
Arbeitsspeicher
Bild Al Speicherbereiche der S7-300-CPUs
Ladespeicher
II Q
Der Ladespeicher befindet sich auf der Micro Memory Card (MMC). Er nimmt die Codeund Datenbausteine sowie die Systemdaten (Konfiguration, Verbindungen, Baugruppenparameter, usw.) auf. Die nicht als ablaufrelevant gekennzeichneten Bausteine werden ausschliemich in den Ladespeicher aufgenommen. Auch komplette Projektierungen konnen auf der MMC abgelegt werden. Das Programm im Ladespeicher ist stets remanent. Es wird bereits beim Laden auf der MMC hinterlegt. Sowohl bei Netz-Aus als auch beim Urloschen bleibt es erhalten.
Systemspeicher Der Systemspeicher befindet sich innerhalb der CPU und ist nicht erweiterbar. Der Systemspeicher enthalt
• die Speicherbereiche der Merker, Zeiten und Zahler, • die Prozessabbilder der Ein- und Ausgange und • die Lokaldaten.
Bei Merkern, Zeiten und Zahlern kann man bei der Projektierung festlegen, welche Speicherbereiche remanent sein sollen und welche bei Neustart ge10scht werden sollen. Bemerkllng: Diagnosepllffer, MPI-Adresse, Baudrate und BetriebsstundenzahIer sind generell im remantenen Speicherbereich der CPU abgelegt.
Arbeitsspeicher Der Arbeitsspeicher befindet sich innerhalb der CPU und ist nicht erweiterbar. In ihm werden der Programmcode und die Daten des Anwenderprogramms abgearbeitet. Inhalte von remanenten Datenbausteinen sind bei Neustart und Netz-Aus grundsatzlich remanent. Bei neueren CPUs ab Firmware V2.1.0 werden auch nicht remanente Datenbausteine unterstiitzt. Die nicht remanenten DBs werden bei Neustart und bei Netz-Aus-Ein mit ihren Anfangswerten aus dem Ladespeicher initialisiert.
338 Anhang
Tabelle AS Remanenzverhalten von S7-300-CPUs
Speicherobjekt Betriebsrustandstlbergang Netz-Aus-Ein Stop --+ Run Urltischen
AnwenderprogrammJ-daten (Ladespeicher) X X X
Remanenz der DBs fur CPUs ab Firmware In den Eigenschaften der DBs in V21.0 STEP 7 ab VS.2 + SPI einstellbar remanent deklarierte Merker, Zeiten und X X -Zahler DIagnosepuffer, Betriebsstundenz1ihler X X X MPI- und DP-Adresse, Baudrate X X X
x = remanent; - = nicht remanent
Remanenzverhalten von Merkern Bei der Schrittkettenprogrammierung in AWL, FUP oder KOP werden die Schritte einer Ablautkette in der Regel durch entsprechende Schrittmerker dargestellt. Hierbei stellt sich haufig die Frage, welchen Zustand sollen diese Merker nach Spannungsausfall und Spannungswiederkehr einnehmen?
• Werden als Schrittmerker remanente Merker verwendet, so nehmen diese Merker nach Spannungsausfall und Spannungswiederkehr denjenigen Signalzustand wieder ein, den sie vor dem Spannungsausfall besaBen. In diesem Fall setzt der automatische Ablauf bei dem zuletzt aktiven Schritt fort, wenn das Anwenderprogramm (OB, FB, FC, DB) beim Spannungsausfall nicht verloren gegangen ist (siehe Tab. A8).
• Werden als Schrittmerker nicht remanente Merker verwendet, so nehmen diese Merker nach Spannungsausfall und Spannungswiederkehr den Wert 0 an. In diesem Fall ist kein Wiederanlauf der Schrittkette moglich.
Bei einer Schrittkette empfiehlt sich in der Regel die Verwendung von nicht remanenten Merkem als Schrittmerker, wenn der durch den Spannungsausfall unterbrochene automatische Prozessablaufbei Spannungswiederkehr nicht selbsttatig wieder einsetzen solI.
Anlaufverhalten der CPU durch Anlauf-OB beeinflussen
Eine andere Moglichkeit, den selbsttatigen Wiederanlauf zu verhindem, besteht in der Programmierung eines Anlauf-OBs. Der Organisationsbaustein OBlOO - falls vorhanden - und sein Programm werden bei einem Neustart yom Betriebssystem der S7-CPU gestartet. Ein Neustart wird ausgefiihrt:
• nach Netz-Ein (z. B. nach vorausgegangenem Spannungsausfall) • nach Umschalten des Betriebszustands der CPU von STOP auf RUN • wenn Neustart yom PGIPC aus von STEP 7 angefordert wird
Das Programm im OBIOO wird beim Neustart genau einmal bearbeitet, bevor dann die zyklische Programmbearbeitung durch den OB I einsetzt. Sind der OB I 00 und der OB I programmiert, so wird beim Neustart immer erst der OBIOO und erst dann der OBI bearbeitet.
Die obenstehende Beschreibung rum Remanenzverhalten der S7-300-CPUs wurde dem Siemens-Handbuch [31] entnommen. Die Internetadresse lautet: www.siemens.comlautomationlservice&support
Glossal'
Glossar
Absolute Adres-sierung
Akku
Aktion
Aktualpara-meter
Alternativver-zweigung
Anlauf
Anwenderpro-gramm
ARRAY (Feld)
Ausgangsparameter
AWL (Anweisungsliste)
Baustein-Stack (B-Stack)
Angabe der absoluten Adresse von Operanden, z. B. E2.3, MW12, DB6.DBW8 (siehe auch symbolische Adressierung)
339
Akkumulatoren (Akkus) sind Register der CPU. Sie werden als Zwischenspeicher bei Lade-, Transfer-, Zeit-, Zahl-, Rechen-, Vergleichs-und Umwandlungsoperationen benotigt.
Ausfiihrungsanweisung eines Schrittes bei S7-GRAPH oder eines Zustandes bei S7-HiGraph
Aktualparameter werden beim Aufruf eines Funktionsbausteins (FB) oder einer Funktion (FC) im aufrufenden Baustein den Formalparametern des aufgerufenen Bausteins zugeordnet.
Verzweigung einer Ablaufkette, bei der nur einer von mehreren Zweigen durchlaufen wird (siehe auch Simultanverzweigung)
Betriebszustand del' CPU beim Ubergang von STOP auf RUN; del' Anlauf geschieht bei Betatigung des Betriebsartenschalters der CPU, bei Netz-Ein oder durch Anforderung vom PCIPG.
Befmdet sich im Verzeichnis "Bausteine" und kann in eine programmierbare S7-Baugruppe, z. B. CPU, geladen werden; es katm aus mehreren Bausteinen bestehen. Bei friiheren STEP 7-Versionen hieB dieses Verzeichnis "AP-off' (Anwenderprogrannn offline).
Besteht aus Datenelementen gleichen Typs, die elementar oder zusammengesetzt sein konnen
Ubergibt nach der Bearbeitung des aufgerufenen Bausteins seinen dann aktuellen Wert an den zugehOrigen Aktualparameter. Achtung: Wird der Ausgangsparameter einer Funktion in dem aufgerufenen Baustein nicht schreibend bearbeitet, so ist der Wert, den der Ausgangsparameter an seinen Aktualparameter iibergibt, nicht defmiert.
Programmiersprache in Form einzelner Anweisungszeilen, assemblerartige maschinennahe Sprache
1m Baustein-Stack sind die Bausteine eingetragen, die aufgerufen und noch nicht zu Ende bearbeitet waren, als die CPU auf STOP ging. Er enthalt auch die Angabe dariiber, an welcher Stelle del' jeweilige Bau-stein unterbrochen wurde.
BCD-Darstellung Binar-codierte Darstellung der Ziffern von Dezimalzahlen
Betriebsarten (einer S7-CPU)
Betriebsarten (von Maschinen und Anlagen)
RUN-P: Anwenderprogramm wird bearbeitet, Zugriff auf das Anwenderprogramm mit PCIPG moglich; RUN: Anwenderprogramm wird bearbeitet, kein Zugriff moglich; STOP: Anwenderprogratmn wird nicht bearbeitet; MRES: Urloschen
Bildautbauoperation; wird von der CPU wie eine Nulloperation (NOP) behandelt
Continuous Function Chart; Programm zum Verschalten von Bausteinen
Clear; die AWL-Operation CLR setzt das aktuelle VKE auf 0 zwiick.
Enthalt einen Teil des Anwenderprogramms; zu den Codebausteinen zahlen Organisationsbausteine (OB), Funktionsbausteine (FB), Funkti-onen (FC), Systemfunktionsbausteine (SFB) und Systemfunktionen (SFC). Datenbausteine werden nicht zu den Codebausteinen gerechnet.
Speichert die Anwenderdaten; auf Datenbausteine kann von allen Codebausteinen aus zugegriffen werden (siehe auch InstanzDatenbaustein).
Wert der Voreinstellung
1m Deklarationsteil eines in SCL prograrnmierten Codebausteins werden seine Lokaldaten deklariert.
Der DP-Master eines Profibusnetzes darfDaten an andere Netzteilnehmer senden und von diesen anfordem, wenn er die Berechtigung hat.
Der DP-Slave darf nur Daten im Profibusnetz austauschen, wenn er von einem DP-Master dazu aufgefordert wird.
Der Durchgangsparameter des aufgerufenen Bausteins erhalt beim Aufruf den Wert seines Aktualparameters. Nach der Bearbeitung des aufgerufenen Bausteins ubergibt der Durchgangsparameter seinen dann neu-en Wert an den gleichen Aktualparameter. Durchgansparameter werden auch als Ein-/ Ausgangsparameter bezeichnet.
Eingangsparame- Der Eingangsparameter des aufgerufenen Bausteins erhalt beim Aufruf ter den Wert seines Aktualparameters bzw. einen Aktualwert (Konstante).
Form alparameter
Funktion (FC)
Funktionsbaustein (FB)
FUP (Funktionsplan)
Sie unterteilen sich in Eingangs-, Ausgangs- und Durchgangsparameter. Formalparameter gehOren zu den Lokaldaten eines Bausteins. Den F ormalparametem sind beim Aufruf im aufrufenden Baustein entsprechende Aktualparameter bzw. Aktualwerte zugeordnet.
Die Funktion ist nach IEC 61131-3 ein Codebaustein ohne statische Lokalvariablen. Funktionen konnen Formalparameter und temporiire Lokalvariablen, aber keine statischen Lokalvariablen besitzen.
Der Funktionsbaustein ist nach IEC 61131-3 ein Codebaustein, der Formalparameter sowie temporiire und statische Lokalvariablen besitzen kann. Dem Funktionsbaustein ist ein Instanz-Datenbaustein zugeordnet, der gleichsam das Gedachtnis seines FBs darstellt.
Programmiersprache zur graphischen Verschaltung von Logiksymbolen
Glossar
Globale Speicherbereiche derCPU
GRAPH (S7-GRAPH)
Inkrementelle Programmeingabe
Instanz-Datenbaustein
KOP (Kontaktplan)
Lineare Programmierung
Lokaldaten
Lokakdaten-Stack (L-Stack)
Master Control Relay (MCR)
MC7-Code
Merker(M)
341
Zu den globalen Speicherbereichen zahlen Merker, Eingange, Ausgange, Zeiten, Zahler, Daten in Datenbausteinen. Globale Speicherbereiche sind durch absolute oder symbolische Adressierung ansprechbar.
Die Programmiersprache S7-GRAPH ist ein spezielles Werkzeug zur Erstellung von Ablaufsteuerungen.
Bei der inkrementellen Eingabe wirdjede Eingabe sofort auf Syntaxfehler hin uberpruft. Bausteine mit Syntaxfehlem konnen nicht gespeichert werden. Inkrementelle Eingabe ist bei den Sprachen AWL, FUP, KOP, GRAPH und HiGraph moglich (siehe auch quellorientierte Pro-grammeingabe ).
Ein Instanz-Datenbaustein ist einem Funktionsbaustein zugeordnet. Er speichert die aktuellen Werte der Formalparameter und statischen Variablen des Funktionsbausteins. Er stellt damit das "Gedachtnis" seines Funktionsbausteins dar (siehe auch Datenbaustein).
Graphische Programmiersprache, die iihnlich wie ein Stromlaufplan aufgebaut ist; in den USA stark verbreitet
Das gesamte Anwenderprogramm steht in einem einzigen Baustein, in der Regel im Organisationsbaustein OB 1. Die lineare Programmierung ist eher fUr einfache Automatisierungsaufgaben geeignet (siehe auch strukturierte Programmierung).
Zu den Lokaldaten eines Codebausteins gehOren die Formalparameter sowie die temporaren und statischen Variablen. Die Lokaldaten sind in der Variablendeklarationstabelle (AWL, FUP, KOP) einzutragen oder im Deklarationsteil (SCL) des Codebausteins anzugeben.
Der L-Stack gehOrt zum Systemspeicher der CPU und enth1ilt einen Teil der Lokaldaten, namlich die temporaren Daten (Werte der temporaren Variablen). Die temporaren Daten sind nur solange gilltig, wie der jeweilige Baustein aktiv ist.
Das Master Control Relay (MCR) aktiviert und deaktiviert in RelaisSteuerungen Strompfade. Es wird durch das Software-MCR nachgebildet. Achtung: Das Software-MCR kann keine Not-Aus-Funktionen u-bemehmen.
1st der Maschinencode der S7-CPUs; die in AWL, FUP, KOP, SCL, GRAPH und Hi Graph erstellten Programme werden durch STEP 7 in den MC7-Code gewandelt.
Die Merker gehOren zum Speicherbereich der CPU. Merker werden hauptsachlich zum Speichem von Zwischenergebnissen verwendet. Auf Merker kann bitweise (M), byteweise (MB), wortweise (MW) und doppelwortweise (MD) zugegriffen werden.
MPI-Schnittstelle Die mehrpunktHihige Schnittstelle ist die ProgrammiergerateSchnittstelle von 87.
Neustart Die CPU fiihrt den Neustart nach Netz-Ein, nach Betatigung des Betriebsartenschalters der CPU von STOP auf RUN oder nach Anforde-
342
NOPO,NOP 1
Offline
Online
Online-Hilfe
Operand
Operandenkennzeichen
Operation
Organisationsbaustein (OB)
Projekt
Prozessabbild
Prozessabbild der Ausglinge (P AA)
Glossar
rung durch STEP 7 aus. 1st der Organisationsbaustein OBIOO (Neustart) oder der OBIOI (Wiederanlauf - nur bei S7-400) vorhanden, so werden zuerst diese Bausteine bearbeitet. Erst danach setzt die zyklische Programmbearbeitung durch den OB I ein.
Nulloperation
Es findet kein Datenaustausch zwischen PCIPG und S7-CPU statt.
Es findet ein Datenaustausch zwischen PCIPG und S7-CPU statt.
STEP 7 bietet wiihrend des Arbeitens mit der Programmiersoftware ein kontextabhiingiges Hilfesystem am Bildschirm.
Der Operand ist derjenige Teil einer Anweisung, mit dem der Prozessor etwas tun solI. Operanden konnen absolut oder symbolisch adressiert sein. Beispiele fUr absolut adressierte Operanden: E6.0, MD46, A W20.
Das Operandenkennzeichen ist ein Teil des Operanden. Beispiele: Das Operandenkennzeichen des Operanden E6.0 ist "E", das Operandenkennzeichen des Operanden MD46 ist "MD".
Die Operation ist ein Teil einer Anweisung und sagt dem Prozessor was er tun solI. In der Anweisung "U E6.0" ist "U" (UND-Abfrage) die Operation. Das Kapitel 3 dieses Buches enthiilt einen Vergleich von Operationen der Programmiersprachen AWL, FUP, KOP und SCL.
Die OBs sind die Schnittstelle zwischen dem Betriebssystem der S7-CPU und dem Anwenderprogramm. Organisationsbausteine haben unterschiedliche Prioritaten und legen damit die Reihenfolge fest, mit der das Anwenderprogramm bearbeitet wird.
Oberstes Verzeichnis, das alle Objekte einer S7-Automatisierungslosung beinhaltet
Das Prozessabbild enthiilt die Signalzustiinde der digitalen Ein- und Ausgabebaugruppen. Es gibt das Prozessabbild der Eingiinge (P AE) und das der Ausgiinge (P AA). Die Werte im P AE und P AA werden wiihrend der Abarbeitung des Anwenderprogramms konstant gehalten. Das Anwenderprogramm arbeitet deshalb mit konsistenten Werten.
Nach der Bearbeitung des Anwenderprogramms und der Aktualisierung des P AAs schreibt das Betriebssystem der CPU die Werte aus dem P AA in die Ausgabebaugruppen.
Prozessabbild der Das Betriebssystem der CPU liest die Werte der Digitaleingabebau-Einglinge (P AE) gruppen und hinterlegt sie im P AE, bevor das Anwenderprogramm be
arbeitet wird.
QueUe
Quellorientierte Programmein-
Quellprogramme speichert STEP 7 im Verzeichnis "Quellen" (fiiiher "SO"). Aus dem Quellprogramm erzeugt der Compiler den/die laufHihigen Baustein(e) und legt ihn/sie im Verzeichnis "Bausteine" (fiiiher "AP-off') abo
Wiihrend der quellorientierten Eingabe findet keine Syntaxiiberpriifung statt. Auch fehlerhafte Bausteine lassen sich abspeichem. Die Syntax-
Glossar
gabe
SAVE
Schritt
SCL
SET
SFB (Systemfunktionsbaustein)
SFC (Systemfunktion)
Simultanverzweigung
Speicherbereiche der S7-CPU
Statuswort
Strukturierte Programmierung
Symbolische Adressierung
Symboltabelle
UnterbrechungsStack (U-Stack)
Variable
343
pliifung erfolgt erst beim Ubersetzungsvorga.ng. Eine quellorientierte Eingabe ist bei den Sprachen AWL, Hi Graph und SCL moglich (siehe auch inkrementelle Prograrnmeingabe).
Die Operation SAVE sichert das VK.E ins BIE.
Teil einer Ablaufsteuerung; bei Ablaufsteuerungen wird der technologische Prozess in aufeinanderfolgende oder gleichzeitig ablaufende Schritte gegliedert.
Structured Control Language ist eine P ASCAL-ahnliche Hochsprache. Sie eignet sich besonders fUr rechenintensive Aufgabenstellungen sowie fUr Aufgaben mit Datenverwaltung und -verarbeitung.
Die AWL-Operation SET setzt das VK.E auf 1.
Systemfunktionsbausteine sind in das Betriebssystem einiger S7-CPUs integriert. Sie miissen vom Anwenderprograrnm nur noch aufgerufen und mit Aktualparametem bzw. Aktualwerten versorgt werden.
Systemfunktionen sind bereits in das Betriebssystem der S7-CPUs integriert. Sie miissen vom Anwenderprograrnm nur noch aufgerufen und mit Aktualparametem bzw. Aktualwerten versorgt werden.
Verzweigung einer Ablautkette, bei der mehrere parallele Zweige gleichzeitig durchlaufen werden (siehe auch Altemativverzweigung)
Eine S7-CPU hat drei Speicherbereiche: den Ladespeicher zur Aufnahme der nicht ablaufrelevanten Bausteine des Anwenderprograrnms; den Arbeitsspeicher fUr die ablaufrelevanten Teile des S7-Prograrnms und den Systemspeicher mit den Speicherelementen der Ein- und Ausgange, der Merker, Zeiten und Zahler. Der Systemspeicher enthalt auBerdem den Baustein-, den Unterbrechungs- und den Lokaldaten-Stack.
Das Statuswort enthalt die insgesamt 9 Statusbits. Die Statusbits liefem Statusinformationen und Fehlerinformationen, die bei den Operationen auftreten konnen. Statusbits konnen gelesen und geschrieben, Fehlerbits konnen nur gelesen werden.
Gliederung des Anwenderprograrnms nach funktionalen oder technologischen Gesichtspunkten in einzelne Bausteine (siehe auch lineare Prograrnmierung)
Angabe der symbolischen Adresse von Operanden, z. B. "Start", "MotorEin" (siehe auch absolute Adressierung)
Tabelle mit der Zuordnung von symbolischen Bezeichnungen an absolute Adressen und Bausteine; fUr ein Symbol ist die absolute Adresse und der Datentyp anzugeben. Die Angabe eines Kommentars ist optional.
Der Unterbrechungs-Stack enthalt die Daten bzw. Zustande, die zum Zeitpunkt gilltig waren, als die CPU, z. B. durch einen Prograrnmierfehler, von RUN auf STOP ging.
Eine Variable besteht aus einem Operanden (z. B. MW20) mit der Angabe des Datentyps (z. B. INT). Eine Variable kann eine symbolische
344 Normen
Bezeichnung erhalten.
Variablendeklara- In der Variablendeklarationstabelle eines Codebausteins werden seine tionstabelle Lokaldaten deklariert.
Variablentabelle In einer Variablentabelle werden diejenigen Variablen eingetragen, die wlihrend einer online-Verbindung zwischen PCIPG und S7-CPU beobachtet oder gesteuert werden sollen.
Verkniipfungsergebnis (VKE)
Das Verkniipfungsergebnis (VKE) wird im VKE-Bit des Statuswortes zwischengespeichert und bei der binaren Signalverarbeitung verwendet. Viele Operationen werden VKE-abh1ingig ausgefiihrt.
Zyklusiiberwachungszeit
Die Zyklusiiberwachungszeit der S7-CPU ist parametrierbar, das heiBt einstellbar. Oberschreitet die Bearbeitungszeit des Anwenderprogramms die eingestellte Zeit, so geht die CPU von RUN auf STOP, wenn kein OB80 programmiert ist.
Zykluszeit
Marken
Die Zykluszeit ist die Zeit, die die CPU fUr die eirunalige Bearbeitung des Anwenderprogramms benotigt. Die Zykluszeit kann aus den temporaren Lokalvariablen OBl]REV _CYCLE, OBl_MIN_CYCLE und OBl_MAX_CYCLE des Organisationsbausteins OBI ausgelesen werden.
SIMATIC®, STEP 5®, STEP 7® und WinCC® sind eingetragene Marken der Siemens AG.
WINDOWS 95®, WINDOWS 98®, WINDOWS ME®, WINDOWS NT®, WINDOWS 2000® und WINDOWS XP® sind eingetragene Marken der Microsoft Corp.
Normen
IEC 61131 - Speicherprogrammierbare Steuerungen T1: Allgemeine Begriffsbestimmungen und Funktionsmerkmale einer SPS T2: Elektrische, mechanische und funktionelle Anforderungen an SPSen T3: Programmiersprachen der SPS T4: Leitlinien fUr SPS-Anwender in den verschiedenen Projektphasen T5: Standardbausteine zur Kommunikation zwischen SPSen T6: nicht vergeben T7: Fuzzy-Control-Programmierung T8: Leitlinien fUr die Anwendung und Implementierung von Programmier
sprachen fUr Speicherprogrammierbare Steuerungen
DIN ISO 1219 - Fluidtechnik, Graphische Symbole und Schaltpl1ine T1: Graphische Symbole T2: Schaltpl1ine
DIN 40900 - Grafische Symbole fUr Schaltungsunterlagen
DIN EN 61346-2- Kennbuchstaben von elektrischen Betriebsmitteln
Literatur 345
Literatur
[ 1 ] Behrendt, Ch.: Automatisierungstechnik mit der SIMA TIC S5 und S7, Europa, Haan-Gruiten 1995
Siemens: WinCC V4 - Handbticher 1 bis 3, Ntimberg 1997
Siemens: WinCC V 4 - Configuration Manual, Ntimberg 1997
Weigmann, Kilian: Dezentralisieren mit Profibus-DP, Publicis MCD, Erlangen 2000
Wellenreuther, G.I Zastrow, D.: Automatisieren mit SPS - Ubersichten und Ubungsaufgaben, Vieweg, 2003
Wellenreuther, G.I Zastrow, D.: Automatisieren mit SPS - Theorie und Praxis, Vieweg, 2004
* Die aktuell verfligbaren Siemens-Handbiicher [19] bis [41] konnen von der Siemens-Web-Site kostenfrei heruntergeladen werden. Die Adresse lautet: www.siemens.com/automation/service&support
Siemens AG, A&D AS VI, Herr Hellerich, Gleiwitzer Str. 555,90475 Numberg
Siemens AG, A&D AS V4, Herr Janson, Gleiwitzer Str. 555, 90475 Niimberg
Siemens AG, A&D AS FA TC, Herr Hans-Peter Otto, Gleiwitzer Str. 555,90475 Nfunberg
Siemens AG, SIMATIC-Hotline, Tel.: (0911) 895-7000, die Herren Delioglan, Eberharth, Ehlers, Giessler und Nunez
Meinen Kollegen an der Staatlichen Technikerschule Weilburg - den Herren Hans Baumann, Claus EndreB, Jfugen Heusner, Manfred Seidel, Manfred Weis und Holger Wentz -danke ich fUr ihre fachlichen Empfehlungen und freundlichen RatschHige, meiner Tochter Isabelle und ihrer Freundin Beate Grela fur das Einkleben der S7-Programmausdrucke und meiner Frau Ute sowie Herrn Dr. Peter Fleck fUr das Korrekturlesen.
Bohrlc AWL OBI Bausteinaufruf (CALL) mit Parameterilbergabe Bohrlc AWL OBIOO Bausteinaufruf (CALL) mit Parameterilbergabe Bohrlc HiGraph FCI Ablaufsteuerung (Einzelzyklus, Richten) Bohr2 KOP OBI GnmdstellWlgsabfrage, Betriebsartenfestlegung, Baustein-
aufrufe (Aufrufboxen) ohne und mit Parameterilbergabe Bohr2 AWL OBIOO lnitialisierung der Ablaufkette beim Neustart Bohr2 AWL FCI Umwandeln von Zahlenformaten Bohr2 GRAPH FBI Ablaufsteuerung (Einzelzyklus, Schrittbetrieb, Einrichten) Bohr3 KOP OBI Gnmdstellungsabfrage, Betriebsartenfestlegung, Bauslein-
aufrufe (Aufrufboxen) ohne und mit Parameterilbergabe
Seite
226
227
227ff.
231
232ff.
237
238
170f.
168f. I 69f.
Inf.
173
174
175
177
177
178ff.
212f.
213
213 214
221 f.
Proj ektverzeichnis 353
S7-Projekt Programmier- Baustein Inhalt, Thema Seite sprache
Hoehel AWL OBI Bedingter (SPBN) und zeitgesteuerter Bausteinaufruf 293f. (CALL) mit Parameterilbergabe, Vergleichsoperation
Hoehel SCL FCIOO Norrnierung von Analogeingabewerten 294
Hoehel SCL FCIOI Norrnienmg von Analogausgabewerten 294
Hoehe2 AWL OBI Bedingter (SPBN) und zeitgesteuerter Bausteinaufruf 296f. (CALL) mit Parameterilbergabe, Vergleichsoperation
Hoehe2 AWL FBI Messwerte in globalen Datenbaustein schreiben 297
Hoehe2 entflillt DB2 DB2: Datenbaustein mit Deklaration eines arrays 297
Hoehe2a SCL DB2-FBI DB2: Datenbaustein mit Deklaration eines arrays 299 FBI : Messwerte in Datenbaustein schreiben
Hoehe3 SCL DB3- DB3: Datenbaustein mit Deklaration eines arrays 300f DB4- DB4: Datenbaustein mit Deklaration eines arrays FBI FB I : Messwerte abwechselnd in Datenbausteine schreibcn
Hoehe4 SCL DB3- DB3: Datenbaustein mit Deklaration eines arrays 303[. DB4- DB4: Datenbaustein mit Deklaration eines arrays FBI FB I: Messwerte abwechselnd in Datenbausteine schreiben
Kraft I AWL OBI Bausteinaufruf(CALL) mit Parameterilbergabe 277
Kraft I SCL FCI Norrnienmg von Analogeingabewerten 278
Kraft2 AWL OBI Bausteinaufruf(CALL) mit Parameterilbergabe 279
Kraft2 SCL FCI Norrnienmg von Analogeingabewerten 280
Kraft2 SCL FC2 Norrn ierung von Analogausgabewerten 280
Kraft2a SeL Fel Normienmg von Analogausgabewerten 281
MPSI AWL OBIOO Merker auf I-Signal setzen 317 Station(l)
MPSI KOP OBI Bausteinaufrufe (Aufrufboxen) ohne und mit 317f. Stalion(l) Parameterilbergabe
MPSI KOP FCI Grundstellungsabfrage, Betriebsartenfestlegung, 318f. Station(l) Startvoraussetzungen