Пришёл датчик ENS160+AHT21 в сборке TZT — отличная штука для домашнего мониторинга воздуха. В этой статье расскажу, что он умеет, как его подключить к ESP32, какой код залить и какие реально бытовые ситуации он «ловит».
Оба датчика работают по шине I²C — удобно, мало проводов.
ENS160 не показывает состав газов (типа: «это ацетон»), но даёт общую оценку — по шкале от «отлично» до «плохо», а также числа eCO₂ (ppm) и TVOC (ppb).
Стандартное I²C-подключение:
Датчик 3.3В-совместим. Питать от 5V нельзя — спалите.
Если использовать периодические замеры (например, раз в 30 сек), среднее потребление будет около 1–2 мА — нормально для питания от power bank или солнечной панели.
Потребуются библиотеки:
#include <Wire.h>
#include <ENS160.h>
#include <AHT21.h>
ENS160 ens160;
AHT21 aht21;
void setup() {
Serial.begin(115200);
Wire.begin();
if (!aht21.begin()) {
Serial.println("AHT21 не найден!");
while (1);
}
if (!ens160.begin()) {
Serial.println("ENS160 не найден!");
while (1);
}
// Обязательно передаём T и RH для компенсации
ens160.setTempAndHum(25.0, 50.0); // временные значения
}
void loop() {
aht21.read();
float temp = aht21.getTemperature_C();
float hum = aht21.getHumidity_RH();
// Передаём актуальные данные в ENS160
ens160.setTempAndHum(temp, hum);
ens160.read();
Serial.print("T: "); Serial.print(temp, 1);
Serial.print("°C, RH: "); Serial.print(hum, 1);
Serial.print("% | eCO2: "); Serial.print(ens160.CO2);
Serial.print(" ppm, TVOC: "); Serial.print(ens160.TVOC);
Serial.print(" ppb | Air Quality: ");
switch (ens160.AQI) {
case 1: Serial.println("Отлично"); break;
case 2: Serial.println("Хорошо"); break;
case 3: Serial.println("Умеренно"); break;
case 4: Serial.println("Плохо"); break;
case 5: Serial.println("Очень плохо"); break;
default: Serial.println("?");
}
delay(2000);
}
ENS160+AHT21 — отличный стартовый датчик для домашнего IoT-эксперимента с качеством воздуха. Он не заменит профессиональный газоанализатор, но покажет, когда стоит проветрить комнату, проверить химию в кладовке или заподозрить скопление выхлопов с улицы.
Удачного тестирования! Пишите в комменты, какие бытовые «ароматы» поймал ваш ENS160.
Блог только запустил, все статьи генерирую через нейросеть т.к. лень, возможны ошибки. Просто чтобы вы знали и не запускали ядерный реактор по моим статьям ))
Если у вас есть вопросы, или Нашли неточность? пишите в коментах — вместе поправим и сделаем статью более качественной. Я лично объясню нюансы из практики.
Комментарии
Пока нет комментариев. Будьте первым!