LD2410B: https://alii.pub/6oivd7
ВАЖНО: Модуль LD2410 – без блютуза. С блютузом версии LD2410B и LD2410C
Прежде чем приступить к материалу, я Вас попрошу, если нравится то, что я делаю и хотите следить за моей деятельностью, то рекомендую подписаться на мой телеграмм канал: https://t.me/ypavla
Там я публикую новости о вышедших видео, статьях и разные устройства для умного дома и не только показываю.
Спасибо за внимание, теперь продолжим.
LD2410 – это Датчик присутствия и движения. Но не просто датчик движения, как любой оптический и микроволновой, которые при улавливании движения подают логическую единицу на выходе. А именно умный датчик, который измеряет расстояние, определяет стоит объект или двигается. Умеет разбивать зоны движения (всего можно до 8 зон задать). И помимо всего этого, он имеет еще и Bluetooth по которому может все эти показания передавать. В общем полноценный, самостоятельный модуль.
Описание датчика и прочую полезную информацию. Программы на смартфон и на компьютер можно найти тут: https://drive.google.com/drive/folders/1p4dhbEJA3YubyIjIIC7wwVsSo8x29Fq-?spm=a2g0o.detail.1000023.17.93465697yFwVxH
Характеристики:
Частота вещания 24GHz
Питание от 5 до 12 вольт
Расстояние обнаружения объектов 5 метров.
Интерфейсы управления GPIO и UART.
Да примечательно в этом датчике то что он отправляет информацию по UART. И засчет этого мы можем задавать до 8 зон распознавания объектов. Например мы можем получать от датчика информацию когда объект в 5 метрах, в 4рех и так далее. Это поможет в автоматизациях. Например если находимся возле дивана, то включить настольную лампу, а если подошли к кухне, то включить подсветку кухни и так далее до 8 раз.
Но так-же есть у датчика gpio разъем в который он отправляет логическую 1 или 0. Как обычный датчик движения. Это тоже может быть полезно. Причем отправляет логическую единицу только при обнаружении человека (ну я так увидел в описании, могу ошибаться).
Распиновка модуля выглядит следующим образом:
Так как модуль у нас очень умный LD2410b то мы можем подключиться к нему по блютузу со смартфона. Для этого скачаем приложение по ссылке выше, установим на смартфон. Но приложение полностью на китайском, по этому мне пришлось с переводчиком переводить каждый пункт.
Приложение для смартфона:
При запуске приложения по Bluetooth сразу же находит датчик и просит выбрать его и подключиться к нему:
Собственно выбираем датчик и подключаемся.
И попадаем в следующее окно программы:
Ну собственно слева картинка оригинальная на китайском, а провее две картинки перевода того, что слева.
По сути – это окно статистики показаний. Тут указывается расстояние до объекта и обнаружение.
Если нажать кнопку “Более” в правом верхнем углу, то мы попадем в настройки датчика.
Тут уже пункты по серьезнее. И они настраивают датчик.
Самая верхняя правая кнопка сбрасывает датчик к заводским настройкам.
Далее у нас идет версия прошивки. Их 2 версии 1.07 и 2.4:
Обновляется все по воздуху по ОТА (проверено). После прошивки попросит перезагрузиться. Я пробовал обновлять на 2.4 и обратно откатывать прошивку. Все работает. Причем как видите, прошивка 2.4 совсем новая. от 25 февраля 2023 года. Это значит что датчик поддерживается разработчиками.
Следующим пунктом идет расстояние обнаружения объекта или 0.2 метра (от 20 см) или 0.7 метра (от 70 см).
Далее идет пароль для подключения по Bluetooh. По умолчанию стоит HiLink. Обязательно использовать нужно 5 символов и если хотите подключить например по Bluetooth к Home Assitant На прямую, то пароль менять не надо. Иначе интеграция не установится.
Следующий пункт продолжительность обнаружения объекта – выставляется в секундах.
Далее у нас идет ползунок который выставляет количество зон для обнаружения. Максимально 8. Это число можно уменьшать.
Следующим пунктом выставляется скорость uart интерфейса. По умолчанию 256000 – эту скорость тоже желательно не менять – если хотите работать с датчиком по блютуз.
Ну и далее выставляются зоны как-раз в таблице. Сколько зон ползунок выставил, столько и в табличке строк. В таблице выставляется в первом столбце диапазон расстояний при которых определять движение.
Как видите в приложении можно довольно гибко управлять модулем и смотреть даже графики обнаружений.
Так-же существует приложение на компьютер:
Называется она LD2410 Tool.
В этой программе по сути то-же самое что и в мобильном приложении не больше и не меньше. Ну только-что обновить прошивку через компьютер нельзя.
По этому думаю особо смысла нет описывать эти-же пункты управления датчиком LD2410b еще раз.
ESPHome:
Для датчика LD2410 есть отдельная страница в ESPHome. https://esphome.io/components/sensor/ld2410.html
Полный код для esphome будет такой:
uart:
tx_pin: REPLACEME
rx_pin: REPLACEME
baud_rate: 256000
parity: NONE
stop_bits: 1
ld2410:
timeout: 150s
max_move_distance : 6m
max_still_distance: 0.75m
g0_move_threshold: 10
g0_still_threshold: 20
g1_move_threshold: 10
g1_still_threshold: 20
g2_move_threshold: 20
g2_still_threshold: 21
g3_move_threshold: 30
g3_still_threshold: 31
g4_move_threshold: 40
g4_still_threshold: 41
g5_move_threshold: 50
g5_still_threshold: 51
g6_move_threshold: 60
g6_still_threshold: 61
g7_move_threshold: 70
g7_still_threshold: 71
g8_move_threshold: 80
g8_still_threshold: 81
sensor:
- platform: ld2410
moving_distance:
name : Moving Distance
still_distance:
name: Still Distance
moving_energy:
name: Move Energy
still_energy:
name: Still Energy
detection_distance:
name: Detection Distance
binary_sensor:
- platform: ld2410
has_target:
name: Presence
has_moving_target:
name: Moving Target
has_still_target:
name: Still Target
Вывод в Home Assistant после загрузки этого кода в ESP32 будет такой:
Здесь Мы видим, что датчик показывает:
- Движение человека
- Присутствие человека
- Энергию движения
- Энергию присутствия
- Расстояние до движущегося человека
- Расстояние до обнаруженного человека.
Но есть еще более крутой скетч. Он уже не стандартный и нашел я его на просторах интернета. А именно тут: https://github.com/kippesikgithub/esp_motion_mmwave
Код программы можно скачать тут: https://disk.yandex.ru/d/WJLwYk6_4HXQlA
Программа большая, с функциями, скриптами.
ЧТоб ее загрузить Вам нужно создать в папке ESPHome файл uart_read_line_sensor_ld2410v3.h
И вставить туда содержимое, которое можно скачать тут: https://disk.yandex.ru/d/vPZdJ-MXVYO5QQ
Ну и еще нужно выставить пин в блоке binary_sensor:
К этому пину подключаем пин OUT от датчика LD2410b
После загрузки скетча у нас будет вот такие параметры:
ConfigMaxDistanse – этим ползунком мы выставляем на какой максимальной дистанции улавливать движение.
configmode – это кнопка при нажатии на которую настройки будут загружаться в датчик ld2410b.
motion_hold – это время в секундах, в течении которого будет в сенсоре писаться что обнаружено движение.
sensitivity_thre… – это чувствительность срабатывания. В теории мы можем этой чувствтельностью настроить так, чтоб например не значительные движения чтоб не улавливало.
kinderkamer-licas… – это сенсор который собственно и обнаруживает движение – если таковое имеется.