Het Amsterdam Sounds project
Het project Amsterdam Sounds brengt geluid in Amsterdam in kaart. Momenteel vindt de tweede pilot plaats op het Marie Heinekenplein in de Pijp in Amsterdam. Hier vind je de kaart met geluidsmetingen. We onderzoeken hoe een burgermeetnetwerk kan bijdragen aan het vinden van oplossingen voor geluidsoverlast. Om dit te kunnen doen is een belangrijk onderdeel van het project het meten van geluidsniveaus met een sensornetwerk van open source/hardware geluidsmeters. Voor Amsterdam Sounds heeft Waag haar eigen open source geluidsmeters ontwikkeld. In dit blog leggen we uit welke keuzes er gemaakt zijn en waarom.
Open source technologie
Bij al onze projecten, maar zeker bij de citizen science projecten, maken we zoveel mogelijk gebruik van open technologie. Het maakt het voor burgers en onszelf mogelijk om grondig te snappen waar het over gaat en we geloven dat het de betrokkenheid bij het project vergroot. Daarnaast vermindert open technologie het aantal afhankelijkheden van externe partijen, omdat je altijd zelf de broncode kunt aanpassen. Om maar een voorbeeld te noemen, de sensoren in een sensornetwerk sturen de verzamelde data naar een data platform. In veel gevallen wordt dat beheert door de fabrikant van het sensorkastje en zal je een abonnement moeten nemen om de data te kunnen bekijken.
Bij aanvang van het project was er één serieuze optie voor een open geluidsmeter om in te zetten, namelijk de Smart Citizen Kit 2.1, maar uiteindelijk is er toch voor gekozen zelf een geluidsmeter te ontwikkeld om volledig aan onze eisen te voldoen.
De Amsterdam Sounds kit versie 1
Onze vereisten:
- low-budget
- voor consument verkrijgbare onderdelen
- in elkaar te zetten door hobbyisten
- klasse 2
- dBA
- netwerk connectiviteit
- data
soevereiniteiter is volledige controle over wat de sensor met de data doet - outdoor
- makkelijk te installeren in een stedelijke omgeving
- open
alle broncode, hardware ontwerpen en designs zijn openbaar en kunnen door anderen gebruikt en aangepast worden - privacy
de sensor slaat geen data op die naar individuele personen te herleiden is
Hieronder volgt een uitleg van welke keuzes we hebben gemaakt om aan de bovenstaande lijst te voldoen.
Binnenwerk
Voor dit soort toepassingen (een apparaat dat iets meet en dat dan vervolgens verstuurd) kom je al snel bij een op een microcontroller gebaseerde oplossing uit. Er is gekozen voor een Adafruit Feather M0 board, omdat de microcontroller op dit board krachtig genoeg is voor het doen van de benodigde audioverwerking. Daarbij ondersteund deze microcontroller I2S, wat het mogelijk maakt om een microfoon met digitale interface te koppelen. Dit biedt enkele voordelen: het zorgt ervoor dat we minder componenten nodig hebben (geen losse AD converter) en het verkleint de kans op radiostoring RFI) [1].
De MEMS microfoon (SPH0645LM4H) op het breakout board en Feather microcontroller board kunnen direct met elkaar verbonden worden via de digitale I2S interface.
Als microfoon is er gekozen voor een MEMS. Dit type microfoon, dat ook in je smartphone zit, is goedkoop en robuust. Het is relatief ongevoelig voor temperatuurschommelingen en heeft een relatief uniforme part-to-part frequentierespons, wat wil zeggen dat onderlinge microfoons van hetzelfde type weinig in output verschillen. Een voordeel hiervan zou kunnen zijn dat er minder noodzaak is om alle microfoons individueel te kalibreren. Dit zijn we op het moment van schrijven nog aan het onderzoeken. Voor het Amsterdam Sounds project, waar onze sensoren voor ontwikkeld zijn, is een kleine afwijking niet heel erg omdat het vooral interessant is om naar de relatieve waarden en patronen te kijken. Op het moment dat er gekeken wordt of bijvoorbeeld de Lden binnen de norm valt is het wel heel belangrijk dat dit precies klopt. Een nadeel van MEMS-microfoons, althans voor de hobbyist, is dat deze erg klein zijn en niet te hanteren met een normale soldeerbout. Gelukkig bestaan er breakout boards, hanteerbare printplaatjes, met de component erop. Wel is de keuze uit MEMS breakout boards erg beperkt.
Netwerk
De Amsterdam Sounds kit is een Internet of Things (IoT) toepassing en heeft een netwerk nodig om data te versturen. Wij kiezen voor dit soort toepassingen afhankelijk van de situatie meestal tussen WiFi en LoRa [2]. Het laatste is een IoT technologie die het mogelijk maakt voor apparaten om energiezuinig over langere afstanden (long-range, oftewel LoRa) te verbinden. LoRa devices verbinden met een speciale LoRa gateway die aan het internet hangt, net zoals een wifi-access point aan het internet hangt. Op veel plaatsen staan al dergelijke gateways van het meest bekende publiek netwerk: The Things Network. Op plekken waar geen dekking is het mogelijk om zelf een gateway plaatsen en zodoende het publieke netwerk uit te breiden.Bij vergelijkbare citizen sensing projecten was de keuze voor een netwerk duidelijk. Bijvoorbeeld binnen het project Hollandse Luchten kozen we voor LoRa omdat er veel sensoren geplaatst moesten worden binnen één gebied waar niet overal mensen wonen met een WiFi netwerk. Je kunt dan met enkele LoRa gateways een heel gebied dekken. Binnen een ander project, GammaSense, moesten er kastjes verspreid worden over heel Nederland. Daar was de keuze voor WiFi voordehandliggend omdat deze kastjes bij mensen thuis geplaatst konden worden én omdat de spreiding dermate was dat we veel LoRa gateways hadden moeten plaatsen. Binnen het Amsterdam Sounds project worden er veel kastjes in hetzelfde gebied geplaatst én bij mensen thuis. Er is dus zowel iets te zeggen voor LoRa als voor WiFi. Uiteindelijk is er voor LoRa gekozen om de installatie van het apparaat bij de deelnemers thuis makkelijk te maken. Zij hoeven de geluidsmeter nu niet te configureren voor het WiFi netwerk bij hen thuis. Er kleeft ook een nadeel aan LoRa, namelijk dat er minder data over kan worden verstuurd. Hoe we daarmee omgaan lees je verderop in dit artikel.
Behuizing en bevestiging
De geluidsmeters worden geïnstalleerd aan de gevels van huizen van deelnemers. Er zijn verschillende goede kant-en-klare weerbestendige behuizing voor elektronica. Echter, het is onwenselijk om een microfoon in een gesloten kastje te bouwen, omdat het kastje een akoestische werking heeft op het geluid. Het was een kleine zoektocht om de microfoon zoveel mogelijk buiten het kastje te plaatsen, en deze tegelijk ook te beschermen tegen het weer. We hebben uiteindelijk een 3D printbare microfoonhouder ontworpen. Deze heeft als doel om de microfoon op enige afstand buiten het kastje te kunnen plaatsen en dient als ondersteuning voor een windkap met een standaardafmeting. Het idee is dat de ronde bal (afbeelding) zoveel mogelijk akoestisch transparant is, een goede windkap is dat ook en zodoende krijgen we het geluid onvervormd binnen. Nu kan via de windkap (een soort spons) en via condenswerking natuurlijk wel vocht naar binnen, terwijl er geen vocht in het kleine geluidsgat van de MEMS microfoon mag komen. Voor een eerste prototype hebben we dit proberen op te lossen met een echo sondebeschermer, een soort condoom. Deze bleek helaas ook een grote invloed te hebben op het geluid dat de meter bereikte.
De akoestisch werking van de echo sondebeschermer bleek te groot.
Uiteindelijk hebben we het gat van de microfoon beschermt met een ePTFE membraan, verkregen bij een Chinese fabrikant via Alibaba. Dit soort membraan is akoestisch transparant en zit ook in de behuizing van een smartphone om de microfoons en speakers te beschermen. Enig nadeel is dat deze membranen niet voor consumenten bedoeld zijn en daarom is het lastig om deze in kleine aantallen te bestellen.
Het geluidsgat van de microfoon wordt beschermd met een ePTFE membraan.
Ook het vinden van een handige bevestigingsmethode om de geluidsmeter aan de gevel te bevestigen was een kleine zoektocht. Een geluidsmeter kan het beste op enige afstand van de gevel geplaats worden, omdat reflectie van geluid tegen de gevel invloed heeft op de meting. Daarbij willen we het voor deelnemers aan het project zo makkelijk mogelijk maken om een meter te plaatsen, het liefst zonder boren en schroeven. Dit in acht nemende en omdat voor deze pilot de meter vooral in stedelijk gebied wordt geplaatst waar overal glas te vinden is, hebben we besloten om te experimenteren met het gebruik van zuignappen. De zuignap op de afbeelding behoort tot de uitrusting van een glaszetter. Het bleek handig dat er een standaardformaat PVC buis in het holle handvat kan worden geschoven. Om het kastje aan de buis te bevestigen gebruiken we een GoPro fietsstuurhouder. De zuignappen die in de eerste pilot zijn bevestigd hebben ruim een jaar op het raam gezeten, en bleken daarmee een eenvoudige en robuuste manier om de geluidsmeters te plaatsen.
Data en verwerking
Het geluid dat binnenkomt via de microfoon wordt uitgelezen op de microcontroller. Om het geluidsniveau in dBA te bepalen wordt er 32 keer per seconde een klein hapje van het geluid geanalyseerd, waarbij er ook de dBA weging wordt toegepast. Deze weging is nodig omdat de menselijk waarneming van geluidsniveau niet overeenkomt met de natuurkundige bepaling van geluidsniveau. Mensen horen bepaalde frequenties (met name die in het spraakgebied) harder. Uiteindelijk stuurt de meter geluidsniveaus door naar het netwerk. Het geluid zelf wordt niet opgeslagen of doorgestuurd en daarmee is ook privacy gewaarborgd.
De data van de geluidsmeter wordt verstuurd via het publieke LoRa netwerk van The Things Network, de data rate van deze technologie is helaas beperkt. De meter kan zodoende niet 32 maal per seconde een meting doorsturen. Daarom stuurt de meter elke minuut een statistiek over de afgelopen periode (van een minuut). Deze samenvatting bestaat uit de laagste gemeten waarde, de hoogst gemeten waarde, de gemiddelde en een standaarddeviatie. De door TTN ontvangen samenvatting gaat via het MQTT protocol op ons eigen dataplatform.
Bekijk alle code voor de Amsterdam Sounds-kit, documentatie en meer details over de onderdelen en alles wat je nodig hebt om zelf een geluidsmeter te bouwen.
Eerste resultaten
Zoals bij al onze citizen sensing projecten lopen we ook hier weer tegen het probleem aan dat het kalibreren een uitdaging is. Gecertificeerde geluidsmeters worden in een laboratorium individueel gekalibreerd met een speciale geluidsbron. Bij een klasse 1 geluidsmeter draagt dit proces flink bij aan de kosten van het apparaat. Voor een citizen science project zou het ook behoorlijke drempels opwerpen. In het meest ideale geval maken we zelfs een meetinstrument dat helemaal geen individuele kalibratie nodig heeft om aan de door ons gestelde specificatie van een klasse 2 (afwijking max 2 dBA) geluidsmeter te voldoen. De voorwaarde is dan dat de MEMS-microfoons onderling (part-to-part) weinig in output verschillen.Om de werking van ons instrument te bevestigen vergelijken we het met een commerciële klasse 1 geluidsmeter op dezelfde locatie. Dit doen we met meerdere Amsterdam Sounds kits.
De Amsterdam Sounds kit en de klasse 1 geluidsmeter naast elkaar.
Omdat de maximale fout van de klasse 1 Convergence Instrument’s referentie geluidsmeter ongeveer 0.5 dBA is (datasheet) en een klasse 2 geluidsmeter een maximale fout mag hebben van 2.0 dBA, betekent dit dat onze meter maximaal 1.5 dBA mag afwijken van de referentie meter. We zijn op dit moment nog aan het onderzoeken of voor al onze eigen meters de afwijking ten opzichte van de klasse 1 meter steeds binnen deze marge blijft, zonder dat er correcties voor individuele meters hoeven te worden opgenomen.
De Amsterdam Sounds kit en de klasse 1 vergeleken rondom de jaarwisseling in de Korte Leidsedwarsstraat. Het verschil in uurgemiddelden is op één moment groter dan 1.5dBA
Op de kaart zie je live-data van de Amsterdam Sounds kits en de data van de klasse 1 geluidsmeter die we als referentie gebruiken.
Voetnoten
- Het is ook mogelijk om een analoge microfoon direct aan een microcontroller te koppelen via een analoge input op deze microcontroller. Deze hebben alleen vaak een kleinere bit depth (het aantal bits om getallen uit te drukken, bijvoorbeeld 12 bit). Met minder bits kun je minder grote getallen uitdrukken en dit vertaalt zich in minder dynamisch bereik (het verschil tussen minimum en minimum waarde) van de geluidsmeter. Ter vergelijking, audio CD’s hebben een 16 bit bit depth wat zich vertaalt in een dynamisch bereik van 96dB. Met 12 bits kom je slechts to 72dB, te weinig voor onze toepassing.
- Er wordt voor IoT toepassingen ook steeds meer gebruikt gemaakt van LTE-M. Deze technologie maakt het net als LoRa mogelijk energiezuinig te verzenden, maar dan via een bestaand 4G netwerk. Het voordeel is dat er landelijke dekking is. Een nadeel is dat IoT devices die via dit netwerk werken hebben een simkaart en een abonnement nodig hebben.