Hinweise in den zugehörigen Dokumentationen müssen beachtet werden. Marken Alle mit dem Schutzrechtsvermerk ® gekennzeichneten Bezeichnungen sind eingetragene Marken der Siemens AG. Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für deren Zwecke die Rechte der Inhaber verletzen kann. Haftungsausschluss Wir haben den Inhalt der Druckschrift auf Übereinstimmung mit der beschriebenen Hard- und Software...
Seite 5
Inhaltsverzeichnis Programmsteuerung 10.1 Programmsteuerungsoperationen Übersicht ................109 10.2 CALL : FC/SFC aufrufen ohne Parameter ................. 110 10.3 CALL_FB : FB als Box aufrufen ....................112 10.4 CALL_FC : FC als Box aufrufen ....................114 10.5 CALL_SFB : System-FB als Box aufrufen ................. 116 10.6 CALL_SFC : System-FC als Box aufrufen .................
Seite 6
Inhaltsverzeichnis Wortverknüpfung 14.1 Wortverknüpfungsoperationen Übersicht .................. 183 14.2 WAND_W : 16 Bit UND verknüpfen ................... 184 14.3 WOR_W : 16 Bit ODER verknüpfen ..................185 14.4 WXOR_W : 16 Bit EXKLUSIV ODER verknüpfen ..............186 14.5 WAND_DW : 32 Bit UND verknüpfen ..................187 14.6 WOR_DW : 32 Bit ODER verknüpfen ..................
Vorwort Zweck des Handbuchs Dieses Handbuch unterstützt Sie bei der Erstellung von Anwenderprogrammen in der Programmiersprache FUP. Es beschreibt die Sprachelemente der Programmiersprache FUP, ihre Syntax und Funktionsweise. Erforderliche Grundkenntnisse Dieses Handbuch richtet sich an Programmierer von S7-Programmen, Inbetriebsetzer und Servicepersonal.
Handbuch und Online-Hilfe können Sie bequem zwischen Handbuch und Online-Hilfe wechseln. Weitere Unterstützung Bei Fragen zur Nutzung der im Handbuch beschriebenen Produkte, die Sie hier nicht beantwortet finden, wenden Sie sich Bitte an Ihren Siemens-Ansprechpartner in den für Sie zuständigen Vertretungen und Geschäftsstellen. Ihren Ansprechpartner finden Sie unter: http://www.siemens.com/automation/partner Den Wegweiser zum Angebot an technischen Dokumentationen für die einzelnen...
Weiterführende Informationen über Industrial Security finden Sie unter http://www.siemens.com/industrialsecurity Die Produkte und Lösungen von Siemens werden ständig weiterentwickelt, um sie noch sicherer zu machen. Siemens empfiehlt ausdrücklich, Aktualisierungen durchzuführen, sobald die entsprechenden Updates zur Verfügung stehen und immer nur die aktuellen Produktversionen zu verwenden.
Seite 10
Vorwort Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Bitverknüpfung Bitverknüpfungsoperationen Übersicht Beschreibung Bitverknüpfungsoperationen arbeiten mit den Zahlen "1" und "0". Diese Zahlen bilden die Basis des Dualsystems und werden "Binärziffern" oder kurz "Bits" genannt. Im Zusammenhang mit UND, ODER, XOR und Ausgängen steht eine "1" für "logisch JA" und eine "0" für "logisch NEIN". Die Bitverknüpfungsoperationen interpretieren die Signalzustände "1"...
Bitverknüpfung 1.2 >=1 : ODER-Verknüpfung >=1 : ODER-Verknüpfung Symbol >=1 <Operand> <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, T, Z, D, L Der Operand gibt das Bit an, dessen Signalzustand abgefragt wird. Beschreibung Mit der Operation ODER können Sie die Signalzustände zweier oder mehr angegebener Operanden an den Eingängen einer ODER–Box abfragen.
Bitverknüpfung 1.3 & : UND-Verknüpfung & : UND-Verknüpfung Symbol & <Operand> <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, T, Z, D, L Der Operand gibt das Bit an, dessen Signalzustand abgefragt wird. Beschreibung Mit der Operation UND können Sie die Signalzustände zweier oder mehr angegebener Operanden an den Eingängen einer UND–Box abfragen.
Bitverknüpfung 1.4 UND-vor-ODER-Verknüpfung und ODER-vor-UND-Verknüpfung UND-vor-ODER-Verknüpfung und ODER-vor-UND-Verknüpfung Beschreibung Mit der Operation UND-vor-ODER können Sie das Ergebnis einer Signalzustandsabfrage entsprechend der ODER–Wahrheitstabelle abfragen. Der Signalzustand ist "1", wenn mindestens eine UND-Verknüpfung erfüllt ist. Statuswort schreibt: Beispiel E 1.0 & E 1.1 >=1 A 3.1 E 1.2...
Seite 15
Bitverknüpfung 1.4 UND-vor-ODER-Verknüpfung und ODER-vor-UND-Verknüpfung Beispiel E 1.0 >=1 E 1.1 & A 3.1 E 1.2 >=1 E 1.3 Am Ausgang A 3.1 ist der Signalzustand "1", wenn beide ODER–Verknüpfungen erfüllt sind. Am Ausgang A 3.1 ist der Signalzustand "0", wenn mindestens eine ODER–Verknüpfung nicht erfüllt ist.
Bitverknüpfung 1.5 XOR : EXKLUSIV-ODER-Verknüpfung XOR : EXKLUSIV-ODER-Verknüpfung Symbol <Operand> <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, T, Z, D, L Der Operand gibt das Bit an, dessen Signalzustand abgefragt wird. Beschreibung Mit der Operation EXKLUSIV-ODER können Sie das Ergebnis einer Signalzustandsabfrage entsprechend der EXKLUSIV-ODER-Wahrheitstabelle abfragen.
Bitverknüpfung 1.6 Binären Eingang einfügen Binären Eingang einfügen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, T, Z, D, L Der Operand gibt das Bit an, dessen Signalzustand abgefragt wird. Beschreibung Die Operation Binären Eingang einfügen fügt an einer UND-, ODER- oder XOR–Box hinter der Markierung einen weiteren binären Eingang ein.
Bitverknüpfung 1.7 Binären Eingang negieren Binären Eingang negieren Symbol Beschreibung Die Operation Binären Eingang negieren negiert das VKE. Statuswort schreibt: Beispiel E 1.0 & E 1.1 & >=1 E 1.2 & E 1.3 A 4.0 E 1.4 Ausgang A 4.0 ist "1", wenn: •...
Bitverknüpfung 1.8 = : Zuweisung = : Zuweisung Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welchem Bit der Signalzustand der Verknüpfungskette zugewiesen wird. Beschreibung Die Operation Zuweisung liefert das Verknüpfungsergebnis. Die Box am Ende der Verknüpfung führt entsprechend den folgenden Kriterien das Signal 1 bzw.
Seite 20
Bitverknüpfung 1.8 = : Zuweisung Beispiel E 0.0 & E 0.1 >=1 A 4.0 E 0.2 Der Signalzustand an Ausgang A 4.0 ist "1", wenn: • an den Eingängen E 0.0 UND E 0.1 der Signalzustand "1" ist, • ODER E 0.2 = 0 ist. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Bitverknüpfung 1.9 # : Konnektor # : Konnektor Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, *L Der Operand gibt an, welchem Bit das VKE zugewiesen wird. * Ein Operand im Lokaldaten-Stack kann nur verwendet werden, wenn er in der Variablendeklarationstabelle im Bereich TEMP eines Codebausteins (FC, FB, OB) deklariert wurde.
Seite 22
Bitverknüpfung 1.9 # : Konnektor Beispiel M 0.0 E 1.0 & & E 1.1 E 1.2 & M 1.1 >=1 E 1.3 M 2.2 M 3.3 A 4.0 E 1.4 Die Konnektoren speichern die folgenden Verknüpfungsergebnisse: M 0.0 speichert das negierte VKE von E 1.0 &...
Bitverknüpfung 1.10 R : Ausgang rücksetzen 1.10 R : Ausgang rücksetzen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, T, Z, D, L Der Operand gibt an, welches Bit zurückgesetzt werden soll. TIMER COUNTER Beschreibung Die Operation Ausgang rücksetzen wird nur dann ausgeführt, wenn das VKE = 1 ist. Ist das VKE = 1, wird der angegebene Operand von der Operation auf "0"...
Bitverknüpfung 1.11 S : Ausgang setzen 1.11 S : Ausgang setzen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welches Bit gesetzt werden soll. Beschreibung Die Operation Ausgang setzen wird nur ausgeführt, wenn das VKE = 1 ist. Ist das VKE = 1, so wird der angegebene Operand von der Operation auf "1"...
Bitverknüpfung 1.12 RS : Flipflop rücksetzen setzen 1.12 RS : Flipflop rücksetzen setzen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welches Bit gesetzt oder zurückgesetzt werden soll. BOOL E, A, M, D, L, T, Z Operation Rücksetzen freigegeben BOOL E, A, M, D, L, T, Z...
Seite 26
Bitverknüpfung 1.12 RS : Flipflop rücksetzen setzen Beispiel M 0.0 E 0.0 & E 0.1 E 0.0 & A 4.0 E 0.1 Ist E 0.0 = 1 und E 0.1= 0, wird der Merker M 0.0 rückgesetzt und Ausgang A 4.0 ist "0". Ist E 0.0 = 0 und E 0.1 = 1, wird der Merker M 0.0 gesetzt und Ausgang A 4.0 ist "1".
Bitverknüpfung 1.13 SR : Flipflop setzen rücksetzen 1.13 SR : Flipflop setzen rücksetzen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welches Bit gesetzt oder zurückgesetzt werden soll. BOOL E, A, M, D, L, T, Z Operation Setzen freigegeben BOOL E, A, M, D, L, T, Z...
Seite 28
Bitverknüpfung 1.13 SR : Flipflop setzen rücksetzen Beispiel M 0.0 E 0.0 & E 0.1 E 0.0 & A 4.0 E 0.1 Ist E 0.0 = 1 und E 0.1 = 0, wird der Merker M 0.0 gesetzt und A 4.0 ist "1". Ist E 0.0 = 0 und E 0.1 = 1, wird der Merker M 0.0 zurückgesetzt und A 4.0 ist "0".
Bitverknüpfung 1.14 N : Flanke 1 -> 0 abfragen 1.14 N : Flanke 1 -> 0 abfragen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welcher Flankenmerker das vorherige VKE speichert. Beschreibung Die Operation Flanke 1 →...
Bitverknüpfung 1.15 P : Flanke 0 -> 1 abfragen 1.15 P : Flanke 0 -> 1 abfragen Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung <Operand> BOOL E, A, M, D, L Der Operand gibt an, welcher Flankenmerker das vorherige VKE speichert. Beschreibung Die Operation Flanke 0 →...
Bitverknüpfung 1.16 SAVE : Verknüpfungsergebnis in BIE-Register laden 1.16 SAVE : Verknüpfungsergebnis in BIE-Register laden Symbol SAVE Beschreibung Die Operation SAVE speichert das VKE im BIE-Bit des Statusworts. Das Erstabfragebit /ER wird dabei nicht zurückgesetzt. Aus diesem Grund wird bei einer UND-Verknüpfung im nächsten Netzwerk der Zustand des BIE- Bits mit verknüpft.
Bitverknüpfung 1.17 NEG : Signalflanke 1 -> 0 abfragen 1.17 NEG : Signalflanke 1 -> 0 abfragen Symbol <Operand1> M_BIT Q Parameter Datentyp Speicherbereich Beschreibung <Operand1> BOOL E, A, M, D, L Abzufragendes Signal für einen negativen Flankenwechsel M_BIT BOOL A, M, D Der Operand M_BIT gibt an, in welchem Flankenmerker der...
Bitverknüpfung 1.18 POS : Signalflanke 0 -> 1 abfragen 1.18 POS : Signalflanke 0 -> 1 abfragen Symbol <Operand1> M_BIT Q Parameter Datentyp Speicherbereich Beschreibung <Operand1> BOOL E, A, M, D, L Abzufragendes Signal für einen positiven Flankenwechsel M_BIT BOOL A, M, D Der Operand M_BIT gibt an, in welchem Flankenmerker der...
Seite 34
Bitverknüpfung 1.18 POS : Signalflanke 0 -> 1 abfragen Beispiel E 0.3 & M 0.0 M_BIT Q A 4.0 E 0.4 Ausgang A 4.0 ist "1", wenn: • Eingang E 0.3 eine steigende Flanke hat • UND an Eingang E 0.4 der Signalzustand "1" ist. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Vergleicher Vergleichsoperationen Übersicht Beschreibung Verglichen werden die Eingänge IN1 und IN2 entsprechend der folgenden Vergleichsarten: == IN1 ist gleich IN2 <> IN1 ist ungleich IN2 > IN1 ist größer als IN2 < IN1 ist kleiner als IN2 >= IN1 ist größer als oder gleich IN2 <= IN1 ist kleiner als oder gleich IN2 Ergibt der Vergleich die Aussage "wahr", so ist das VKE der Operation "1", ansonsten "0".
Vergleicher 2.2 CMP ? I : Ganze Zahlen vergleichen (16 Bit) CMP ? I : Ganze Zahlen vergleichen (16 Bit) Symbole == I > I >= I <> I < I <= I Parameter Datentyp Speicherbereich Beschreibung E, A, M, D, L Erster Vergleichswert oder Konstante E, A, M, D, L...
Seite 37
Vergleicher 2.2 CMP ? I : Ganze Zahlen vergleichen (16 Bit) Beispiel & == I E 0.0 A 4.0 A 4.0 wird gesetzt, wenn: MW0 = MW2 ist • • UND an Eingang E 0.0 der Signalzustand "1" ist. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Vergleicher 2.3 CMP ? D : Ganze Zahlen vergleichen (32 Bit) CMP ? D : Ganze Zahlen vergleichen (32 Bit) Symbole == D > D >= D <> D < D <= D Parameter Datentyp Speicherbereich Beschreibung DINT E, A, M, D, L Erster Vergleichswert oder Konstante DINT...
Seite 39
Vergleicher 2.3 CMP ? D : Ganze Zahlen vergleichen (32 Bit) Beispiel & <> D E 0.0 A 4.0 A 4.0 wird gesetzt, wenn: MD0 ungleich MD4 ist • • UND an Eingang E 0.0 der Signalzustand "1". Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Vergleicher 2.4 CMP ? R : Gleitpunktzahlen vergleichen CMP ? R : Gleitpunktzahlen vergleichen Symbole == R > R >= R <> R < R <= R Parameter Datentyp Speicherbereich Beschreibung REAL E, A, M, D, L Erster Vergleichswert oder Konstante REAL E, A, M, D, L Zweiter Vergleichswert...
Seite 41
Vergleicher 2.4 CMP ? R : Gleitpunktzahlen vergleichen Beispiel & < R E 0.0 A 4.0 A 4.0 wird gesetzt, wenn: MD0 < MD4 ist • • UND an Eingang E 0.0 der Signalzustand "1" ist Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Seite 42
Vergleicher 2.4 CMP ? R : Gleitpunktzahlen vergleichen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Umwandler Umwandlungsoperationen Übersicht Beschreibung Mit den folgenden Operationen können Sie binär-codierte Dezimalzahlen und Ganzzahlen in andere Zahlenarten umwandeln: • BCD_I BCD-Zahl in Ganzzahl (16 Bit) wandeln • I_BCD Ganzzahl (16 Bit) in BCD-Zahl wandeln • BCD_DI BCD-Zahl in Ganzzahl (32 Bit) wandeln •...
Umwandler 3.2 BCD_I : BCD-Zahl in Ganzzahl (16 Bit) wandeln BCD_I : BCD-Zahl in Ganzzahl (16 Bit) wandeln Symbol BCD_I EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang WORD E, A, M, D, L BCD-Zahl oder Konstante E, A, M, D, L...
Umwandler 3.3 I_BCD : Ganzzahl (16 Bit) in BCD-Zahl wandeln I_BCD : Ganzzahl (16 Bit) in BCD-Zahl wandeln Symbol I_BCD EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L Ganzzahl (16 Bit) oder Konstante WORD...
Umwandler 3.4 BCD_DI : BCD-Zahl in Ganzzahl (32 Bit) wandeln BCD_DI : BCD-Zahl in Ganzzahl (32 Bit) wandeln Symbol BCD_DI EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DWORD E, A, M, D, L BCD-Zahl oder Konstante DINT...
Umwandler 3.5 I_DI : Ganzzahl (16 Bit) in Ganzzahl (32 Bit) wandeln I_DI : Ganzzahl (16 Bit) in Ganzzahl (32 Bit) wandeln Symbol I_DI EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L Wert, der umgewandelt wird...
Umwandler 3.6 DI_BCD : Ganzzahl (32 Bit) in BCD-Zahl wandeln DI_BCD : Ganzzahl (32 Bit) in BCD-Zahl wandeln Symbol DI_BCD EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L Ganzzahl (32 Bit) oder Konstante DWORD...
Umwandler 3.7 DI_R : Ganzzahl (32 Bit) in Gleitpunktzahl wandeln DI_R : Ganzzahl (32 Bit) in Gleitpunktzahl wandeln Symbol DI_R EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L Wert, der umgewandelt wird oder Konstante REAL...
Umwandler 3.8 INV_I : Einer-Komplement zu Ganzzahl (16 Bit) erzeugen INV_I : Einer-Komplement zu Ganzzahl (16 Bit) erzeugen Symbol INV_I EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L Eingangswert oder Konstante E, A, M, D, L...
Umwandler 3.9 INV_DI : Einer-Komplement zu Ganzzahl (32 Bit) erzeugen INV_DI : Einer-Komplement zu Ganzzahl (32 Bit) erzeugen Symbol INV_DI EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L Eingangswert oder Konstante DINT...
Umwandler 3.10 NEG_I : Zweier-Komplement zu Ganzzahl (16 Bit) erzeugen 3.10 NEG_I : Zweier-Komplement zu Ganzzahl (16 Bit) erzeugen Symbol NEG_I EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L Eingangswert oder Konstante E, A, M, D, L...
Umwandler 3.11 NEG_DI : Zweier-Komplement zu Ganzzahl (32 Bit) erzeugen 3.11 NEG_DI : Zweier-Komplement zu Ganzzahl (32 Bit) erzeugen Symbol NEG_DI EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L Eingangswert oder Konstante DINT...
Umwandler 3.12 NEG_R : Vorzeichen einer Gleitpunktzahl wechseln 3.12 NEG_R : Vorzeichen einer Gleitpunktzahl wechseln Symbol NEG_R EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L Eingangswert oder Konstante REAL...
Umwandler 3.13 ROUND : Zahl runden 3.13 ROUND : Zahl runden Symbol ROUND EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L Wert, der gerundet wird oder Konstante DINT E, A, M, D, L...
Umwandler 3.14 TRUNC : Ganze Zahl erzeugen 3.14 TRUNC : Ganze Zahl erzeugen Symbol TRUNC EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L Wert, der gerundet wird oder Konstante DINT E, A, M, D, L...
Umwandler 3.15 CEIL : Aus Gleitpunktzahl nächsthöhere Ganzzahl erzeugen 3.15 CEIL : Aus Gleitpunktzahl nächsthöhere Ganzzahl erzeugen Symbol CEIL EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L Wert, der umgewandelt wird oder Konstante DINT...
Umwandler 3.16 FLOOR : Aus Gleitpunktzahl nächstniedere Ganzzahl erzeugen 3.16 FLOOR : Aus Gleitpunktzahl nächstniedere Ganzzahl erzeugen Symbol FLOOR EN OUT IN ENO Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L Wert, der umgewandelt wird oder Konstante DINT...
Zähler Zähloperationen Übersicht Speicherbereich Zähler haben einen eigenen reservierten Speicherbereich in Ihrer CPU. Dieser Speicherbereich reserviert ein Wort von 16 Bit für jeden Zähler. Das Programmieren mit FUP unterstützt 256 Zähler. Zählwert Die Bits 0 bis 9 des Zählerworts enthalten den Zählwert binär-codiert. Wenn der Zähler gesetzt wird, wird der von Ihnen festgelegte Wert vom Akkumulator in den Zähler übertragen.
Seite 60
Zähler 4.1 Zähloperationen Übersicht irrelevant Zählwert im BCD-Format (0 bis 999) irrelevant Zählwert binär codiert Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Zähler 4.2 ZAEHLER : Parametrieren und vorwärts-/rückwärtszählen ZAEHLER : Parametrieren und vorwärts-/rückwärtszählen Symbol Englisch Deutsch C no. Z-Nr. S_CUD ZAEHLER DUAL CV_BCD Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich COUNTER Z Nummer des Zählers; Bereich ist von der CPU abhängig. BOOL E, A, M, D, L Eingang ZV: Vorwärtszählen BOOL...
Seite 62
Zähler 4.2 ZAEHLER : Parametrieren und vorwärts-/rückwärtszählen Statuswort schreibt: - Beispiel ZAEHLER E 0.0 E 0.1 E 0.2 DUAL C#55 A 4.0 E 0.3 Wechselt der Signalzustand an E 0.2 von "0" auf "1", wird der Zähler Z10 mit dem Wert 55 gesetzt. Wechselt der Signalzustand an E 0.0 von "0"...
Zähler 4.3 Z_VORW : Parametrieren und vorwärtszählen Z_VORW : Parametrieren und vorwärtszählen Symbol Englisch Deutsch Z-Nr. C no. S_CU Z_VORW DUAL CV_BCD Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich COUNTER Nummer des Zählers; Bereich ist von der CPU abhängig. BOOL E, A, M, D, L Eingang ZV: Vorwärtszählen...
Seite 64
Zähler 4.3 Z_VORW : Parametrieren und vorwärtszählen Beispiel Z_VORW E 0.0 DUAL E 0.2 C#901 A 4.0 E 0.3 Wechselt der Signalzustand an E 0.2 von "0" auf "1", wird der Zähler Z10 mit dem Wert 901 gesetzt. Wechselt der Signalzustand von E 0.0 von "0" auf "1", wird der Wert des Zählers Z10 um "1"...
Zähler 4.4 Z_RUECK : Parametrieren und rückwärtszählen Z_RUECK : Parametrieren und rückwärtszählen Symbol Englisch Deutsch Z-Nr. C no. S_CD Z_RUECK DUAL CV_BCD Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich COUNTER Nummer des Zählers; Bereich ist von der CPU abhängig. BOOL E, A, M, D, L Eingang ZR: Rückwärtszählen...
Seite 66
Zähler 4.4 Z_RUECK : Parametrieren und rückwärtszählen Beispiel Z_RUECK E 0.0 DUAL E 0.2 C#89 A 4.0 E 0.3 Wechselt der Signalzustand an E 0.2 von "0" auf "1", wird der Zähler Z10 mit dem Wert 89 gesetzt. Wechselt der Signalzustand von E 0.0 von "0" auf "1", wird der Wert des Zählers Z10 um "1" vermindert, sofern der Wert von Z10 nicht gleich "0"...
Zähler 4.5 SZ : Zähleranfangswert setzen SZ : Zähleranfangswert setzen Symbol Englisch Deutsch <Operand1> <Operand1> <Operand2> <Operand2> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Zähler- Zähler- COUNTER Der Operand1 gibt die Nummer des Zählers nummer nummer an, der mit einem Wert voreingestellt werden soll.
Zähler 4.6 ZV : Vorwärtszählen ZV : Vorwärtszählen Symbol Englisch Deutsch <Operand> <Operand> Parameter Datentyp Speicherbereich Beschreibung Zählernummer COUNTER Der Operand gibt die Nummer des Zählers an, der erhöht werden soll. Beschreibung Die Operation Vorwärtszählen erhöht den Wert eines angegebenen Zählers um "1", wenn das VKE eine steigende Flanke aufweist (Wechsel von "0"...
Zähler 4.7 ZR : Rückwärtszählen ZR : Rückwärtszählen Symbol Englisch Deutsch <Operand> <Operand> Parameter Datentyp Speicherbereich Beschreibung Zählernummer COUNTER Der Operand gibt die Nummer des Zählers an, der vermindert werden soll. Beschreibung Die Operation Rückwärtszählen vermindert den Wert eines angegebenen Zählers um "1", wenn das VKE eine steigende Flanke aufweist (Wechsel von "0"...
Seite 70
Zähler 4.7 ZR : Rückwärtszählen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
DB-Aufruf OPN: Datenbaustein öffnen Symbol <DB-Nummer> oder <DI-Nummer> Parameter Datentyp Speicherbereich Beschreibung Nummer des Nummer des DB oder DI; Bereich ist DB oder DI von der CPU abhängig Beschreibung Mit der Operation OPN öffnen Sie einen Datenbaustein als globalen Datenbaustein (DB) oder als Instanz-Datenbaustein (DI).
Seite 72
DB-Aufruf 5.1 OPN: Datenbaustein öffnen Beispiel Netzwerk 1 DB10 Netzwerk 2 A 4.0 DBX 0.0 DB 10 ist der aktuell geöffnete Datenbaustein. Daher bezieht sich die Abfrage an DBX 0.0 auf das Bit 0 des Datenbytes 0 in DB 10. Der Signalzustand dieses Bits wird Ausgang A 4.0 zugewiesen.
Sprünge Sprungoperationen Übersicht Beschreibung Sprungoperation können Sie in allen Codebausteinen verwenden, z. B. in Organisationsbausteinen (OBs), Funktionsbausteinen (FBs) und Funktionen (FCs). Folgende Sprungoperationen stehen Ihnen zur Verfügung: • Springe im Baustein absolut • Springe im Baustein wenn 1 (bedingt) • JMPN Springe im Baustein wenn 0 (bedingt) Sprungmarke als Operand...
Sprünge 6.2 JMP : Springe im Baustein absolut JMP : Springe im Baustein absolut Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung Name einer Der Operand gibt die Marke an, zu Sprungmarke der absolut gesprungen wird. Beschreibung Die Operation Springe im Baustein absolut entspricht einer Operation "Gehe zu Sprungmarke". Keine der Operationen zwischen Sprungoperation und Sprungmarke wird ausgeführt.
Sprünge 6.3 JMP : Springe im Baustein wenn 1 (bedingt) JMP : Springe im Baustein wenn 1 (bedingt) Symbol <Operand> Parameter Datentyp Speicherbereich Beschreibung Name einer Der Operand gibt die Marke an, Sprungmarke zu der bei VKE = 1 gesprungen wird.
Sprünge 6.4 JMPN : Springe im Baustein wenn 0 (bedingt) JMPN : Springe im Baustein wenn 0 (bedingt) Symbol <Operand> JMPN Parameter Datentyp Speicherbereich Beschreibung Name einer Der Operand gibt die Marke an, Sprungmarke zu der bei VKE = 0 gesprungen wird.
Sprünge 6.5 LABEL : Sprungmarke LABEL : Sprungmarke Symbol LABEL Beschreibung Die Sprungmarke kennzeichnet das Ziel einer Sprungoperation. Es besteht aus 4 Zeichen - erstes Zeichen: Buchstabe; restliche Zeichen: Buchstaben oder Zahlen; z.B. CAS1. Zu jedem Sprung (JMP oder JMPN) muß auch eine Sprungmarke (LABEL) vorhanden sein. Beispiel Netzwerk 1 CAS1...
Seite 78
Sprünge 6.5 LABEL : Sprungmarke Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Festpunkt-Funktionen 7.2 Auswerten der Bits im Statuswort bei Festpunkt-Funktionen Auswerten der Bits im Statuswort bei Festpunkt-Funktionen Beschreibung Die Festpunkt-Funktionen beeinflussen die Bits A1, A0, OV und OS im Statuswort. Die folgenden Tabellen zeigen den Signalzustand der Bits des Statusworts für die Ergebnisse von Operationen mit Festpunktzahlen (16 Bit, 32 Bit).
Festpunkt-Funktionen 7.3 ADD_I : Ganze Zahlen addieren (16 Bit) ADD_I : Ganze Zahlen addieren (16 Bit) Symbol ADD_I Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L oder Erster Summand Konstante E, A, M, D, L oder Zweiter Summand Konstante...
Festpunkt-Funktionen 7.4 SUB_I : Ganze Zahlen subtrahieren (16 Bit) SUB_I : Ganze Zahlen subtrahieren (16 Bit) Symbol SUB_I Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L oder Minuend Konstante E, A, M, D, L oder Subtrahend Konstante E, A, M, D, L...
Festpunkt-Funktionen 7.5 MUL_I : Ganze Zahlen multiplizieren (16 Bit) MUL_I : Ganze Zahlen multiplizieren (16 Bit) Symbol MUL_I Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L oder Multiplikand Konstante E, A, M, D, L oder Multiplikator Konstante E, A, M, D, L...
Festpunkt-Funktionen 7.6 DIV_I : Ganze Zahlen dividieren (16 Bit) DIV_I : Ganze Zahlen dividieren (16 Bit) Symbol DIV_I Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang E, A, M, D, L oder Dividend Konstante E, A, M, D, L oder Divisor Konstante E, A, M, D, L...
Festpunkt-Funktionen 7.7 ADD_DI : Ganze Zahlen addieren (32 Bit) ADD_DI : Ganze Zahlen addieren (32 Bit) Symbol ADD_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L oder Erster Summand Konstante DINT E, A, M, D, L oder...
Festpunkt-Funktionen 7.8 SUB_DI : Ganze Zahlen subtrahieren (32 Bit) SUB_DI : Ganze Zahlen subtrahieren (32 Bit) Symbol SUB_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L oder Konstante Minuend DINT E, A, M, D, L oder Konstante Subtrahend DINT...
Festpunkt-Funktionen 7.9 MUL_DI : Ganze Zahlen multiplizieren (32 Bit) MUL_DI : Ganze Zahlen multiplizieren (32 Bit) Symbol MUL_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L oder Konstante Multiplikand DINT E, A, M, D, L oder Konstante Multiplikator DINT...
Festpunkt-Funktionen 7.10 DIV_DI : Ganze Zahlen dividieren (32 Bit) 7.10 DIV_DI : Ganze Zahlen dividieren (32 Bit) Symbol DIV_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L oder Konstante Dividend DINT E, A, M, D, L oder Konstante Divisor DINT...
Festpunkt-Funktionen 7.11 MOD_DI : Divisionsrest gewinnen (32 Bit) 7.11 MOD_DI : Divisionsrest gewinnen (32 Bit) Symbol MOD_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DINT E, A, M, D, L oder Konstante Dividend DINT E, A, M, D, L oder Konstante Divisor DINT E, A, M, D, L...
Seite 90
Festpunkt-Funktionen 7.11 MOD_DI : Divisionsrest gewinnen (32 Bit) Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Gleitpunkt-Funktionen Gleitpunkt-Funktionen Übersicht Beschreibung Die Gleitpunktzahlen gehören zum Datentyp REAL. Mit den Gleitpunkt-Funktionen können Sie folgende arithmetische Operationen mit zwei Gleitpunktzahlen (32 Bit, IEEE 754) ausführen: • ADD_R Addieren • SUB_R Subtrahieren • MUL_R Multiplizieren • DIV_R Dividieren Folgende Funktionen können Sie mit einer Gleitpunktzahl (32 Bit, IEEE 754) ausführen: •...
Gleitpunkt-Funktionen 8.2 Auswerten der Bits im Statuswort bei Gleitpunkt-Funktionen Auswerten der Bits im Statuswort bei Gleitpunkt-Funktionen Beschreibung Die Gleitpunkt-Funktionen beeinflussen die Bits A1, A0, OV und OS im Statuswort. Die folgenden Tabellen zeigen den Signalzustand der Bits im Statuswort für die Ergebnisse von Operationen mit Gleitpunktzahlen (32 Bit).
Gleitpunkt-Funktionen 8.3 Grundoperationen Grundoperationen 8.3.1 ADD_R : Gleitpunktzahlen addieren Symbol ADD_R Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Erster Summand Konstante REAL E, A, M, D, L oder Zweiter Summand Konstante REAL...
Seite 94
Gleitpunkt-Funktionen 8.3 Grundoperationen Beispiel ADD_R E 0.0 MD10 A 4.0 Die Box ADD_R wird aktiviert, wenn E 0.0 = 1 ist. Das Additionsergebnis aus MD0 + MD4 wird in Merkerdoppelwort MD10 abgelegt. Ist einer der Eingänge oder das Ergebnis keine Gleitpunktzahl und ist der Signalzustand von E 0.0 = 0, wird dem Ausgang A 4.0 Signal "0"...
Gleitpunkt-Funktionen 8.3 Grundoperationen 8.3.2 SUB_R : Gleitpunktzahlen subtrahieren Symbol SUB_R Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Minuend Konstante REAL E, A, M, D, L oder Subtrahend Konstante REAL E, A, M, D, L...
Gleitpunkt-Funktionen 8.3 Grundoperationen 8.3.3 MUL_R : Gleitpunktzahlen multiplizieren Symbol MUL_R Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Multiplikand Konstante REAL E, A, M, D, L oder Multiplikator Konstante REAL E, A, M, D, L...
Gleitpunkt-Funktionen 8.3 Grundoperationen 8.3.4 DIV_R : Gleitpunktzahlen dividieren Symbol DIV_R Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Konstante Dividend REAL E, A, M, D, L oder Konstante Divisor REAL E, A, M, D, L Divisionsergebnis...
Gleitpunkt-Funktionen 8.3 Grundoperationen 8.3.5 ABS : Bilden des Absolutwertes einer Gleitpunktzahl Symbol Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Eingangswert: Gleitpunktzahl Konstante REAL E, A, M, D, L Ausgangswert: Absolutwert der Gleitpunktzahl BOOL...
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen Erweiterte Operationen 8.4.1 SQR : Bilden des Quadrats einer Gleitpunktzahl Symbol Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Zahl Konstante REAL E, A, M, D, L Quadrat der Zahl BOOL E, A, M, D, L...
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen 8.4.2 SQRT : Bilden der Quadratwurzel einer Gleitpunktzahl Symbol SQRT Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Konstante Zahl REAL E, A, M, D, L Quadratwurzel der Zahl BOOL E, A, M, D, L...
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen 8.4.3 EXP : Bilden des Exponentialwerts einer Gleitpunktzahl Symbol Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Zahl Konstante REAL E, A, M, D, L Exponent der Zahl BOOL E, A, M, D, L...
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen 8.4.4 LN : Bilden des natürlichen Logarithmus einer Gleitpunktzahl Symbol Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Zahl Konstante REAL E, A, M, D, L Natürlicher Logarithmus der Zahl BOOL E, A, M, D, L...
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen 8.4.5 Bilden von trigonometrischen Funktionen von Winkeln als Gleitpunktzahlen Beschreibung Mit den folgenden Operationen können Sie trigonometrische Funktionen von Winkeln, die als Gleitpunktzahlen (32 Bit, IEEE 754) dargestellt sind, bilden: Operation Bedeutung Bilden des Sinus einer Gleitpunktzahl von einem Winkel, der im Bogenmaß angegeben wird.
Seite 104
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen Symbol Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Zahl Konstante REAL E, A, M, D, L Sinus der Zahl BOOL E, A, M, D, L Freigabeausgang Symbol ASIN...
Seite 105
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen Symbol ACOS Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang REAL E, A, M, D, L oder Konstante Zahl REAL E, A, M, D, L Arcuscosinus der Zahl BOOL E, A, M, D, L Freigabeausgang Symbol Parameter...
Seite 106
Gleitpunkt-Funktionen 8.4 Erweiterte Operationen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Verschieben MOVE : Wert übertragen Symbol MOVE Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang Alle elementaren E, A, M, D, L Quellwert Datentyen mit oder Konstante einer Länge von 8, 16 oder 32 Bit Alle elementaren E, A, M, D, L Zieladresse...
Seite 108
Verschieben 9.1 MOVE : Wert übertragen Hinweis Bei der Übertragung eines Wertes in einen Datentyp anderer Länge werden höherwertige Bytes bei Bedarf abgeschnitten oder mit Nullen aufgefüllt. Beispiele: Doppelwort 1111 1111 0000 1111 1111 0000 0101 0101 Übertragung Ergebnis in ein Doppelwort: 1111 1111 0000 1111 1111 0000...
Programmsteuerung 10.1 Programmsteuerungsoperationen Übersicht Beschreibung Folgende Operationen stehen Ihnen zur Programmsteuerung zur Verfügung: • CALL FC/SFC aufrufen ohne Parameter • CALL_FB FB als Box aufrufen • CALL_FC FC als Box aufrufen • CALL_SFB System-FB als Box aufrufen • CALL_SFC System-FC als Box aufrufen •...
Programmsteuerung 10.2 CALL : FC/SFC aufrufen ohne Parameter 10.2 CALL : FC/SFC aufrufen ohne Parameter Symbol <FC-/SFC-Nummer> CALL Parameter Datentyp Speicher- Beschreibung bereich Nummer BLOCK_FC Nummer der FC oder SFC (z. B. FC 10 oder SFC 59). Welche SFCs zur Verfügung stehen, hängt von Ihrer CPU ab.
Seite 111
Programmsteuerung 10.2 CALL : FC/SFC aufrufen ohne Parameter Beispiel DB 10 MCRA FC 10 CALL A 4.0 E 0.0 MCRD FC 11 CALL E 0.1 Wird der absolute Aufruf von FC 10 ausgeführt, arbeitet die Operation CALL wie folgt: • Sie speichert die Rücksprungadresse des aktuellen FB.
Programmsteuerung 10.3 CALL_FB : FB als Box aufrufen 10.3 CALL_FB : FB als Box aufrufen Symbol <DB no.> FB no. Das Symbol ist von dem Funktionsbaustein abhängig (je nachdem, ob bzw. wie viele Parameter vorhanden sind). EN, ENO und der Name bzw. die Nummer des FB müssen vorhanden sein. Parameter Datentyp Speicherbereich...
Seite 113
Programmsteuerung 10.3 CALL_FB : FB als Box aufrufen Beispiel Netzwerk 1 DB 10 Netzwerk 2 MCRA Netzwerk 3 DB 11 FB11 A 4.0 Netzwerk 4 DB 10 Bei den oben dargestellten Netzwerken handelt es sich um Programmteile eines vom Anwender geschriebenen Funktionsbausteins.
Programmsteuerung 10.4 CALL_FC : FC als Box aufrufen 10.4 CALL_FC : FC als Box aufrufen Symbol FC no. Das Symbol ist von der Funktion abhängig (je nachdem, ob bzw. wie viele Parameter vorhanden sind). EN, ENO und der Name bzw. die Nummer der FC müssen vorhanden sein. Parameter Datentyp Speicherbereich...
Seite 115
Programmsteuerung 10.5 CALL_SFB : System-FB als Box aufrufen Beispiel Netzwerk 1 DB 10 Netzwerk 2 MCRA Netzwerk 3 FC 11 FC 10 A 4.0 Bei den oben dargestellten Netzwerken handelt es sich um Programmteile eines vom Anwender geschriebenen Funktionsbausteins. DB 10 wird in diesem Baustein geöffnet und das MCR aktiviert. Wird der absolute Aufruf von FC 10 ausgeführt, geschieht folgendes: Die Rücksprungadresse des aufrufenden Funktionsbausteins und die Auswahldaten für DB 10 und den Instanz-Datenbaustein des aufrufenden Funktionsbausteins werden gespeichert.
Programmsteuerung 10.5 CALL_SFB : System-FB als Box aufrufen 10.5 CALL_SFB : System-FB als Box aufrufen Symbol <DB no.> SFB no. Das Symbol ist von dem Systemfunktionsbaustein abhängig (je nachdem, ob bzw. wie viele Parameter vorhanden sind). EN, ENO und der Name bzw. die Nummer des SFB müssen vorhanden sein.
Seite 117
Programmsteuerung 10.5 CALL_SFB : System-FB als Box aufrufen Beispiel Netzwerk 1 DB 10 Netzwerk 2 MCRA Netzwerk 3 DB 8 SFB 8 A 4.0 Netzwerk 4 DB 10 Bei den oben dargestellten Netzwerken handelt es sich um Programmteile eines vom Anwender geschriebenen Funktionsbausteins.
Programmsteuerung 10.6 CALL_SFC : System-FC als Box aufrufen 10.6 CALL_SFC : System-FC als Box aufrufen Symbol SFC no. Das Symbol ist von der Systemfunktion abhängig (je nachdem, ob bzw. wie viele Parameter vorhanden sind). EN, ENO und der Name bzw. die Nummer der SFC müssen vorhanden sein. Parameter Datentyp Speicherbereich...
Seite 119
Programmsteuerung 10.6 CALL_SFC : System-FC als Box aufrufen Beispiel Netzwerk 1 DB 10 Netzwerk 2 MCRA Netzwerk 3 SFC 20 MW10 RET_VAL DBDW12 SCRBLK DSTBLK MOTOR.SPEED A 4.0 Bei den oben dargestellten Netzwerken handelt es sich um Programmteile eines vom Anwender geschriebenen Funktionsbausteins.
Programmsteuerung 10.7 Multiinstanzen aufrufen 10.7 Multiinstanzen aufrufen Symbol #Variablen- name IN/OUT Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang BOOL E, A, M, D, L Freigabeausgang # Variablenname FB/SFB Name der Multiinstanz Beschreibung Eine Multiinstanz entsteht durch die Deklaration einer statischen Variablen vom Datentyp eines Funktionsbausteins.
Programmsteuerung 10.9 Funktionen des Master Control Relay 10.9 Funktionen des Master Control Relay Wichtige Hinweise zur MCR-Funktionalität Definition des Master Control Relay (MCR) Das Master Control Relay wird für das Aktivieren und Deaktivieren des Signalflusses verwendet. Ein deaktivierter Signalfluß entspricht einer Operationsfolge, die einen Nullwert statt des errechneten Wertes schreibt bzw.
Programmsteuerung 10.10 Wichtige Hinweise zur MCR-Funktionalität 10.10 Wichtige Hinweise zur MCR-Funktionalität Vorsicht bei Bausteinen, in denen mit MCRA das Master Control Relay aktiviert wurde: • Wenn das MCR abgeschaltet ist, wird in Programmabschnitten zwischen MCR einschalten und MCR ausschalten durch alle Zuweisungen der Wert 0 geschrieben! Das betrifft dann natürlich auch alle Boxen, die eine Zuweisung enthalten, einschließlich der Parameterübergabe an Bausteine! •...
Programmsteuerung 10.11 MCR< / MCR> : Master Control Relay einschalten/ausschalten 10.11 MCR< / MCR> : Master Control Relay einschalten/ausschalten Wichtige Hinweise zur MCR-Funktionalität Symbol MCR< MCR einschalten Mit der Operation Master Control Relay einschalten (MCR<) wird das VKE in den MCR-Stack gespeichert und eine MCR-Zone geöffnet.
Programmsteuerung 10.11 MCR< / MCR> : Master Control Relay einschalten/ausschalten MCR-Stack Das MCR wird von einem Stack gesteuert, der ein Bit breit und acht Einträge tief ist. Das MCR wird so lange aktiviert, wie alle acht Einträge in dem Stack gleich "1" sind. Der MCR-Stack arbeitet wie ein LIFO-Zwischenspeicher: last in, first out.
Seite 125
Programmsteuerung 10.11 MCR< / MCR> : Master Control Relay einschalten/ausschalten Statuswort schreibt: Beispiel MCRA E 0.0 MCR< E 0.1 MCR< A 4.0 E 0.3 MCR> A 4.1 E 0.4 MCR> MCRD Wenn die Operation MCRA die Funktion MCR aktiviert, können Sie bis zu acht geschachtelte MCR-Zonen erstellen.
Programmsteuerung 10.12 MCRA / MCRD : Master Control Relay Anfang/Ende 10.12 MCRA / MCRD : Master Control Relay Anfang/Ende Wichtige Hinweise zur MCR-Funktionalität Symbol MCRA MCR-Anfang Mit der Operation Master Control Relay Anfang schalten Sie die MCR-Abhängigkeit der nachfolgenden Befehle ein. Nach diesem Befehl können Sie mit den Operationen MCR einschalten/ausschalten die MCR-Zonen programmieren.
Programmsteuerung 10.12 MCRA / MCRD : Master Control Relay Anfang/Ende Aktivieren und Deaktivieren eines MCR-Bereichs Nur die Operationen, die zwischen MCRA und MCRD programmiert sind, hängen vom Signalzustand des MCR-Bits ab. Fehlt eine MCRD-Operation, dann hängen die Operationen, die zwischen den Operationen MCRA und BEA programmiert sind, vom MCR-Bit ab. MCRA MCRA MCRA...
Seite 128
Programmsteuerung 10.12 MCRA / MCRD : Master Control Relay Anfang/Ende Beispiel MCRA E 0.0 MCR< A 4.0 E 0.3 A 4.1 E 0.4 MCR> MCRD Die Operation MCRA aktiviert die Funktion MCR bis zum nächstfolgenden MCRD. Die Operationen zwischen MCR< und MCR> werden in Abhängigkeit des MA-Bits (hier E 0.0) bearbeitet: •...
Programmsteuerung 10.13 RET : Springe zurück 10.13 RET : Springe zurück Symbol Beschreibung Mit der Operation RET können Sie Bausteine verlassen. Sie können einen Baustein bedingt verlassen. Statuswort schreibt: * Die Operation RET wird intern auf die Sequenz "SAVE; BEB;" abgebildet. Das bewirkt, daß auch das BIE-Bit beinflußt wird.
Seite 130
Programmsteuerung 10.13 RET : Springe zurück Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.1 Schiebeoperationen Übersicht Beschreibung Mit den Schiebeoperationen können Sie den Inhalt von Eingang IN Bitweise nach links oder rechts schieben (siehe auch CPU-Register). Ein Schieben um n Bits nach links multipliziert den Inhalt von Eingang IN mit 2 hoch n; ein Schieben um n Bits nach rechts dividiert den Inhalt von Eingang IN durch 2 hoch n.
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.2 SHR_I : Ganzzahl (16 Bit) rechts schieben Symbol SHR_I Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird E, A, M, L, D...
Seite 133
Schieben/Rotieren 11.1 Schiebeoperationen Statuswort schreibt: X Beispiel SHR_I E 0.0 A 4.0 Die Operation wird aktiviert, wenn E 0.0 = 1 ist. Merkerwort MW0 wird um die Anzahl an Bits nach rechts geschoben, die in MW2 angegeben ist. Das Ergebnis wird in MW4 abgelegt. Ausgang A 4.0 wird auf 1 gesetzt. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.3 SHR_DI : Ganzzahl (32 Bit) rechts schieben Symbol SHR_DI Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang DINT E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird DINT...
Seite 135
Schieben/Rotieren 11.1 Schiebeoperationen Beispiel SHR_DI E 0.0 MD10 A 4.0 Die Operation wird aktiviert, wenn E 0.0 = 1 ist. Merkerdoppelwort MD0 wird um die Anzahl an Bits nach rechts geschoben, die in MW4 angegeben ist. Das Ergebnis wird in MD10 abgelegt. Ausgang A 4.0 wird auf 1 gesetzt. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.4 SHL_W : 16 Bit Links schieben Symbol SHL_W Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang WORD E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird WORD...
Seite 137
Schieben/Rotieren 11.1 Schiebeoperationen Statuswort schreibt: Beispiel SHL_W E 0.0 A 4.0 Die Operation wird aktiviert, wenn E 0.0 = 1 ist. Merkerwort MW0 wird um die Anzahl an Bits nach links geschoben, die in MW2 angegeben ist. Das Ergebnis wird in MW4 abgelegt. Ausgang A 4.0 wird auf 1 gesetzt. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.5 SHR_W : 16 Bit Rechts schieben Symbol SHR_W Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang WORD E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird WORD...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.6 SHL_DW : 32 Bit Links schieben Symbol SHL_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang DWORD E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird DWORD...
Schieben/Rotieren 11.1 Schiebeoperationen 11.1.7 SHR_DW : 32 Bit Rechts schieben Symbol SHR_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang DWORD E, A, M, L, D Wert, der geschoben wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die geschoben wird DWORD...
Seite 141
Schieben/Rotieren 11.1 Schiebeoperationen Beispiel SHR_DW E 0.0 MD10 A 4.0 Die Operation wird aktiviert, wenn E 0.0 = 1 ist. Merkerdoppelwort MD0 wird um die Anzahl an Bits nach rechts geschoben, die in MW4 angegeben ist. Das Ergebnis wird in MD10 abgelegt. Ausgang A 4.0 wird auf 1 gesetzt. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Schieben/Rotieren 11.2 Rotieroperationen 11.2 Rotieroperationen 11.2.1 Rotieroperationen Übersicht Beschreibung Mit den Rotieroperationen können Sie den gesamten Inhalt von Eingang IN Bitweise nach rechts oder links rotieren (siehe auch CPU-Register). Die frei gewordenen Stellen werden mit den Signalzuständen der Bits aufgefüllt, die aus dem Eingang IN geschoben wurden. Am Eingang N können Sie angeben, um wie viele Bits rotiert werden soll.
Seite 143
Schieben/Rotieren 11.2 Rotieroperationen Beschreibung Die Operation 32 Bit links rotieren wird durch den Signalzustand "1" am Freigabeeingang EN aktiviert und rotiert den gesamten Inhalt von Eingang IN Bitweise nach links. Eingang N gibt an, um wie viele Bits rotiert wird. Ist N größer als 32, wird das Doppelwort mit ((N-1) Modul 32) +1] rotiert.
Schieben/Rotieren 11.2 Rotieroperationen 11.2.3 ROR_DW : 32 Bit Rechts rotieren Symbol ROR_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, L, D, T, Z Freigabeeingang DWORD E, A, M, L, D Wert, der rotiert wird WORD E, A, M, L, D Anzahl der Bitpositionen, um die rotiert wird DWORD...
Seite 145
Schieben/Rotieren 11.2 Rotieroperationen Statuswort schreibt: Beispiel ROR_DW E 0.0 MD10 A 4.0 Die Operation wird aktiviert, wenn E 0.0 = 1 ist. Merkerdoppelwort MD0 wird um die Anzahl an Bits nach rechts rotiert, die in MW4 angegeben ist. Das Ergebnis wird in MD10 abgelegt. Ausgang A 4.0 wird auf 1 gesetzt. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Seite 146
Schieben/Rotieren 11.2 Rotieroperationen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Statusbits 12.1 Statusbitoperationen Übersicht Beschreibung Statusbitoperationen sind Bitverknüpfungsoperationen, die mit den Bits des Statusworts arbeiten. Diese Operationen reagieren auf eine der folgenden Bedingungen, die von einem oder mehreren Bits angezeigt werden: • Das Binärergebnis-Bit (BIE) wird gesetzt (d. h. es hat einen Signalzustand von "1"). •...
Statusbits 12.2 OV : Störungsbit Überlauf 12.2 OV : Störungsbit Überlauf Symbol Beschreibung Mit der Operation Störungsbit Überlauf können Sie erkennen, ob in der zuletzt bearbeiteten arithmetischen Operation ein Überlauf (OV) auftrat. Befindet sich das Ergebnis nach der arithmetischen Operation außerhalb des zulässigen negativen oder außerhalb des zulässigen positiven Bereichs, so wird das OV–Bit im Statuswort gesetzt.
Seite 149
Statusbits 12.2 OV : Störungsbit Überlauf Die Signalzustandsabfrage an OV ergibt "1". Ausgang A 4.0 wird gesetzt, wenn die Abfrage bei OV "1" beträgt und das VKE von Netzwerk 2 "1" ist (d. h. wenn das VKE vor Ausgang A 4.0 = 1 ist). Ist der Signalzustand von Eingang E 0.0 = 0 (nicht aktiviert), dann ist der Signalzustand von EN und ENO "0".
Statusbits 12.3 OS : Störungsbit Überlauf gespeichert 12.3 OS : Störungsbit Überlauf gespeichert Symbol Beschreibung Mit der Operation Störungsbit Überlauf gespeichert können Sie erkennen, ob in einer arithmetischen Operation ein speichernder Überlauf (OS) auftrat. Befindet sich das Ergebnis nach einer arithmetischen Operation außerhalb des zulässigen negativen oder außerhalb des zulässigen positiven Bereichs, so wird das OS–Bit im Statuswort gesetzt.
Seite 151
Statusbits 12.3 OS : Störungsbit Überlauf gespeichert Die Signalzustandsabfrage an OS ergibt "1" und Ausgang A 4.0 wird gesetzt. Netzwerk 1: Ist der Signalzustand von Eingang E 0.0 = 0 (nicht aktiviert), dann ist der Signalzustand von EN und ENO "0". Ist der Signalzustand von EN = 1 (aktiviert) und liegt das Ergebnis der arithmetischen Operation außerhalb des Bereichs, dann ist der Signalzustand von ENO = 0.
Statusbits 12.4 UO : Störungsbit Ungültige Operation 12.4 UO : Störungsbit Ungültige Operation Symbol Beschreibung Mit der Operation Störungsbit Ungültige Operation können Sie abfragen, ob das Ergebnis einer arithmetischen Operation mit Gleitpunktzahlen ungültig ist (d. h. ob einer der Werte in der arithmetischen Operation keine gültige Gleitpunktzahl ist).
Statusbits 12.5 BIE : Störungsbit BIE-Register 12.5 BIE : Störungsbit BIE-Register Symbol Englisch Deutsch Beschreibung Mit der Operation Störungsbit BIE–Register können Sie den Signalzustand des BIE–Bits (Binärergebnis-Bit) abfragen. Statuswort schreibt: Beispiel E 0.0 >=1 E 0.2 & A 4.0 Ausgang A 4.0 wird gesetzt, wenn E 0.0 = 1 ist ODER E 0.2 = 0 ist und, zusätzlich zu diesem VKE, der Signalzustand des BIE–Bits = 1 ist.
Statusbits 12.6 <> 0 : Ergebnisbits 12.6 <> 0 : Ergebnisbits Symbole Die Operation Ergebnisbit bei gleich 0 bestimmt, ob das Ergebnis einer arithmetischen == 0 Operation gleich 0 ist. Die Operation Ergebnisbit bei ungleich 0 bestimmt, ob das Ergebnis einer arithmetischen <>...
Seite 155
Statusbits 12.6 <> 0 : Ergebnisbits Beispiel SUB_I E 0.0 MW10 & A 4.0 >0 SUB_I E 0.0 MW10 & A 4.0 <=0 Die Box SUB_I wird aktiviert, wenn E 0.0 = 1 ist. Ist der Wert von EW0 größer als der Wert von EW2, ist das Ergebnis der arithmetischen Operation EW0 - EW2 größer als 0.
Seite 156
Statusbits 12.6 <> 0 : Ergebnisbits Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Zeiten 13.1 Zeitoperationen Übersicht Beschreibung Unter "Speicherbereiche und Komponenten einer Zeit" finden Sie Informationen zum Einstellen und zur Auswahl der richtigen Zeit. Folgende Zeitoperationen stehen Ihnen zur Verfügung: • S_IMPULS Zeit als Impuls parametrieren und starten • S_VIMP Zeit als verlängerten Impuls parametrieren und starten •...
Zeiten 13.2 Speicherbereiche und Komponenten einer Zeit 13.2 Speicherbereiche und Komponenten einer Zeit Speicherbereich Zeiten haben einen eigenen reservierten Speicherbereich in Ihrer CPU. Dieser Speicherbereich reserviert ein 16-Bit-Wort für jeden Zeitoperanden. Das Programmieren mit FUP unterstützt 256 Zeiten. Wie viele Zeitworte in Ihrer CPU zur Verfügung stehen, entnehmen Sie Bitte deren technischen Daten.
Zeiten 13.2 Speicherbereiche und Komponenten einer Zeit Zeitbasis Die Bits 12 und 13 des Timerworts enthalten die Zeitbasis binär-codiert. Die Zeitbasis definiert das Intervall, in dem der Zeitwert um eine Einheit vermindert wird. Die kleinste Zeitbasis beträgt 10 ms, die größte 10 s. Zeitbasis Binärcode für Zeitbasis 10 ms...
Zeiten 13.2 Speicherbereiche und Komponenten einer Zeit Lesen der Zeit und der Zeitbasis Jede Timerbox liefert zwei Ausgänge, DUAL und DEZ, für die Sie eine Wortadresse angeben können. Am Ausgang DUAL ist der Zeitwert binär-codiert, die Zeitbasis wird nicht angezeigt. Am Ausgang DEZ sind Zeitbasis und Zeitwort BCD-codiert.
Seite 161
Zeiten 13.2 Speicherbereiche und Komponenten einer Zeit Zeiten Erklärung S_AVERZ Das Ausgangssignal ist "1", wenn das Eingangssignal "1" ist oder die Zeit Zeit als läuft. Die Zeit wird gestartet wenn das Eingangssignal von "1" auf "0" wechselt. Ausschaltverzögerung Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Zeiten 13.3 S_IMPULS : Zeit als Impuls parametrieren und starten 13.3 S_IMPULS : Zeit als Impuls parametrieren und starten Symbol Englisch Deutsch T no. T-Nr. S_PULSE S_IMPULS DUAL Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich TIMER Nummer der Zeit; Bereich ist von der CPU abhängig.
Seite 163
Zeiten 13.3 S_IMPULS : Zeit als Impuls parametrieren und starten Impulsdiagramm VKE an Eingang S VKE an Eingang R Zeit läuft Abfrage "1" Abfrage "0" t = programmierte Zeit Statuswort schreibt: Beispiel S_IMPULS E 0.0 DUAL S5T#2s A 4.0 E 0.1 Wechselt der Signalzustand an Eingang E 0.0 von "0"...
Zeiten 13.4 S_VIMP : Zeit als verlängerten Impuls parametrieren und starten 13.4 S_VIMP : Zeit als verlängerten Impuls parametrieren und starten Symbol Englisch Deutsch T no. T-Nr. S_PEXT S_VIMP DUAL Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich TIMER Nummer der Zeit; Bereich ist von der CPU abhängig.
Seite 165
Zeiten 13.4 S_VIMP : Zeit als verlängerten Impuls parametrieren und starten Impulsdiagramm VKE an Eingang S VKE an Eingang R Zeit läuft Abfrage "1" Abfrage "0" t = programmierte Zeit Statuswort schreibt: Beispiel S_VIMP E 0.0 DUAL S5T#2s A 4.0 E 0.1 Wechselt der Signalzustand an Eingang E 0.0 von "0"...
Zeiten 13.5 S_EVERZ : Zeit als Einschaltverzögerung parametrieren und starten 13.5 S_EVERZ : Zeit als Einschaltverzögerung parametrieren und starten Symbol Englisch Deutsch T no. T-Nr. S_ODT S_EVERZ DUAL Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich TIMER Nummer der Zeit; Bereich ist von der CPU abhängig.
Seite 167
Zeiten 13.5 S_EVERZ : Zeit als Einschaltverzögerung parametrieren und starten Impulsdiagramm VKE an Eingang S VKE an Eingang R Zeit läuft Abfrage "1" Abfrage "0" t = programmierte Zeit Statuswort schreibt: Beispiel S_EVERZ E 0.0 DUAL S5T#2s A 4.0 E 0.1 Wechselt der Signalzustand an Eingang E 0.0 von "0"...
Zeiten 13.6 S_SEVERZ : Zeit als speichernde Einschaltverzögerung parametrieren und starten 13.6 S_SEVERZ : Zeit als speichernde Einschaltverzögerung parametrieren und starten Symbol Englisch Deutsch T no. T-Nr. S_ODTS S_SEVERZ DUAL Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich TIMER Nummer der Zeit; Bereich ist von der CPU abhängig.
Seite 169
Zeiten 13.6 S_SEVERZ : Zeit als speichernde Einschaltverzögerung parametrieren und starten Impulsdiagramm VKE an Eingang S VKE an Eingang R Zeit läuft Abfrage "1" Abfrage "0" t = programmierte Zeit Statuswort schreibt: Beispiel S_SEVERZ E 0.0 DUAL S5T#2s A 4.0 E 0.1 Wechselt der Signalzustand an Eingang E 0.0 von "0"...
Zeiten 13.7 S_AVERZ : Zeit als Ausschaltverzögerung parametrieren und starten 13.7 S_AVERZ : Zeit als Ausschaltverzögerung parametrieren und starten Symbol Englisch Deutsch T no. T-Nr. S_OFFDT S_AVERZ DUAL Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich TIMER Nummer der Zeit; Bereich ist von der CPU abhängig.
Seite 171
Zeiten 13.8 SI : Zeit als Impuls starten Impulsdiagramm VKE an Eingang S VKE an Eingang R Zeit läuft Abfrage "1" Abfrage "0" t = programmierte Zeit Statuswort schreibt: Beispiel S_AVERZ E 0.0 DUAL S5T#2s A 4.0 E 0.1 Wechselt der Signalzustand an Eingang E 0.0 von "1" auf "0", wird die Zeit gestartet. Ausgang A 4.0 ist "1", wenn E 0.0 = 1 ist oder die Zeit läuft.
Zeiten 13.8 SI : Zeit als Impuls starten 13.8 SI : Zeit als Impuls starten Symbol Englisch Deutsch <Operand> <Operand> <Zeitwert> <Zeitwert> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Nummer der Nummer der TIMER Der Operand gibt die Nummer der Zeit an, Zeit Zeit die gestartet werden soll.
Seite 173
Zeiten 13.8 SI : Zeit als Impuls starten Beispiel Netzwerk 1 E 0.0 S5T#2s Netzwerk 2 A 4.0 Wechselt der Signalzustand an E 0.0 von "0" auf "1" (steigende Flanke im VKE), wird die Zeit T5 gestartet. Solange der Signalzustand = 1 ist, läuft die Zeit mit dem angegebenen Wert von 2 Sekunden ab.
Zeiten 13.9 SV : Zeit als verlängerten Impuls starten 13.9 SV : Zeit als verlängerten Impuls starten Symbol Englisch Deutsch <Operand> <Operand> <Zeitwert> <Zeitwert> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Nummer der Nummer der TIMER Der Operand gibt die Nummer der Zeit an, Zeit Zeit die gestartet werden soll.
Seite 175
Zeiten 13.9 SV : Zeit als verlängerten Impuls starten Beispiel Netzwerk 1 E 0.0 S5T#2s Netzwerk 2 A 4.0 Wechselt der Signalzustand an E 0.0 von "0" auf "1" (steigende Flanke im VKE), wird die Zeit T5 gestartet. Die Zeit läuft weiter, ohne von einer fallenden Flanke im VKE beeinträchtigt zu werden. Wechselt der Signalzustand an E 0.0 von "0"...
Zeiten 13.10 SE : Zeit als Einschaltverzögerung starten 13.10 SE : Zeit als Einschaltverzögerung starten Symbol Englisch Deutsch <Operand> <Operand> <Zeitwert> <Zeitwert> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Nummer der Nummer der TIMER Der Operand gibt die Nummer der Zeit an, Zeit Zeit die gestartet werden soll.
Seite 177
Zeiten 13.10 SE : Zeit als Einschaltverzögerung starten Beispiel Netzwerk 1 E 0.0 S5T#2s Netzwerk 2 A 4.0 Wechselt der Signalzustand an E 0.0 von "0" auf "1" (steigende Flanke im VKE), wird die Zeit T5 gestartet. Wenn die Zeit abläuft und der Signalzustand noch immer "1" beträgt, ist der Ausgang A 4.0 = 1.
Zeiten 13.11 SS : Zeit als speichernde Einschaltverzögerung starten 13.11 SS : Zeit als speichernde Einschaltverzögerung starten Symbol Englisch Deutsch <Operand> <Operand> <Zeitwert> <Zeitwert> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Nummer der Nummer der TIMER Der Operand gibt die Nummer der Zeit an, Zeit Zeit die gestartet werden soll.
Seite 179
Zeiten 13.11 SS : Zeit als speichernde Einschaltverzögerung starten Beispiel Netzwerk 1 E 0.0 S5T#2s Netzwerk 2 A 4.0 Wechselt der Signalzustand an E 0.0 von "0" auf "1" (steigende Flanke im VKE), wird die Zeit T5 gestartet. Die Zeit läuft weiter, unabhängig davon, ob der Signalzustand an E 0.0 von "1" auf "0" wechselt.
Zeiten 13.12 SA : Zeit als Ausschaltverzögerung starten 13.12 SA : Zeit als Ausschaltverzögerung starten Symbol Englisch Deutsch <Operand> <Operand> <Zeitwert> <Zeitwert> Parameter Parameter Datentyp Speicher- Beschreibung Englisch Deutsch bereich Nummer der Nummer der TIMER Der Operand gibt die Nummer der Zeit an, Zeit Zeit die gestartet werden soll.
Seite 181
Zeiten 13.12 SA : Zeit als Ausschaltverzögerung starten Beispiel Netzwerk 1 E 0.0 S5T#2s Netzwerk 2 A 4.0 Die Zeit wird gestartet, wenn der Signalzustand an E 0.0 von "1" auf "0" wechselt. Wechselt Signalzustand von "0" auf "1", wird die Zeit rückgesetzt. Der Signalzustand an Ausgang A 4.0 ist "1", wenn der Signalzustand an Eingang E 0.0 = 1 ist oder die Zeit läuft.
Seite 182
Zeiten 13.12 SA : Zeit als Ausschaltverzögerung starten Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Wortverknüpfung 14.1 Wortverknüpfungsoperationen Übersicht Beschreibung Wortverknüpfungsoperationen verknüpfen die beiden digitalen Werte der Eingänge IN1 und IN2 entsprechend der Booleschen Logik. Sie werden jeweils durch den Signalzustand "1" am Freigabeeingang EN aktiviert. Die Werte werden als reine Bitmuster interpretiert. Das Ergebnis kann an Ausgang OUT abgefragt werden.
Wortverknüpfung 14.2 WAND_W : 16 Bit UND verknüpfen 14.2 WAND_W : 16 Bit UND verknüpfen Symbol WAND_W Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang WORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante WORD E, A, M, D, L...
Wortverknüpfung 14.3 WOR_W : 16 Bit ODER verknüpfen 14.3 WOR_W : 16 Bit ODER verknüpfen Symbol WOR_W Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang WORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante WORD E, A, M, D, L...
Wortverknüpfung 14.4 WXOR_W : 16 Bit EXKLUSIV ODER verknüpfen 14.4 WXOR_W : 16 Bit EXKLUSIV ODER verknüpfen Symbol WXOR_W Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang WORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante WORD E, A, M, D, L...
Wortverknüpfung 14.5 WAND_DW : 32 Bit UND verknüpfen 14.5 WAND_DW : 32 Bit UND verknüpfen Symbol WAND_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DWORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante DWORD E, A, M, D, L...
Wortverknüpfung 14.6 WOR_DW : 32 Bit ODER verknüpfen 14.6 WOR_DW : 32 Bit ODER verknüpfen Symbol WOR_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang DWORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante DWORD E, A, M, D, L...
Wortverknüpfung 14.7 WXOR_DW : 32 Bit EXKLUSIV ODER verknüpfen 14.7 WXOR_DW : 32 Bit EXKLUSIV ODER verknüpfen Symbol WXOR_DW Parameter Datentyp Speicherbereich Beschreibung BOOL E, A, M, D, L, T, Z Freigabeeingang WORD E, A, M, D, L Erster Wert der Verknüpfung oder Konstante WORD E, A, M, D, L...
Seite 190
Wortverknüpfung 14.7 WXOR_DW : 32 Bit EXKLUSIV ODER verknüpfen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Seite 192
FUP-Operationen Übersicht A.1 FUP-Operationen sortiert nach deutscher Mnemonik (SIMATIC) Deutsche Englische Operation/Funktion Beschreibung Mnemonik Mnemonik DI_R DI_R Umwandler Ganzzahl (32 Bit) in Gleitpunktzahl wandeln DIV_DI DIV_DI Festpunkt-Funktion Ganze Zahlen dividieren (32 Bit) DIV_I DIV_I Festpunkt-Funktion Ganze Zahlen dividieren (16 Bit) DIV_R DIV_R Gleitpunkt-Funktion...
Seite 193
FUP-Operationen Übersicht A.1 FUP-Operationen sortiert nach deutscher Mnemonik (SIMATIC) Deutsche Englische Operation/Funktion Beschreibung Mnemonik Mnemonik SAVE SAVE Bitverknüpfung Verknüpfungsergebnis in BIE-Register laden S_AVERZ S_OFFDT Zeiten Zeit als Ausschaltverzögerung parametrieren und starten Zeiten Zeit als Einschaltverzögerung starten S_EVERZ S_ODT Zeiten Zeit als Einschaltverzögerung parametrieren und starten SHL_DW SHL_DW...
Seite 194
FUP-Operationen Übersicht A.1 FUP-Operationen sortiert nach deutscher Mnemonik (SIMATIC) Deutsche Englische Operation/Funktion Beschreibung Mnemonik Mnemonik Z_VORW S_CU Zähler Parametrieren und vorwärtszählen Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Seite 196
FUP-Operationen Übersicht A.2 FUP-Operationen sortiert nach englischer Mnemonik (International) Englische Deutsche Operation/Funktion Beschreibung Mnemonik Mnemonik DIV_I DIV_I Festpunkt-Funktion Ganze Zahlen dividieren (16 Bit) DIV_R DIV_R Gleitpunkt-Funktion Gleitpunktzahlen dividieren Gleitpunkt-Funktion Bilden des Exponentialwerts einer Gleitpunktzahl FLOOR FLOOR Umwandler Aus Gleitpunktzahl nächstniedere Ganzzahl erzeugen I_BCD I_BCD Umwandler...
Seite 197
FUP-Operationen Übersicht A.2 FUP-Operationen sortiert nach englischer Mnemonik (International) Englische Deutsche Operation/Funktion Beschreibung Mnemonik Mnemonik S_CU Z_VORW Zähler Parametrieren und vorwärtszählen S_CUD ZAEHLER Zähler Parametrieren und vorwärts-/rückwärtszählen Zeiten Zeit als Einschaltverzögerung starten Zeiten Zeit als verlängerten Impuls starten Zeiten Zeit als Ausschaltverzögerung starten SHL_DW SHL_DW Schieben/Rotieren...
Seite 198
FUP-Operationen Übersicht A.2 FUP-Operationen sortiert nach englischer Mnemonik (International) Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Programmierbeispiele Programmierbeispiele Übersicht Praktische Anwendungen Jede FUP–Operation löst eine bestimmte Funktion aus. Durch Kombination der Operationen in einem Programm können Sie eine breite Palette von Automatisierungsaufgaben ausführen. Hier einige Beispiele für praktische Anwendungen: • Steuern eines Förderbandes durch Bitverknüpfungsoperationen • Feststellen der Bewegungsrichtung auf einem Förderband durch Bitverknüpfungsoperationen •...
Programmierbeispiele B.2 Bitverknüpfungsoperationen Beispiel Bitverknüpfungsoperationen Beispiel Beispiel 1: Steuern eines Förderbandes Das folgende Bild zeigt ein Förderband, das elektrisch in Gang gesetzt werden kann. Am Anfang des Bandes befinden sich zwei Druckschalter, S1 für START und S2 für STOP. Am Ende des Bandes befinden sich ebenfalls zwei Druckschalter, S3 für START und S4 für STOP.
Seite 201
Programmierbeispiele B.2 Bitverknüpfungsoperationen Beispiel Funktionsplan zum Steuern des Förderbandes Netzwerk 1: Der Motor wird durch Betätigen eines der beiden Startschalters eingeschaltet. >=1 E 1.1 A 4.0 E 1.3 Netzwerk 2: Der Motor wird durch Betätigen eines der beiden Stoppschalter oder durch Ansprechen des Sensors am Ende des Bandes ausgeschaltet.
Seite 202
Programmierbeispiele B.2 Bitverknüpfungsoperationen Beispiel Absolute und symbolische Programmierung Sie können ein Programm schreiben, das die Richtungsanzeige für das Förderbandsystem aktiviert, indem Sie die verschiedenen Komponenten des Fördersystems mit Hilfe von absoluten Adressen oder Symbolen darstellen. Die von Ihnen gewählten Symbole setzen Sie in der Symboltabelle mit den absoluten Adressen in Beziehung (siehe Online–Hilfe zu STEP 7).
Programmierbeispiele B.3 Zeitoperationen Beispiel Zeitoperationen Beispiel Taktgeber Zur Erzeugung eines sich periodisch wiederholenden Signals können Sie einen Taktgeber oder ein Blinkrelais verwenden. Taktgeber finden sich häufig in Meldesystemen, die das Blinken von Anzeigeleuchten steuern. Wenn Sie S7–300 einsetzen, können Sie eine Taktgeberfunktion implementieren, indem Sie die zeitgesteuerte Verarbeitung in speziellen Organisationsbausteinen verwenden.
Seite 204
Programmierbeispiele B.3 Zeitoperationen Beispiel Netzwerk 5: Mit der Operation MOVE können Sie sich die unterschiedlichen Taktfrequenzen an den Ausgängen A 12.0 bis A 13.7 anzeigen lassen. M001 MOVE ??.? AW12 MW100 Signalabfrage Eine Signalabfrage der Zeit T1 liefert für den negierten Eingang der UND-Verknüpfung (M0.2) im Beispiel Taktzeit folgendes Verknüpfungsergebnis: 250 ms Sobald die Zeit abgelaufen ist, wird die Zeit erneut gestartet.
Programmierbeispiele B.3 Zeitoperationen Beispiel Erzielen einer bestimmten Frequenz Mit den Bits der Merkerbytes MB101 und MB100 können Sie folgende Frequenzen erzielen: MB101, MB100 Frequenz in Hertz Dauer M 101.0 0.5 s (250 ms ein / 250 ms aus) M 101.1 (0.5 s ein / 0.5 s aus) M 101.2 (1 s ein / 1 s aus)
Programmierbeispiele B.3 Zeitoperationen Beispiel Signalzustand des Merkerbits M 101.1 Frequenz = 1/T = 1/1 s = 1 Hz M 101.1 Zeit 250 ms 0.5 s 0.75 s 1 s 1.25 s 1.5 s Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Programmierbeispiele B.4 Zähl- und Vergleichsoperationen Beispiel Zähl- und Vergleichsoperationen Beispiel Lagerbereich mit Zähler und Vergleicher Das folgende Bild zeigt ein System mit zwei Förderbändern und einem temporären Lagerbereich dazwischen. Förderband 1 transportiert die Pakete zum Lagerbereich. Eine Lichtschranke am Ende des Förderbandes 1 neben dem Lagerbereich ermittelt, wie viele Pakete in den Lagerbereich transportiert werden.
Programmierbeispiele B.4 Zähl- und Vergleichsoperationen Beispiel Funktionsplan, der die Anzeigeleuchten aktiviert Netzwerk 1: Zähler Z1 zählt vorwärts bei einer Signalflanke von "0" auf "1" an Eingang ZV und zählt rückwärts bei einer Signalflanke von "0" auf "1" an Eingang ZR. Mit einer Signalflanke von "0" auf "1"...
Programmierbeispiele B.5 Arithmetische Operationen mit Ganzzahlen Beispiel Arithmetische Operationen mit Ganzzahlen Beispiel Berechnen einer Gleichung Das folgende Programmbeispiel zeigt, wie Sie mit drei arithmetischen Operationen für Ganzzahlen das gleiche Ergebnis erzielen, wie die folgende Gleichung: MW4 = ((EW0 + DBW3) x 15) / MW0 Funktionsplan Netzwerk 1: Datenbaustein DB1 öffnen Netzwerk 2: Addiere Eingangswort EW0 und Globaldatenwort DBW3 (der Datenbaustein muß...
Programmierbeispiele B.6 Wortverknüpfungsoperationen Beispiel Wortverknüpfungsoperationen Beispiel Heizen eines Ofens Der Bediener startet das Heizen des Ofens, indem er den Startschalter drückt. Mit den digitalen Vorwählschaltern kann er die Dauer der Heizzeit festlegen. Der Wert, den er setzt, gibt die Sekunden im binär–codierten Dezimalformat (BCD) an. Digitale Vorwählschalter zum Stellen der BCD-Ziffern Ofen...
Programmierbeispiele B.6 Wortverknüpfungsoperationen Beispiel Funktionsplan für das Heizen eines Ofens Netzwerk 1: Wenn die Zeit läuft, dann beginne den Heizvorgang. A 4.0 & Netzwerk 2: Wenn die Zeit läuft, dann beendet die Operation Springe zurück die Bearbeitung hier. & Netzwerk 3: Maskiere die Eingangsbits E 0.4 bis E 0.7 (d. h. setze sie auf "0" zurück). Diese Bits der Vorwählschalter-Eingänge werden nicht verwendet.
Seite 212
Programmierbeispiele B.6 Wortverknüpfungsoperationen Beispiel Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Arbeiten mit FUP EN-/ENO-Mechanismus Die Freigabe (EN) und der Freigabeausgang (ENO) der FUP/KOP-Boxen wird mittels des BIE-Bits realisiert. Wenn EN und ENO beschaltet sind, dann gilt: ENO = EN AND NOT (Fehler der Box) Wenn kein Fehler auftritt (Fehler der Box = 0), ist somit ENO = EN. Der EN-/ENO-Mechanismus wird verwendet für: •...
Seite 214
Arbeiten mit FUP C.1 EN-/ENO-Mechanismus Hinweis zum Erstellen eigener Bausteine Wenn Sie Bausteine schreiben wollen, die Sie in FUP/KOP aufrufen wollen, so müssen Sie dafür sorgen, daß beim Verlassen des Bausteins das BIE gesetzt ist. Das vierte Beispiel zeigt, daß dies nicht automatisch der Fall ist.
Arbeiten mit FUP C.1 EN-/ENO-Mechanismus C.1.1 Addierer mit EN- und mit ENO-Beschaltung Hat der Addierer sowohl EN-Beschaltung als auch ENO-Beschaltung, so werden folgende AWL- Befehle abgesetzt: U E 0.0 // EN-Beschaltung SPBNB _001 // VKE ins BIE schieben und springen wenn VKE == 0 // Box-Parameter // Box-Parameter // Eigentliche Addition...
Arbeiten mit FUP C.1 EN-/ENO-Mechanismus C.1.2 Addierer mit EN- und ohne ENO-Beschaltung Hat der Addierer eine EN-Beschaltung aber keine ENO-Beschaltung, so werden folgende AWL- Befehle abgesetzt: // EN-Beschaltung SPBNB _001 // VKE ins BIE schieben und springen wenn VKE == 0 // Box-Parameter // Box-Parameter // Eigentliche Addition...
Arbeiten mit FUP C.1 EN-/ENO-Mechanismus C.1.3 Addierer ohne EN- und mit ENO-Beschaltung Hat der Addierer keine EN-Beschaltung aber ENO-Beschaltung, so werden folgende AWL-Befehle abgesetzt: // Box-Parameter // Box-Parameter // Eigentliche Addition // Box-Parameter // Fehlererkennung SAVE // Fehler im BIE speichern // Erstabfrage // BIE ins VKE schieben Die Addition wird auf jeden Fall ausgeführt.
Seite 218
Arbeiten mit FUP C.1 EN-/ENO-Mechanismus C.1.4 Addierer ohne EN- und ohne ENO-Beschaltung Hat der Addierer weder EN-Beschaltung noch ENO-Beschaltung, so werden folgende AWL- Befehle abgesetzt: // Box-Parameter // Box-Parameter // Eigentliche Addition // Box-Parameter NOP 0 Die Addition wird ausgeführt. Das VKE und das BIE-Bit bleiben unverändert. Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Arbeiten mit FUP C.2 Parameterübergabe Parameterübergabe Die Parameter eines Bausteins werden als Wert übergeben. Bei Funktionsbausteinen wird innerhalb des aufgerufenen Bausteins eine Kopie des Aktualparameterwertes im Instanz-DB verwendet. Bei Funktionen liegt eine Kopie des Aktualwertes im Lokaldatenstack. Zeiger werden nicht kopiert. Vor dem Aufruf werden die INPUT-Werte in den Instanz-DB bzw auf den L-Stack kopiert.
Seite 220
Arbeiten mit FUP C.2 Parameterübergabe Funktionsplan (FUP) für S7-300/400 Referenzhandbuch, 04/2017, A5E41654587-AA...
Index Auswerten der Bits im Statuswort bei Gleitpunkt- Funktionen 92 # 21 & Baustein aus einer Bibliothek aufrufen 120 BCD_DI 46 & 13 BCD_I 44 BCD-Zahl in Ganzzahl (16 Bit) wandeln 44 < BCD-Zahl in Ganzzahl (32 Bit) wandeln 46 Beispiele zur Programmierung 199 <...
Seite 223
Index Schiebeoperationen Übersicht 131 SD 176 ODER verknüpfen 16 Bit 185 SE 174, 176 ODER verknüpfen 32 Bit 188 SF 180 ODER-Verknüpfung 12 SHL_DW 139 ---oI 18 SHL_W 136 OPN 71 SHR_DI 134 OS 150, 151 SHR_DW 140 OV 148, 149 SHR_I 132 SHR_W 138 SI 172...
Seite 224
Index Übersicht Wortverknüpfungsoperationen 183 Übersicht Zähloperationen 59 Z_RUECK 65 Übersicht Zeitoperationen 157 Z_VORW 63 Umwandlungsoperationen Übersicht 43 ZAEHLER 61 UND verknüpfen 16 Bit 184 Zahl runden 55 UND verknüpfen 32 Bit 187 Zähl- und Vergleichsoperationen Beispiel 207 UND-Verknüpfung 13 Zähleranfangswert setzen 67 UND-vor-ODER-Verknüpfung und ODER-vor-UND- Zähloperationen Übersicht 59 Verknüpfung 14...