aWATTar in Deutschland verfügbar..

Begonnen von der-Lolo, 25 März 2019, 18:45:56

Vorheriges Thema - Nächstes Thema

CBSnake

Guten Morgen,

so Fazit erster Monat mit fiktivem aWATTar.
Ich hätte mit aWATTAr 10 Euro gespart obwohl nur der Geschirrspüler durch FHEM zu aWATTar günstigen Zeit gestartet wurde, für Waschmaschine und Trockner ist der WAF aktuell nicht gegeben ;-)

Grüße
Achim
FHEM auf Debian 10, HM-Wlan, JeeLink-Wlan, Wlanduino, ConBee, TP-Link Steckdose, GHoma Steckdosen, Shelly Steckdosen

samsmooth

Zitat von: marcus42 am 02 Januar 2020, 19:10:22

Vielleicht hilft es ja ...

Marcus

Hallo Marcus, ja danke, es hilft!   :)

Ich habe dein Skript erfolgreich im Einsatz. Momentan aber nur, um den günstigsten Zeitraum in der Fhem-App anzuzeigen.

Hast du Lust, das Skript noch um einen weiteren Parameter 'offset' zu erweitern, sodaß man den Betrachtungszeitraum eingrenzen kann und z.B. nur die Daten ab Vormittag betrachtet. Alternativ könntest du auch zusätzlich den zweit-/drittgünstigsten Startpunkt zurück liefern lassen.

Danke und Gruß,
Sascha
RPi3B+, HM-MOD-RPI-PCB USB, nanoCUL868 CC1101, Z-Wave USB

ch.eick

Zitat von: samsmooth am 03 August 2020, 09:01:29
Hast du Lust, das Skript noch um einen weiteren Parameter 'offset' zu erweitern, sodaß man den Betrachtungszeitraum eingrenzen kann und z.B. nur die Daten ab Vormittag betrachtet. Alternativ könntest du auch zusätzlich den zweit-/drittgünstigsten Startpunkt zurück liefern lassen.

Hmm, welches Skript meinst Du? Es ist schon soooo lange her?
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

samsmooth

Zitat von: ch.eick am 03 August 2020, 09:09:17
Hmm, welches Skript meinst Du? Es ist schon soooo lange her?

Das von Seite 1:

https://raw.githubusercontent.com/mschlappa/fhem/master/updateAwattar.sh
https://raw.githubusercontent.com/mschlappa/fhem/master/awattar.sh
RPi3B+, HM-MOD-RPI-PCB USB, nanoCUL868 CC1101, Z-Wave USB

ch.eick

#64
Okay, ich hatte ja einen Lösung ohne Skript.
Die Preise werden abgeholt und in einem DOIF der gewünschte aWATTar_Triggerpreis berechnet. Im cmd_4 Bereich könntest Du natürlich auch mehrere Trigger, wenn Du granularer reagieren möchtest, setzen.
Die andere Devices fragen dann nur noch reading aWATTar_Trigger on/off ab.

Eventuell wäre für Dich auch die Eigenbedarfoptimierung interessant.

Der aktuelle Teil aus dem DOIF zum Abholen und Berechnen

defmod Strom_Kosten DOIF ################################################################################################################\
## 1 Strompreis Berechnungen\
##\
([:59]) ##jede Stunde zur 59sten Minute\
  (\
   ## aktualisieren des Zählerstandes\
   get StromZaehler Strom_Status ,\
\
   ## auslesen des Zählerstandes\
   setreading $SELF kwh_gesamt [StromZaehler:Strom_Status-02] ,\
\
   ## aktueller Wert minus alter Wert multipliziert mit dem Strompreis pro kWh in Euro des aktuellen Anbieters\
\
   setreading $SELF kwh_verbrauch {( round( [$SELF:kwh_gesamt]-[$SELF:kwh_old], 2) )} ,\
\
   setreading $SELF kwh_Maingau_now_euro  {( round( ([$SELF:kwh_gesamt]-[$SELF:kwh_old]) * [$SELF:Maingau_Arbeitspreis] ,2) )} ,\
\
   ## Börsenpreis durch 100 um auf Euro zu kommen Grundkwhpreis aWATTar addieren und mit den kWh multiplizieren\
   setreading $SELF kwh_aWATTar_now_euro  {( round( ([$SELF:kwh_gesamt]-[$SELF:kwh_old]) *([$SELF:aWATTar_Basispreis] + [$SELF:aWATTar_AktuellerPreis]) ,2) )} ,\
\
   ## Differenz der Anbieter ermitteln\
   setreading $SELF kwh_differenz_now_euro {( round( [$SELF:kwh_Maingau_now_euro]-[$SELF:kwh_aWATTar_now_euro] ,2) )} ,\
\
   ## Setze alten Wert auf aktuellen Wert für die nächste Berechnung\
   setreading $SELF kwh_old [$SELF:kwh_gesamt] ,\
\
   {Log 3, "Strom_Kosten cmd_1 : Kosten berechnet"}\
  )\
