Firware for ESP32s module with presence sensor HLK-LD2410.
Модуль присутствия/движения на ESP32s и модуле HLK-LD2410.
Позволяет обнаруживать движущиеся и неподвижные объекты на расстоянии до 5 метров. Датчик LD2410 может быть дополнительно настроен на различную чувствительность в зависимости от расстояния до объекта.
На плате есть дополнительный разъем OUT1, на который выведены выходы ключей с открытым коллектором, для подключения внешней перефирии. Выходы Ext1
и Ext2
дублируют сигналы обнаружения подвижного и
неподвижного объекта в зоне обнаружения датчика.
Для сопряжения с системой "умного дома", модуль соединяется по WiFi с MQTT сервером. Настройки подключения прошиваются в подключаемом файле <local.h>. При отсутсвии этого файла, настройки могут быть взяты из
основного тела программы (закомментированные строки).
Общение с датчиком через MQTT происходит через два топика [SET] и [STATUS]. В топик [STATUS] датчик рапортует о своём состоянии. Для режима ожидания - каждые 60 секунд. При обнаружении объекта - в момент события
и далее с интервалом в 3 секунды.
Общая тревога по датчику снимается через 120 секунд (тег "alert"). Последнее время задается в настройках модуля LD2410, и может быть настроено без программирования ESP32s.
Если модуль получает в топике [SET] команду {report}
, то сразу публикует в топике [STATUS] своё текущее состояние.
Примеры сообщений:
Пример отчета для датчика в активном состоянии в топике [STATUS]:
{"alert":"ON","moving":"ON","moving_distance":44,"moving_energy":100,"presence":"ON","presence_distance":57,"presence_energy":100}
Пример отчета для датчика в режиме ожидания в топике [STATUS]:
{"alert":"OFF","moving":"OFF","moving_distance":0,"moving_energy":0,"presence":"OFF","presence_distance":0,"presence_energy":0}
Общая принципиальная схема модуля представлена ниже.