Датчики температуры 1-wire и гроза

Приветствую.

Уже несколько раз попадал в ситуацию, когда во время близкой грозы/молнии датчики температуры 1-wire начинали показывать ерунду или не показывать ничего.
После перезагрузки контроллера все приходит в норму.

Вопрос: Есть ли возможность надежно распознавать такие ситуации?

Добрый день!

Технически возможно реализовать фильтрацию резких скачков значений в коде — например, игнорировать изменения более чем на 3 °C в течение 1 секунды при автоматизации. Это поможет исключить ложные срабатывания из-за шумов или наводок.

Также рекомендую:

проверить наличие и корректность заземления;
экранировать сигнальные линии и сам датчик от внешних электромагнитных помех, особенно если он установлен рядом с силовыми кабелями или источниками наводок.

Не все так просто.

Контроллер перестал видеть датчики. Поэтому изменения значений через mqtt я просто не получаю.

 kernel: w1_master_driver w1_bus_master1: therm_bulk_read_store: unable to trigger a bulk read on the bus. err=-19
 kernel: w1_master_driver w1_bus_master1: therm_bulk_read_store: unable to trigger a bulk read on the bus. err=-19
 kernel: w1_master_driver w1_bus_master1: Attaching one wire slave 00.400000000000 crc 46
 kernel: w1_master_driver w1_bus_master1: Family 0 for 00.400000000000.46 is not registered.
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000dcbe7bb
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000dcbe8ad
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000dcbf8c4
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000dcd19e8
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000dcdacbc
 wb-mqtt-w1[4504]: INFO: [w1 driver] RemoveControl of: 28-00000fac1790
 wb-rules[2073]: WARNING: [frontend] failed to remove external control wb-w1/28-00000dcd19e8: No such control
 wb-rules[2073]: WARNING: [frontend] failed to remove external control wb-w1/28-00000dcd19e8: No such control
 wb-rules[2073]: WARNING: [frontend] failed to remove external control wb-w1/28-00000dcdacbc: No such control

Заземление есть и оно корректно.
Сама капсула датчика должна иметь контакт с воздухом. А она металлическая.

Молния была такая, что выбило УЗО. Что косвенно подтверждает качество заземления. Я сильно сомневаюсь, что смогу экранировать линии и датчики так, чтобы убрать такие наводки. У меня цель обнаружить проблему, а не исключить ее появление.

Добрый день!

В данной ситуации возможно два подхода:

  1. Анализ топика meta — проверять его содержимое на наличие ошибок.
  2. Отслеживание изменений значений — анализировать изменения в данных, чтобы увидеть, что данные не приходят.

У меня после последней грозы датчик 1-wire, подключённый экранированной витой парой длиной около 4 метров с заземлённым экраном, но наружной прокладки, начал показывать температуры градусов этак на 80 больше реальных, перезагрузкой не лечится. Для себя пришёл к выводу о непригодности данной шины к использованию в условиях, отличных от тепличных, буду менять на аналоговые термосопротивления.

Добрый день!

Удалось ли решить вопрос?

Абсолютно корректное заключение - шина 1-Wire изначально разрабатывалась именно для тепличных условий.

1 лайк