################################################################################################################\
## 2 regelmäßig die Bilanz aktualisieren\
##\
DOELSEIF\
([+:05] and ![:00]) ## Tagsüber alle 5 Minuten außer um :00\
  (\
   { if ( ($hour >= 8 || $hour < 20) ) { fhem("set Dum.Energy update") } }\
  )\
################################################################################################################\
## 3 Aktuellen aWATTar Preis holen. Achtung, die Readings werden erst wegen des http Zugriffs, verzögert aktualisiert.\
##\
DOELSEIF\
([:03])\
   (\
    set awattar reread ,\
    {Log 3, "Strom_Kosten cmd_3 : Preis aktualisiert"}\
   )\
################################################################################################################\
## 4 Sobald der aktuelle Preis geschrieben wurde werden alle anderen readings berechnet.\
##\
DOELSEIF\
([awattar:AktuellerPreis])\
   (\
    setreading $SELF aWATTar_AktuellerPreis {( round(  [awattar:AktuellerPreis]*1.19/100 ,4) )},\
    setreading $SELF aWATTar_Arbeitspreis   {( round( ([awattar:AktuellerPreis]*1.19/100 + [$SELF:aWATTar_Basispreis]) ,4) )},\
    setreading $SELF aWATTar_Triggerpreis   {( round( (([awattar:MedianPreis] - [awattar:NiedrigerPreis])/2 + [awattar:NiedrigerPreis])*1.19 ,1) )},\
    {Log 3, "Strom_Kosten cmd_3 : Preis berechnet"},\
    { if ( [$SELF:aWATTar_AktuellerPreis] lt [$SELF:aWATTar_Triggerpreis]/100 )\
        { fhem("setreading $SELF aWATTar_Trigger on") }\
      else \
        { fhem("setreading $SELF aWATTar_Trigger off") }\
    },\
    {Log 3, "Strom_Kosten cmd_4 : Trigger aktualisiert"}\
   )\
################################################################################################################\
## 5 Am Ersten des Monats den Zählerstand zum Stromversorger übertragen und\
##   Erstellen von Statistiken\
##\
DOELSEIF\
([01:07] and ($mday==1))\
   (\
    set maingau Zaehlerstand [StromZaehler:Strom_Status-02],\
    {Log 3, "Strom_Kosten cmd_5 : Zählerstand zur Maingau übertragen"}\
\
    set LogDBRep_PVMonth maxValue writeToDB\
   )\
\

attr Strom_Kosten DbLogExclude .*
attr Strom_Kosten DbLogInclude aWATTar_AktuellerPreis,aWATTar_Arbeitspreis,aWATTar_Trigger,aWATTar_Triggerpreis,kwh_Maingau_now_euro,kwh_aWATTar_now_euro,kwh_differenz_now_euro,kwh_gesamt,kwh_old
attr Strom_Kosten alias Strom_Kosten
attr Strom_Kosten cmdState Kosten berechnet|Bilanz aktualisiert|Preis aktualisiert|aWATTar Trigger aktualisiert|Maingau Zählerstand Übertragen
attr Strom_Kosten comment Alle Berechnungen erfolgen mit Brutto Preisen. Der aWATTar Basispreis ergibt sich aus { 0.2067 + 0.0250 }
attr Strom_Kosten do always
attr Strom_Kosten readingList Maingau_Arbeitspreis Maingau_Grundpreis MwSt aWATTar_Basispreis aWATTar_Grundpreis kwh_old
attr Strom_Kosten room Strom->System
attr Strom_Kosten setList Maingau_Arbeitspreis Maingau_Grundpreis aWATTar_Basispreis aWATTar_Grundpreis kwh_old
attr Strom_Kosten wait 0:0:0:10:0:0



