«Δυστυχώς, στο όνομα της προόδου, έχουμε μολύνει τον αέρα, το νερό, το έδαφος και τα τρόφιμα που τρώμε». Επομένως, η παρακολούθηση της ποιότητας του αέρα είναι πολύ σημαντική σήμερα, λόγω της ρύπανσης. Για το σχεδιασμό ενός συστήματος παρακολούθησης της ποιότητας του αέρα χρειαζόμαστε ανθεκτικό και αξιόπιστο αισθητήρα ποιότητας αέρα. Αν και υπάρχουν πολλές παράμετροι ποιότητας αέρα, οι πιο σημαντικές είναι οι εκπομπές CO2 και TVOC. Έτσι, για την ανίχνευση CO2 και TVOC, χρησιμοποιούμε CCS811 Air Quality Sensor.
Σε αυτό το σεμινάριο, θα σας δείξουμε πώς να αισθανθείτε το TVOC και το CO2 χρησιμοποιώντας τον αισθητήρα ποιότητας αέρα CCS811 με το Arduino. Επίσης, θα μάθετε να συνδέετε το CSS811 με το Arduino.
Απαιτούμενο υλικό
- Arduino UNO
- Αισθητήρας ποιότητας αέρα CCS811
- Ποτενσιόμετρο (10k)
- LCD 16 * 2
- Ψωμί
- Σύνδεση καλωδίων
Διάγραμμα κυκλώματος
Αισθητήρας ποιότητας αέρα CCS811
Ο αισθητήρας ποιότητας αέρα CCS811 είναι ένας ψηφιακός αισθητήρας αερίου εξαιρετικά χαμηλής ισχύος που ενσωματώνει έναν αισθητήρα αερίου MOX (μεταλλικό οξείδιο) για την ανίχνευση ενός ευρέος φάσματος VOC (πτητικών οργανικών ενώσεων) για παρακολούθηση της ποιότητας του αέρα εσωτερικού χώρου με μια ενσωματωμένη μονάδα MCU (μονάδα μικροελεγκτή). Το MCU αποτελείται από διεπαφή ADC (Analog-to-Digital Converter) και I2C. Είναι βασισμένο σε μια AMS μοναδικό μικρο-εστίες τεχνολογία που παρέχει εξαιρετικά αξιόπιστες λύσεις για το φυσικό αέριο αισθητήρες, με χαμηλή κατανάλωση ενέργειας.
Στο κύκλωμα μας, χρησιμοποιούμε αυτόν τον αισθητήρα για την ανίχνευση TVOC και CO2 που διατίθενται στο περιβάλλον και για την προβολή των δεδομένων σε οθόνη LCD 16 * 2.
Διαμόρφωση καρφιτσών
Pin No. |
Όνομα καρφιτσώματος |
Περιγραφή |
1 |
Βιν |
Παροχή εισόδου (3.3v έως 5v) |
2 |
3V3 |
Καρφίτσα εξόδου 3.3V για εξωτερική χρήση |
3 |
Gnd |
Εδαφος |
4 |
SDA |
Αυτή είναι η καρφίτσα ρολογιού I2C |
5 |
SCL |
Καρφίτσα δεδομένων I2C |
6 |
ΙΧΝΗ |
Ο ακροδέκτης αφύπνισης του αισθητήρα, πρέπει να συνδεθεί στη γείωση για να επικοινωνήσει με τον αισθητήρα |
7 |
RST |
Επαναφορά ακίδων: Όταν συνδέεται στη γείωση, ο αισθητήρας επαναφέρεται |
8 |
ΙΝΤ |
Πρόκειται για έναν ακροδέκτη εξόδου διακοπής, που χρησιμοποιείται για να ανιχνεύσει πότε είναι έτοιμη μια νέα ανάγνωση ή όταν μια ανάγνωση γίνεται πολύ υψηλή ή χαμηλή |
Εφαρμογή
- Smartphone
- Φορέματα
- Αυτοματισμός σπιτιού και κτιρίων
- αξεσουάρ
Κωδικός και επεξήγηση
Ο πλήρης κωδικός Arduino για TVOC και CO2 Μέτρηση χρησιμοποιώντας CCS811 Air Quality Sensor δίνεται στο τέλος.
Στον παρακάτω κώδικα, ορίζουμε τις βιβλιοθήκες για αισθητήρα ποιότητας αέρα 16 * 2 LCD και CCS811. Για λήψη της βιβλιοθήκης "Adafruit_CCS811.h" για CCS811 ακολουθήστε αυτόν τον σύνδεσμο.
#περιλαμβάνω
Παρακάτω έχουμε ορίσει Pin για σύνδεση 16 * 2 LCD με Arduino.
LiquidCrystal lcd (12, 13, 8, 9, 10, 11); /// ΕΓΓΡΑΦΕΙΤΕ ΕΠΙΛΕΞΤΕ PIN, Ενεργοποίηση PIN, D4 PIN, D5 PIN, D6 PIN, D7 PIN Adafruit_CCS811 ccs;
Παρακάτω έχουμε ρυθμίσει τον αισθητήρα ποιότητας αέρα LCD και CCS811 και το βαθμονομήσαμε για την εμφάνιση της σωστής θερμοκρασίας, όπως φαίνεται στον παρακάτω κώδικα, άκυρη ρύθμιση () {lcd.begin (16, 2); ccs.begin (); // βαθμονόμηση αισθητήρα θερμοκρασίας ενώ (! ccs.available ()); float temp = ccs.calculateTemperature (); ccs.setTempOffset (θερμοκρασία - 25.0); }
Στον παρακάτω κώδικα, χρησιμοποιήσαμε τις συναρτήσεις " ccs.available ()" (Η συνάρτηση έχει ήδη οριστεί στη βιβλιοθήκη) για να ελέγξουμε εάν προέρχονται κάποια δεδομένα. Καθώς λαμβάνουμε τα δεδομένα, μπορούμε να υπολογίσουμε τη θερμοκρασία και να τα εμφανίσουμε σε οθόνη LCD 16 * 2.
Περαιτέρω εάν το CCS είναι διαθέσιμο και το ccs.readData () επιστρέφει ψευδές, τότε λαμβάνουμε την τιμή CO2 χρησιμοποιώντας τη συνάρτηση ccs.geteCO2 () και την τιμή TVOC χρησιμοποιώντας το ccs.getTVOC () , όπως φαίνεται στον παρακάτω κώδικα. Ως εκ τούτου, έχουμε λάβει την τιμή των παραμέτρων ποιότητας αέρα χρησιμοποιώντας τον αισθητήρα ποιότητας αέρα CCS811.
void loop () {if (ccs.available ()) {float temp = ccs.calculateTemperature (); εάν (! 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")); καθυστέρηση (3000) lcd.clear (); } αλλιώς {lcd.print ("ΣΦΑΛΜΑ"); ενώ (1); }}}
Ο πλήρης κωδικός Arduino δίνεται παρακάτω. Ο κώδικας είναι απλός, όλη η δουλειά γίνεται από τη βιβλιοθήκη της και έχουμε χρησιμοποιήσει συναρτήσεις που ορίζονται στη βιβλιοθήκη CCS για να πάρουμε τις τιμές CO2 και TOVC.
Επίσης, ελέγξτε:
- Σύστημα παρακολούθησης της ατμοσφαιρικής ρύπανσης με βάση το IOT χρησιμοποιώντας το Arduino
- Μέτρηση PPM από MQ Sensors Gas χρησιμοποιώντας το Arduino