Cuxd timer Minuten in Stunden und Minuten umwandeln

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

Lichtbringer
Beiträge: 126
Registriert: 20.11.2013, 17:09
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Lichtbringer » 29.12.2015, 15:22

Ich möchte die Minuten des timers für die tts Sprachausgabe in Stunden und Minuten umwandeln.
Wie geht das am einfachsten?

Danke und Gruß

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von alchy » 29.12.2015, 16:30

Was brauchst du denn alles?

Code: Alles auswählen

integer timer = 1234; ! Timerzeit in Minuten
integer iMinuten = timer % 60;
integer iStunden = (timer-iMinuten) / 60;
WriteLine(timer #" Minuten sind " #iStunden #" Stunden und " #iMinuten #" Minuten"); 
Reicht das?
Müsste so funktionieren, teste mal ?

Alchy
unterwegs

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Lichtbringer
Beiträge: 126
Registriert: 20.11.2013, 17:09
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Lichtbringer » 29.12.2015, 16:40

Ob das reicht?
Das ist perfekt! Genau das habe ich gesucht.

Danke Dir alchy für deine schnelle Hilfe. Einen guten Rutsch!

Gesendet von meinem SM-N910F mit Tapatalk

alchy
Beiträge: 10752
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 672 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von alchy » 29.12.2015, 16:54

Kann ja nicht wissen, ob der stubs reicht, oder du was Komplettes benötigst.
Schön das es dir hilft und auch noch funktioniert, oder umgedreht :mrgreen:

Alchy
unterwegs

Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.

© Sandra Pulsfort (*1974)

Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.

Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.

Lichtbringer
Beiträge: 126
Registriert: 20.11.2013, 17:09
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Lichtbringer » 29.12.2015, 17:03

Einziges Problem ist noch das weglassen der Nachkommastellen. Mit .ToString(0) rechnet er nicht mehr.
Cuxd gibt aber die Minuten mit sechs Stellen nach dem Komma raus.

Code: Alles auswählen

object timer = dom.GetObject("CUxD.CUX9001002:1.TIME_ON").Value();
integer iMinuten = timer % 60;
integer iStunden = (timer-iMinuten) / 60;
WriteLine(timer #" Minuten sind " #iStunden #" Stunden und " #iMinuten #" Minuten"); 
Ergibt:

Code: Alles auswählen

114.520000 Minuten sind 1.008667 Stunden und 54.000000 Minuten
Mit .ToString(0) sieht das EWrgebnis so aus:

Code: Alles auswählen

115 Minuten sind 115 Stunden und 115 Minuten

paul53
Beiträge: 2554
Registriert: 26.04.2012, 20:42
Wohnort: Berlin
Danksagung erhalten: 15 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von paul53 » 29.12.2015, 18:12

Mit Strings kann nicht gerechnet werden. Benötigt werden Integer-Werte:

Code: Alles auswählen

integer timer = dom.GetObject("CUxD.CUX9001002:1.TIME_ON").Value().ToString(0).ToInteger();
Versionen: HM-CC-TC 2.1, HM-LC-Sw1 1.9, HM-CC-RT-DN 1.1, HM-MOD-RPI-PCB 1.2.1 (keine CCU)

Lichtbringer
Beiträge: 126
Registriert: 20.11.2013, 17:09
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Lichtbringer » 29.12.2015, 18:16

Erstklassig!

Funktioniert - danke paul53

Lichtbringer
Beiträge: 126
Registriert: 20.11.2013, 17:09
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Lichtbringer » 02.01.2016, 19:19

Der Vollständigkeit halber würde ich gerne noch wissen wie man die Stunden und Minuten in eine Dezimalzahl konvertiert.
"Sie waren eins Stunden und dreizig Minuten abwesend" klingt irgendwie merkwürdig. Ich denke ein " Sie waren eins Komma fünf Stunden abwesend" klingt da irgendwie besser.
Gibt es da etwas?

Benutzeravatar
Baxxy
Beiträge: 10646
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 596 Mal
Danksagung erhalten: 2180 Mal

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von Baxxy » 20.02.2019, 10:09

Hallo zusammen,
das oben angeführte Script funktioniert super. Aber ist es möglich die Laufzeit in Minuten auch noch in Tagen umzurechnen? Das es z.B. so aussieht?

Code: Alles auswählen

2830 Minuten sind 1 Tag(e) 23 Stunden und 10 Minuten
Das würde meinen monatlichen Email-Bericht über diverse Laufzeiten etwas übersichtlicher machen.

Beste Grüsse
Baxxy

Benutzeravatar
uwe111
Beiträge: 4806
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 239 Mal
Kontaktdaten:

Re: Cuxd timer Minuten in Stunden und Minuten umwandeln

Beitrag von uwe111 » 20.02.2019, 10:48

Baxxy hat geschrieben:
20.02.2019, 10:09
Aber ist es möglich die Laufzeit in Minuten auch noch in Tagen umzurechnen?
Um die Tage zu erhalten musst Du die Stunden durch 24 bzw. die Minuten durch 1440 teilen.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

Antworten

Zurück zu „CUxD“