Beschreibung
Mit der Anweisung "Rechts schieben" verschieben Sie den Inhalt des Operanden am Eingang IN bitweise nach rechts und fragen das Ergebnis am Ausgang OUT ab. Mit dem Eingang N legen Sie die Anzahl der Bitstellen fest, um die der angegebene Wert verschoben wird.
Wenn der Wert am Eingang N "0" ist, wird der Wert am Eingang IN unverändert in den Operanden am Ausgang OUT kopiert.
Wenn der Wert am Eingang N größer als die Anzahl der verfügbaren Bitstellen ist, wird der Operandenwert am Eingang IN um die verfügbaren Bitstellen nach rechts verschoben.
Die beim Schieben frei werdenden Bitstellen im linken Bereich des Operanden werden mit Nullen aufgefüllt.
Das folgende Bild zeigt, wie der Inhalt eines Operanden vom Datentyp WORD um 6 Bitstellen nach rechts verschoben wird:
Die Beschaltung des Freigabeeingangs "EN" bzw. des Freigabeausgangs "ENO" ist nicht möglich. Somit wird die Anweisung (unabhängig vom Signalzustand am Freigabeeingang "EN") immer ausgeführt.
|
Hinweis S7-300/400: Vom Eingang N wird nur das Low-Byte ausgewertet. S7-1200/1500: Wenn der Wert am Eingang N < 0 ist, wird der Ausgang OUT auf 0 gesetzt. |
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung:
|
Parameter |
Deklaration |
Datentyp |
Beschreibung |
|---|---|---|---|
|
IN |
Input |
WORD |
Wert, der verschoben wird |
|
N |
Input |
INT |
Anzahl der Bitstellen, um die der Wert verschoben wird |
|
OUT |
Output |
WORD |
Ergebnis der Anweisung |
Anweisungsversionen
Für diese Anweisung stehen mehrere Versionen zur Verfügung:
|
Version |
S7-300/400 |
S7-1200 G1 |
S7-1200 G2 |
S7-1500 |
Funktion |
|---|---|---|---|---|---|
|
1.0 |
x |
— |
— |
— |
Bei der Migration von Projekten, die mit S7 Distributed Safety V5.4 SP5 erstellt wurden, wird automatisch die Version 1.0 der Anweisung verwendet. Wenn Sie ein migriertes Sicherheitsprogramm mit STEP 7 Safety Advanced erstmalig übersetzen wollen, empfehlen wir Ihnen, zuvor die Version der Anweisung auf die höchste verfügbare Version umzustellen. |
|
1.1 |
o |
— |
— |
o |
Diese Versionen sind funktional identisch zur Version 1.0. |
|
1.2 |
x |
— |
— |
o |
|
|
1.3 |
x |
o |
— |
o |
|
|
1.4 |
x |
x |
— |
x |
|
|
2.0 |
x |
x1 |
x |
x2 |
|
Beim Anlegen einer neuen F-CPU mit STEP 7 Safety ist automatisch die höchste für die angelegte F-CPU verfügbare Version voreingestellt.
Weitere Informationen zur Verwendung von Anweisungsversionen erhalten Sie in der Hilfe zu STEP 7 unter "Anweisungsversionen verwenden".
Beispiel
Das folgende Beispiel zeigt die Funktionsweise der Anweisung:
Die folgende Tabelle zeigt die Funktionsweise der Anweisung anhand konkreter Operandenwerte:
|
Parameter |
Operand |
Wert |
|---|---|---|
|
IN |
"F_DB_1".TagIn_Value |
|
|
N |
Tag_Number |
3 |
|
OUT |
"F_DB_1".TagOut_Value |
|
Die Anweisung wird, unabhängig vom Signalzustand am Freigabeeingang "EN", immer ausgeführt. Der Inhalt des Operanden ""F_DB_1".TagIn_Value" wird um drei Bitstellen nach rechts verschoben. Das Ergebnis wird am Ausgang ""F_DB_1".TagOut_Value" ausgegeben.