"Tyvärr har vi i framstegets namn förorenat luften, vattnet, jorden och maten vi äter". Så övervakning av luftkvaliteten är mycket viktigt nu dagar på grund av föroreningar. För att utforma ett system för övervakning av luftkvalitet behöver vi en hållbar och pålitlig luftkvalitetssensor. Även om det finns många parametrar för luftkvalitet men det viktigaste är CO2 och TVOC. Så för att känna av CO2 och TVOC använder vi CCS811 luftkvalitetssensor.
I denna handledning kommer vi att visa dig hur man känner av TVOC och CO2 med hjälp av CCS811 luftkvalitetssensor med Arduino. Du kommer också att lära dig att gränssnitt CSS811 med Arduino.
Material krävs
- Arduino UNO
- CCS811 Luftkvalitetssensor
- Potentiometer (10k)
- LCD 16 * 2
- Bakbord
- Anslutande ledningar
Kretsschema
CCS811 Luftkvalitetssensor
CCS811 luftkvalitetssensor är en digital gassensor med ultralåg effekt som integrerar en gassensor från MOX (metalloxid) för att upptäcka ett brett spektrum av VOC (Volatile Organic Compounds) för övervakning av luftkvaliteten inomhus med en integrerad MCU (Micro-controller Unit). MCU består av ADC (Analog-till-Digital-omvandlare) och I2C-gränssnitt. Den är baserad på en ams unik mikroplatteteknik som ger mycket tillförlitliga lösningar för gassensorer med låg strömförbrukning.
I vår krets använder vi den här sensorn för att känna av TVOC och CO2 tillgängligt i miljön och visa data på 16 * 2 LCD.
Pin-konfiguration
Stift nr. |
Pin-namn |
Beskrivning |
1 |
Vin |
Ingångsförsörjning (3,3 v till 5 v) |
2 |
3V3 |
3.3V utgångsstift för extern användning |
3 |
Gnd |
Jord |
4 |
SDA |
Detta är I2C klockstift |
5 |
SCL |
I2C-datapinne |
6 |
VAKNA |
Wakeup Pin of sensor, bör anslutas till jord för att kommunicera med sensorn |
7 |
RST |
Återställ stift: När den är ansluten till jord återställs sensorn själv |
8 |
INT |
Detta är avbrottsuttag, används för att upptäcka när en ny avläsning är klar eller när en avläsning blir för hög eller låg |
Ansökan
- Smartphones
- Användbara
- Hem och byggnadsautomation
- Tillbehör
Kod och förklaring
Den kompletta Arduino-koden för TVOC och CO2-mätning med CCS811 luftkvalitetssensor ges i slutet.
I koden nedan definierar vi biblioteken för 16 * 2 LCD och CCS811 luftkvalitetssensor. För att ladda ner biblioteket "Adafruit_CCS811.h" för CCS811, följ denna länk.
#omfatta
Nedan har vi definierat Pins för anslutning av 16 * 2 LCD med Arduino.
LiquidCrystal lcd (12, 13, 8, 9, 10, 11); /// REGISTRERA VÄLJ PIN, AKTIVER PIN, D4 PIN, D5 PIN, D6 PIN, D7 PIN Adafruit_CCS811 ccs;
Nedan har vi ställt in LCD och CCS811 luftkvalitetssensor och kalibrerat den för att visa korrekt temperatur, som visas i nedanstående kod, ogiltig installation () {lcd.begin (16, 2); ccs.begin (); // kalibrera temperatursensorn medan (! ccs.available ()); float temp = ccs.calculateTemperature (); ccs.setTempOffset (temp - 25.0); }
I koden nedan använde vi funktionerna “ ccs.available ()” (Funktionen är redan definierad i biblioteket) för att kontrollera om det finns data som kommer. När vi får data kan vi beräkna temperaturen och visa den på 16 * 2 LCD.
Vidare om CCS är tillgängligt och ccs.readData () returnerar falskt får vi CO2-värdet med funktionen ccs.geteCO2 () och TVOC-värdet med ccs.getTVOC () , som visas i koden nedan. Därför har vi fått värdet av luftkvalitetsparametrar med hjälp av CCS811 luftkvalitetssensor.
void loop () {if (ccs.available ()) {float temp = ccs.calculateTemperature (); om (! 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")); fördröjning (3000); lcd.clear (); } annat {lcd.print ("FEL"); medan (1); }}}
Komplett Arduino-kod ges nedan. Koden är enkel, allt arbete utförs av biblioteket i sig och vi har använt funktioner som definierats i CCS-biblioteket för att få värdena CO2 och TOVC.
Kontrollera också:
- IOT-baserat övervakningssystem för luftföroreningar med Arduino
- Mätning av PPM från MQ-gassensorer med Arduino