Tagesverbrauch Strom
Verfasst: 17. Jan 2021 18:38
Ich komme nicht weiter und könnte hilfe gebrauchen.
Der Zälerstand wird richtig übertragen ud in die DB eingetragen.
Das ist der aktuelle Zählerstand
Das ist der eintrag in der .persist
das ist auch OK und der wert wird geschrieben.
das ist die .item
das ist die .rule die nicht geht 
habe ich aus einem Post von udo1toni gefunden und dachte ich kann es für mich abändern. War wohl nichts.
Der Zälerstand wird richtig übertragen ud in die DB eingetragen.
Das ist der aktuelle Zählerstand
Code: Alles auswählen
Item PlugMaurice_Dummy_Stromzaehler_kWh
Code: Alles auswählen
PlugMaurice_Dummy_Stromzaehler_kWh : strategy = everyMinute, restoreOnStartup
das ist die .item
Code: Alles auswählen
Switch Plug1VonMauriceRelayOutput "Betrieb" {channel="shelly:shellyplugs:Maurice_PLUG1:relay#output"}
Number:Time Plug1VonMauriceRelayAutoOn "Auto ein timer" {channel="shelly:shellyplugs:Maurice_PLUG1:relay#autoOn"}
Number:Time Plug1VonMauriceRelayAutoOff "Auto aus timer" {channel="shelly:shellyplugs:Maurice_PLUG1:relay#autoOff"}
Switch Plug1VonMauriceRelayTimerActive "Timer aktiv" {channel="shelly:shellyplugs:Maurice_PLUG1:relay#timerActive"}
Number Plug1VonMauriceDeviceWifiSignal "Signalstärke" {channel="shelly:shellyplugs:Maurice_PLUG1:device#wifiSignal"}
Number:Time Plug1VonMauriceDeviceUptime "Laufzeit" {channel="shelly:shellyplugs:Maurice_PLUG1:device#uptime"}
String Plug1VonMauriceDeviceDeviceName "Device device name" {channel="shelly:shellyplugs:Maurice_PLUG1:device#deviceName"}
Number:Temperature Plug1VonMauriceDeviceInternalTemp "Device internal temp" {channel="shelly:shellyplugs:Maurice_PLUG1:device#internalTemp"}
Switch Plug1VonMauriceDeviceUpdateAvailable "Device update available" {channel="shelly:shellyplugs:Maurice_PLUG1:device#updateAvailable"}
DateTime Plug1VonMauriceDeviceHeartBeat "Device heart beat" {channel="shelly:shellyplugs:Maurice_PLUG1:device#heartBeat"}
Switch Plug1VonMauriceDevicePowerLed "Device power led" {channel="shelly:shellyplugs:Maurice_PLUG1:device#powerLed"}
Switch Plug1VonMauriceDeviceStatusLed "Device status led" {channel="shelly:shellyplugs:Maurice_PLUG1:device#statusLed"}
Number:Power Plug1VonMauriceMeterCurrentWatts "Meter current watts" {channel="shelly:shellyplugs:Maurice_PLUG1:meter#currentWatts"}
Number:Energy Plug1VonMauriceMeterTotalKWH "Meter total kwh" {channel="shelly:shellyplugs:Maurice_PLUG1:meter#totalKWH"}
Number:Energy Plug1VonMauriceMeterLastPower1 "Meter last power1" {channel="shelly:shellyplugs:Maurice_PLUG1:meter#lastPower1"}
DateTime Plug1VonMauriceMeterLastUpdate "Meter last update" {channel="shelly:shellyplugs:Maurice_PLUG1:meter#lastUpdate"}
//--Maurice Dummys -Strom
Number PlugMaurice_Dummy_Stromzaehler_Verbrauch_Aktuell "Verbrauch aktuell [%.0f W]" (Strom)
Number PlugMaurice_Dummy_Stromzaehler_kWh "Zählerstand [%.2f kWh]" (Strom)
Number PlugMaurice_Dummy_Stromzaehler_Verbrauch_Tag "Verbrauch heute [%.2f kWh]" (Strom)
Number PlugMaurice_Dummy_Strom_Kosten_Tag "Kosten heute [%.2f €]" (Strom)

habe ich aus einem Post von udo1toni gefunden und dachte ich kann es für mich abändern. War wohl nichts.
Code: Alles auswählen
rule "Stromzaehler Verbrauch Tag"
when
Item PlugMaurice_Dummy_Stromzaehler_kWh received update
then
val myDelta = PlugMaurice_Dummy_Stromzaehler_kWh.deltaSince(now.withTimeAtStartOfDay)
if(!(myDelta instanceof Number)) {
logError("energymeter","myDelta not of type Number! {}",myDelta)
return;
}
if(!(PlugMaurice_Dummy_Stromzaehler_kWh.state instanceof Number)) {
logError("energymeter","STR_sum.state not of type Number! {}", PlugMaurice_Dummy_Stromzaehler_kWh.state)
return;
}
PlugMaurice_Dummy_Stromzaehler_Verbrauch_Tag.postUpdate(myDelta)
end