6 November 2024
Afgelopen zomer werd mij gevraagd om mee te denken aan de vervanging van een bestaand lichtboard voor stichting SATISFACTION Rosmalen, die sinds 1967 elk jaar sociaal-culturele activiteiten en evenementen organiseert. Ooit begonnen als jongerensoos, is de stichting zich de laatste decennia gaan ontwikkelen als evenementenorganisator voor verschillende doelgroepen en leeftijden. Het bestaande lichtbord, gebouwd rondom fietslichtjes, was toe aan een vernieuwingsslag. Mijn voorstel om NeoPixel-kleuren-LEDs te implementeren in combinatie met een Arduino-C++-besturing en een RF-afstandsbediening werd enthousiast ontvangen. Samen hebben we vervolgens de verschillende lichtscènes gedefinieerd.
Na de zomervakantie kreeg ik het nieuwe bord van ruim 3 meter doorsnede aangeleverd, waarop het SATISFACTION-logo gelamineerd was aangebracht. Op basis van het vectorbestand van de logoletters heb ik boormallen voor elke letter gemaakt. Deze boormallen zorgen ervoor dat de NeoPixel-LEDs gelijkmatig over de letters zijn verdeeld, zodat een heldere en goede verspreiding van de lichteffecten plaatsvindt. De WS2811-LEDs zijn in een keten verbonden, waarbij elke LED een data-in en een data-out heeft. De totale LED-string bevat ruim 130 LEDs, wat zorgt voor een lange keten. Om verminderde lichteffecten te voorkomen, wordt de stroomtoevoer op meerdere plaatsen in de keten aangebracht, zodat er geen spanningsverlies ontstaat door te lange draden.
In de C++-code maak ik gebruik van de Adafruit NeoPixel-library. Hiermee is het mogelijk om elke pixel individueel aan te sturen en de kleur en intensiteit van elke pixel te bepalen. Deze standaardlibrary zorgt bij 130 pixels voor een refreshrate van meer dan 100 Hz. In de besturingskast heb ik twee knoppen aangebracht. Eén daarvan is een draaipotmeter, waarmee de kleurtint en intensiteit ingesteld worden. Ook is er een drukknop aanwezig waarmee tussen de verschillende lichtscènes gekozen kan worden. Met de kleurtint en intensiteit kan de verlichting worden afgestemd op de lokale setting. De lichtscènes ondersteunen de dynamiek van de omgeving en kunnen aangepast worden aan de creatieve setting. Voor gebruiksgemak is het lichtbord voorzien van een afstandsbediening, waarmee geschakeld kan worden tussen de verschillende lichtscènes. De laatste keuze zorgt voor een loop, waarbij elke lichtscène een aantal keren achter elkaar wordt uitgevoerd voordat er naar de volgende lichtscène wordt overgegaan. De C++-code is opgebouwd uit een aantal processen. Loops zijn vermeden door gebruik te maken van tijdsmetingen, waardoor de kleurovergangen en lichtscènes vloeiend in elkaar overgaan. In de toekomst is het uiteraard mogelijk om nieuwe scènes toe te voegen of bestaande lichtscènes aan te passen.
Dit soort projecten zijn erg leuk om te realiseren. Het maatwerk maakt dit soort werk vooral interessant: de keuze van de locatie van de verschillende NeoPixels, de opbouw van de onderscheidende lichtscènes en de interactie die het mogelijk maakt om kleurtinten en intensiteit te selecteren.