In 2020 en 2021 heb ik samen met Sfinx Games, Project Gamify en Miho Arts gewerkt aan een interactieve installatie voor de Open Science Hub in Dwingeloo. Het museum miste nog een aansprekende installatie, en zocht iets over zwarte gaten. Dit is wat we samen bedacht hebben:
Het jaar is 2364 en een team van wetenschappers is bezig met een missie om energie te onttrekken aan de rand van een zwart gat. Helaas is het verschrikkelijk misgegaan en is hun ruimteschip opgezogen door het zwarte gat! Gelukkig heeft een aantal astronauten het overleefd : ze zweven in de buurt van het zwarte gat en wachten op redding. JIJ bent die redding! Beweeg met je ruimteschip zo dicht mogelijk naar het zwarte gat om zoveel mogelijk astronauten te redden. Maar pas op! Als je te dicht bij het zwarte gat komt, gaat het mis. De veilige afstand noemen we de Schwarzschildstraal of de “Event Horizon”. Als je over die grens heen gaat, word je het zwarte gat ingezogen …..
Wat is mijn bijdrage?
In overleg met de Science Hub Dwingeloo werd het thema van de installatie bepaald. Ook was er al een lokatie (een gebogen gang) die geschikt was voor de installatie. Mijn voornaamste taak was (natuurlijk) de interactie-hardware voor deze Experience kiezen en ervoor zorgen dat het ook ter plaatse werkte. Dat betekende, dat ik er ook voor moest zorgen dat de installatie robuust is en simpel te gebruiken (met 1 enkele knop aan en uit te zetten). Verder waren er 3 specifieke elementen van belang bij deze installatie:
Hoe detecteer je, hoever een speler in de gang staat? Daarvoor gebruiken we een Lidar.
Hoe zorg je, naast het grote scherm, voor (visuele) feedback die de speler laat zien waar hij in het spel is? Met behulp van ledstrips.
Hoe laat je, naast het grote scherm, de speler zien dat hij astronauten heeft gered? Met behulp van gobo projecties op de wand.
Lidar
De kern van het spel in deze installatie is dat je als speler de gang inloopt tot een bepaalde “veilige” afstand. Daarvoor is het noodzakelijk dat het systeem nauwkeurig kan bepalen wat de afstand is van de speler tot het scherm. We gebruiken daarvoor een Lidar, die dit top op de centimeter nauwkeurig kan bepalen!
Deze systemen zijn redelijk goedkoop te krijgen, en gelukkig had mijn zoon Thijs er al enige ervaring mee, zodat ik snel aan de slag kon.
Belangrijke uitdagingen in de software waren, ervoor te zorgen dat het systeem niet teveel data te verwerken krijgt, en dat er geen “valse” signalen doorgegeven worden, die het spel beïnvloeden.
Daarnaast moesten er natuurlijk behuizingen ontworpen en geprint (3D print) worden om de Lidar op een robuuste manier in de installatie te kunnen plaatsen.
Ledstrips
Een belangrijk deel van het spel gebeurt in de gang, al voor het scherm. Het moet de speler duidelijk zijn waar het systeem denkt dat hij is, en wat de status van het spel is – dat moet niet alleen zichtbaar zijn op het scherm!
Daarvoor gebruiken we ledstrips: deze bevatten individueel aan te sturen LEDs, die dus hele verschillende patronen kunnen laten zien. Ledstrips zijn met hele simpele microcomputers aan te sturen!
In het project heb ik verschillende libraries gemaakt voor diverse patronen van de ledstrips.
Gobo projectoren
De astronauten die je redt worden een voor een links voor je op de wand geprojecteerd. Dat gebeurt met zogenaamde “gobo projectoren”, die met relais geschakeld worden. (De foto doet geen recht aan hoe mooi de astronauten, door Nadine Baumgartner (Miho Arts) gemaakt, er op de wand uit zien.)
Een lastig en onverwacht probleem ontstond, toen bleek dat bij gebruik de relais van de relaismodule na ongeveer 10 minuten ophielden met werken? Uiteindelijk bleek de oorzaak te liggen in de wisselstroommotor die ook deel uitmaakt van de gobo projector, en die bij schakelen vervelende piekspanningen levert. Toen dat duidelijk was, kon het probleem opgelost worden!
Waar ben ik het meest trots op?
Ik denk dat ik het meest trots ben op het werkend krijgen van de lidar, en de verschillende libraries voor de Ledstrips! Dit project stelde echt hele diverse problemen, maar het is gelukt om ze allemaal op te lossen.