Tuneable White/ Dual White DMX LED Stripe

Hallo zusammen,
ich habe mir LED-Stripes mit 2700 und 5000 Kelvin Weiß gekauft. Nun möchte ich diese per DMX ansteuern. Das passt soweit technisch aber ich ich möchte die dynamische Geschichte einbauen. Da brauche ich eure PHP-Hilfe. Wie kann ich einen Wert in einer Variablen auf den Bereich 0 bis 255 in PHP begrenzen, so dass sich der DMX-Befehl nicht beschwert, wenn in meiner Berechnung mal außerhalb dessen etwas raus kommt?
Da meine Stripe nur von 2700 bis 5000 und nicht von 1000 bis 12000 geht wie das schöne TW-Profil, muss ich DMX Werte unter 0 und über 255 in den Variablen $valueD_CW und $valueD_WW verhindern.

Hier mein Script um aus einem Integer Dimm-Wert 0-255 ($valueD) und dem TunableWhite/TW-Wert ($valueTW) sowie den Ober- und Untergrenzen was meine LED-Stripe kann einen Wert von 0-255 für die zwei DMX-Kanäle zu machen.

<?php

include("28971.ips.php"); //Licht Basis-Konfigurationen

//Dimm- und Weiß-Wert
$valueD = GetValueInteger(49382);
$valueTW = GetValueInteger(37457);

//Grenzwerte Kalt und Warmweiß in der Lampe/ Stripe
$lampCold = 5000;
$lampWarm = 2700;

//Kanäle Ziel
$C = 17; //Kaltweiß
$W = 18; //Warmweiß

//DMX_FadeChannel($dmx0, $W, $valueD, $dmxtime);

//rechne kaltweiß
$valueD_CW = ($valueD * ($valueTW-$lampWarm)/($lampCold-$lampWarm));
//print($valueD_CW);
DMX_FadeChannel($dmx0, $C, $valueD_CW, $dmxtime);

//rechne warmweiß
$valueD_WW = ($valueD * (1-(($valueTW-$lampWarm)/($lampCold-$lampWarm))));
//print($valueD_WW);
DMX_FadeChannel($dmx0, $W, $valueD_WW, $dmxtime);

Viele Grüße und eines erfolgreiches 2022!
papaschlumpf

PS: @paresy : Wäre klasse, wenn das TW-Profil auch so toll aussehen würde, wenn man Min und Max verändert. Ich dupliziere es und schon ist die schöne Darstellung weg. Mir würde 2700 bis 5000K zum Beispiel ausreichen.

1 „Gefällt mir“

Wir haben den Wunsch auf unserer ToDo. Fürs erste sollte aber ein if mit < 0 und > 255 reichen, welches dies anpasst. Ansonsten geht es auch sehr schick mit den min/max Befehlen.

paresy

Hoffe das das TW Profil möglichst schnell kommt. :innocent:

TWColor Profil gibt es ja schon. Nur die Verkleinerung des Intervalls erwarte ich nun freudig :wink:

Danke für die Tipps. Dann wird’s wohl eine if-Prüfung.

papaschlumpf