Wago ModBus Zeit (und Datum

Moin zusammen,
gerade verzweifele ich etwas dabei die Zeit von der Wago 750-889 via ModBus an IPS zu übertragen.
So habe ich es versucht:
Wago:
MB_FrischwasserDauerTeichET AT %MD113 : DWORD; (* 12514 *)
MB_FrischwasserDauerTeichET := TIME_TO_DWORD(PRG_KNX_Module.VerzoegernTeichZulaufAus.T1.ET);

IPS:
image

Als Profil habe ich UnixTimestamp eingestellt.

Aber irgendwie kommt da nur wirres Zeug rüber und die Zeit springt hin und her.

Vielen Dank für eure Unterstützung.

Als erstes: LSB/MSB vertauschen im Modbus Splitter setzen. Wenn das nichts nützt:

Der Wert in der SPS ist ein Timestamp? ‚Nachkommastellen‘ (also Sekunden oder sogar 10tel Sekunden) sind auch korrekt?

Stell man die automatische Formatierung (Symcon Profil) ab und schaue dir den Rohwert an.

Hier kannst du auch mal die Rohwerte (Anzeige der Daten im Debug der Instanz?) eintragen und dir somit die Reihenfolge (LSB/MSB im Splitter) ansehen.

Moin und Danke,
Was ist LSB/MSB?
So sehen die Werte in der SPS aus:

Und das ist das, was in IPS davon ankommt:

Der Wert an sich wird also richtig übertragen, nur zurückgerechnet auf die Zeit passt halt nicht.

Sieht doch gut aus. Dann ist das LSB/MSB Problem auch nicht relevant dafür.

Du benötigst jetzt ein Script, dass dir aus dem TOD die Uhrzeit berechnet. Es handelt sich dabei um die Millisekunden seit Tagesbeginn.

Hinrichtung:

TOD = Stunden*3600.000 + Minuten*60.000 + Sekunden*1000 + Millisekunden

Ahh, OK.
habe ich dann so gemacht. Scheint zu funktionieren:

$TODValue = GetValue(44086); // Lesen des DWORD
SetValueString(19500, floor($TODValue/3600000).":".floor(fmod($TODValue, 3600000)/60000));

Dankeschön für die Hilfe.