RGBW-868 LED Aquarienlicht

Hallo,

ich habe mir ein RGBW-868 LED von IPS bestellt.
Ich möchte damit Sonnenauf- /-untergang und Mondlicht in meinem Aquarium basteln.
Ich habe ein Script gefunden:

// Installation:
//1. Bei $LEDid die ID der RGBW-868 Instanz eintragen.
//2. Script mit dem Ausühren-Button oder Runscript starten.
//3. Es ist alles so schön bunt hier!

//An-Ausschalten mit:
//1. "Ausführen" Button im Editor oder
//2. IPS_runscript (diese Script-ID) oder
//3. direktes Ändern der Variablen "Aktiv" auf true oder false

//Zu Hell? Helligkeit im Objektbaum einstellbar (1-255)
//Dimmzeit im Objektbaum einstellbar

$LEDid=32126 /*[Objekt #32126 existiert nicht]*/;


if(($IPS_SENDER == "Runscript")or($IPS_SENDER == "Execute")or($IPS_SENDER == "Dashboard")){
   $aktivid =LEDCreateVariableByName($IPS_SELF, "Aktiv", 0);
    $maxlumid=LEDCreateVariableByName($IPS_SELF, "Helligkeit (1-255)", 1);
    $fadetimeid=LEDCreateVariableByName($IPS_SELF, "Dimmzeit (Sek.)", 1);
    $eid = @IPS_GetEventIDByName("Aktiv-Event", $IPS_SELF);
   if($eid===false) {
      $eid = IPS_CreateEvent(0);
      IPS_SetEventTrigger($eid, 1, $aktivid);
      IPS_SetParent($eid, $IPS_SELF);
      IPS_SetName($eid, "Aktiv-Event");
      IPS_SetEventActive($eid, true);
   }
   SetValue ($aktivid, (GetValue($aktivid) ? false:true));
    }

if($IPS_SENDER == "Variable")    {
   $aktivid = @IPS_GetVariableIDByName("Aktiv", $IPS_SELF);
   $aktiv=GetValue($aktivid);
    if($aktiv){
       IPS_SetScriptTimer($IPS_SELF, 1);
        }
    else{
       IPS_SetScriptTimer($IPS_SELF, 0);
       PJ_DimRGBW($LEDid,0,0,0,0,0,0,0,0);
       }
    }

if($IPS_SENDER == "TimerEvent"){
   $maxlumid=LEDCreateVariableByName($IPS_SELF, "Helligkeit (1-255)", 1);
    $fadetimeid=LEDCreateVariableByName($IPS_SELF, "Dimmzeit (Sek.)", 1);
    $maxlum=GetValue($maxlumid);
    if (($maxlum>=256)or($maxlum<=0)){
        $maxlum=255;
        SetValue($maxlumid,$maxlum);
        }
   $fade=GetValue($fadetimeid);
    if ($fade<=0){
        $fade=10;
        SetValue($fadetimeid,$fade);
        }
    PJ_DimRGBW($LEDid,rand(0,$maxlum),$fade,rand(0,$maxlum),$fade,rand(0,$maxlum),$fade,0,0);
    IPS_SetScriptTimer($IPS_SELF, $fade);
    }

function LEDCreateVariableByName($id, $name, $type)    {  //Variablen auslesen bzw. erstellen
   $vid = @IPS_GetVariableIDByName($name, $id);
   if($vid===false) {
      $vid = IPS_CreateVariable($type);
      IPS_SetParent($vid, $id);
      IPS_SetName($vid, $name);
   }
   return $vid;
}

Ich blicke nicht ganz durch.
Meine Anforderung sind:
Sonnenaufgang:
zu einer bestimmten Uhrzeit blaues LED von 100 auf 0% (in einer gewissen Zeit); dazu rotes LED von 0 auf 100% (in einer gewissen Zeit); dazu nach einer gewissen Zeit gelbes LED von 0 auf 100% (in einer gewissen Zeit);
Sonnenuntergang;
genau umgekehrt;
Mondlich:
soll von Sonnenuntergang bis Sonnenaufgang leuchten;

Könnt Ihr mir auf die Sprünge helfen wie ich beginnen soll?

Danke

Jörg

… viel zu kompliziert -eine Zeile, dass reicht:

PJ_DimRGBW($id, $r,$tr,$g,$tg,$b,$tb,$w,$tw);

und dann hier:

MST

Hallo,

Danke;
aber damit dimme ich die LED ja nur hoch, richtig?
Wie dimme ich die LED von 100% auf 0?
Kann ich einzelne Farben auch zeitversetzt dimmen, zuerst rot und nach einer gewissen Zeit gelb?

Edit:
Nachsatz: ich habe die Aquariumbeleuchtung fix von 11:00-21:00 Uhr ein;
Vorher soll Sonnenaufgang danch Sonnenuntergang simuliert werden.

Danke

Jörg

Hallo Jörg

Genauso, nur, dass Du den Wert 0 für die Farbe angibst.

Kann ich einzelne Farben auch zeitversetzt dimmen, zuerst rot und nach einer gewissen Zeit gelb?

Mit einem weiteren Befehl, den Du zur gegeben Zeit gibst.

Kann ich dieses Skript auch für Fibaro RGB-W controller Benutzen?
Jemand ne Ahnung (;