-> Hier kostenlos registrieren
Hallo zusammen,
ich habe folgendes Problem. Ich habe hier eine Anlage, deren CPU wird mit einem Server in Schweden auf die UTC-0 synchronisiert. Da die Anlage aber in Singapur steht, muss auf diese Zeit 8h draufgerechnet werden UTC+8. Da die OPs per Bereichszeiger mit der CPU-Zeit verknüpft werden, sind bei allen Meldungen die Zeiten falsch.
1. Kann man bei der Synchronisation die Systemzeit immer jeweil um 8 h verschieben? Da die Synchronisierung ja zyklisch abläuft, reicht es nicht, die Zeit einmalig anzugleichen. Falls das nicht geht:
2. kann man dann zumindest für den Datensatz, auf den der OP-Bereichszeiger zeigt, um 8 Stunden verschieben lassen?
Ich hab dazu schon folgenden Code (war schon so programmiert, bevor ich an die Anlage kam)
Die OPs greifen per Bereichszeiger auf DB909.DBW90 zu.
Ich steh jetzt grad ein bisschen auf dem Schlauch, aber wie könnte ich hier die 8 Std addieren?
CPU 319F-3 PN/DP
Simatic Manager V5.4 SP4
WinCC flexible 2008
Danke schonmal für mögliche Hinweise.
Gruß
Hannes
ich habe folgendes Problem. Ich habe hier eine Anlage, deren CPU wird mit einem Server in Schweden auf die UTC-0 synchronisiert. Da die Anlage aber in Singapur steht, muss auf diese Zeit 8h draufgerechnet werden UTC+8. Da die OPs per Bereichszeiger mit der CPU-Zeit verknüpft werden, sind bei allen Meldungen die Zeiten falsch.
1. Kann man bei der Synchronisation die Systemzeit immer jeweil um 8 h verschieben? Da die Synchronisierung ja zyklisch abläuft, reicht es nicht, die Zeit einmalig anzugleichen. Falls das nicht geht:
2. kann man dann zumindest für den Datensatz, auf den der OP-Bereichszeiger zeigt, um 8 Stunden verschieben lassen?
Ich hab dazu schon folgenden Code (war schon so programmiert, bevor ich an die Anlage kam)
Code:
Im OB1: NW1
L #OB1_PREV_CYCLE
T "DB_System_time".PLC_cycle_time
L LB 12 // LB12 : year
T DB1.DBB 0
L LB 13 // LB13 : month
T DB1.DBB 1
L LB 14 // LB14 : day
T DB1.DBB 2
L LB 15 // LB15 : hour
T DB1.DBB 3
L LB 16 // LB16 : minutes
T DB1.DBB 4
L LB 17 // LB17 : seconds
T DB1.DBB 5
L LB 18 // LB18 : 10/second
T DB1.DBB 6
L LB 19 // LB19 : 100/second
T DB1.DBB 7
Code:
Im OB1: NW2
L DB1.DBB 0 // DBB0 : year
T DB909.DBB 90
L DB1.DBB 1 // DBB1 : month
T DB909.DBB 91
L DB1.DBB 2 // DBB2 : day
T DB909.DBB 92
L DB1.DBB 3 // DBB3 : hour
T DB909.DBB 93
L DB1.DBB 4 // DBB4 : minutes
T DB909.DBB 94
L DB1.DBB 5 // DBB5 : seconds
T DB909.DBB 95
L DB1.DBB 6 // DBB6 : 10/second
T DB909.DBB 96
L DB1.DBB 7 // DBB7 : 100/second
T DB909.DBB 97
Die OPs greifen per Bereichszeiger auf DB909.DBW90 zu.
Ich steh jetzt grad ein bisschen auf dem Schlauch, aber wie könnte ich hier die 8 Std addieren?
CPU 319F-3 PN/DP
Simatic Manager V5.4 SP4
WinCC flexible 2008
Danke schonmal für mögliche Hinweise.
Gruß
Hannes