Tagesverbrauch Strom

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Benutzeravatar
Boxana
Beiträge: 125
Registriert: 19. Feb 2020 16:24
Answers: 0

Tagesverbrauch Strom

Beitrag von Boxana »

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

Code: Alles auswählen

Item PlugMaurice_Dummy_Stromzaehler_kWh
Das ist der eintrag in der .persist

Code: Alles auswählen

PlugMaurice_Dummy_Stromzaehler_kWh : strategy = everyMinute, restoreOnStartup
das ist auch OK und der wert wird geschrieben.

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)
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.

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
Openhab auf einem Qnap NAS
Gruß
Christian

int5749
Beiträge: 1173
Registriert: 4. Nov 2019 22:08
Answers: 9

Re: Tagesverbrauch Strom

Beitrag von int5749 »

Hi, welche OH Version?
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3

Benutzeravatar
Boxana
Beiträge: 125
Registriert: 19. Feb 2020 16:24
Answers: 0

Re: Tagesverbrauch Strom

Beitrag von Boxana »

Hallo,
openHAB 2.5.11
Openhab auf einem Qnap NAS
Gruß
Christian

Benutzeravatar
Boxana
Beiträge: 125
Registriert: 19. Feb 2020 16:24
Answers: 0

Re: Tagesverbrauch Strom

Beitrag von Boxana »

habe das mal geändert



Code: Alles auswählen


var Number v_Strom_Tag = null

rule "Stromzaehler Verbrauch Tag"
when
    Item PlugMaurice_Dummy_Stromzaehler_kWh received update 
then  

    var v_Strom_Tag  = PlugMaurice_Dummy_Stromzaehler_kWh.deltaSince(now.withTimeAtStartOfDay) as Number
    logInfo("Tag_Verbrauch", v_Strom_Tag )

    PlugMaurice_Dummy_Stromzaehler_Verbrauch_Tag.postUpdate(PlugMaurice_Dummy_Stromzaehler_kWh.deltaSince(now.withTimeAtStartOfDay()) as DecimalType)

    
end


==> /var/log/openhab2/openhab.log <==
2021-01-17 22:17:32.822 [vent.ItemStateChangedEvent] - PlugMaurice_Dummy_Stromzaehler_kWh changed from 6.952 kWh to 6.957 kWh


2021-01-17 22:17:32.825 [INFO ] [smarthome.model.script.Tag_Verbrauch] - null
Openhab auf einem Qnap NAS
Gruß
Christian

Benutzeravatar
Boxana
Beiträge: 125
Registriert: 19. Feb 2020 16:24
Answers: 0

Re: Tagesverbrauch Strom

Beitrag von Boxana »

Hallo noch einmal,
kann es sein das es daran liegt das ich das item schon formatiert habe?

Code: Alles auswählen

Number:Energy        Plug1VonMauriceMeterTotalKWH           "Meter total kwh"           {channel="shelly:shellyplugs:Maurice_PLUG1:meter#totalKWH"}
in der mysql datenbank ist zwar keine einheit zu sehen aber ich sehe das nullen am ende abgeschnitten werden.
Openhab auf einem Qnap NAS
Gruß
Christian

Benutzeravatar
Boxana
Beiträge: 125
Registriert: 19. Feb 2020 16:24
Answers: 0

Re: Tagesverbrauch Strom

Beitrag von Boxana »

OK

keine ahnung was falschwar aber es geht jetzt.

Code: Alles auswählen

rule "Strom Verbrauch Tag"
when
    Item Plug1VonMauriceMeterTotalKWH received update
then
    PlugMaurice_Dummy_Stromzaehler_Verbrauch_Tag.postUpdate(PlugMaurice_Dummy_Stromzaehler_kWh.deltaSince(now.withTimeAtStartOfDay))
end

Openhab auf einem Qnap NAS
Gruß
Christian

Antworten