Stromverbrauch auswerten

Hallo kann mir wehr weiterhelfen würde gerne meinen Stromverbrauch vom Jahresanfang weg bis zum aktuellen Zeitpunkt mit dem vom vorigen Jahr selber Zeitraum vergleichen ob zb +100kw/h oder -100kw/h verbraucht wurde im selben Zeitraum.
Hofe mir kann wer weiterhelfen
Danke
Gruß Stefan

Hi,

Hier zum Beispiel:
https://www.symcon.de/service/dokumentation/modulreferenz/archive-control/ac-getaggregatedvalues/

Lese ich Monatswerte aus und schreibe in eine Tabelle.

Gruß

Hab das mal so gelöst

<?



$werte = AC_GetAggregatedValues(43615 /*[Archiv]*/, 58570 /*[Stromzähler\gesamt kw/h\Jahresverbrauch\Gesamt Jahresverbrauch Heizung]*/, 4 /* Täglich */, mktime(0, 0, 0, 1, 1, 2017), strtotime("today 00:00")-1, 0);


foreach($werte as $wert) {
	echo $wert['Avg'] . "kw/h "  . PHP_EOL;
}


?>

wie kann ich das jetzt in eine variable schreiben?
und wie machst du diese tabelle?
gruß

Hi,

bin zwar kein Profi :slight_smile:

  1. String Variable erstellen mit dem HTMLBox Profil

  2. Script erstellen und anpassen

<?
$preis = 0.2344; //Kwh Preis
$archive = 29681 ; //ID Archive Control
$quelle = 29034; //Variable von dem Stromzähler
$jahr = 2017;
$variable = 59261; //ID Erstellte String Variable

//Januar
$jan = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 1, 1, $jahr), mktime(23, 59, 59, 1, 31, $jahr), 0);

foreach($jan as $jan_end) {
	$januar=sprintf("%.2f",($jan_end['Avg']))." kW";
	$kosten_jan = sprintf("%.2f",($januar*$preis))." €";
}
//Februar
$feb = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 2, 1, $jahr), mktime(23, 59, 59, 2, 31, $jahr), 0);

foreach($feb as $feb_end) {
	$februar=sprintf("%.2f",($feb_end['Avg']))." kW";
	$kosten_feb = sprintf("%.2f",($februar*$preis))." €";
}
//März
$mer = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 3, 1, $jahr), mktime(23, 59, 59, 3, 31, $jahr), 0);

foreach($mer as $mer_end) {
	$maerz=sprintf("%.2f",($mer_end['Avg']))." kW";
	$kosten_mer = sprintf("%.2f",($maerz*$preis))." €";
}
//April
$apr = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 4, 1, $jahr), mktime(23, 59, 59, 4, 31, $jahr), 0);

foreach($apr as $apr_end) {
	$april=sprintf("%.2f",($apr_end['Avg']))." kW";
	$kosten_apr = sprintf("%.2f",($april*$preis))." €";
}
//Mai
$ma = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 5, 1, $jahr), mktime(23, 59, 59, 5, 31, $jahr), 0);

foreach($ma as $ma_end) {
	$mai=sprintf("%.2f",($ma_end['Avg']))." kW";
	$kosten_ma = sprintf("%.2f",($mai*$preis))." €";
}
//Juni
$jun = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 6, 1, $jahr), mktime(23, 59, 59, 6, 31, $jahr), 0);

foreach($jun as $jun_end) {
	$juni=sprintf("%.2f",($jun_end['Avg']))." kW";
	$kosten_jun = sprintf("%.2f",($juni*$preis))." €";
}
//Juli
$jul = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 7, 1, $jahr), mktime(23, 59, 59, 7, 31, $jahr), 0);

foreach($jul as $jul_end) {
	$juli=sprintf("%.2f",($jul_end['Avg']))." kW";
	$kosten_jul = sprintf("%.2f",($juli*$preis))." €";
}
//August
$aug = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 8, 1, $jahr), mktime(23, 59, 59, 8, 31, $jahr), 0);

foreach($aug as $aug_end) {
	$august=sprintf("%.2f",($aug_end['Avg']))." kW";
	$kosten_aug = sprintf("%.2f",($august*$preis))." €";
}
//September
$sep = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 9, 1, $jahr), mktime(23, 59, 59, 9, 31, $jahr), 0);

