Überschussladen mit variablem Hausverbrauch

PV Überschussladen mit Wallboxen. (intelligenten Ladestationen) Alles was mit der eingebauten Wallbox-Steuerung zu tun hat.

Moderator: Ulrich

Benutzeravatar
Lionking1982
Beiträge: 38
Registriert: Mi 6. Okt 2021, 19:57
Wohnort: Bayern
Danksagung erhalten: 3 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von Lionking1982 »

Ok dann sehe ich auch nicht wo das Problem liegt.
Der Wert wird zwar Später noch gerundet und eine Toleranz abgezogen, aber das macht normal nicht 1KW aus.
Goodwe GW10K-ET, 9.6 Kwp, BYD HVM 13.8, Go-eCharger 10kw Home Fix, BMW i3S, TA-Aton E-Heitzstab 2x3Kw

Endes
Beiträge: 19
Registriert: So 24. Okt 2021, 15:23
Danksagung erhalten: 2 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von Endes »

Hallo zusammen,

ich habe nun die Wall.math erzeugt und folgenden Inhalt reinkopiert bzw. geschrieben.
Nur leider scheint das nicht eingelesen zu werden, denn es wird nur der "fixe Wert " für den Hausverbrauch herangezogen.
Evtl. kann mir jemand nen Tipp geben, was ich vergessen habe!?

Danke

<?php
/******************************************************************************
// Hier können eigene Berechnungen gemacht werden, wenn das nötig ist.
// Es stehen alle Felder folgender Measurements zur Verfügung:
// $INI ==> Werte der INI Datei -> Array
// $wbSteuerung ==> Measurement 'Wallbox' der Datenbank 'steuerung' -> Array
// $DB1 ==> Measurement 'PV' der Datenbank des Wechselrichters -> Array
// $DB2 ==> Measurement 'Batterie' der Datenbank des BMS -> Array
// $DB3 ==> Measurement 'Summen' der Datenbank der Wallbox -> Array
// $DB4 ==> Measurement 'Service' der Datenbank der Wallbox -> Array
// $DB5 ==> Measurement 'Pack1' der Datenbank des BMS -> Array
// $DB6 ==> Measurement 'Ladung' der Datenbank 'steuerung' -> Array
// $DB7 ==> Measurement 'AC' der Datenbank der Wallbox -> Array
//
// Die Steuerung benötigt folgende Variablen, die man hier noch beeinflussen.
// kann. Bitte hier nur benutzen, wenn man sie auch anders berechnen möchte..
// Ansonsten hier nicht benutzen.
//
//
// $Eigenverbrauch = geschätzter Eigenverbrauch
//
//
******************************************************************************/

/******************************************************************************
Beispiel, wie man den aktuellen Eigenverbrauch benutzen kann.
Der Eigenverbrauch muss in einem Feld einer Datenbank zur Verfügung stehen
******************************************************************************/

// Puffer von x Watt
$Puffer = 800;.

$DB1Name = "solaranzeige";
$Measurement1Name = "AC";
$Feldname1 = "Hausverbrauch";

$ch = curl_init('http://localhost/query?db='.$DB1Name.'& ... .urlencode('select * from '.$Measurement1Name.' order by time desc limit 1'));
$rc = datenbank($ch);
if (!isset($rc["JSON_Ausgabe"]["results"][0]["series"])) {
log_schreiben("Es fehlt die Datenbank '".$DB1Name."' mit dem Measurement '".$Measurement1Name."' oder sie ist leer.","|- ",1);
}

for ($h = 1; $h < count($rc["JSON_Ausgabe"]["results"][0]["series"][0]["columns"]); $h++) {
$DB1_math[$rc["JSON_Ausgabe"]["results"][0]["series"][0]["columns"][$h]] = $rc["JSON_Ausgabe"]["results"][0]["series"][0]["values"][0][$h];
}

$DB2Name = "steuerung";
$Measurement2Name = "AC";
$Feldname2 = "Leistung_gesamt";

$ch = curl_init('http://localhost/query?db='.$DB2Name.'& ... .urlencode('select * from '.$Measurement2Name.' order by time desc limit 1'));
$rc = datenbank($ch);
if (!isset($rc["JSON_Ausgabe"]["results"][0]["series"])) {
log_schreiben("Es fehlt die Datenbank '".$DB2Name."' mit dem Measurement '".$Measurement2Name."' oder sie ist leer.","|- ",1);
}

for ($h = 1; $h < count($rc["JSON_Ausgabe"]["results"][0]["series"][0]["columns"]); $h++) {
$DB2_math[$rc["JSON_Ausgabe"]["results"][0]["series"][0]["columns"][$h]] = $rc["JSON_Ausgabe"]["results"][0]["series"][0]["values"][0][$h];
}

$Hausverbrauch = $DB1_math[$Feldname1];
$Wallboxverbrauch = $DB2_math[$Feldname2];
$Eigenverbrauch = $Hausverbrauch - $Wallboxverbrauch + $Puffer;

log_schreiben("Eigenverbrauch ist $Eigenverbrauch");

log_schreiben( "aktuelle Solarleistung ($Solarleistung) - Eigenverbrauch ($Eigenverbrauch): ".($Solarleistung - $Eigenverbrauch)." Watt");

log_schreiben( "Gemessener Eigenverbrauch: ".$Eigenverbrauch." Watt", "", 3 );

KaMaKi
Beiträge: 24
Registriert: Mo 29. Nov 2021, 11:51
Danksagung erhalten: 2 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von KaMaKi »

Muss die Datei nicht wall-math.php heißen?

Endes
Beiträge: 19
Registriert: So 24. Okt 2021, 15:23
Danksagung erhalten: 2 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von Endes »

Ja sorry hab mich da nicht korrekt ausgedrückt

sudo mcedit /var/www/wall-math.php

Bogeyof
Beiträge: 943
Registriert: Mi 13. Mai 2020, 10:04
Hat sich bedankt: 17 Mal
Danksagung erhalten: 103 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von Bogeyof »

Ich habe es nicht vollkommen durchgeschaut, aber bist du sicher, dass die Wallbox Leistung in der Datenbank steuerung im Measurement AC steht? Eigentlich sollte die Wallbox eine eigene Datenbank haben...

to:be
Beiträge: 10
Registriert: So 30. Aug 2020, 12:39
Hat sich bedankt: 6 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von to:be »

Bogeyof hat geschrieben:
Fr 3. Jun 2022, 06:05
Ich habe es nicht vollkommen durchgeschaut, aber bist du sicher, dass die Wallbox Leistung in der Datenbank steuerung im Measurement AC steht? Eigentlich sollte die Wallbox eine eigene Datenbank haben...
Die Parameter müssen der jeweiligen Umgebung angepasst werden. Da ich der Wallbox in der Umgebung keine eigene Datenbank gegeben habe, ist das bei mir stimmig.

Filips
Beiträge: 47
Registriert: Fr 24. Apr 2020, 18:23
Hat sich bedankt: 2 Mal

Re: Überschussladen mit variablem Hausverbrauch

Beitrag von Filips »

Hallo Endes,
Ich hatte ja auch das Problem und hab es damit gelöst, dass ich den Basiswert in der Wallbox-Datei kleiner gesetzt habe.
War vorher bei 1kW, jetzt bei 300W. Seit dem regelt die Math auch.

Filips

Antworten