defmod awattar HTTPMOD https://api.awattar.de/v1/marketdata/current.yaml 3600
attr awattar DbLogExclude .*
attr awattar enableControlSet 1
attr awattar event-on-update-reading AktuellerPreis.*
attr awattar reading01Name Datum
attr awattar reading01Regex date_now:.([12]\d{3}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01]))
attr awattar reading02Name AktuellerPreis
attr awattar reading02Regex price_current:([^0-9]+[0-9\.]+)
attr awattar reading03Name MittlererPreis
attr awattar reading03Regex price_average[^0-9]+([0-9\.]+)
attr awattar reading04Name abs_00_amount
attr awattar reading04Regex data_price_hour_abs_00_amount:([^0-9]+[0-9\.]+)
attr awattar reading05Name abs_01_amount
attr awattar reading05Regex data_price_hour_abs_01_amount:([^0-9]+[0-9\.]+)
attr awattar reading06Name abs_02_amount
attr awattar reading06Regex data_price_hour_abs_02_amount:([^0-9]+[0-9\.]+)
attr awattar reading07Name abs_03_amount
attr awattar reading07Regex data_price_hour_abs_03_amount:([^0-9]+[0-9\.]+)
attr awattar reading08Name abs_04_amount
attr awattar reading08Regex data_price_hour_abs_04_amount:([^0-9]+[0-9\.]+)
attr awattar reading09Name abs_05_amount
attr awattar reading09Regex data_price_hour_abs_05_amount:([^0-9]+[0-9\.]+)
attr awattar reading10Name abs_06_amount
attr awattar reading10Regex data_price_hour_abs_06_amount:([^0-9]+[0-9\.]+)
attr awattar reading11Name abs_07_amount
attr awattar reading11Regex data_price_hour_abs_07_amount:([^0-9]+[0-9\.]+)
attr awattar reading12Name abs_08_amount
attr awattar reading12Regex data_price_hour_abs_08_amount:([^0-9]+[0-9\.]+)
attr awattar reading13Name abs_09_amount
attr awattar reading13Regex data_price_hour_abs_09_amount:([^0-9]+[0-9\.]+)
attr awattar reading14Name abs_10_amount
attr awattar reading14Regex data_price_hour_abs_10_amount:([^0-9]+[0-9\.]+)
attr awattar reading15Name abs_11_amount
attr awattar reading15Regex data_price_hour_abs_11_amount:([^0-9]+[0-9\.]+)
attr awattar reading16Name abs_12_amount
attr awattar reading16Regex data_price_hour_abs_12_amount:([^0-9]+[0-9\.]+)
attr awattar reading17Name abs_13_amount
attr awattar reading17Regex data_price_hour_abs_13_amount:([^0-9]+[0-9\.]+)
attr awattar reading18Name abs_14_amount
attr awattar reading18Regex data_price_hour_abs_14_amount:([^0-9]+[0-9\.]+)
attr awattar reading19Name abs_15_amount
attr awattar reading19Regex data_price_hour_abs_15_amount:([^0-9]+[0-9\.]+)
attr awattar reading20Name abs_16_amount
attr awattar reading20Regex data_price_hour_abs_16_amount:([^0-9]+[0-9\.]+)
attr awattar reading21Name abs_17_amount
attr awattar reading21Regex data_price_hour_abs_17_amount:([^0-9]+[0-9\.]+)
attr awattar reading22Name abs_18_amount
attr awattar reading22Regex data_price_hour_abs_18_amount:([^0-9]+[0-9\.]+)
attr awattar reading23Name abs_19_amount
attr awattar reading23Regex data_price_hour_abs_19_amount:([^0-9]+[0-9\.]+)
attr awattar reading24Name abs_20_amount
attr awattar reading24Regex data_price_hour_abs_20_amount:([^0-9]+[0-9\.]+)
attr awattar reading25Name abs_21_amount
attr awattar reading25Regex data_price_hour_abs_21_amount:([^0-9]+[0-9\.]+)
attr awattar reading26Name abs_22_amount
attr awattar reading26Regex data_price_hour_abs_22_amount:([^0-9]+[0-9\.]+)
attr awattar reading27Name abs_23_amount
attr awattar reading27Regex data_price_hour_abs_23_amount:([^0-9]+[0-9\.]+)
attr awattar reading28Name MedianPreis
attr awattar reading28Regex price_median:([^0-9]+[0-9\.]+)
attr awattar reading29Name NiedrigerPreis
attr awattar reading29Regex price_low:([^0-9]+[0-9\.]+)
attr awattar reading30Name HoherPreis
attr awattar reading30Regex price_high:([^0-9]+[0-9\.]+)
attr awattar room Strom->System
attr awattar stateFormat AktuellerPreis
attr awattar verbose 0

RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

ch.eick

Zitat von: samsmooth am 03 August 2020, 10:12:08
Das von Seite 1:

https://raw.githubusercontent.com/mschlappa/fhem/master/updateAwattar.sh
https://raw.githubusercontent.com/mschlappa/fhem/master/awattar.sh

Ich habe mir mal die Skripte angeschaut, die laufen im Prinzip neben FHEM in einer Shell, das funktioniert zwar gut, jedoch bevorzuge ich doch lieber Abfragen und Berechnungen innerhalb von FHEM.
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

hyper2910

hallo


mein Stromzähler liefert alles in W/H

Wie kann ich diesen umrechnen in kw/H?
Reicht ein /1000?

## auslesen des Zählerstandes\
   setreading $SELF kwh_gesamt [StromZaehler:Strom_Status-02] ,\
Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

ch.eick

Zitat von: hyper2910 am 28 Oktober 2020, 09:49:51
mein Stromzähler liefert alles in W/H

Wie kann ich diesen umrechnen in kw/H?
Reicht ein /1000?

## auslesen des Zählerstandes\
   setreading $SELF kwh_gesamt [StromZaehler:Strom_Status-02] ,\

Hallo hyper2910,

generell ist das richtig 1000 Wh sind 1,0 KWh

Die Codezeile, die Du angebracht hast stammt aus meinem Post.
StromZaehler heißt das Device und Strom_Status-02 ist das reading, was bei Dir jedoch nicht passen wird, wenn Du keinen DvLir als Lesekopf hast.

Die Umrechnung in KWh kannst Du direkt mit einem format in Deinem Zähler Device erledigen, oder auch ein userreading dort anlegen.
Damit ersparst Du Dir bei jeder Weiterverarbeitung und Abfrage die /1000 Umrechnung und es wird übersichtlicher.

Gruß
   Christian
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

hyper2910

Hallo danke

## auslesen des Zählerstandes\
   setreading $SELF kwh_gesamt [StromZaehler:Strom_Status-02] ,\

Ist auf meine Bedürfnisse angepasst, nur bekomme ich die Umrechnung hier nicht hin.  Ich möchte das nur an dieser Stelle machen, da die W/H bei allen anderen Anwedungen ok sind.

Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

ch.eick

Zitat von: hyper2910 am 28 Oktober 2020, 12:09:03
Ist auf meine Bedürfnisse angepasst, nur bekomme ich die Umrechnung hier nicht hin.  Ich möchte das nur an dieser Stelle machen, da die W/H bei allen anderen Anwendungen ok sind.
Wie gesagt im Zähler Device einfach ein zweites userreading anlegen und dort in KWh umrechnen, oder

anstatt "[StromZaehler:Strom_Status-02]" ein

round(ReadingsVal("StromZaehler","Strom_Status",0) /1000 , 2)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

hyper2910

Hi,

danke für die schnelle hilfe,

leider macht der Befehl da gar nichts

so sieht meine angepasste Zeile aus, das funktioniert

setreading $SELF kwh_gesamt [Zaehlerstand:consumption] ,

ein

round(ReadingsVal("Zaehlerstand","Zaehlerstand:consumpion",0) /1000 , 2)

macht nichts!
Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

ch.eick

