FS20 runter dimmen und dann ausschalten

Ich bekomme das einfach nicht hin. Der Befehl zum runter dimmen kommt über IRTrans. Es wird ein Script ausgeführt der Die Lampe über 15 Sekunden auf 0 dimmt. Jedoch bleibt dabei die Lampe (z.B. für das Webmodul) an.

Ich habe mir schon ein Script erstellt welches die Lampe ausschaltet und habe als Ereignis folgendes genommen = Variable: IntensityVariable (der Lampe) - bei bestimmten Wert „0“. Jedoch geht die Lampe immer sofort aus und nicht erst nach 15 Sekunden.

Kann mir da jemand helfen?

Tom

Moin,

hab noch nicht ganz verstanden wo Dein Problem liegt.
Der IR-Trans-Befehl kommt aber an und Du hast Deinem Script auch ein Event zugeordnet dass das Script auf diesen Befehl hin startet?
Ich mach genau das gleiche, bei mir klappt´s.
Hier ein Teil des Scriptes:

FS20_SetIntensity(50183, 0, 5);  // Leselampe hinten ausdimmen
IPS_Sleep(1000);
FS20_SetIntensity(26533, 0, 4);  // Lichtschlauch vorne ausdimmen
IPS_Sleep(500);
FS20_SetIntensity(13379, 0, 10);  // Lichtschlauch hinten ausdimmen

Mein Script zum runterdimmen läuft ohne Probleme. Jedoch ist der Status der Lampe dann noch ein und nicht auf aus. Aus diesem Grund möchte ich ein FS20_SwitchMode(44007, False); hinter her schicken. Mache ich das gleich im Script wird nicht erst gedimmt, sondern die Lampe geht gleich aus. Mach ich das per Ereignis (IntensityVariable) geht die Lampe leider auch gleich aus.

IPS_Sleep ist laut Beschreibung nur für eine kurze Wartezeit, da aber die Lampen über einen Zeitraum von 15 Sekunden runter dimmen, wird das nicht gehen.

Moin,

hast Du es mt IPS_Sleep schonmal ausprbiert? 15 Sekunden sollten eigentlich schon noch gehen. Die Dauer eines Scriptes darf 30 Sekunden nicht überschreiten.

Ansonsten kann man mit „IPS_SetScriptTimer“ festlegen wann ein Script ausgeführt werden soll:

IPS_SetScriptTimer("LS_runter",45);  // in 45 Sekunden Lautsprecher runterklappen

Und hier der Inhalt von „LS_runter.ips.php“:

FS20_SwitchDuration(20726, TRUE, 10);
IPS_SetScriptTimer("LS_runter",0);

So könntest Du Deinen Ausschaltbefehl verpacken.
Oder kann man nicht die Status-Variable händisch auf FALSE setzen?

Das geht bei mir leider beides nicht.

IPS_SetScriptTimer(„Lampen - aus“, 15);
==> im „Lampen - aus“ Script stehen dann FS20_SwitchMode(44007, False); usw.
==> Lampen gehen dennoch sofort aus

auch mit:
IPS_Sleep(15000); und dann FS20_SwitchMode(11374, false);
gehen die Lampen sofort aus

Seltsam.
Hab´s gerade mal ausprobiert - ein:

FS20_SetIntensity(50183, 0, 15);  // Leselampe hinten ausdimmen
IPS_Sleep(15000);
FS20_SwitchMode(50183, false);

funktioniert bei mir genau wie es soll…

Habe es nun genau wie von Dir beschrieben gemacht und nach ausführen sieht es dann so aus:

<?

FS20_SetIntensity(52486 /[Wohnzimmer\Garten - Dimmer FS20]/, 0, 15); // Leselampe hinten ausdimmen
IPS_Sleep(15000 /[Objekt #15000 exisitert nicht]/);
FS20_SwitchMode(52486 /[Wohnzimmer\Garten - Dimmer FS20]/, false);

?>

aus IPS_Sleep(15000); wird:
IPS_Sleep(15000 /[Objekt #15000 exisitert nicht]/);

und natürlich ist die Lampe auch wieder sofort ausgegenagen (ohne dimmen auf 0). Falls es weiter hilft ich habe die V2

interessant - ich benutze noch die V1…

Dann sieht das wohl ganz nach einem Problem in der V2 aus…

Ich setzt einfach die Statusvariable auf false.
Damit steht der Dimmer dann auf AUS.
Funktioniert bei mir so bestens.

z.b

FS20_SetIntensity(39670 /*[Test\FS20 DI-3 Testdimmer 1]*/, 0, 3);
 		SetValueBoolean(14692 /*[Test\FS20 DI-3 Testdimmer 1\StatusVariable]*/, false);

Ralf

Hallo Ralf, vielen Dank! So geht es.

Bei mir bringt er den Fehler, dass der nur Lese zugriff hat und die Variable nicht ändern kann

Du bist auch im Version 1.0 Archiv ;). Die Skripte werden wohl eher nicht mehr gehen

paresy