Часть 1: Что нам понадобится (компоненты и цены)
Рассмотрим полный комплект для создания автономного измерителя температуры. Я буду использовать проверенные компоненты, чтобы избежать нестабильной работы.
- Wemos D1 Mini (ESP8266) — 150-200 руб. Основной микроконтроллер. Советую выбирать плату с внешней антенной и крупным радиатором с маркировкой Wi-Fi. Разъем (Type-C или Micro-USB) выбирайте под имеющийся кабель. Важно: используйте короткие (до 2 м) и качественные кабели, иначе появятся трудноуловимые сбои.
- DS18B20 (герметичный) — 150-250 руб./шт. Цифровой датчик в нержавеющем корпусе с проводом 1-3 м. Позволяет наращивать линию до 30 м без потери точности, но я рекомендую устанавливать несколько датчиков для дублирования и отказоустойчивости.
- Резистор 4.7 кОм (4k7) — около 10 руб. Необходим для подтяжки линии данных. Продается наборами, часто цена не зависит от количества.
- Макетная плата и соединительные провода — 200 руб. Используются для прототипирования и проверки схемы перед пайкой.
- Набор проводов «папа-папа», «мама-мама», «папа-мама» — 400 руб. Опционально, для удобства сборки на макетной плате. Длина 5-10 см оптимальна.
- Корпус (распределительная коробка) — 100-300 руб. Выбирайте с соответствующей степенью защиты. Кабели питания и датчика заводите снизу, чтобы влага не стекала внутрь.
- Силиконовый герметик — 200 руб. Для дополнительной гидроизоляции датчика, так как заводская защита часто некачественная.
- USB-кабель (Micro-USB или Type-C) — 100 руб. Для прошивки и питания.
- Блок питания 5V, 1-2A — 400 руб.
- ПК с Windows в одной локальной сети с сервером умного дома.
Бюджет базового комплекта: ~800-1500 руб. Последующие датчики обойдутся дешевле. Дополнительные DS18B20: +150-300 руб./шт.
Часть 2: Схемы подключения
Вариант 1: Один датчик (базовый)
Подключение DS18B20 (три провода):
- КРАСНЫЙ (VDD) → контакт «3V3» на Wemos D1 Mini
- ЧЁРНЫЙ (GND) → контакт «G» на Wemos D1 Mini
- ЖЁЛТЫЙ (DATA) → контакт «D6» (GPIO12) на Wemos D1 Mini, а также через резистор 4.7 кОм к контакту «3V3»
Резистор монтируется между DATA и 3V3.
Вариант 2: Несколько датчиков на одной шине (до 8 шт.)
Все датчики подключаются параллельно к тем же пинам: VDD→3V3, GND→G, DATA→D6. Один резистор 4.7 кОм между DATA и 3V3 остаётся общим.
Физическая сборка:
- Соберите схему на макетной плате.
- Проверьте работоспособность.
- Пропаяйте соединения.
- Установите плату в корпус.
- Подготовьте датчик к погружению.
Часть 3: Создание конфигурации в ESPHome
Шаг 1: Настройка секретов (логин и пароль Wi-Fi)
В ESPHome Builder открываем раздел SECRETS и добавляем данные вашей сети 2.4 ГГц (плата не поддерживает 5 ГГц). Формат: wifi_ssid: "Ваш_SSID" и wifi_password: "Ваш_пароль". Сохраняем.
Шаг 2: Создание нового устройства
Нажимаем «+ NEW DEVICE», выбираем «Continue» и задаём имя (например, pond-temp-01). Указываем платформу «ESP8266». Система сгенерирует encryption key — копируем его в секреты как api_encryption_key.
Шаг 3: Загрузка прошивки
Устанавливаем драйвер для CH340. Открываем устройство в режиме EDIT и вставляем код (с корректными отступами), не забыв подставить OTA-пароль. Нажимаем SAVE. Далее через меню выбираем «Install» → «Plug into this computer». После компиляции (до 5 мин) скачиваем файл прошивки. Используем ESPHome Web для загрузки: подключаем плату, выбираем COM-порт, указываем скачанный файл и запускаем установку. После переподключения плата появится в ESPHome как ONLINE.
Часть 4: Сборка датчика
Собираем схему на макетной плате согласно инструкции. Подключаем питание через ПК и открываем LOGS. Находим уникальный адрес датчика (начиная с 0x...), копируем его. В режиме EDIT вставляем адрес в конфигурацию. Обновляем устройство по Wi-Fi. Для калибровки (если погрешность более 0.5°C) используйте два варианта: простой (одна точка коррекции) или сложный (две точки, для широкого диапазона). Обязательно дополнительно герметизируйте датчик: удалите термоусадку и заводской герметик, залейте качественным силиконом. Пример сборки на фото ниже.
Часть 5: Визуализация данных с датчика
В Home Assistant создаём новую панель. Добавляем раздел с карточкой «Сенсор», включаем «Во всю ширину». Затем добавляем второй раздел с карточкой «Шкала». Настраиваем объект «Температура воды» и задаём цветовые зоны: синий (ниже нормы), зелёный (норма), жёлтый (предупреждение), красный (критично). Сохраняем. Теперь график и шкала отображают данные в реальном времени.
Итоги
Мы прошли полный цикл создания интеллектуального датчика температуры для аквакультуры: от подбора компонентов и монтажа на базе ESP8266 и DS18B20 до прошивки через ESPHome, интеграции с Home Assistant и настройки информационной панели. Теперь вы можете отслеживать температуру воды в реальном времени с точностью до 0.1°C.
Анонс
В следующей части я добавлю системе голос: настрою Telegram-бота для аварийных оповещений и интерактивных запросов. Ферма начнёт самостоятельно сообщать о проблемах!