Betriebsstundenzähler
-
- Beiträge: 8
- Registriert: 2. Dez 2019 12:09
Re: Betriebsstundenzähler
die beiden Geräte haben einen sehr konstanten Verbrauch. Die eine Pumpe liegt immer so um die 80W und die andere bei 500W. Nur im Standby liegt der Verbrauch bei 1 - 2 Watt.
- udo1toni
- Beiträge: 15265
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Betriebsstundenzähler
Ja, dann ist das natürlich kein Thema
Aber wie gesagt, ich würde trotzdem eine gewisse Hysterese einbauen.

openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
-
- Beiträge: 175
- Registriert: 13. Dez 2018 17:42
Re: Betriebsstundenzähler
Der von Udo gepostete Quellcode funktioniert soweit.
Sobald ich allerdings einen zweiten Betriebsstundenzähler konfiguriere funktioniert allerdings nichts mehr
In einem Beitrag hast du geschrieben...
Wo könnte das Problem liegen?
Sobald ich allerdings einen zweiten Betriebsstundenzähler konfiguriere funktioniert allerdings nichts mehr
In einem Beitrag hast du geschrieben...
Eine zweite globale Variable habe ich konfiguriert...das Konzept ansonsten aber nicht verändert.Sollte man mehrere Zähler benötigen, so müssen auch mehrere Variablen für den Startzeitpunkt definiert werden. Dann sollte man das Konzept überdenken.
Wo könnte das Problem liegen?
-
- Beiträge: 175
- Registriert: 13. Dez 2018 17:42
Re: Betriebsstundenzähler
Mir ist nun aufgefallen, dass selbst das parsen der Rule extrem lange dauert, d.h. bis "Refreshing betriebsstunden.rules" im LogViewer angezeigt wird.
Ich habe die Regel dann stück für Stück auskommentiert....das Problem tritt bei der folgenden Zeile auf.
Ich habe die Regel dann stück für Stück auskommentiert....das Problem tritt bei der folgenden Zeile auf.
Code: Alles auswählen
iSum = iSum + ((now.millis - dtStart_Klima + 500) / 1000).intValue
- udo1toni
- Beiträge: 15265
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Betriebsstundenzähler
Dukönntest probieren, ob es mit int statt Integer als Variablentyp schneller geht (oder alternativ mit Number statt Integer). Eigentlich ist die Rechnung eher trivial...
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
-
- Beiträge: 175
- Registriert: 13. Dez 2018 17:42
Re: Betriebsstundenzähler
Mit der Definition der Variable "iSum" als Number funktioniert es nun problemlos.
Wie immer herzlichen Dank für Deine Unterstützung!
Der erste Test mit 5 verschiedenen Betriebsstundenzählern funktionierte!var Number iSum = 0
Wie immer herzlichen Dank für Deine Unterstützung!
-
- Beiträge: 21
- Registriert: 15. Dez 2020 10:03
Re: Betriebsstundenzähler
Hallo, das ist genau das was ich gesucht habe danke dafür. Meine Frage ist jetzt in OH3 muss man ja für die Zeit andere Befehle nehmen stimmt es das man für now.millis jetzt durch now.toInstant().toEpochMilli() ersetzen muss.
Wäre das so richtig?
Ich bekomme nämlich keinen Wert in "WaschBetriebstundenzaehler" angezeigt.
Ich habe auch diese Zeile wie im beschrieben mal so
und mal so
probiert
Danke im voraus
Code: Alles auswählen
//
globale Variablen zu Beginn der Datei definieren!
var long dtStart = now.toInstant().toEpochMilli()
var Number iSum = 0
rule "Betriebsdauer"
when
Item WaschmaschienPower changed
then
if (newState == ON){
dtStart = now.toInstant().toEpochMilli()
} else if (newState == OFF) {
var Integer iSum = 0
if (WaschBetriebstundenzaehler.state instanceof Number)
iSum = WaschBetriebstundenzaehler.state as Number
else
logInfo("oc.myswitch", "Betriebsdauer für MySwitch wird initialisiert!")
iSum = iSum + ((now.toInstant().toEpochMilli() - dtStart + 500) / 1000).intValue
WaschBetriebstundenzaehler.postUpdate(iSum)
}
end
Ich bekomme nämlich keinen Wert in "WaschBetriebstundenzaehler" angezeigt.
Ich habe auch diese Zeile wie im beschrieben mal so
Code: Alles auswählen
iSum = WaschBetriebstundenzaehler.state as Number
Code: Alles auswählen
iSum = (WaschBetriebstundenzaehler.state as Number).intValue
Danke im voraus