TIA Writ Local Time (S7-1500)

TMaroni

Level-2
Beiträge
129
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen, hat jemand schon diesen WR_LOC_T eingesetzt? Wie verwendet Ihr den Eingangsparameter DST? Muss man die Sommerzeit ausrechnen und dann den DST auf True setzen? Ich meinte man könne es in der Hardwarekonfiguration einstellen! Gruss TMaroni
 
Habe mich gestern damit beschäftigt, Ist eigentlich gleich wie bei der S7-300 SFC0 und SFC1. Baustein hat halt neuen Namen. Winter und Sommerzeit Umstellung erfolgt bei den neuen 1500er CPU automatisch.
 
Für was ist der Eingangsparameter DST gedacht? Muss es auf False stehen (inaktiv), da ja die Sommer- und Winterzeit in der Hardwarekonfiguration eingestellt wird?
Gruss
TMaroni
 
Der Parameter DST ist die Zeit auf welche die Systemzeit eingestellt ist. klicke auf den Baustein und drücke F1 und du findest die Hilfe zu dem Baustein
Hier steht in einer Variable von TYP Date and Time die aktuelle Systemzeit der CPU
Diese am besten in einem DB anlegen und mit DST Verknüpfen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Das heisst, wenn ich die Zeit einstellen möchte und ist Winterzeit muss der Eingang auf False sein und wenn es Sommerzeit ist muss der Eingang True sein. Das ist richtig ein Blödsinn, da muss ich im Touchpanel ein Schalter programmieren Sommer-/Winterzeit. Man sollte ja nur die Lokale Datum und Uhrzeit eingeben und dann mit einem Button CPU Zeit setzen. Daraus wird die lokale Zeit eingestellt. Die Sommer- und Winterzeitumstellung sollte dann automatisch durch die SPS erfolgen.

Wie machst du das bei deine Steuerungen mit Eingangsparameter DST?

Gruss
TMaroni
 
Das spielt meistens keine Rolle. Aber wenn man den WR_LOC_T ausgerechnet in der doppelten Stunde beim Übergang zur Sommerzeit aufruft, dann muss der Wert richtig angegeben werden. Hier die Spezifikation aus der TIA-Portal Online Hilfe:
Daylight Saving Time
Wird nur während der "doppelten Stunde"
bei der Umschaltung zur Sommerzeit
ausgewertet.
● TRUE = Sommerzeit (erste Stunde)
● FALSE = Winterzeit (zweite Stunde)
 
Hallo Mediator,
Wenn ich beim Übergang zur Sommerzeit (letzten Sonntag im März um 2:00 Uhr Winterzeit=Normalzeit) in diesem Zeitpunkt den WR_LOC_T aufrufe, dann muss den DST auf True gesetzt werden. Wenn ich dann wieder um 3:00 Uhr (Sommerzeit) den WR_LOC_T aufrufe, muss ich den DST auf False setzen?
Ich hoffe, dass es richtig verstanden habe!

Wie programmierst du den Eingangsparameter DST?

(Die S7-1500 und das TIA-Portal ist für mich alles NEU!!!)

Gruss
TMaroni
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Mediator,
Wenn ich beim Übergang zur Sommerzeit (letzten Sonntag im März um 2:00 Uhr Winterzeit=Normalzeit) in diesem Zeitpunkt den WR_LOC_T aufrufe, dann muss den DST auf True gesetzt werden. Wenn ich dann wieder um 3:00 Uhr (Sommerzeit) den WR_LOC_T aufrufe, muss ich den DST auf False setzen?
Ich hoffe, dass es richtig verstanden habe!

Wie programmierst du den Eingangsparameter DST?

(Die S7-1500 und das TIA-Portal ist für mich alles NEU!!!)