Zitat von: hyper2910 am 28 Oktober 2020, 17:10:43
setreading $SELF kwh_gesamt [Zaehlerstand:consumption] ,

Das wäre so zu schreiben...
round(ReadingsVal("Zaehlerstand","consumpion",0) /1000 , 2)
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

hyper2910

Danke,

Aber ich bekomme direkt einen Error

   
syntax error at (eval 272573) line 1, near "-)"

round(ReadingsVal("Zaehlerstand","consumption",0) /1000 , 2)
Cubietruck mit FHEM, CUL V3 443MHz, 2 x CULV3 868MHz, Milights, Max Heizungssteuerung, Homematic, IT,

ch.eick

Zitat von: hyper2910 am 28 Oktober 2020, 17:53:49

syntax error at (eval 272573) line 1, near "-)"

round(ReadingsVal("Zaehlerstand","consumption",0) /1000 , 2)

Ich habe es mal bei mir in der Kommandozeile laufen lassen.

{ round(ReadingsVal("StromZaehler","Strom_Status-02",0) /1000 , 2) }

Hast Du eventuell einen Syntaxfehler im DOIF?
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick

ch.eick

Das DOIF hatte ich vor ein paar tagen für mich mal umformatiert


defmod Strom_Kosten DOIF ################################################################################################################\
## 1 Strompreis Berechnungen\
##\
([:59]) ## jede Stunde zur 59sten Minute\
     ## aktualisieren des Zählerstandes\
   (get StromZaehler Strom_Status)\
     ## auslesen des Zählerstandes\
   (setreading $SELF kwh_gesamt [StromZaehler:Strom_Status-02])\
\
     ## aktueller Wert minus alter wert multipliziert mit dem Strompreis pro kWh in Euro des aktuellen Anbieters\
   (setreading $SELF kwh_verbrauch {( round( [$SELF:kwh_gesamt]-[$SELF:kwh_old], 2) )})\
\
   (setreading $SELF kwh_Maingau_now_euro  {( round( ([$SELF:kwh_gesamt]-[$SELF:kwh_old]) * [$SELF:Maingau_Arbeitspreis] ,2) )})\
\
     ## Börsenpreis durch 100 um auf Euro zu kommen Grundkwhpreis aWATTar addieren und mit den kWh multiplizieren\
   (setreading $SELF kwh_aWATTar_now_euro  {( round( ([$SELF:kwh_gesamt]-[$SELF:kwh_old]) *([$SELF:aWATTar_Basispreis] + [$SELF:aWATTar_AktuellerPreis]) ,2) )})\
\
     ## Differenz der Anbieter ermitteln\
   (setreading $SELF kwh_differenz_now_euro {( round( [$SELF:kwh_Maingau_now_euro]-[$SELF:kwh_aWATTar_now_euro] ,2) )})\
\
     ## Setze alten Wert auf aktuellen Wert für die nächste Berechnung\
   (setreading $SELF kwh_old [$SELF:kwh_gesamt])\
\
   ({Log 3, "Strom_Kosten cmd_1 : Kosten berechnet"})\
\
################################################################################################################\
## 2 Aktuellen aWATTar Preis holen. Achtung, die Readings werden erst wegen des http Zugriffs, verzögert aktualisiert.\
##\
DOELSEIF\
([:03])\
   (set awattar reread)\
   ({Log 3, "Strom_Kosten cmd_2 : Preis aktualisiert"})\
\
################################################################################################################\
## 3 Sobald der aktuelle Preis geschrieben wurde werden alle anderen readings berechnet.\
##\
DOELSEIF\
([awattar:AktuellerPreis])\
   \
    (setreading $SELF aWATTar_AktuellerPreis {( round(  [awattar:AktuellerPreis]*1.19/100 ,4) )})\
    (setreading $SELF aWATTar_Arbeitspreis   {( round( ([awattar:AktuellerPreis]*1.19/100 + [$SELF:aWATTar_Basispreis]) ,4) )})\
    (setreading $SELF aWATTar_Triggerpreis   {( round( (([awattar:MedianPreis] - [awattar:NiedrigerPreis])/2 + [awattar:NiedrigerPreis])*1.19 ,1) )})\
    ({Log 3, "Strom_Kosten cmd_3 : Preis berechnet"})\
    ({ if ( [$SELF:aWATTar_AktuellerPreis] lt [$SELF:aWATTar_Triggerpreis]/100 )\
        { fhem("setreading $SELF aWATTar_Trigger on") }\
      else \
        { fhem("setreading $SELF aWATTar_Trigger off") }\
    })\
    ({Log 3, "Strom_Kosten cmd_3 : Trigger aktualisiert"})\
   \
