10 april 2023
Eerder deze week kreeg ik de vraag of het mogelijk zou zijn publiek tijdens een congres automatisch toe te spreken wanneer er geluidsoverlast wordt gewekt in aangrenzende ruimtes. Dit vond ik meteen een interessante vraag – het vraagt om een sensor, een processor en een vorm van feedback met licht en/of geluid. Toepassingen hiervoor zijn op veel terreinen te bedenken. Bibliotheken, scholen, musea, publieke ruimten, stiltegebieden en andere locaties in zakelijke omgevingen waar beheersing van geluid belangrijk is.
Geluid meten is elektronisch mogelijk, hiervoor kunnen traditionele microfoons, maar tegenwoordig worden ook minuscule, zogenaamde MEMS (Micro-ElectroMechanical Systems) microfoons ingezet . De gemeten geluidsdruk kan door een microprocessor uitgelezen worden en omgezet worden in een variabele. Ik gebruik in dit geval een Nano 33 BLE Sense deck, waar al een MP34DT05 microfoon ingebouwd is. Met gebruik van de PDM library Pulse-Density Modulation lees ik tientallen keren per seconde de geluidsdruk uit. Een potentiometer stelt het niveau in waarop de DFRobot MP3 speler getriggerd wordt. Deze DFRobot MP3 speler kan oa. MP3 files afspelen, welke op een micro-SD card ingebracht kunnen worden. In dit geval heb ik meerdere versies van ‘Psst, stilte graag!’ toegepast.
In de C++ code wordt in de initialisatieroutine alles rondom het starten van de microfoon en het MP3 deck geregeld. Vervolgens heb ik een aantal variabelen gedefinieerd waarin ik de geluidsdruk, de verstreken tijd, het triggerniveau en alle benodigde IO poorten declareer. In de continue loop wordt de actuele geluidsdruk uitgelezen – welke met PWM de helderheid van de LEDs aanstuurt. In dezelfde loop wordt gekeken of het bepaalde triggerniveau bereikt is. Wanneer dit bereikt is, gaan de LEDs helder knipperen en wordt er een MP3 ‘Pssst, stilte graag, Silence please!’ geluidsfragment afgespeeld. Gemeten met een USB vermogensmeter blijkt dat er gemiddeld 53mA verbruikt wordt. Met een USB battery-pack van 10.000mAh zou deze ruim een week draadloos kunnen functioneren.
Functionaliteit is uiteraard uitbreidbaar. Zo kan er bijvoorbeeld een logfile bijgehouden worden met daarin geregistreerd exact op welk tijdstip welke gemiddelde geluidsdruk van toepassing is, en vooral ook wanneer het triggerniveau bereikt is en de MP3 box een waarschuwing heeft gegeven. Uitbreidingen met extra licht en geluid behoren ook de mogelijkheden. Het schakelen van een relais of het aansturen van een opto-coupler of een motor of lineair actuator is mogelijk. Maar ook kan de gemeten geluidsdruk online in een IoT omgeving uitgelezen worden, met daarbij inzicht in trendontwikkeling over de afgelopen uren/dagen. Ik zie een brede range aan toepassingen voor me – en heb als aanloop hiervoor het zogenaamde Proof of Concept gemaakt. Wordt ongetwijfeld vervolgd… en terugkomend op de vraag ‘of het mogelijk zou zijn publiek tijdens een congres automatisch toe te spreken wanneer er geluidsoverlast wordt gewekt in aangrenzende ruimtes’ : hierop kan ik volmondig ja zeggen en daarbij gelijk een werkend voorbeeld tonen.