Sonnenuntergang erzeugen....

Hallo,

um den Filius mehr oder weniger mit langsamen dimmen in den Schlaf zu bringen, hab ich Ihm was mit
2 kleinen Scripten was realisiert.

Funktionieren tut das ganze wunderbar. Da ich allerdings noch ganz am Anfang stehe, würde
ich gerne eure Meinung hören, ob das so richtig war, ggf. ob Ihr was anders machen würdet ?!

Danke…


Script A)
Stehleuchte wird auf 96/100 gesetzt

HM_WriteValueFloat (54921 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer]*/, "LEVEL", 96/100 );

Script B)
Ich frag den Wert ab, und dimme jeweils - 10/100, wenn die Leuchte einen kleineren Wert als 98/100 und größer als 10/100 hat. Kleiner als 98/100 deswegen, damit nicht gedimmt wird, wenn die Lampe wirklich mal „nur“ ein sein soll, sprich, sie voll an ist. Größer als 10/100, weil das Script komischer Weise den Wert sonst wieder auf 96/100 stellte wenn er kleiner als 10/100 war ?!
Das wird alle 180 sec als zyklisches Ereignis aufgerufen.

$Stehleuchte_kz1_state = getvalue (24506 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer\LEVEL]*/ );
if ($Stehleuchte_kz1_state >= 10/100 and $Stehleuchte_kz1_state < 98/100)
{
HM_WriteValueFloat(54921 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer]*/, "LEVEL", ($Stehleuchte_kz1_state - (10/100)) );
}
else
{
//HM_WriteValueFloat(54921 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer]*/, "LEVEL", (0/100) );
}

Moin,

ich habe zwar keine Homematic-Dimmer aber ich vermute trotzdem das Du es unnötig kompliziert machst. Die Dimmaktoren haben einen Datenpunkt „RAMP_TIME“ (Rampenzeit), mit der Du die Dauer des Dimmvorganges vorgeben kannst. Den Rest macht der Aktor dann selbstständig.

Probiere doch mal folgendes:


HM_WriteValueFloat (54921 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer]*/, "RAMP_TIME", 1080 );
HM_WriteValueFloat (54921 /*[W27\Homematic\Festnetz\Stehleuchte Kinderzimmer]*/, "LEVEL", 0 );

Die Zahl bei der RAMP_TIME sind die Sekunden die der Vorgang dauern soll, in meinem Beispiel also 18 Minuten.

Alle Datenpunkte findest Du in diesem Dokument.

Danke,

deswegen habe ich ja die Frage auch gestellt. Bin ja noch ganz am Anfang! :wink:

Werde ich später mal testen!

Ich glaube den Datenpunkt RAMP_TIME gibt es bei Wired nicht - nur bei Funk. Und bei der Benennung „Festnetz“ tippe ich mal auf Homematic Wired?

Das stimmt, kann nur der Funkaktor.

Festnetz sollte besser Netzstromgebunden heißen!

Also - wenn Funk dann alles gut. :slight_smile: Dann hat Titus recht und der Aktor kann das ohne skripttechnische Handstände Deinerseits.

Gerade mal getestet!

Auf und abdimmen funktioniert beides einwandfrei.

Einziger Wehrmutstropfen:

Der aktuelle Dimmzustand wird nicht mehr angezeigt!

Verständlich. Stelle Dir vor Du hast eine Rampe von 2 Sekunden um von 100% auf 0% zu dimmen. Dann müsste der Aktor ja dutzende Pakete innerhalb von 2 Sekunden schicken und seine Sendezeit für diese Stunde dürfte relativ schnell aufgebraucht sein :slight_smile:

Das wird zwar nicht andauernd aktualisiert aber doch regelmäßig. Zwischenwerte sollten also sichtbar sein.

Da gibt es doch noch die „working“-Variable, zeigt die nix an?

Klar!

Aber halt nicht mehr den Dimmzustand! Thema abgehakt!
Wäre nett gewesen, aber nicht kriegsentscheidend!

Nachtrag - FYI

Die Level Anzeige blieb jetzt bei 15min. Dimm Vorgang unverändert!