Ich will meine Rollladen schließen lassen, wenn zu viel Sonne rein scheint. Das Skript, das ich geschrieben habe, funktionierte ohne den Zähler (den ich als Timer brauche) und die Ansteuerung der Rollladen über eine Systemvariable.
Was mache ich falsch das er das der Zähler nicht funktioniert und welchen Datenpunkt muss ich nehmen um die Rollladenaktoren direkt anzusteuern.
Fehlermeldungen habe ich nicht bekommen.
Gruß Udo
Code: Alles auswählen
var Helligkeit = dom.GetObject("HmIP-RF.0017D709AE2D61:1.ILLUMINATION"). Value();
WriteLine(Helligkeit);
var Temp = dom.GetObject("HmIP-RF.000E5A498E0ABC:1.ACTUAL_TEMPERATURE"). Value();
WriteLine(Temp);
string uhrzeit = system.Date("%H:%M:%S");
WriteLine (uhrzeit);
real Hoehezu=0.4;
real Hoeheauf= 1.0;
integer Zahl=0;
integer Zaehlerzeit = system.Date("%S");
WriteLine (Zaehlerzeit);
if( (Zaehlerzeit==1)&&(Helligkeit<4000))
{Zahl=Zahl+1;};
WriteLine (Zahl);
if ((Helligkeit>=6000)&&(Temp>=24)&& ((uhrzeit >= "13:30:00")&&(uhrzeit <= "19:25:00")) )
{
dom.GetObject("HmIP-RF.00115A49996CF4:3.LEVEL").State("Hoehezu");
WriteLine ("Rollos runter");
}
if (((Helligkeit<=4000)&&(Zahl==30))||(Temp<=22) ||(uhrzeit=="19:29:00")&& ((uhrzeit >= "13:30:00")&&(uhrzeit >= "19:30:00")) )
{
dom.GetObject("HmIP-RF.00115A49996CF4:3.LEVEL").State("Hoeheauf");
WriteLine ("Rollos runter");
}
if ((Zahl>30)||(Helligkeit>4000))
{Zahl =0;}