Die Solarprognose funktioniert nicht mehr.
Moderator: Ulrich
-
Geins
- Beiträge: 18
- Registriert: Mi 5. Okt 2022, 18:16
- Hat sich bedankt: 9 Mal
- Danksagung erhalten: 3 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Hi zusammen,
hab mal ein Beispieldokument gemacht für meine Anlage mit Ost/West-Ausrichtung, da in der wetterdaten.php momentan nur die Ostseite abgerufen wird. Funktioniert einwandfrei (lila im Bild). Einfach wie in der Anleitung vorgehen. Das Skript passt die wetterdaten.php automatisch an – ihr müsst in der Config nur noch die Daten und Koordinaten für eure Anlage ergänzen... Natürlich kann es auch auf die user.config.php angewendet werden. Bei mir steht halt 1.user.config.php in der Doku. Das Script muss nach jedem Update der Solaranzeige ausgeführt werden, daß die wetterdaten.php wieder ergänzt wird.
Hier noch die Ausgabe der Log....:
24.07. 21:20:01 |------------------- Start wetterdaten.php --------------------
24.07. 21:20:01 WET-Prognosedaten 1 werden abgeholt
24.07. 21:20:01 -Multi Regler Auslesen [Start].
24.07. 21:20:01 -Verarbeitung von: '1.user.config.php' Regler: 62
24.07. 21:20:01 |---------------- Start huawei_LAN.php -----------------------------
24.07. 21:20:01 -Huawei: 192.168.178.70 Port: 502 GeräteID: 1
24.07. 21:20:04 WET-Prognosedaten 2 werden abgeholt
24.07. 21:20:05 WET-URL: https://api.forecast.solar/estimate/wat ... 8/-90/4.62
24.07. 21:20:05 WET-Verbindung zum Wetterserver 'forecast.solar' erfolgreich.
24.07. 21:20:05 |------------------- Stop wetterdaten.php ---------------------
Alles Gute, viel Kraft und viele viele Daumen drücken für den Projektinhaber von Solarprognose.
Viele Grüße
Uli
hab mal ein Beispieldokument gemacht für meine Anlage mit Ost/West-Ausrichtung, da in der wetterdaten.php momentan nur die Ostseite abgerufen wird. Funktioniert einwandfrei (lila im Bild). Einfach wie in der Anleitung vorgehen. Das Skript passt die wetterdaten.php automatisch an – ihr müsst in der Config nur noch die Daten und Koordinaten für eure Anlage ergänzen... Natürlich kann es auch auf die user.config.php angewendet werden. Bei mir steht halt 1.user.config.php in der Doku. Das Script muss nach jedem Update der Solaranzeige ausgeführt werden, daß die wetterdaten.php wieder ergänzt wird.
Hier noch die Ausgabe der Log....:
24.07. 21:20:01 |------------------- Start wetterdaten.php --------------------
24.07. 21:20:01 WET-Prognosedaten 1 werden abgeholt
24.07. 21:20:01 -Multi Regler Auslesen [Start].
24.07. 21:20:01 -Verarbeitung von: '1.user.config.php' Regler: 62
24.07. 21:20:01 |---------------- Start huawei_LAN.php -----------------------------
24.07. 21:20:01 -Huawei: 192.168.178.70 Port: 502 GeräteID: 1
24.07. 21:20:04 WET-Prognosedaten 2 werden abgeholt
24.07. 21:20:05 WET-URL: https://api.forecast.solar/estimate/wat ... 8/-90/4.62
24.07. 21:20:05 WET-Verbindung zum Wetterserver 'forecast.solar' erfolgreich.
24.07. 21:20:05 |------------------- Stop wetterdaten.php ---------------------
Alles Gute, viel Kraft und viele viele Daumen drücken für den Projektinhaber von Solarprognose.
Viele Grüße
Uli
- Dateianhänge
-
- Solaranzeige Ost-West Patch (wetterdaten.php).pdf
- (62.97 KiB) 20-mal heruntergeladen
-
Schranzkoeter
- Beiträge: 59
- Registriert: Mi 4. Okt 2023, 11:28
- Hat sich bedankt: 9 Mal
- Danksagung erhalten: 3 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Hallo Ulrich,
die Änderung der 1.user.config.php funktioniert. Nur bekomme ich seit 20.07 keinerlei Nachrichten auf Signal. In der Log-Datei sind einige Mitteilungen enthalten.
Hier noch ein Auszug der Log....
die Änderung der 1.user.config.php funktioniert. Nur bekomme ich seit 20.07 keinerlei Nachrichten auf Signal. In der Log-Datei sind einige Mitteilungen enthalten.
Hier noch ein Auszug der Log....
- Ulrich
- Administrator
- Beiträge: 5469
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 165 Mal
- Danksagung erhalten: 826 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Die Meldungen in der php.log können, müssen aber nichts damit zu tun haben. Von welchem Gerät sollen den Meldungen gesendet werden? Vom Growatt? So ein Fehler zu suchen ist etwas kompliziert aus der Ferne.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
-
Schranzkoeter
- Beiträge: 59
- Registriert: Mi 4. Okt 2023, 11:28
- Hat sich bedankt: 9 Mal
- Danksagung erhalten: 3 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Die Meldungen kamen vom Growatt u. von der DTU. Das hattest du mir glaube Anfang des Jahres eingerichtet
- Ulrich
- Administrator
- Beiträge: 5469
- Registriert: Sa 7. Nov 2015, 10:33
- Wohnort: Essen
- Hat sich bedankt: 165 Mal
- Danksagung erhalten: 826 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Hallo Bernd,
bitte melde dich einmal per eMail.
bitte melde dich einmal per eMail.
-----------------------------------------------------
Ulrich . . . . . . . . [ Admin ]
Ulrich . . . . . . . . [ Admin ]
-
dreamerpit
- Beiträge: 45
- Registriert: Mi 16. Aug 2023, 15:10
Re: Die Solarprognose funktioniert nicht mehr.
Hallo zusammen,
@Ulrich
die neuen Prognosedaten funktionieren auf Anhieb.
Da ich zwei Felder habe, eins in Südausrichtung und eins nach Westen, würde ich gerne den patch von Geins benutzen,
@Geins
Ich bin nach deiner Beschreibung vorgegangen, aber leider funktioniert es nicht.
Bekomme als Fehlermeldung
sed: -e Ausdruck #1, Zeichen 562: Unbekannter Befehl: »E«
Wäre dankbar um Hilfe
LG
@Ulrich
die neuen Prognosedaten funktionieren auf Anhieb.
Da ich zwei Felder habe, eins in Südausrichtung und eins nach Westen, würde ich gerne den patch von Geins benutzen,
@Geins
Ich bin nach deiner Beschreibung vorgegangen, aber leider funktioniert es nicht.
Bekomme als Fehlermeldung
sed: -e Ausdruck #1, Zeichen 562: Unbekannter Befehl: »E«
Wäre dankbar um Hilfe
LG
-
Geins
- Beiträge: 18
- Registriert: Mi 5. Okt 2022, 18:16
- Hat sich bedankt: 9 Mal
- Danksagung erhalten: 3 Mal
Re: Die Solarprognose funktioniert nicht mehr.
Hallo dreamerpit,
der Fehler liegt am PDF! Beim Rauskopieren von Code aus PDFs zerschießt es leider fast immer die unsichtbaren Zeilenumbrüche und Maskierungen. sed ist da extrem pingelig und wirft dann genau diesen "Unbekannter Befehl"-Fehler. Die Ausrichtung (Süd/West) ist dem Skript übrigens völlig egal, solange deine Variablen in der user.config.php stimmen.Hier ist eine kugelsichere Variante des Skripts. Diese schreibt den Code erst in eine temporäre Textdatei und pusht ihn dann in die wetterdaten.php. So umgehen wir alle Formatierungsprobleme. Einfach eine neue Datei anlegen (z.B. nano patch.sh), diesen Code exakt so reinkopieren, danach speichern, ausführbar machen und ausführen. Vorher noch in der user.config.php den 2'en String exakt so rein kopieren, bzw hinzufügen. In Deinem Fall:
In user.config.php unter den ersten String hinzufügen:
// 2. String (West)
$PV_Nennleistung2 = DEINE_LEISTUNG_IN_KWP; // z.B. 5.0
$Winkel2 = DEIN_WINKEL; // z.B. 35
$Suedausrichtung2 = 90; // 90 steht für Westen
Danach:
nano patch.sh ---Datei anlegen im var/...../html Verzeichnis und Code von unten rein kopieren. Speichern und exit....
chmod +x patch.sh ---Datei ausführbar machen
sudo ./patch.sh ---Patch ausführen
Damit sollte es auf Anhieb klappen!
Code für patch.sh:
#!/bin/bash
FILE="/var/www/html/wetterdaten.php"
if grep -q "SUED-WEST PATCH" "$FILE"; then
echo "Patch ist bereits installiert!"
else
# Temporäre Datei anlegen, um Copy-Paste-Fehler zu vermeiden
cat << 'EOF' > /tmp/wetter_patch.txt
// --SUED-WEST PATCH--
if (isset($PV_Nennleistung2) && $PV_Nennleistung2 > 0) {
$URL2 = str_replace("/".$Winkel."/".$Suedausrichtung."/".$PV_Nennleistung, "/".$Winkel2."/".$Suedausrichtung2."/".$PV_Nennleistung2, $URL);
$res2 = @file_get_contents($URL2);
$arr2 = json_decode($res2, true);
if(isset($arr2["result"])) {
foreach($Einzelwerte["result"] as $k => $v) {
if(isset($arr2["result"][$k])) $Einzelwerte["result"][$k] += $arr2["result"][$k];
}
}
}
// -------------------
EOF
# Block sauber mit sed einfügen
sed -i -e '/$Einzelwerte = json_decode($result, true);/r /tmp/wetter_patch.txt' "$FILE"
rm /tmp/wetter_patch.txt
echo "Sued-West Patch erfolgreich eingefuegt."
fi
der Fehler liegt am PDF! Beim Rauskopieren von Code aus PDFs zerschießt es leider fast immer die unsichtbaren Zeilenumbrüche und Maskierungen. sed ist da extrem pingelig und wirft dann genau diesen "Unbekannter Befehl"-Fehler. Die Ausrichtung (Süd/West) ist dem Skript übrigens völlig egal, solange deine Variablen in der user.config.php stimmen.Hier ist eine kugelsichere Variante des Skripts. Diese schreibt den Code erst in eine temporäre Textdatei und pusht ihn dann in die wetterdaten.php. So umgehen wir alle Formatierungsprobleme. Einfach eine neue Datei anlegen (z.B. nano patch.sh), diesen Code exakt so reinkopieren, danach speichern, ausführbar machen und ausführen. Vorher noch in der user.config.php den 2'en String exakt so rein kopieren, bzw hinzufügen. In Deinem Fall:
In user.config.php unter den ersten String hinzufügen:
// 2. String (West)
$PV_Nennleistung2 = DEINE_LEISTUNG_IN_KWP; // z.B. 5.0
$Winkel2 = DEIN_WINKEL; // z.B. 35
$Suedausrichtung2 = 90; // 90 steht für Westen
Danach:
nano patch.sh ---Datei anlegen im var/...../html Verzeichnis und Code von unten rein kopieren. Speichern und exit....
chmod +x patch.sh ---Datei ausführbar machen
sudo ./patch.sh ---Patch ausführen
Damit sollte es auf Anhieb klappen!
Code für patch.sh:
#!/bin/bash
FILE="/var/www/html/wetterdaten.php"
if grep -q "SUED-WEST PATCH" "$FILE"; then
echo "Patch ist bereits installiert!"
else
# Temporäre Datei anlegen, um Copy-Paste-Fehler zu vermeiden
cat << 'EOF' > /tmp/wetter_patch.txt
// --SUED-WEST PATCH--
if (isset($PV_Nennleistung2) && $PV_Nennleistung2 > 0) {
$URL2 = str_replace("/".$Winkel."/".$Suedausrichtung."/".$PV_Nennleistung, "/".$Winkel2."/".$Suedausrichtung2."/".$PV_Nennleistung2, $URL);
$res2 = @file_get_contents($URL2);
$arr2 = json_decode($res2, true);
if(isset($arr2["result"])) {
foreach($Einzelwerte["result"] as $k => $v) {
if(isset($arr2["result"][$k])) $Einzelwerte["result"][$k] += $arr2["result"][$k];
}
}
}
// -------------------
EOF
# Block sauber mit sed einfügen
sed -i -e '/$Einzelwerte = json_decode($result, true);/r /tmp/wetter_patch.txt' "$FILE"
rm /tmp/wetter_patch.txt
echo "Sued-West Patch erfolgreich eingefuegt."
fi
Wer ist online?
Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast