Autor Thema: PV-Anlage Eigenverbrauch Maximieren mit VZlogger  (Gelesen 1462 mal)

Offline Jan007

  • New Member
  • *
  • Beiträge: 6
PV-Anlage Eigenverbrauch Maximieren mit VZlogger
« am: 23 September 2016, 17:48:50 »
Hallo Liebes Fhem-Forum,

ich habe folgendes Problem und zwar habe ich eine PV-Anlage mit ca. 2,8kwh Maximalleistung.

Ich nutze keine SMA oder Solarlog! sondern besitze einen Smartmeter Zweirichtungszähler der über D0 ausgelesen wird und einen Hutschienenzähler der mit S0 ausgelesen wird.
Am Hutschienenzähler hängt der PV-Wechselrichter, da der Wechselrichter nicht ausgelesen werden kann (älteres Model) um den Täglichen ertrag zu erfassen.

Für mein vorhaben benötige ich aber nur die Werte von D0 Zweirichtungszähler was zum Anbieter Eingespeist wird (Netzeinspeisung)

Ich möchte über diesen Wert meine Elektrische Fußbodenheizung (ca. 500Watt) einschalten lassen.

Die Fußbodenheizung wird über ein Z-Wave Wandthermostat geschalten, der ist es Wurscht ob die dauernd ein und aus geschaltet wird. (Wolken)

Ich habe es mit folgenden Notify versucht und die Readings werden zwar im Notify angezeigt, aber leider keine Schaltvorgänge :-(
{my $Netzeinspeisung;
  ($Netzeinspeisung) = ($EVENT             =~ /([0-9]+)/);
  if (($Netzeinspeisung> 500) &&
      (Value("heizSolar") eq "on") &&
      (Value("Wandthermostat") eq "off"))
  {
    fhem ("set Wandthermostat on");
  }

Im Anhang noch ein Bild vom Tagesplot und die blauen Spitzen möchte ich gerne in die Fußbodenheizung laden. (heute Lief die Waschmaschine)

Vielleicht hat da jemand einen Tipp für mich oder eine Beispiel Config bzw. wie man es besser machen könnte.

Vielen Dank

Jan

Offline pejonp

  • Sr. Member
  • ****
  • Beiträge: 980
Antw:PV-Anlage Eigenverbrauch Maximieren mit VZlogger
« Antwort #1 am: 04 Oktober 2016, 23:23:11 »
Hallo Jan007,

hier mal ein Beispiel von mir:
Ich hole mir meine Daten aus eine MySQL DB:
    my $a = fhem ("get logdb ReadingsVal SonBat Ladezustand 0") ;; \

Wenn es aus dem FileLog kommt sieht es so aus:
   my $a = ReadingsVal("SonBat","Ladezustand",0) ;; \

Ich schreibe die Daten erst einmal in eine Variabel und gebe sie mit Log 2 aus (verbose = 2). So kann man die Fehler besser finden.

## Überwachung Ladezustand Solarbatterie
define SolarBat100 dummy
attr SolarBat100 room Sonnenbatterie

define LadungSolarBatNotify notify SonBat:Ladezustand.* { \
    use Math::Round qw/nearest/ ;; \
    my $a = fhem ("get logdb ReadingsVal SonBat Ladezustand 0") ;; \
    Log 2, "Ladung 100: ". $a ;;;;;;;; \
    if ($a == 100) { \
        fhem ("set SolarBat100 14");; \
        fhem ("set BatLadungRelais17 off") ;;  \
    }\
}\

attr LadungSolarBatNotify room Sonnenbatterie
attr LadungSolarBatNotify verbose 1

Ich hoffe ich konnte dir etwas helfen.

pejonp
JeeLink (RFM69CW) LGW 868MHz:WT470+TFA+TX37-IT+EMT7110+FS20+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080) Velux KLF200
MAX!:HM-MOD-UART:Rauch HM-SEC-SD
VITOSOLIC 200 + RESOL VBUS-LAN
SolarEdge SE5K(TCP 24 RS485)+Sonnenbatterie ComfortS(Vera3)+TD3511+DRT710M(RS485

Offline Jan007

  • New Member
  • *
  • Beiträge: 6
Antw:PV-Anlage Eigenverbrauch Maximieren mit VZlogger
« Antwort #2 am: 05 Oktober 2016, 18:07:46 »
Hallo pejonp,

vielen Dank für Deine Hilfe.

Leider benötige ich keine Ladesteuerung für einen Akku, sondern eine Schaltung der Fußbodenheizung.

Es sollte bei einen Bestimmten Wert aus der Netzeinspeisung ein Befehl zum einschalten gegeben werden und unter einen Bestimmten Wert wieder aus.

Aus Deinen Script lese ich heraus, das wenn der Akku unter 100 ist geladen wird und ab 100 wird Relais 17 wieder aus geschaltet.

Bei mir bezieht sich der Wert aus der Quelle um ein Ziel einzuschalten, was bei Dir das Ziel bestimmt, ob geladen wird oder nicht.

Ich bin leider noch nicht hinter den Perl-Sript gestiegen um ihn entsprechend für mich umzuschreiben.

Vieleicht hast Du noch ein Tip für mich.

Vielen Dank

Jan

Offline pejonp

  • Sr. Member
  • ****
  • Beiträge: 980
Antw:PV-Anlage Eigenverbrauch Maximieren mit VZlogger
« Antwort #3 am: 05 Oktober 2016, 18:23:02 »
Hallo,

Das ist natürlich nur ein Beispiel wie man in fhem werte auswerten kann und dann darauf reagiert. Du musst dir schon deine Logik selber zusammenbauen.
Du solltest dir als erstes die benötigten werte hole. Danach vergleichen und dann entsprechen reagieren (schalten).
Schreibe die Werte in variablen und gebe diese über Log aus. Stehen denn auch die Werte dort drin mit denen du vergleichst ?

Pejonp
JeeLink (RFM69CW) LGW 868MHz:WT470+TFA+TX37-IT+EMT7110+FS20+W136+WH25A HP1003+WH2621
SignalD(CC1101):Bresser+WS-0101(868MHz WH1080) Velux KLF200
MAX!:HM-MOD-UART:Rauch HM-SEC-SD
VITOSOLIC 200 + RESOL VBUS-LAN
SolarEdge SE5K(TCP 24 RS485)+Sonnenbatterie ComfortS(Vera3)+TD3511+DRT710M(RS485