HM: Dimmen auf einen Wert in X Zeit

Ich bin endlich von FS20 auf HM gewechselt und musste feststellen, das HM keine Timer kennt :frowning:

Also musste ich per Script lösen :wink:

Ich weis nicht ob der richte Weg ist aber es funzt:

Von aus ( Level 0) auf 30% (Level 0.3) :

<?


$licht=GetValue (28771 /*[R‰ume\Wohnzimmer\Wohnzimmer Licht 1\Intensit‰t]*/   ); //Variable Level vom Licht das Ihr dimmen wollt (ich habe die Umbenannt)

$light1=35876 /*[R‰ume\Wohnzimmer\Wohnzimmer Licht 1]*/  ; // Dimmer den Ihr dimmen wollt

//print "$licht";

if ($licht>=0.3) //der Dimm-Wert den man zum Schluss haben will
{
HM_WriteValueFloat($light1  , "LEVEL", 0.3);
IPS_SetScriptTimer($IPS_SELF, 0); // Scripttimer ausschalten 
}

else
{
$licht2=$licht + 0.05; // in 0.05 Schritt erhöhen 
IPS_SetScriptTimer($IPS_SELF, 4); // Scripttimer auf 4 Sekunden setzten

HM_WriteValueFloat($light1  , "LEVEL", $licht2); //HM Dimmbefehl 
}
?>

Und hier wenn man von Level x auf aus (Level 0) dimmen will:

<?


//Variable Level vom Licht das Ihr dimmen wollt (ich habe die Umbenannt)

$light1=35876 /*[R‰ume\Wohnzimmer\Wohnzimmer Licht 1]*/  ; // Dimmer den Ihr dimmen wollt

//print "$licht";

if ($licht >=0.1) //der Dimm-Wert den man zum Schluss haben will

{
$licht2=$licht - 0.10; // Dimmer um Level 0.10 verringern
IPS_SetScriptTimer($IPS_SELF, 8); //Scripttimer auf 8 Sekunden setzten

HM_WriteValueFloat($light1  , "LEVEL", $licht2);



}

else
{
HM_WriteValueFloat($light1  , "LEVEL", 0.0); // Der gewünschte Dimmwert setzten.

IPS_SetScriptTimer($IPS_SELF, 0); // Scripttimer ausschalten
}

?>

Ich hoffe es ist verständlich :slight_smile:

Du willst innerhalb einer bestimmten Zeit von Wert A nach Wert B dimmen?

Guck mal: http://www.ip-symcon.de/forum/f50/rampenzeit-11869/#post98850

Es gibt doch

HM_WriteValueFloat($id_dimmer, "RAMP_TIME", $ramp_on);

$ramp_on ist int in Sekunden.

kronos war schneller :wink:

OK warum steht sowas nicht in der IPS Doku ?

Woher wisst Ihr das ?

Vielen Dank :slight_smile:

Die Datenpunkte von HM studieren.

http://www.homematic.com/fileadmin/pdfs/HM_Script_Teil_4_Datenpunkte_1_503.pdf

Letztendlich sind es keine speziellen Befehle die in IPS nicht dokumentiert wurden sondern Parameter zu den dokumentierten Befehlen. Wäre aber wirklich gut wenn solche Parameter auch in der Doku zu finden wären.

Auch auf die Gefahr hin mich zu wiederholen:

Guckst Du: http://www.homematic.com/fileadmin/pdfs/HM_Script_Teil_4_Datenpunkte_1_503.pdf

Nachtrag @Werner: Jetzt steht es 1:1 :slight_smile:

Wäre aber wirklich gut wenn solche Parameter auch in der Doku zu finden wären.

Angenehm wäre das schon - ist glaube ich aber nicht wirklich der Job von IPS da es ja auch noch Unterschiede der einzelnen Geräte in Abhängigkeit der Firmware gibt. Da ist eher die Doku des Herstellers gefragt. Ein Hinweis auf die Datenpunkte auf der Herstellerseite wäre aber sicher nicht zu viel verlangt.

Bin ich voll deiner Meinung, weil ich bin davon ausgegangen das es einfach keinen Timer gibt.

Vielen Dank das hätte mix 30min Scripten gespart :wink:

Vielen vielen Dank !!!

Hallo alle zusammen,

ich habe für die SPS einen einfachen Rampenbaustein.

Parameter:

Master
Slave
Schrittweite
Equal_Bit

Den könnte ich in PHP umsetzen. Für zukünftige Anwendungen. :wink:

Besteht da Interesse?

Nimm es als Übung. Bin auch schon einmal bei der „ON_TIME“ rein gefallen.

ich hab auch ein mit Anfangs- und Endverrundung.
Die Umsetzung dauert aber etwas länger!!