"Helaas hebben we in naam van de vooruitgang de lucht, het water, de bodem en het voedsel dat we eten vervuild". Het bewaken van de luchtkwaliteit is daarom tegenwoordig erg cruciaal vanwege vervuiling. Voor het ontwerpen van een bewakingssysteem voor de luchtkwaliteit hebben we een duurzame en betrouwbare luchtkwaliteitssensor nodig. Hoewel er veel luchtkwaliteitsparameters zijn, zijn CO2 en TVOC de belangrijkste. Dus voor het detecteren van CO2 en TVOC gebruiken we de CCS811-luchtkwaliteitssensor.
In deze tutorial laten we u zien hoe u TVOC en CO2 kunt detecteren met behulp van de CCS811 luchtkwaliteitssensor met Arduino. Ook leer je CSS811 met Arduino te verbinden.
Materiaal vereist
- Arduino UNO
- CCS811 Luchtkwaliteitssensor
- Potentiometer (10k)
- LCD 16 * 2
- Breadboard
- Verbindingsdraden
Schakelschema
CCS811 Luchtkwaliteitssensor
CCS811 Luchtkwaliteitssensor is een digitale gassensor met ultralaag vermogen die een MOX-gassensor (metaaloxide) integreert om een breed scala aan VOS (vluchtige organische stoffen) te detecteren voor bewaking van de binnenluchtkwaliteit met een geïntegreerde MCU (microcontrollereenheid). MCU bestaat uit ADC (analoog-naar-digitaal converter) en I2C-interface. Het is gebaseerd op een unieke micro-kookplaattechnologie van ams, die zeer betrouwbare oplossingen mogelijk maakt voor gassensoren, met een laag stroomverbruik.
In ons circuit gebruiken we deze sensor om TVOC en CO2 in de omgeving te detecteren en de gegevens weer te geven op een 16 * 2 LCD-scherm.
Pin-configuratie
Pin nr. |
Pin Naam |
Omschrijving |
1 |
Vin |
Ingangsvoeding (3.3v tot 5v) |
2 |
3V3 |
3.3V output Pin voor extern gebruik |
3 |
GND |
Grond |
4 |
SDA |
Dit is de I2C-klokpen |
5 |
SCL |
I2C-gegevenspin |
6 |
WAKKER |
Wakeup Pin van sensor, moet worden aangesloten op aarde om te communiceren met de sensor |
7 |
RST |
Resetpin: wanneer aangesloten op aarde, reset de sensor zichzelf |
8 |
INT |
Dit is een onderbrekingsoutputpin, die wordt gebruikt om te detecteren wanneer een nieuwe meting klaar is of wanneer een meting te hoog of te laag wordt |
Toepassing
- Smartphones
- Wearables
- Huis- en gebouwautomatisering
- Accessoires
Code en uitleg
De volledige Arduino-code voor TVOC- en CO2-meting met behulp van de CCS811-luchtkwaliteitssensor wordt aan het einde gegeven.
In de onderstaande code definiëren we de bibliotheken voor 16 * 2 LCD- en CCS811-luchtkwaliteitssensor. Volg deze link om de bibliotheek "Adafruit_CCS811.h" voor CCS811 te downloaden.
# omvatten
Hieronder hebben we pinnen gedefinieerd voor aansluiting van 16 * 2 LCD met Arduino.
LiquidCrystal lcd (12, 13, 8, 9, 10, 11); /// REGISTREREN SELECTEER PIN, INSCHAKELEN PIN, D4 PIN, D5 PIN, D6 PIN, D7 PIN Adafruit_CCS811 ccs;
Hieronder hebben we de LCD- en CCS811-luchtkwaliteitssensor ingesteld en deze gekalibreerd voor de juiste temperatuur, zoals weergegeven in de onderstaande code, leegte setup () {lcd.begin (16, 2); ccs.begin (); // temperatuursensor kalibreren terwijl (! ccs.available ()); zweven temp = ccs.calculateTemperature (); ccs.setTempOffset (temp - 25,0); }
In de onderstaande code hebben we de functies " ccs.available ()" (Functie is al gedefinieerd in de bibliotheek) gebruikt om te controleren of er gegevens binnenkomen. Als we de gegevens krijgen, kunnen we de temperatuur berekenen en deze weergeven op een 16 * 2 LCD-scherm.
Als CCS beschikbaar is en ccs.readData () false retourneert, krijgen we de CO2-waarde met behulp van de functie ccs.geteCO2 () en de TVOC-waarde met ccs.getTVOC () , zoals weergegeven in de onderstaande code. Daarom hebben we de waarde van luchtkwaliteitsparameters ontvangen met behulp van de CCS811-luchtkwaliteitssensor.
void loop () {if (ccs.available ()) {float temp = ccs.calculateTemperature (); if (! ccs.readData ()) {int co2 = ccs.geteCO2 (); int tvoc = ccs.getTVOC (); lcd.setCursor (0, 0); lcd.print (String ("CO2:") + String (co2) + String ("PPM")); lcd.setCursor (0, 1); lcd.print (String ("TVOC:") + String (tvoc) + String ("PPB")); lcd.print (String ("T:" + String (int (temp))) + String ("C")); vertraging (3000); lcd.clear (); } else {lcd.print ("ERROR"); terwijl (1); }}}
De volledige Arduino-code wordt hieronder gegeven. Code is eenvoudig, al het werk wordt door de bibliotheek zelf gedaan en we hebben functies gebruikt die in de CCS-bibliotheek zijn gedefinieerd om de waarden van CO2 en TOVC te krijgen.
Controleer ook:
- IOT-gebaseerd controlesysteem voor luchtverontreiniging met Arduino
- Het meten van PPM van MQ-gassensoren met Arduino