NEWS
[Solved]Wie bringe ich den Füllmengen Wert des HM Füllstandsmesser in iobroker ?
-
Hi Leute,
ich habe bei mir einen HM Füllstandsmesser in meiner Regenwasserzisterne im Einsatz. Das Gerät scheint auch normal in iobroker auf und der aktuelle Füllstandswert in % wird auch in iobroker angezeigt. Die zusätzliche Angabe der Füllmenge in Liter kann ich in iobroker aber nicht finden.
Wie bekomme ich den in iobroker rein ?
Danke.
Beste Grüße
-
Ich denke das die CCU hier selbst diesen Wert errechnet und das mit dem Sensor nichts zu tun hat.
In der CCU definierst Du ja die Form und alles woraus die CCU die gesamt-Füllmengeberechnet und dann dort nur x% des Wertes dann anzeigt. Das kommt nicht vom Sensor
Von daher kannst Du es ggf selbst berechnen …
-
hmm okay,
ich hätte das Berechnen mit folgendem Skript probiert:
var idProzent = 'hm-rpc.1.KEQ0365418.1.FILLING_LEVEL'; // Datenpunkt-ID Füllstand vorhanden var idLiter = 'javascript.0.Regenwasserzisterne.Liter'; // Datenpunkt-ID für neuen DP mit Liter um Mitternacht function calcLiter() { var prozent = getState(idProzent).val; setState(idLiter, 5026,39 * prozent / 100,true); } schedule('49 21 * * *', calcLiter); // täglich um Mitternacht '55 22 * * *''0 0 * * *'
Ich bekomme aber nur den Wert 100% Wert in den DP geschrieben und nicht den berechneten…
Hab ich ich beim Script einen Fehler in der Berechnung ?
-
Warum nicht bei Änderung des FILLING_LEVEL Wertes jedes mal neu berechnen … also "on" auf die FILLING_LEVEL id ...
-
setState(idLiter, 5026,39 * prozent / 100,true); ```` `
–>
setState(idLiter, 5026.39 * prozent / 100,true);
Besser:
var idProzent = 'hm-rpc.1.KEQ0365418.1.FILLING_LEVEL'; // Datenpunkt-ID Füllstand vorhanden var idLiter = 'javascript.0.Regenwasserzisterne.Liter'; // Datenpunkt-ID für neuen DP mit Liter um Mitternacht function calcLiter(dp) { setState(idLiter, 50.2639 * dp.state.val, true); } on(idProzent, calcLiter); // bei jeder Änderung von Prozent setState(idLiter, 50.2639 * getState(idProzent).val, true); // Script start
-
Vielen Dank für die Hilfe.
Jetzt funktionierts super !
Kann ich den errechneten Liter Wert ohne Kommastellen anzeigen oder bei der Berechnung das Ergebnis gleich runden auf ganze Zahlen?
Beste Grüße
-
… bei der Berechnung das Ergebnis gleich runden auf ganze Zahlen? `
setState(idLiter, Math.round(50.2639 * dp.state.val), true);
-
Funzt perfekt jetzt!
Vielen dank !
Beste Grüße