MonkMakes Air Quality Kit met de Raspberry Pi
Noodgedwongen verblijven velen van ons momenteel in afgescheiden ruimtes (veelal thuis), dus modules om daar goedkoop de luchtkwaliteit in de gaten te houden winnen aan populariteit. De MonkMakes Air Quality Kit meet het in die ruimtes heersende CO2-gehalte en de temperatuur. De kit is speciaal ontworpen om te worden gebruikt met een Raspberry Pi 400, maar kan met behulp van jumpersnoertjes en een meegeleverde GPIO-sjabloon ook worden aangesloten op andere Raspberry Pi versies.
MonkMakes Air Quality Kit
Thermometers worden al lang gebruikt om de kamertemperatuur te monitoren. Maar de laatste jaren is de (e)CO2 meter steeds populairder geworden voor het tevens monitoren van de luchtkwaliteit. Te veel koolstofdioxide (CO2) heeft namelijk een negatief effect op het concentratievermogen, en op nog hogere niveaus is het eveneens slecht voor de gezondheid. De Air Quality Kit van Monkmakes meet daarom de temperatuur én de kwaliteit van de lucht in een ruimte (hoe muf de lucht is). Hij is ontworpen als een add-on voor de Raspberry Pi, maar kan ook worden gebruikt als een stand-alone apparaat. De module heeft een zoemer en een balk van zes LED's (twee groene, twee oranje en twee rode) die de luchtkwaliteit weergeven. Temperatuur- en luchtkwaliteitsmetingen kunnen aanvullend worden verwerkt door een Raspberry Pi. Daarnaast kunnen de zoemer en het led-display door de Pi worden aangestuurd.
De kit wordt geleverd zonder papieren documentatie maar men biedt wel een link naar de MonkMakes-website, waar de datasheet en instructies kunnen worden gedownload. Deze online documentatie bevat alle relevante informatie die de gebruiker nodig heeft om de module aan te sluiten en te gebruiken. Verder kunnen voorbeeldtoepassingen voor de kit, gemaakt in Python, worden gedownload op Github.
.
Hardware
Naast de zes indicator-LED's en de zoemer (de grote vierkante component in het midden van de PCB in figuur 1) bevat de module ook een power-LED, een temperatuursensor, een eCO2-sensor, een microcontroller en natuurlijk een 40-pins connector die direct op de uitbreidingsconnector van een Raspberry Pi 400 past (figuur 2).
Misschien onnodig om te zeggen: andere Raspberry Pi-setjes kunnen niet direct worden aangesloten, daarvoor worden jumpersnoertjes meegeleverd. De vier benodigde aansluitingen (twee voor de voeding, twee voor de seriële aansluiting) worden weergegeven op de afdruk op de MonkMakes module en op de meegeleverde sjabloon, die verder de weg wijst naar de overeenkomstige pinnen van de GPIO-connector van de Raspberry Pi, zoals geïllustreerd in figuur 3. De voedings-LED licht op zodra de 3,3 V voedingsspanning wordt ingeschakeld, net als één van de eCO2-LED's.
De temperatuursensor is een Texas Instruments TMP235. De uitgangsspanning is bij deze sensor evenredig met de temperatuur. Ten behoeve van de CO2 meting maakt de MonkMakes kit gebruik van een CCS811 TVOC (Total Volatile Organic Compounds) sensor. Deze meet niet rechtstreeks het gehalte van de CO2 maar het niveau van een groep gassen die ‘vluchtige organische stoffen’ (VOC's) worden genoemd. Binnenshuis stijgt het niveau van deze gassen met een snelheid die vergelijkbaar is met die van CO2 en kan daarom als maatstaf worden gehanteerd om het niveau van CO2 (de equivalente CO2 of eCO2 genoemd) te schatten.
De ingebouwde ATtiny1614 microcontroller leest hierbij beide sensoren en bedient het LED-staafdisplay en de zoemer. Via een serieel protocol kan een host, zoals een Raspberry PI, een sensormeting aanvragen of de LED's en de zoemer in- en uitschakelen. De datasheet van de kit beschrijft dit eenvoudige protocol, dus het zal niet al te moeilijk zijn om eigen software te schrijven om de Air Quality Kit te ondersteunen. Zoals de titel van dit artikel al aangaf, is de kit ontworpen voor Raspberry Pi, maar er is geen reden waarom je hem niet zou gebruiken met andere boards of systemen met een 3.3 V UART.
De firmware van de ATtiny biedt overigens ook een automatische modus (standaard ingeschakeld) die het eCO2 niveau op de LED-balk toont zonder enige externe aansturing; het enige wat dan nodig is betreft een 3,3 V-voeding. Dus ook zonder enige aanvullende host kan de Air Quality Kit als eCO2-monitor worden gebruikt.
MonkMakes Air Quality Kit Software
Zoals eerder aangeven biedt MonkMakes ook downloads met enkele Python-voorbeeldprogramma's om deze Air Quality Kit te besturen en om al zijn functies te testen en te demonstreren. In het gedeelte Getting Started van de documentatie is in de instructies duidelijk te lezen hoe de software op een RaspberryPi kan worden toegepast om een eCO2-meter, een eCO2-meter met akoestisch alarm (figuur 4) en een datalog toepassing te implementeren.
Indien je naar die voorbeelden kijkt, zoals in figuur 5, zul je merken dat de ATtiny en de API je volledig ontlasten van het ophalen en evalueren van sensorgegevens. Met een eenvoudige instructie van de host (de Raspberry Pi) kan de Air Quality Kit aangestuurd worden om respectievelijk de huidige omgevingstemperatuur (in ° C) of het CO2-niveau (in ppm) terug te sturen naar de host. Vergelijkbare commando's worden gebruikt om de zoemer in en uit te schakelen en om de LED's van het eCO2-staafdisplay te bedienen.
MonkMakes biedt een mooi en simpel concept
Er is slechts bescheiden basiskennis van de Raspberry Pi nodig om deze Air Quality Kit werkend te krijgen. Wat voor sommigen juist een groot voordeel is, zal voor anderen misschien minder aantrekkelijk zijn: kennis van de sensoren en aansturing van zoemer en LED's is niet vereist. De (broncode van de) firmware van de on-board ATtiny1614 is niet vrijgegeven (d.w.z. we weten niet precies wat er in deze microcontroller zit). Het protocol om met de kit te communiceren is echter eenvoudig en goed gedocumenteerd. En de ontwikkeling van eigen applicaties, zelfs voor andere hosts dan de Raspberry Pi, zal relatief eenvoudig zijn. De MonkMakes Air Quality Kit voor Raspberry Pi is een mooi vormgegeven, goed gedocumenteerde kit die, samen met de voorbeelden, dus ook geschikt is voor beginners die aan de slag willen met temperatuur- en eCO2-metingen.
Sensor kenmerken
Eenheid | ||
---|---|---|
eCO2 minimum niveau | 400 | ppm |
eCO2 maximum niveau | 4095 | ppm |
eCO2 resolutie | 1 | ppm |
eCO2 nauwkeurigheid | Onbepaald | |
Temperatuur minimum niveau | -10 | °C |
Temperatuur maximum niveau | 100 | °C |
Temperatuur nauwkeurigheid | +/- 2 | °C |
Over CO2 concentraties
Het gehalte aan CO2 in de lucht dat we inademen heeft een directe invloed op ons welzijn. En CO2-niveaus zijn dan ook belangrijk met betrekking tot de volksgezondheid. Ze blijken namelijk een maat te zijn in hoeverre we de lucht van andere mensen inademen. Wij mensen ademen CO2 uit, en als meerdere mensen zich in een slecht geventileerde ruimte bevinden zal het niveau van CO2 geleidelijk toenemen. Dit geeft een indicatie voor een mogelijk verhoogde concentratie aan aerosolen die verkoudheid, griep en het coronavirus verspreiden. Een andere belangrijke impact van CO2 niveaus betreft de invloed op cognitieve vaardigheden, ofwel hoe goed je je kunt concentreren en denken. De onderstaande tabel toont de niveaus bij welke CO2 ongezond kan worden. De CO2-meetniveaus zijn in ppm (parts per million).250-400 | Normale concentratie in de omgevingslucht. |
400-1000 | Concentraties die typisch zijn voor bezette binnenruimtes met goede luchtuitwisseling. |
1000-2000 | Klachten van slaperigheid en slechte lucht. |
2000-5000 | Hoofdpijn, slaperigheid en stilstaande, muffe, benauwde lucht. Slechte concentratie, verlies van aandacht, verhoogde hartslag en lichte misselijkheid kunnen ook aan de orde zijn. |
5000 | Blootstellingslimiet op de werkplek in de meeste landen. |
>40000 |
Blootstelling kan leiden tot ernstig zuurstofgebrek met permanente hersenschade, coma en zelfs de dood tot gevolg hebbende. |
Vragen of opmerkingen?
Heb je vragen of opmerkingen over het artikel? E-mail de auteur via luc.lemmens@elektor.com of neem contact op met Elektor via editor@elektor.com.
Vertaling: Marc Gauw