Laufzeiten in Minuten:Sekunden darstellen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Heavy-Dee
Beiträge: 139
Registriert: 18. Jan 2018 16:38

Laufzeiten in Minuten:Sekunden darstellen

Beitrag von Heavy-Dee »

Die Laufzeiten für eine Pumpe werden in Millisekunden erfasst, durch 60000 geteilt und in eine DB geschrieben. ( z.B "17.75" ~ 17min u. 45sek)
Wenn ich diese nun auf der Sitemap ausgeben möchte wird mir ja alles so ausgegeben.
Wie kann ich es erreichen das mir diese Werte im Uhrzeitformat [mm:ss] angezeigt werden?
Ist für die Einzellaufzeiten nicht so wichtig, mir geht es da mehr um die Gesamtlaufzeit über das Jahr gesehen.

Ich weiß das ich den DB Wert mit 60 wieder mutiplizieren und durch 86400 dividieren muss.
17.75*60/86400 = 0,01232639 => 17:45 (bei Formatierung [mm:ss])
Das funktioniert aber nur bis 24 Std :cry:
openHab2 (v. 2.5.2) Docker auf Synology DS920+
openHab4 (v. 4.1.0) Docker auf Synology DS920+ :!:

Benutzeravatar
udo1toni
Beiträge: 13948
Registriert: 11. Apr 2018 18:05
Answers: 222
Wohnort: Darmstadt

Re: Laufzeiten in Minuten:Sekunden darstellen

Beitrag von udo1toni »

Normalerweise rechnest Du dabei mit Rest.

Code: Alles auswählen

Tage = Integer(Minutenwert/60/24)
Stunden = Integer((Minutenwert - Tage*24*60)/60)
Minuten = Integer(Minutenwert - Tage*24*60 - Stunden*60)
Sekunden = Integer(Minutenwert/60) Modulo 60
Das ist natürlich nur Quasi-Code :)
openHAB4.1.2 stable in einem Debian-Container (bookworm) (Proxmox 8.1.5, LXC), mit openHABian eingerichtet

Antworten