SHR: Rechts schieben (STEP 7 Safety V20) - Safety

Anweisungen STEP 7 Safety V20

ft:publication_title
Anweisungen STEP 7 Safety V20
Product
Safety
Version
V20
Publication date
10/2024
Language
de-DE
SHR: Rechts schieben (STEP 7 Safety V20)

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

0011 1111 1010 1111

N

Tag_Number

3

OUT

"F_DB_1".TagOut_Value

0000 0111 1111 0101

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.