################################################################################################################\
## 4 Am Ersten des Monats den Zählerstand zum Stromversorger übertragen und\
##   Erstellen von Statistiken\
##\
DOELSEIF\
([01:07] and ($mday==1))\
   (set maingau Zaehlerstand [StromZaehler:Strom_Status-02])\
   ({Log 2, "Strom_Kosten cmd_4 : Zählerstand zur Maingau übertragen"})\

attr Strom_Kosten DbLogExclude .*
attr Strom_Kosten DbLogInclude aWATTar_AktuellerPreis,aWATTar_Arbeitspreis,aWATTar_Trigger,aWATTar_Triggerpreis,kwh_Maingau_now_euro,kwh_aWATTar_now_euro,kwh_differenz_now_euro,kwh_gesamt,kwh_old
attr Strom_Kosten alias Strom_Kosten
attr Strom_Kosten cmdState Kosten berechnet|Bilanz aktualisiert|Preis aktualisiert|aWATTar Trigger aktualisiert|Maingau Zählerstand Übertragen
attr Strom_Kosten comment Version 2020.10.19 18:28\
Alle Berechnungen erfolgen mit Brutto Preisen. Der aWATTar Basispreis ergibt sich aus { 0.2067 + 0.0250 }
attr Strom_Kosten do always
attr Strom_Kosten readingList Maingau_Arbeitspreis Maingau_Grundpreis MwSt aWATTar_Basispreis aWATTar_Grundpreis kwh_old
attr Strom_Kosten room Strom->System
attr Strom_Kosten setList Maingau_Arbeitspreis Maingau_Grundpreis aWATTar_Basispreis aWATTar_Grundpreis kwh_old
attr Strom_Kosten sortby 11
attr Strom_Kosten verbose 5
attr Strom_Kosten wait 0:0:10:0:0
attr Strom_Kosten webCmd cmd_1:cmd_2:cmd_3:cmd_4
attr Strom_Kosten webCmdLabel Kosten berechnen :aWATTar Preis holen :Preis berechnen :Zählerstand übermitteln :

setstate Strom_Kosten 2020-10-28 18:03:00 Device awattar
setstate Strom_Kosten 2020-01-12 13:05:09 Maingau_Arbeitspreis 0.2987
setstate Strom_Kosten 2020-07-01 16:34:36 Maingau_Grundpreis 0.00
setstate Strom_Kosten 2020-10-28 18:03:10 aWATTar_AktuellerPreis 0.0493
setstate Strom_Kosten 2020-10-28 18:03:10 aWATTar_Arbeitspreis 0.2810
setstate Strom_Kosten 2020-01-17 12:58:57 aWATTar_Basispreis 0.2317
setstate Strom_Kosten 2020-01-12 16:25:33 aWATTar_Grundpreis 147.36
setstate Strom_Kosten 2020-10-28 18:03:00 e_awattar_AktuellerPreis  4.14000
setstate Strom_Kosten 2020-10-27 19:59:00 kwh_Maingau_now_euro 0.30
setstate Strom_Kosten 2020-10-27 19:59:00 kwh_aWATTar_now_euro 0.28
setstate Strom_Kosten 2020-10-28 17:59:00 kwh_differenz_now_euro 0.02


Momentan habe ich da länger nicht rein geschaut, werde es aber bald mal überarbeiten, um die PV_Anlage zu berücksichtigen. Das wird ein schönes Winter Projekt.
RPI4; Docker; CUNX; Eltako FSB61NP; SamsungTV H-Serie; Sonos; Vallox; Luxtronik; 3x FB7490; Stromzähler mit DvLIR; wunderground; Plenticore 10 mit BYD; EM410; SMAEM; Modbus TCP
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/ch.eick