Gruss
TMaroni
Hallo TMaroni,
gut dass du noch mal nachgefragt hast. Die Beschreibung ist irreführend und ich habs auch noch abgeschrieben, sorry. Das Problem der unklaren Zeit gibt es natürlich beim Übergang von Sommerzeit nach Winterzeit, denn da gibt es die Uhzeiten zwischen 2:00 und 2:59 zweimal, zunächst in der Sommerzeit (DST = true) und danach in der Winterzeit (DST = false).
Ohne deine zusätzliche Angabe welche der beiden gemeint ist wüsste die PLC nicht, was sie jetzt einstellen soll. Bei allen anderen Zeiten ist das eindeutig, deshalb spielt DST da keine Rolle.
Grüsse
 
Hallo Mediator,
Danke für deine Hilfe, der DST ist true, "NUR" wenn gerade im letzten Sonntag im März um 2:00 Uhr Winterzeit=Normalzeit auf Sommerzeit wechselt (nur für diese Minute)! Danach im Verlauf des Jahres kann DST false sein.
Gruss
TMaroni
 
Hallo Mediator,
Danke für deine Hilfe, der DST ist true, "NUR" wenn gerade im letzten Sonntag im März um 2:00 Uhr Winterzeit=Normalzeit auf Sommerzeit wechselt (nur für diese Minute)! Danach im Verlauf des Jahres kann DST false sein.
Gruss
TMaroni

Nein, das ist leider noch immer nicht korrekt.

Hier mal ein konkretes Beispiel: am 27. Oktober 2013 wird die Uhr um eine Stunde zurückgestellt und damit von Sommer- auf Winterzeit (bzw. Normalzeit). Die Zeitumstellung findet nachts um 3:00 Uhr statt. Wenn du an dem Tag eine Zeit zwischen 2:00 und 2:59 einstellen willst, dann ist erst mal unklar, ob du eine Zeit vor der Umstellung oder eine Zeit nach der Umstellung einstellen willst.

Willst du also eine Zeit 27. Oktober 2013 zwischen 2:00 und 2:59 einstellen, dann musst du DST = true setzen, wenn diese Zeit noch in der ersten Stunde (Sommerzeit) liegen soll, oder eben false , wenn sie in der zweiten Stunde (Winterzeit) liegen soll.

Für den Rest des Jahres spielt DST keine Rolle, weil alle Zeiten eindeutig sind.

Der Vollständigkeit halber: Beim Übergang von der Winterzeit zur Sommerzeit gibt's ein anderes Problem: dort gibt es die Zeit zwischen 2:00 und 2:59 überhaupt nicht, da am 2:00 auf 3:00 umgestellt wird. Versuchst du so eine Zeit einzustellen, dann kommt der Fehlercode 8089 - Zeitwert existiert nicht (abgelaufene Stunde bei der Umschaltung zur Sommerzeit).
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Damit die S7-1500 mit dem Touchpanel-PC synchronisiert wird, bekomme ich die Lokale Zeit jede Sekunde vom Touchpanel-PC (Master). Es wird kein TIA WINCC Visualisierungsprogramm verwendet. Bei jeder Sekunde wird das WR_LOC_T aufgerufen.
Wie kann ich es so programmieren damit das DST am richtigen Zeitpunkt True oder False ist. Eine Methode wäre, während im Letzten Sonntag im Oktober von 2:00 bis 3:59 den Aufruf gesperrt ist, damit keine falsche Angaben gemacht werden.
Hast eine andere Lösung?

Gruss
TMaroni
 
Das Setzen zwischen 2:00 und 2:59 sperren wäre in der Tat eine Lösung.

Eine einfachere Alternative könnte sein, den Uhrzeitabgleich mit UTC zu machen, statt mit Lokalzeit. Dann hättest du das ganze Problem nicht. Die UTC-Zeit stellt man mit WR_SYS_T (System - Uhrzeit stellen) ein.

D.h., du müsstest im Touchpanel - PC die UTC-Zeit ermitteln (lassen) und diese jede Sekunde an die CPU übertragen und dort per WR_SYS_T setzen. Die Lokalzeit stimmt dann automatisch, vorausgesetzt du hast die Zeitzone richtig eingestellt.
 