foreach($sep as $sep_end) {
	$september=sprintf("%.2f",($sep_end['Avg']))." kW";
	$kosten_sep = sprintf("%.2f",($september*$preis))." €";
}
//Oktober
$okt = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 10, 1, $jahr), mktime(23, 59, 59, 10, 31, $jahr), 0);

foreach($okt as $okt_end) {
	$oktober=sprintf("%.2f",($okt_end['Avg']))." kW";
	$kosten_okt = sprintf("%.2f",($oktober*$preis))." €";
}
//November
$nov = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 11, 1, $jahr), mktime(23, 59, 59, 11, 31, $jahr), 0);

foreach($nov as $nov_end) {
	$november=sprintf("%.2f",($nov_end['Avg']))." kW";
	$kosten_nov = sprintf("%.2f",($november*$preis))." €";
}
//Dezember
$dez = AC_GetAggregatedValues($archive, $quelle, 3 /* Täglich */, mktime(0, 0, 0, 12, 1, $jahr), mktime(23, 59, 59, 12, 31, $jahr), 0);

foreach($dez as $dez_end) {
	$dezember=sprintf("%.2f",($dez_end['Avg']))." kW";
	$kosten_dez = sprintf("%.2f",($dezember*$preis))." €";
}
//Gesammt
$gess = AC_GetAggregatedValues($archive, $quelle, 4 /* Täglich */, mktime(0, 0, 0, 1, 1, $jahr), mktime(23, 59, 59, 12, 31, $jahr), 0);

foreach($gess as $gess_end) {
	$gesammt=sprintf("%.2f",($gess_end['Avg']))." kW";
	$kosten_gess = sprintf("%.2f",($gesammt*$preis))." €";
}



//Tabelle Erstellen

$s = "<style type='text/css'>"; 
    $s = $s . "table.test { width: 100%; border-collapse: true;}"; 
    $s = $s . "Test { border: 1px solid #444455; }</style>"; 
    $s = $s . "<table class='test'>"; 
	
	  $s = $s . "<tr>"; 
        $s = $s . "<td style='background: #121212;' colspan='2'><B>Zeitraum</td>"; 
        $s = $s . "<td style='background: #121212;' colspan='2'><B>Verbrauch 2017</td>"; 
        $s = $s . "<td style='background: #121212;' colspan='2'><B>Kosten 2017</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'><B>Verbrauch 2018</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'><B>Kosten 2018</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 

$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>Januar</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$januar</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_jan</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>Februar</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$februar</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_feb</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>März</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$maerz</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_mer</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>April</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$april</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_apr</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>Mai</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$mai</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_ma</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>Juni</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$juni</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_jun</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>Juli</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$juli</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_jul</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>August</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$august</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_aug</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>September</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$september</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_sep</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>Oktober</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$oktober</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_okt</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>November</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$november</td>"; 
        $s = $s . "<td style='background: #343434;' colspan='2'>$kosten_nov</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>Dezember</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$dezember</td>"; 
        $s = $s . "<td style='background: #656565;' colspan='2'>$kosten_dez</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
$s = $s . "<tr>"; 
        $s = $s . "<td style='background: #40a800;' colspan='2'><B>Gesammt</td>"; 
        $s = $s . "<td style='background: #40a800;' colspan='2'><B>$gesammt</td>"; 
        $s = $s . "<td style='background: #40a800;' colspan='2'><B>$kosten_gess</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>T3</td>"; 
        //$s = $s . "<td style='background: #223344;' colspan='2'>T4</td>"; 
        //$s = $s . "<td style='background: #774477;' colspan='2'>IP-Symcon</td>"; 
        $s = $s . "</tr>"; 
        $s = $s . "<tr>"; 
SetValue($variable, $s);
?>
  1. Ausführen

Gibt eine Fehlermeldung weil ab Juni 2017 ja noch keine werte gibt. Aber ich lasse den Script Zyklisch einmal am Tag Ausführen und Fertig.
Kann auch erweitert werden (T3,T4) sind auskommentiert. Da kommt Später 2018 Daten, dann habe ich die Übersicht von 2017 und 2018 Monatsweise.

Es geht bestimmt viel, viel einfacher :wink:
Reicht für mich aber aus.

Gruß

Danke werts mal testen

Bekomme jetzt diese Fehlermeldung:

In Zeile 6 fehlt der Strichpunkt ; am Ende

genau das wars danke