LT_BT: Basiszeit aus Lokalzeit berechnen (S7-300, S7-400) - STEP 7

Erweiterte Anweisungen (S7-300, S7-400)

ft:publication_title
Erweiterte Anweisungen (S7-300, S7-400)
Product
STEP 7
Version
V20
Publication date
11/2024
Language
de-DE
LT_BT: Basiszeit aus Lokalzeit berechnen

Beschreibung

Die Anweisung errechnet die Basiszeit zu der Lokalzeit, die am Eingang vorgegeben wurde.

Die am Eingang LT eingegebene Lokalzeit wird mithilfe der Daten, die in einem Datenbaustein (DB) hinterlegt wurden, in die Basiszeit umgerechnet und am Ausgang BT ausgegeben.

Der Datenbaustein (DB) enthält die Anzahl der 30 Minuten-Einheiten, durch die sich Basis- und Lokalzeit unterscheiden sowie die Differenz zwischen Sommer- und Winterzeit, ebenfalls in Einheiten von 30 Minuten. Wenn sich bei der Berechnung ein Datumsüberlauf ergibt, wird dies durch einen speziellen Rückgabewert gekennzeichnet.

Besonderheiten beim Wechsel zwischen Sommer- und Winterzeit:

  • Bei der Umschaltung von Winter- nach Sommerzeit wird die Lokalzeit um eine Stunde vorgestellt. Das bedeutet, dass die dazwischen liegende Stunde nicht durchlaufen wird.

    Für einen Zeitpunkt LT innerhalb dieser Stunde wird von der "LT_BT" in Sommerzeit "gedacht". Dies wird mit dem Rückgabewert 4 bzw. 5 gemeldet.

  • Bei der Umschaltung von Sommer- nach Winterzeit wird die Lokalzeit um eine Stunde zurückgestellt. Das bedeutet, dass diese eine Stunde zweimal durchlaufen wird ("doppelte Stunde"). (Für ME(S)Z gilt dafür die Bezeichnung 2A und 2B).

    Für einen Zeitpunkt LT innerhalb dieser Stunde ist also eine eindeutige Abbildung auf eine Basiszeit nicht möglich.

    "LT_BT" erhält als Eingangsparameter eine LT und muss vor der Umrechnung in BT entscheiden, ob der Wert im Sommer oder im Winter liegt. Für den Fall, dass die LT innerhalb der doppelten Stunde liegt, wird die LT als Winterzeit interpretiert. Dies wird mit dem Rückgabewert 2 bzw. 3 gemeldet.

Die Anweisung "LT_BT" kann in OBs jeder Prioritätsklasse aufgerufen werden.

Parameter

Die folgende Tabelle zeigt die Parameter der Anweisung "LT_BT":

Parameter

Deklaration

Datentyp

Beschreibung

LT

Input

DATE_AND_TIME

Lokalzeit

WS_DAT

Input

BLOCK_DB

Information zur Zeitzone sowie zur Sommer-/Winterzeit ‑Umschaltung (Regel-DB);

Verwenden Sie am Parameter WS_DAT einen Zeiger auf einen Datenbaustein vom Typ "WS_RULES".

RET_VAL

Return

INT

Fehlercode

BT

Output

DATE_AND_TIME

Basiszeit

Weitere Informationen zu den gültigen Datentypen finden Sie unter "Übersicht über die gültigen Datentypen".

Hinweis

Parameter vom Datentyp BLOCK_DB können nur an FB-Aufrufe weitergereicht werden, nicht aber an FC-Aufrufe.

Parameter RET_VAL und BT

Die folgende Tabelle zeigt die Ausgabewerte von "LT_BT":

RET_VAL

BT

Beschreibung

0

Basiszeit

Anweisung fehlerfrei gelaufen

1

Basiszeit

Kein Fehler, aber Datumssprung

2

Basiszeit

Die LT am Eingang liegt innerhalb der "doppelten" Stunde.

3

Basiszeit

Wie 2, zusätzlich Datumssprung

4

Basiszeit

Die LT am Eingang liegt innerhalb der "verbotenen" Stunde.

5

Basiszeit

Wie 4, zusätzlich Datumssprung

8082

DT#90-01-01-0:0:0

Ungültige Daten im Regel-Datenbaustein