"Leider haben wir im Namen des Fortschritts die Luft, das Wasser, den Boden und die Lebensmittel, die wir essen, verschmutzt." Daher ist die Überwachung der Luftqualität heutzutage aufgrund der Verschmutzung sehr wichtig. Für die Entwicklung eines Luftqualitätsüberwachungssystems benötigen wir einen langlebigen und zuverlässigen Luftqualitätssensor. Es gibt zwar viele Luftqualitätsparameter, aber die wichtigsten sind CO2 und TVOC. So zum Erfassen von CO2 und TVOC, wir verwenden CCS811 Luftqualitätssensor.
In diesem Tutorial zeigen wir Ihnen, wie Sie TVOC und CO2 mithilfe des CCS811-Luftqualitätssensors mit Arduino erfassen. Außerdem lernen Sie, CSS811 mit Arduino zu verbinden.
Erforderliches Material
- Arduino UNO
- CCS811 Luftqualitätssensor
- Potentiometer (10k)
- LCD 16 * 2
- Steckbrett
- Kabel anschließen
Schaltplan
CCS811 Luftqualitätssensor
Der CCS811-Luftqualitätssensor ist ein digitaler Gassensor mit extrem geringem Stromverbrauch, der einen MOX-Gassensor (Metalloxid) integriert, um eine Vielzahl von VOCs (flüchtigen organischen Verbindungen) zur Überwachung der Luftqualität in Innenräumen mit einer integrierten MCU (Micro-Controller Unit) zu erfassen.. Die MCU besteht aus ADC (Analog-Digital-Wandler) und I2C-Schnittstelle. Es basiert auf einer einzigartigen Mikro-Kochplatten-Technologie von ams, die hochzuverlässige Lösungen für Gassensoren mit geringem Stromverbrauch ermöglicht.
In unserer Schaltung verwenden wir diesen Sensor, um in der Umgebung verfügbares TVOC und CO2 zu erfassen und die Daten auf einem 16 * 2-LCD anzuzeigen.
Pin-Konfiguration
Pin Nr. |
Pin Name |
Beschreibung |
1 |
Vin |
Eingangsversorgung (3,3 V bis 5 V) |
2 |
3V3 |
3,3 V Ausgangspin für den externen Gebrauch |
3 |
Gnd |
Boden |
4 |
SDA |
Dies ist der I2C-Clock-Pin |
5 |
SCL |
I2C-Daten-Pin |
6 |
AUFWACHEN |
Der Wakeup-Pin des Sensors sollte mit Masse verbunden sein, um mit dem Sensor zu kommunizieren |
7 |
RST |
Reset-Pin: Bei Verbindung mit Masse setzt sich der Sensor selbst zurück |
8 |
INT |
Dies ist der Interrupt-Ausgangspin, mit dem erkannt wird, wann ein neuer Messwert bereit ist oder wann ein Messwert zu hoch oder zu niedrig wird |
Anwendung
- Smartphones
- Tragfähig
- Haus- und Gebäudeautomation
- Zubehör
Code und Erklärung
Der vollständige Arduino-Code für die TVOC- und CO2-Messung mit dem CCS811-Luftqualitätssensor ist am Ende angegeben.
Im folgenden Code definieren wir die Bibliotheken für 16 * 2 LCD und CCS811 Luftqualitätssensor. Um die Bibliothek "Adafruit_CCS811.h" für CCS811 herunterzuladen, folgen Sie diesem Link.
#einschließen
Nachfolgend haben wir Pins für die Verbindung von 16 * 2 LCD mit Arduino definiert.
LiquidCrystal lcd (12, 13, 8, 9, 10, 11); /// REGISTRIEREN SELECT PIN, ENABLE PIN, D4 PIN, D5 PIN, D6 PIN, D7 PIN Adafruit_CCS811 ccs;
Im Folgenden haben wir den LCD- und CCS811-Luftqualitätssensor eingerichtet und für die Anzeige der korrekten Temperatur kalibriert, wie im folgenden Code gezeigt.
void setup () {lcd.begin (16, 2); ccs.begin (); // Temperatursensor kalibrieren while (! ccs.available ()); float temp = ccs.calculateTemperature (); ccs.setTempOffset (temp - 25.0); }}
Im folgenden Code haben wir die Funktionen " ccs.available ()" (Funktion ist bereits in der Bibliothek definiert) verwendet, um zu überprüfen, ob Daten eingehen. Sobald wir die Daten erhalten haben, können wir die Temperatur berechnen und auf einem 16 * 2-LCD anzeigen.
Wenn CCS verfügbar ist und ccs.readData () false zurückgibt, erhalten wir den CO2-Wert mit der Funktion ccs.geteCO2 () und den TVOC-Wert mit ccs.getTVOC () , wie im folgenden Code gezeigt. Daher haben wir den Wert der Luftqualitätsparameter mit dem Luftqualitätssensor CCS811 erhalten.
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")); Verzögerung (3000); lcd.clear (); } else {lcd.print ("ERROR"); während (1); }}}
Der vollständige Arduino-Code ist unten angegeben. Code ist einfach, die gesamte Arbeit wird von der Bibliothek selbst erledigt, und wir haben in der CCS-Bibliothek definierte Funktionen verwendet, um die Werte von CO2 und TOVC zu ermitteln.
Überprüfen Sie auch:
- IOT-basiertes Luftreinhaltungssystem mit Arduino
- Messung von PPM mit MQ-Gassensoren mit Arduino