Hinter dem heutigen Türchen finden Sie einen Fototransistor. Er wird verwendet, um die Umgebungshelligkeit zu messen. In dieser Schaltung liegt das Poti in Reihe zum Fototransistor. So kann man mit dem Poti die Sensibilität des Sensors verändern. Die Schaltung bewirkt, dass das Abdunkeln des Sensors den Messwert erhöht.

Dies können Sie im Gauge-Element auf dem Nutzerinterface zum heutigen Tag sehen. Dazu müssen Sie aber zunächst den Flow des heutigen Tages in Ihre Node-RED-Umgebung importieren und starten, natürlich nicht, ohne den gestrigen zu deaktivieren. Vergessen Sie auch nicht, das heutige Programm auf der Konfigurationsseite zu aktvieren und die IP des UDP-Sende-Nodes anzupassen.
Zusätzlich zur Anzeige der Messwerte kommt auch wieder die OnBoard-LED zum Einsatz. Diese soll, abhängig vom gemessenen Wert, die Farbe automatisch den Lichtverhältnissen anpassen. Wenn es absolut dunkel ist, soll die LED rot leuchten. Je heller es wird, desto mehr verändert sich die Farbe über Grün nach Blau. So können Sie Ihren Arbeitsplatz abends zum Beispiel mit einem entspannenden Rot beleuchten, während tagsüber ein kräftiges Blau leuchtet.

Der Range-Node Node rechnet die gemessenen Werte von 0 bis 4095 auf einen Bereich von 240 bis 0 um. Damit wird die gewünschte LED-Farbe im sogenannten HSV-Format gesendet. HSV steht für Hue, Saturation und Value, also Farbton, Sättigung und (hier) Helligkeitswert. Es handelt sich um eine alternative Darstellung zum RGB-System. Im HSV-Format wird der Farbton durch einen Winkel von 0° bis 360° dargestellt. Rot entspricht 0°, Grün liegt bei 120° und Blau bei 240°. Deswegen wird an dieser Stelle der Messwert in einen Wert bis 240 umgerechnet, denn damit ist die ganze Farbpalette von Rot bis Blau abgedeckt. Im folgenden Template-Node wird das Kommando zusammengestellt, das anschließend an das Board gesendet wird. Bei einem mittleren Wert wäre das Kommando:
{“cmd”:“set_rgb_hsv”,“value”:“hsv(120, 100%, 100%)”}
Die Prozentzeichen nach der Sättigung und der Helligkeit können auch weggelassen werden. Das Board ändert nun die Farbe und sendet als Bestätigung die gleichen Werte mit dem Kommando get_rgb_hsv zurück. Dies wird ebenfalls von Node-RED empfangen und anhand eines Color-Picker-Elements auf der Interface-Webseite dargestellt. So können Sie immer verfolgen, welche Farbe das Board gerade anzeigt.

Es funktioniert. Irritierend ist die Meldung "Unexpected number in JSON at position 36", die ich im debug-Fenster erhalte. Kommt vom Board ab und zu eine falsche JSON Meldung? Was ist die Ursache und wie kann ich Meldung loswerden?
Vielen Dank und einen schönen Sonntag
Gérard