P.S.: Mir ist noch eine weitere Alternative eingefallen: Synchronisation der Uhrzeit über NTP. Voraussetzung ist natürlich, dass du einen NTP Server hast, z.B. dein Touchpanel - PC könnte diese Rolle spielen.
Hier eine kurze Beschreibung aus STEP 7 Professional V12.0 Systemhandbuch, 01/2013, Seite 1594:
NTP-Verfahren (NTP: Network Time Protocol)
Beim NTP-Verfahren sendet das Gerät in regelmäßigen Zeitabständen Uhrzeitanfragen (im
Client-Modus) an NTP-Server im Subnetz (LAN). Anhand der Anworten der Server wird die
zuverlässigste und genaueste Uhrzeit ermittelt und die Uhrzeit der Station synchronisiert.
Der Vorteil dieses Verfahrens liegt in der möglichen Uhrzeitsynchronisation über
Subnetzgrenzen hinweg.
Es sind die IP-Adressen von bis zu vier NTP-Servern zu projektieren. Das
Aktualisierungsintervall definiert den Zeitabstand der Uhrzeitanfragen (in Sekunden). Der
Wertebereich des Intervalls liegt zwischen 10 Sekunden und einem Tag.
Im NTP-Verfahren wird generell UTC (Universal Time Coordinated) übertragen; dies entspricht
GMT (Greenwich Mean Time).
Parameter der Uhrzeitsynchronisation im NTP-Verfahren
Über die Parameter der Uhr nehmen Sie folgende Einstellungen vor:​
  • Uhrzeitsynchronisation über NTP-Server aktivieren
Aktivieren Sie das Optionskästchen, wenn die interne Uhr mit dem NTPSynchronisationsverfahren
synchronisiert werden soll.​
  • Server 1-4
Es sind die IP-Adressen von bis zu vier NTP-Servern zu projektieren.​
  • Aktualisierungsintervall
Das Aktualisierungsintervall definiert den Zeitabstand der Uhrzeitanfragen.
 
Wenn ich das eingerichtet habe, was muss ich für eine IP-Adresse im S7-1500 eintragen? Ist das die IP-Adresse vom Touchpanel-PC?

Gruss
TMaroni
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Im NTP-Verfahren wird generell UTC (Universal Time Coordinated) übertragen; dies entspricht GMT (Greenwich Mean Time).
Ich lasse meine S7-300 generell in Winterzeit (Basetime) laufen, da gibt es die Probleme der Umschaltstunden nicht. Für die Zeitsynchronisation der "dummen" Uhr der Siemens-Panele benutze ich einen eigenen Baustein BT_LT_3 (der ist hier im Forum zu finden).

Mit S7-1500 habe ich keine Erfahrung - möglicherweise funktioniert die Sommerzeit-Umschaltung der CPU-Uhr bei der NTP-Synchronisation nicht oder falsch ...

Harald
 
Ich lasse meine S7-300 generell in Winterzeit (Basetime) laufen, da gibt es die Probleme der Umschaltstunden nicht. Für die Zeitsynchronisation der "dummen" Uhr der Siemens-Panele benutze ich einen eigenen Baustein BT_LT_3 (der ist hier im Forum zu finden).

Mit S7-1500 habe ich keine Erfahrung - möglicherweise funktioniert die Sommerzeit-Umschaltung der CPU-Uhr bei der NTP-Synchronisation nicht oder falsch ...

Harald

NTP synchronisiert die Systemzeit und die kennt keine Sommer-/Winterzeit und auch keine Zeitzone. Für letzteres gibt es die Lokalzeit, die von der Systemzeit entsprechend der konfigurierten Zeitzone abgeleitet wird. NTP und Lokalzeit haben also nicht direkt etwas miteinander zu tun.
 
Zurück
Oben