Недавно потребовалось вести мониторинг температуры и влажности в одном из помещений. Покупать какие то Zigbee устройства и связывать из через хаб — задачей не стояло.
Так и родился весь проект и код на микроконтроллере ESP8266 NODEMCU совместно с датчиком температуры и влажности — DHT11.
Используя дешевый микроконтроллер ESP8266 NODEMCU (~150 рублей), датчик DHT11 и Telegram Bot, я создал свою систему мониторинга.
Данный скетч (код) позволяет отслеживать данные через веб-страницу используя auth-авторизацию по логину и паролю, и получения уведомлений в Telegram.
Подключите Ваш ESP8266 к компьютеру, установите нужные библиотеки в ArduinoIDE: (ESPAsyncTCP), (ESPAsyncWebServer), (FastBot), (DHT sensor library) и скомпилируйте код – ваш умный мониторинг готов к работе.
Ниже схема для подключения датчика к самому микроконтроллеру:
Перед тем как загрузить скетч, необходимо внести несколько изменений в переменные с учетом ваших сетевых данных, чтобы ESP8266 мог установить соединение с существующей сетью:
const char* ssid; // SSID Wi-Fi сети
const char* password; // Пароль Wi-Fi сети
Также вставляем свой токен Telegram-бота:
// Инициализируем Telegram BOT
#define BOT_TOKEN "token" // токен Telegram-бота
FastBot bot(BOT_TOKEN);
Ставим свой логин и пароль для авторизации на Web-странице:
// Установите логин и пароль при открытии WEB-адреса.
const char* www_username = "username";
const char* www_password = "password";
Также в блоке setup замените ID тех пользователей кто имеет право запускать бота:
bot.setChatID("1111111,2222222"); // ID-пользователей которые вправе запускать бота.