Описание работы кода температурного датчика-регистратора на ESP32 Код реализует автономный температурный логгер с веб-интерфейсом, глубоким сном и управлением по Wi-Fi. Устройство периодически просыпается, считывает данные с датчиков DS18B20, сохраняет в файл и засыпает. Пробуждение возможно по таймеру или кнопке. Ключевые функции: Периодический сбор данных Замер температуры каждые 15 мин (по умолчанию) или выбранный интервал. Сохранение в файл data.csv (формат: время, свободная память, адрес датчика, температура). Глубокий сон (Deep Sleep) Экономия энергии между замерами. Поддержка 4 интервалов: 2 мин, 15 мин, 1 час, 1 день. Веб-интерфейс Точка доступа: TempLogger_1 / пароль: securepass123. Управление через браузер по IP (например, 192.168.4.1). Аппаратное управление Кнопка на пине 32 для ручного пробуждения. Отключение питания датчиков (пин 33) во время сна. Руководство пользователя: 1. Первый запуск: Подключитесь к Wi-Fi сети TempLogger_1. Откройте браузер -> введите 192.168.4.1. Установите текущее время через форму. 2. Основные функции веб-интерфейса: Элемент Описание Установить время Ввод даты/время в формате YYYY-MM-DDTHH:MM Интервал измерений Выбор из списка (2 мин, 15 мин, 1 час, 1 день) Скачать данные Загрузка файла data.csv с замерами Перейти в сон Принудительное завершение работы 3. Автоматический режим: После настройки устройство будет: Просыпаться по таймеру. Считывать температуру со всех датчиков. Сохранять данные в файл. Переходить в глубокий сон. 4. Ручное управление: Кнопка на пине 32: Короткое нажатие -> пробуждение и запуск веб-сервера. Отсутствие подключений >5 мин -> автоматический сон. Технические детали: Формат данных в data.csv: csv timestamp,free_ram,sensor_count,sensor_address,temperature "2025-06-03 12:30:00",215000,1,28a5d34f120800,25.50 Потребление: Пиковая мощность: ~100 мА (активный режим). Режим сна: ~5-10 мкА. Поддерживаемые датчики: DS18B20 (до 20 устройств на шине 1-Wire). Важные нюансы: При первом запуске SPIFFS автоматически форматируется, если повреждена. Время считается от baseEpoch + время сна (коррекция дрейфа RTC). При отсутствии датчиков данные не сохраняются (ошибка в лог). Для экономии батареи: Используйте большие интервалы (например, 1 час). Отключайте датчики через POWER_CTRL_PIN. Схема подключения: plaintext ESP32: Пин 5 -> DATA датчиков DS18B20 Пин 32 -> Кнопка (GND через резистор 10к) Пин 33 -> MOSFET для управления питанием датчиков (опционально) Примечание: Для датчиков DS18B21 обязательно использовать подтягивающий резистор 4.7 кОм на линии DATA. Устройство готово к работе после программирования и подачи питания. Данные сохраняются даже при отключении батареи благодаря RTC-памяти.