# Uhrzeit und Datum in Codesys



## Bakr (30 Juni 2016)

Hallo

ich möchte gern die Uhrzeit und das Datum des Systems bei der Visualisierung von Codesys zeigen! ich habe die Bibliothek SyslibRTC.Lib geguckt und auch die Funktion sysRTCGettime auspropiert und auch die Variable Dummy auf TRUE GESETZT: Trotzdem sehe ich in der Visualisierung kommisches Datum und kommische Uhrzeit 1970.1.1 00:00 !!!!!!

könnte jemand mir dabei helfen, die dieses Problem vorher erlebt hat?


----------



## Sagas (30 Juni 2016)

Hallo,

das ist etwas zu wenig an Info. sysRTCGettime gibt meines Wissens ein DWORD zurück, vergangene Zeit seit 1.1.1970 00:00. Wie hast du diesen Wert zerlegt/Anzeigen lassen? Es wäre auch gut zu wissen welche Steuerung du einsetzt. 

Grüße


----------



## Bakr (30 Juni 2016)

das Format des Wertes ist DATE_AND_TIME

Den Ausgang der Funktion, der mit dem Format DATE_AND_TIME ist, habe ich in eine Textausgabe in der Visualisierung angelegt.

ich setze Codesys ABB ein! aber was ich mache ist nur eine Simulation bei der Visualisierung in codesys, es gibt kein realistische Hardware.


----------



## Sagas (30 Juni 2016)

Hallo nochmal,

in einer Simulation wirst du keinen sinnvollen Wert von dieser Funktion zurück bekommen, es bleibt bei Null, und das ist in diesem Fall der 1.1.1970.

Es gibt auch Zeitformat für Texte diese können in der Visu die jeweilige Systemzeit darstellen

Beispiele: 
%t%a %b  %d.%m.%y %H:%M:%S 
-> Ausgabe im Online Modus: Wed Aug 28.08.02  16:32:45

aus der Hilfe-Datei F1 kopiert.

Das könnte auch innerhalb der Simulation funktionieren.

Grüße


----------



## Bakr (30 Juni 2016)

Danke für deine Hilfe und diese Information, aber was das code ist das ich in codesys und visualisierung schreiben kann um ZB 28.08.02 16:32:45 in der Visualisierung Simulation anzuzeigen

Grüße


----------



## Sagas (30 Juni 2016)

Hallo, 

ich versteh deine Frage nicht ganz. Was genau hast du vor/willst du erreichen?

Eine reine Zeitanzeige in der Visualisierung oder einen Wert im Programm mit dem z.B.: eine Zeitschaltfunktion umsetzen kannst?

Gruß,
Sagas


----------



## Bakr (30 Juni 2016)

Hallo,

beide wäre besser.. 

Grüße


----------



## Sagas (30 Juni 2016)

Okay, also nochmal sortiert:

mit einem Rechteck in der Visualiesierung mit dem Inhalt "%t%d.%m.%y %H:%M:%S " zeigt dir die Visu, auch in der Simulation, Datum und Uhrzeit an, das ist NICHT die Zeit in der SPS.

Mit der sysRTCGettime Funktion bekommst du die Zeit seit dem 1.1.1970 als DT Format, das geht nicht in der Simulation. Diesen Wert kannst du dann aber immer weiter zerlegen um Datum, Stunden , Minuten usw. in zb. einem Byte zu speichern und später für Vergleiche in der Logik zu nutzen.

Zur Anzeige solltest du es als String wandeln:


```
dtDate:=SysRTCGetTime(dummy:=True);
DatumString:=DATE_TO_STRING(DT_TO_DATE(dtDate));
```

sollte z.b. funktionieren. 

Gruß Sagas


----------



## Bakr (30 Juni 2016)

ich hab umgesetzt, was du mir geschrieben hast, aber bei der Visualisierung ist der Messwert immer so: t.66675520.m.y H:M:

ich verstehe, was das bedeutet!!!!


----------



## Sagas (30 Juni 2016)

Hallo,

vielleicht ist es einfacher wenn du kurz einen Screenshot machts und zeigst wie genau es aussieht und was im Programm/der Visu steht.

Um evtl. der Verwirrung vorzubeugen: für die Zeile %t%d.%m.%y %H:%M:%S wird KEINE Variable unter "Textvariable" hinterlegt. Bei *Text *neben* Inhalt *findest du eine Schaltfläch mit "*?*" dort werden dir nochmal alle möglichen Formatierungen aufgelistet.


----------



## Bakr (30 Juni 2016)

Hallo Sagas,

das war mein Fehler! aber dein Code funktioniert ganz richtig!

Vielen Dank!

Grüße


----------

