ENS160 i AHT21 to potężne czujniki często sparowane do projektów monitorowania środowiska. ENS160 jest cyfrowym czujnikiem jakości powietrza, podczas gdy AHT21 mierzy temperaturę i wilgotność. Razem mogą monitorować jakość powietrza w pomieszczeniach i warunki klimatyczne. W tym samouczku pokażemy, jak korzystać z ENS160 i AHT21 z Arduino.
Czego będziesz potrzebować
- ENS160 Czujnik jakości powietrza
- AHT21 Czujnik temperatury i wilgotności
- Arduino Board (np. UNO, Mega, Nano)
- Tablica chleba
- Przewody zworki
- Komputer z zainstalowanym Arduino IDE
Krok 1: Zrozum czujniki ENS160 i AHT21
ENS160 Pinout
Szpilka | Funkcjonować |
---|---|
VCC | Zasilacz (3,3 V/5 V) |
GND | Grunt |
SDA | I2C Linia danych |
Scl | Linia zegara I2C |
AHT21 Pinout
Szpilka | Funkcjonować |
---|---|
VCC | Zasilacz (3,3 V/5 V) |
GND | Grunt |
SDA | I2C Linia danych |
Scl | Linia zegara I2C |
Oba czujniki komunikują się za pośrednictwem interfejsu I2C i mogą dzielić ten sam magistralę I2C.
Krok 2: Okablowanie czujników do Arduino
Oto jak podłączyć oba czujniki do Arduino Uno:
PIN ENS160 | Pin AHT21 | PIN Arduino |
---|---|---|
VCC | VCC | 5v |
GND | GND | GND |
SDA | SDA | A4 |
Scl | Scl | A5 |
Krok 3: Zainstaluj wymagane biblioteki
Aby uprościć interakcję z tymi czujnikami, potrzebujesz następujących bibliotek:
- Biblioteka Adafruit ENS160
- Biblioteka Adafruit AHTX0
Kroki do zainstalowania:
- Otwórz Arduino IDE.
- Idź do Naszkicować > Uwzględnij bibliotekę > Zarządzaj bibliotekami.
- Wyszukaj „Adafruit ENS160” i kliknij Zainstalować.
- Wyszukaj „Adafruit AHTX0” i kliknij Zainstalować.
Krok 4: Prześlij kod
Oto przykład szkicu do odczytu danych z obu czujników:
#include <Wire.h>
#include <Adafruit_ENS160.h>
#include <Adafruit_AHTX0.h>
Adafruit_ENS160 ens160;
Adafruit_AHTX0 aht;
void setup() {
Serial.begin(9600);
Wire.begin();
// Initialize ENS160
if (!ens160.begin()) {
Serial.println("ENS160 not found. Check connections.");
while (1);
}
Serial.println("ENS160 initialized.");
// Initialize AHT21
if (!aht.begin()) {
Serial.println("AHT21 not found. Check connections.");
while (1);
}
Serial.println("AHT21 initialized.");
}
void loop() {
// Read temperature and humidity from AHT21
sensors_event_t humidity, temp;
aht.getEvent(&humidity, &temp);
Serial.print("Temperature: ");
Serial.print(temp.temperature);
Serial.println(" °C");
Serial.print("Humidity: ");
Serial.print(humidity.relative_humidity);
Serial.println(" %");
// Read air quality data from ENS160
ens160.setTempAndHumidity(temp.temperature, humidity.relative_humidity); // Provide environmental data
Serial.print("AQI (Air Quality Index): ");
Serial.println(ens160.getAQI());
delay(2000); // Wait 2 seconds before next reading
}
Krok 5: Przetestuj konfigurację
- Podłącz Arduino do komputera za pomocą USB.
- Otwórz Arduino IDE i wybierz poprawne Tablica I Port pod Narzędzia menu.
- Prześlij kod do Arduino, klikając Wgrywać.
- Otwórz monitor szeregowy (Narzędzia > Monitor szeregowy) i ustaw wskaźnik transmisji na
9600
. - Powinieneś zobaczyć temperaturę, wilgotność i odczyty jakości powietrza wyświetlane co 2 sekundy.
Rozwiązywanie problemów
- Nie wykryte czujniki: Sprawdź dwukrotnie okablowanie i upewnij się, że linie SDA/SCL są poprawnie podłączone.
- Brak odczytów: Upewnij się, że adresy I2C obu czujników nie są sprzeczne. W razie potrzeby użyj skanera I2C.
- Wartości nieregularne: Trzymaj czujniki z dala od ekstremalnych warunków lub nagłe zmiany środowiska podczas inicjalizacji.
Zastosowania ENS160 + AHT21
- Systemy monitorowania jakości powietrza w pomieszczeniach
- Inteligentne termostaty
- Logowanie danych środowiskowych dla projektów IoT
- Systemy oczyszczania powietrza
Wniosek
Z powodzeniem połączyłeś czujnik jakości powietrza ENS160 oraz czujnik temperatury i wilgotności AHT21 z Arduino. Czujniki te współpracują, aby zapewnić kompleksowe monitorowanie środowiska, dzięki czemu są idealne do inteligentnego domu lub aplikacji IoT. Eksperymentuj z danymi, aby zbudować własne projekty środowiskowe!