#!/usr/bin/php "; $aktuell = 0; $gesamtenergie = 0; $tagesenergie = 0; $s1_spannung = 0; $s1_strom = 0; $s2_spannung = 0; $s2_strom = 0; $l1_spannung = 0; $l1_leistung = 0; $l2_spannung = 0; $l2_leistung = 0; $l3_spannung = 0; $l3_leistung = 0; $uuid_pv_aktuell="< UUID des entsprechenden Messwerts>"; $uuid_pv_gesamt="< UUID des entsprechenden Messwerts>"; $uuid_pv_gesamt_seit_installation="< UUID des entsprechenden Messwerts>"; $uuid_pv_tagesenergie="< UUID des entsprechenden Messwerts>"; $uuid_pv_s1_spannung="< UUID des entsprechenden Messwerts>"; $uuid_pv_s1_strom="< UUID des entsprechenden Messwerts>"; $uuid_pv_s2_spannung="< UUID des entsprechenden Messwerts>"; $uuid_pv_s2_strom="< UUID des entsprechenden Messwerts>"; $uuid_pv_l1_spannung="< UUID des entsprechenden Messwerts>"; $uuid_pv_l2_spannung="< UUID des entsprechenden Messwerts>"; $uuid_pv_l3_spannung="< UUID des entsprechenden Messwerts>"; $uuid_pv_l1_leistung="< UUID des entsprechenden Messwerts>"; $uuid_pv_l2_leistung="< UUID des entsprechenden Messwerts>"; $uuid_pv_l3_leistung="< UUID des entsprechenden Messwerts>"; // Das ist die, bis zum 06 Mai 2013, erzeugte Energiemenge // Hier wurde das Controlboard ausgetauscht und damit der // Gesamtenergiezähler zurückgesetzt. $diff_06_05_2013="477"; // Folgende Funktionen kann man aktivieren durch entfernen der '//' //error_reporting(E_WARNING); // Errors unterdrücken //error_reporting(0); // Errors und Warnings unterdrücken // Hier die Webseite vom Websever eintragen pvserver = user und pvwr = Password $url = "http://:@"; // Webseite Laden $Ausgabe = file_get_contents("$url", "r"); // Aus der Webseite die Informationen herauspicken $pos1 = strpos($Ausgabe,"aktuell"); // Suche nach Position mit Inhalt "aktuell" $pos2 = strpos($Ausgabe,"FF\">",$pos1+12)+6; // Suche nach 'FF">' ab pos1+12 für (aktuell) // und zähle 6 Zeichen für (FF">^M) dazu $pos3 = strpos($Ausgabe,"",$pos2); // Suche nach Position mit Inhalt "" ab pos2 $aktuell = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos1 = strpos($Ausgabe,"Gesamtenergie"); $pos2 = strpos($Ausgabe,"FF\">",$pos1+18)+6; $pos3 = strpos($Ausgabe,"",$pos2); $gesamtenergie = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos1 = strpos($Ausgabe,"Tagesenergie"); $pos2 = strpos($Ausgabe,"FF\">",$pos1+17)+6; $pos3 = strpos($Ausgabe,"",$pos2); $tagesenergie = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos1 = strpos($Ausgabe,"String 1"); $pos2 = strpos($Ausgabe,"FF\">",$pos1+8)+6; $pos3 = strpos($Ausgabe,"",$pos2); $s1_spannung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l1_spannung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $s1_strom = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l1_leistung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos1 = strpos($Ausgabe,"String 2"); $pos2 = strpos($Ausgabe,"FF\">",$pos1+8)+6; $pos3 = strpos($Ausgabe,"",$pos2); $s2_spannung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l2_spannung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $s2_strom = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l2_leistung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos1 = strpos($Ausgabe,"L3"); $pos2 = strpos($Ausgabe,"FF\">",$pos1+2)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l3_spannung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); $pos2 = strpos($Ausgabe,"FF\">",$pos3)+6; $pos3 = strpos($Ausgabe,"",$pos2); $l3_leistung = str_replace(" ","", substr($Ausgabe,$pos2,$pos3-$pos2)); // Übergeben der Messwerte an eine Datenbank des volkszähler.org projekts // Ausgabe aller Werte print "Aktuell : $aktuell\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_aktuell.json?operation=add&value=$aktuell", "r"); print "Gesamtenergie : $gesamtenergie\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_gesamt.json?operation=add&value=$gesamtenergie", "r"); // Die Gesamt erzeugte Energie berechnen unter berücksichtigung der Werte bei Zähler rücksetzungen (Reperatur oder Austausch) $gesamtberechnet=$diff_06_05_2013+$gesamtenergie; print "Gesamtberechnet : $gesamtberechnet\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_gesamt_seit_installation.json?operation=add&value=$gesamtberechnet", "r"); print "Tagesenergie : $tagesenergie\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_tagesenergie.json?operation=add&value=$tagesenergie*1000", "r"); print "S1_Spannung : $s1_spannung\n"; // Mein Wechselrichter Controll Board hat ein fehler und zeigt ab uns zu statt eine Spannung in Volt den Wert 'Spa' an, // daher logge ich nur dann wenn es auch eine Spannung ist. if( $s1_spannung != "Spa" ) { file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_s1_spannung.json?operation=add&value=$s1_spannung", "r"); } print "S1_Strom : $s1_strom\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_s1_strom.json?operation=add&value=$s1_strom", "r"); print "S2_Spannung : $s2_spannung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_s2_spannung.json?operation=add&value=$s2_spannung", "r"); print "S2_Strom : $s2_strom\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_s2_strom.json?operation=add&value=$s2_strom", "r"); print "L1_Spannung : $l1_spannung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l1_spannung.json?operation=add&value=$l1_spannung", "r"); print "L1_Leistung : $l1_leistung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l1_leistung.json?operation=add&value=$l1_leistung", "r"); print "L2_Spannung : $l2_spannung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l2_spannung.json?operation=add&value=$l2_spannung", "r"); print "L2_Leistung : $l2_leistung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l2_leistung.json?operation=add&value=$l2_leistung", "r"); print "L3_Spannung : $l3_spannung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l3_spannung.json?operation=add&value=$l3_spannung", "r"); print "L3_Leistung : $l3_leistung\n"; file_get_contents("http://$server_url/middleware.php/data/$uuid_pv_l3_leistung.json?operation=add&value=$l3_leistung", "r"); ?>