”Desværre har vi i fremskridtets navn forurenet luften, vandet, jorden og den mad, vi spiser”. Så overvågning af luftkvaliteten er meget afgørende nu dage på grund af forurening. For at designe et luftkvalitetsovervågningssystem har vi brug for holdbar og pålidelig luftkvalitetssensor. Selvom der er mange luftkvalitetsparametre, men de vigtigste er CO2 og TVOC. Så for at registrere CO2 og TVOC bruger vi CCS811 luftkvalitetssensor.
I denne vejledning skal vi vise dig, hvordan du fornemmer TVOC og CO2 ved hjælp af CCS811 luftkvalitetssensor med Arduino. Du lærer også at grænseflade CSS811 med Arduino.
Nødvendigt materiale
- Arduino UNO
- CCS811 luftkvalitetssensor
- Potentiometer (10k)
- LCD 16 * 2
- Brødbræt
- Tilslutning af ledninger
Kredsløbsdiagram
CCS811 luftkvalitetssensor
CCS811 luftkvalitetssensor er en digital gassensor med lav lav effekt, der integrerer en MOX (metaloxid) gassensor til at detektere en bred vifte af VOC'er (flygtige organiske forbindelser) til indendørs luftkvalitetsovervågning med en integreret MCU (mikrocontrolenhed). MCU består af ADC (Analog-til-Digital Converter) og I2C interface. Det er baseret på en ams unik mikro-kogepladeteknologi, der giver meget pålidelige løsninger til gassensorer med lavt strømforbrug.
I vores kredsløb bruger vi denne sensor til at registrere TVOC og CO2 tilgængelig i miljøet og vise dataene på 16 * 2 LCD.
Pin-konfiguration
Pin nr. |
Pin-navn |
Beskrivelse |
1 |
Vin |
Indgangsforsyning (3,3 v til 5 v) |
2 |
3V3 |
3.3V udgangsstift til ekstern brug |
3 |
Gnd |
Jord |
4 |
SDA |
Dette er I2C clock pin |
5 |
SCL |
I2C-datapind |
6 |
VÅGNE |
Wakeup Pin af sensoren skal tilsluttes jorden for at kommunikere med sensoren |
7 |
RST |
Nulstil pin: Når den er sluttet til jord, nulstilles sensoren selv |
8 |
INT |
Dette er interrupt output pin, der bruges til at registrere, hvornår en ny læsning er klar, eller når en læsning bliver for høj eller lav |
Ansøgning
- Smartphones
- Bærbare
- Hjemme- og bygningsautomatisering
- tilbehør
Kode og forklaring
Den komplette Arduino-kode til TVOC og CO2-måling ved hjælp af CCS811 luftkvalitetssensor er givet i slutningen.
I nedenstående kode definerer vi bibliotekerne til 16 * 2 LCD og CCS811 luftkvalitetssensor. Følg dette link for at downloade biblioteket "Adafruit_CCS811.h" til CCS811.
#omfatte
Nedenfor har vi defineret Pins til tilslutning af 16 * 2 LCD med Arduino.
LiquidCrystal lcd (12, 13, 8, 9, 10, 11); /// REGISTER VÆLG PIN, AKTIV PIN, D4 PIN, D5 PIN, D6 PIN, D7 PIN Adafruit_CCS811 ccs;
Nedenfor har vi oprettet LCD- og CCS811-luftkvalitetssensor og kalibreret den til at vise den korrekte temperatur, som vist i nedenstående kode, ugyldig opsætning () {lcd.begin (16, 2); ccs.begin (); // kalibrer temperaturføler, mens (! ccs.available ()); float temp = ccs.calculateTemperature (); ccs.setTempOffset (temp - 25.0); }
I nedenstående kode brugte vi funktionerne " ccs.available ()" (Funktion er allerede defineret i biblioteket) til at kontrollere, om der kommer nogle data. Når vi får dataene, er vi i stand til at beregne temperaturen og vise den på 16 * 2 LCD.
Yderligere, hvis CCS er tilgængelig, og ccs.readData () returnerer falsk, får vi CO2-værdien ved hjælp af funktionen ccs.geteCO2 () og TVOC-værdi ved hjælp af ccs.getTVOC () , som vist i nedenstående kode. Derfor har vi modtaget værdien af parametre for luftkvalitet ved hjælp af CCS811 luftkvalitetssensor.
ugyldig sløjfe () {if (ccs.available ()) {float temp = ccs.calculateTemperature (); hvis (! 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")); forsinkelse (3000); lcd.clear (); } andet {lcd.print ("FEJL"); mens (1); }}}
Komplet Arduino-kode er angivet nedenfor. Koden er enkel, alt arbejdet udføres af selve biblioteket, og vi har brugt funktioner defineret i CCS-biblioteket for at få værdierne CO2 og TOVC.
Kontroller også:
- IOT-baseret luftforureningsovervågningssystem ved hjælp af Arduino
- Måling af PPM fra MQ-gassensorer ved hjælp af Arduino