Hi,
@Udo
mit neu starten hatte ich probiert ohne erfolg.
das System 1, Raspberry Pi 4, 4GB RAM, openHAB 2.5.10 läuft nur nebenher, habe ein großen Teil schon auf das System 3, Raspberry Pi 4, 2GB RAM, openHAB 4.0.2 rübergezogen, es sind nur noch ein paar Tempwerte auf dem alten System, die nicht so relevant sind. Wenn das alles erledigt habe setze ich da neu auf.
Das System 3 wird demnächst aktualisiert sowie das System 3.4.5
Daten habe ich definitiv mit Punkt eingeben.
Abgesehen davon, dass diese Art des Abgleichs halt... "ned so gut" ist...
Warum ? Welche möglichkeit gibt es den Zählerstand anders anzupassen ?
@Peter
läuft auf System Raspberry Pi 4, 2GB RAM, openHAB 3.4.5
Das Testsystem ist auch Raspberry Pi 4, 2GB RAM, openHAB 3.4.5
Auf beiden Systemen ist die gleiche Regel und auf dem Testsystem hat es sofort ja funktioniert den Zählerstand anzupassen, leider nicht auf dem eigentlichen System.
Ist der Wert jetzt nicht mehr 1495.70 ? Und geht es um diesen Wert ?
Genau um diesen Wert geht es, da sich mein Wemos D1 mini an dem der KY025 hängt das zeitliche gesegnet hat,
habe ich einen neuen Wemos mit einem Backup bespielt und wollte jetzt den Wert "letzter abgelesener Zählerstand" aktualisieren.
Das System läuft einwandfrei, zählt auch den den Zählerstand hoch mit dem neuen Wemos.
Es stimmt halt der aktuelle Zählerstand mit dem System überein, deshalb möchte ihn anpassen.
Die Regel ist immer noch diese so wie Du sie mir damals verbessert hast.
Code: Alles auswählen
var Number Letzter_abgelesener_Zaehlerstand = 1495.70
var Number Einheit = 0.01
var Number Gaspreis_Monat = 200.1 // € pro Jahr
var Number Gaspreis_Tag = 54.82191780821918 // ct pro Tag
var Number Gaspreis_kWh = 19.269 // ct pro kWh
var Number Gaspreis_zZahl = 0.9645 // z Zahl
var Number Gaspreis_Brennwert = 10.293 //Brennwert
rule "Increment Gas Meter"
when
Item DummySchalter_TestSchalter changed from OFF to ON
then
logInfo("Zählerstand","Test aktiviert 1")
if (!(Gaszaehler_Heute.state instanceof Number)) {
logInfo("Zählerstand","Test Gaszaehler_Heute wird initialisiert")
Gaszaehler_Heute.postUpdate(0)
}
if (!(Gaszaehler_Stand.state instanceof Number)) {
logInfo("Zählerstand","Test Gaszaehler_Stand wird initialisiert")
Gaszaehler_Stand.postUpdate(0)
}
// Aktuellen Zaehlerstand setzten - die folgenden drei Zeilen auskommentieren und anschließend einen Zählimpuls auslösen damit das Regelwerk einmal durchlaufen wird!
/**/ if (Gaszaehler_Stand.state != NULL && Gaszaehler_Stand.state < Letzter_abgelesener_Zaehlerstand) {
logInfo("Zählerstand","Bedingung erfüllt")
/**/ Gaszaehler_Stand.postUpdate(Letzter_abgelesener_Zaehlerstand) /**/ }
Gaszaehler_Heute.postUpdate(Gaszaehler_Heute.state as DecimalType + Einheit)
Gaszaehler_Stand.postUpdate(Gaszaehler_Stand.state as DecimalType + Einheit)
var Faktor = Gaspreis_zZahl * Gaspreis_Brennwert * Gaspreis_kWh
postUpdate(Gaskosten_Heute, ((Gaszaehler_Heute.state as DecimalType * Faktor) + Gaspreis_Tag) / 100)
logInfo("Zählerstand","Test aktiviert 2")
end