Wo muss was in diesem Skript stehen?

Hallo
Ich versuche seit einigen Tagen dieses einfache Skript auf meinen Stromzähler anzupassen. Leider habe ich das System noch nicht verstanden wann man was wo einfügt. Ich hab e versucht meine Counter ID und Die Zähler-ID(2) so einzufügen dass alles ohne eine Fehlermeldung angezeigt wird. Nun denke ich dass dies auf Dauer keinen Wert hat.
Ich würde gerne verstehen was dies Variablen sind.

$counter_neu = GetValueInteger(37358 
$counter_alt = GetValueInteger17074 
SetValueInteger(17074
SetValueInteger(42585

Ich denke dass diese Variablen durch meine ersetzt werden müssen dass das Skript läuft.
Kann mir jemand mit meinen Daten zeigen was verändert werden muss.
Vielen dank Fränki

<?
//Stromverbrauch
//Digitaler Stomzähler 800 Impulse = 1KW
$Zaehlerfaktor = 0.00125 ; //Digitaler Stomzähler 800 Impulse = 1KW, kleinste Einheit = 1,25W
$Auslesefaktor = 30;       // 1min = 60, 2min = 30, 5min = 12, 10min = 6
//Aktuelle Leistung
//**********************************************************************
$counter_neu = GetValueInteger(37358 /*[Keller\Serverraum\Zähler Hausstrom / Gas\Zähler 1]*/);     // aktueller Zaehlerstand (Zähler 1) einlesen
$counter_alt = GetValueInteger(17074 /*[Keller\Serverraum\Zähler Hausstrom / Gas\Zähler 1 Zwischen]*/);  //alten Zählerwert auslesen
$delta = $counter_neu - $counter_alt;     //alter Wert von neuen Wert abziehen
SetValueInteger(17074 /*[Keller\Serverraum\Zähler Hausstrom / Gas\Zähler 1 Zwischen]*/ , $counter_neu );    //aktueller Zählerwert ablegen
SetValueInteger(42585 /*[Keller\Serverraum\Zähler Hausstrom / Gas\Zähler 1 Diff]*/, $delta );          //Ausgabe Differenz zwischen alt und aktuell

//Berechung Verbrauch
//**********************************************************************
$deltaKWh = ($delta * $Zaehlerfaktor) * $Auslesefaktor  ;     // Verbrauch Impulse = 1KW * Faktor der Auslesung
if ($deltaKWh < 1000) //Wenn die aktuelle Leistung kleiner als 5KW, dann Ausgabe Freigabe für Anzeige
   {
  $round_deltaKWh = round ($deltaKWh, 3);   // auf 2 Stellen runden
  SetValueFloat(31126 /*[Status\Stromverbrauch\Aktueller Verbrauch kW]*/ , $round_deltaKWh);   // Ausgabe Stromeinspeisung pro Std.
 }
//Tagesleistung
//**********************************************************************
//Aufaddieren Summe Tag, Integer
//****************************************************************
  $Solar_Tagesleistung = GetValueInteger(56114 /*[Status\Stromverbrauch\Zähler Tagesleistung]*/  );  //Solar Tagesleistung Summe einlesen
  $Solar_Tagesleistung_neu = $Solar_Tagesleistung + $delta;  //neue Tagesleistung berechnen
  SetValueInteger(56114 /*[Status\Stromverbrauch\Zähler Tagesleistung]*/  , $Solar_Tagesleistung_neu);
//Monatsleistung
//**********************************************************************
//Aufaddieren Summe Monat, Integer
//****************************************************************
  $Solarstrom_Mon_Summe = GetValueInteger(23138 /*[Status\Stromverbrauch\Zähler Monatsleistung]*/   );
  $Solarstrom_Mon_Summe_neu = $Solarstrom_Mon_Summe + $delta ;
  SetValueInteger(23138 /*[Status\Stromverbrauch\Zähler Monatsleistung]*/   , $Solarstrom_Mon_Summe_neu);  //

if ($deltaKWh < 8.0) //Wenn die aktuelle Leistung kleiner als 35KW, Werte zur Tages- und Monatsleistung dazu zählen
   {
  //Anzeige Tagesleistung
  //*************************************************************
  $Solar_Tagesleistung_KW = $Solar_Tagesleistung_neu * $Zaehlerfaktor;  // Einspeisung 800 Umdrehungen = 1KW
  $Round_Solar_Tagesleistung = round ($Solar_Tagesleistung_KW, 2);     // auf 2 Stellen runden
  SetValueFloat (11283 /*[Status\Stromverbrauch\Tagesverbrauch kW/h]*/   , $Round_Solar_Tagesleistung);

  //Anzeige Monatswerte
  //*************************************************************
  $Solarstrom_Mon_Summe_neu_1 = $Solarstrom_Mon_Summe_neu * $Zaehlerfaktor;
  $Round_Solarstrom_Mon_Summe_neu_1 = round ($Solarstrom_Mon_Summe_neu_1, 2);     // auf 2 Stellen runden
   SetValueFloat ( 45561 /*[Status\Stromverbrauch\Monatsverbrauch kW/h]*/  , $Round_Solarstrom_Mon_Summe_neu_1);
 }
else
 {
 }
?>

Eigentlich steht ja alles in den Kommentaren hinter den Variablen.

Du mußt dir noch einige Variablen manuell anlegen. Welchen Typ siehst Du auf Grund der Set- oder GetValue…-Befehls.

In dem von Dir angesprochenen Teil sind es zwei um den alten Zählerstand zwischenzuspeichern sowie die Differenz daraus zu berechnen.

Weiter unter folgen dann noch die 3 Variablen die Dir den momentanen, den Tages sowie den Monatsverbrauch anzeigen.

Ich habe das Skript auch nur übernommen sollte aber mit den Beschreibung im Skript leicht nachvollziehbar sein.

Servus

ich kenn dein Script jetzt nicht im Detail, so wie es aussieht müßtest du:

$counter_neu = GetValueInteger(37358 /[Keller\Serverraum\Zähler Hausstrom / Gas\Zähler 1]/); —>> auf deinen Zähler zeigen lassen, also: 46671

für alle anderen je eine eigen Integervariable (Name ist egal) anlegen und die ID dann in die Get/Set einpflegen.

btw: mit <STRG> O zeigt dir IPS einen Auswahldialog an, mit der du leicht Variablen ID und deren Namen aus dem baum aussuchen und in ein Script übernehmen kannst.

viel Glück
bb

Hallo
Danke für eure Hilfe.
Ich habe das Skript schon mal so umgemoddelt dass es keinen Fehler anzeigt und meine ersten selbst erstellten Variablen mit Werten füllt.
Nun kann ich mich mal an die Feinheiten machen.
Danke Fränki