Что такое 1-Wire (One-Wire)
DS18B20 в герметичном корпусе — идеальный датчик для измерения температуры труб отопления, горячей воды, тёплого пола. Прижали гильзу к трубе, зафиксировали хомутом, обмотали теплоизоляцией — готово. Никакой беспроводной датчик не предложит такого форм-фактора за такие деньги.
DS18B20 — самый известный, но не единственный.
DS18S20 — предшественник DS18B20. Фиксированное разрешение 9 бит (0,5°C). Устарел, но ещё встречается в старых инсталляциях.
DS2438 — «умная» батарейка. Содержит АЦП, датчик температуры и счётчик тока. Используется для мониторинга аккумуляторов и как универсальный аналоговый вход.
DS2413 — двухканальный цифровой ключ. Два GPIO-пина, управляемых по 1-Wire. Можно включать/выключать нагрузки, читать состояние сухих контактов.
DS2408 — восьмиканальный адресуемый переключатель. Восемь GPIO для управления или чтения.
DS2423 — счётчик импульсов. Два канала, подсчёт внешних импульсов. Пригодится для подключения к импульсным выходам счётчиков воды или газа.
DS2431 / DS2433 — EEPROM-память. Хранение данных, калибровочных коэффициентов, серийных номеров.
iButton (DS1990, DS1993, DS1996) — контактные ключи идентификации. Те самые «таблетки». DS1990 — просто идентификатор (ROM-код), DS1993/DS1996 — с памятью.
На практике в домашней автоматизации 90% использования 1-Wire — это DS18B20. Остальные чипы — для специфических задач.
1-Wire поддерживает несколько топологий подключения, и выбор влияет на стабильность.
Классическая топология. Один длинный провод, к которому параллельно подключаются устройства — как бусины на нитке. Самый надёжный вариант для длинных линий.
От одной точки расходятся провода к каждому устройству. Удобно с точки зрения монтажа, но создаёт отражения сигнала на длинных лучах. Работает, если лучи короткие (до нескольких метров).
Комбинация линейной и звёздной. Основная магистраль + короткие ответвления. На практике большинство домашних инсталляций выглядят именно так.
Общая длина шины — до 100 метров при правильной разводке и внешнем питании. При паразитном питании — значительно меньше, 20–30 метров в зависимости от количества устройств.
Несколько практических советов:
Есть несколько способов завести 1-Wire-датчики в Home Assistant.
Самый простой вариант, если Home Assistant работает на Raspberry Pi. Один GPIO-пин + подтягивающий резистор — и шина готова. В Linux 1-Wire поддерживается через модуль ядра w1-gpio и файловую систему /sys/bus/w1/devices/. Home Assistant имеет встроенную интеграцию 1-Wire, которая читает данные оттуда.
Подключение: Data — на GPIO 4 (по умолчанию), резистор 4,7 кОм между Data и 3,3 В. В config.txt добавляется строка dtoverlay=w1-gpio. Перезагрузка — и датчики появляются в системе.
USB-адаптер DS9490R от Maxim — компактный 1-Wire-мастер с разъёмом RJ-11. Подключается к любому компьютеру, работает через драйвер OWFS (One Wire File System) или напрямую через модуль ядра.
Для Home Assistant на x86-сервере или в виртуальной машине — это основной вариант, поскольку GPIO отсутствует.
ESP32 с прошивкой ESPHome может работать как 1-Wire-мастер. Подключаете DS18B20 к GPIO-пину ESP32, описываете датчик в YAML-конфигурации ESPHome — и данные попадают в Home Assistant по Wi-Fi.
Этот вариант удобен, когда датчики расположены далеко от сервера. ESP32 стоит рядом с датчиками, считывает показания и передаёт их по сети. Никаких длинных 1-Wire-линий через весь дом.
OWFS (One Wire File System) — программный пакет для Linux, предоставляющий доступ к 1-Wire-устройствам через файловую систему, HTTP-интерфейс или сервер owserver. Home Assistant может подключаться к owserver по сети — это позволяет разнести 1-Wire-мастер и сервер Home Assistant на разные машины.
Классика. DS18B20 в герметичных гильзах на трубах: подача, обратка, контур тёплого пола, бойлер, буферная ёмкость. Десять-пятнадцать датчиков на одной шине — полная картина работы системы отопления в реальном времени.
Стоимость всех датчиков — меньше, чем один Zigbee-термостат. А информативность — несопоставимо выше.
DS18B20 можно использовать и для измерения комнатной температуры. Не так элегантно, как беспроводной датчик на стене, но дёшево и надёжно. Особенно если шина всё равно проходит через помещение — подключить ещё один датчик ничего не стоит.
Герметичный DS18B20 в холодильнике или морозильной камере. Провод выведен через уплотнитель дверцы. Home Assistant строит график температуры и отправляет уведомление, если она вышла за допустимые пределы. Простое решение, которое однажды может спасти содержимое вашего морозильника.
Герметичные датчики в земле, в воде, в компостной куче — без шуток, энтузиасты мониторят всё. DS18B20 работает от −55°C до +125°C, герметичный корпус из нержавейки не боится воды и агрессивных сред.
DS2423 (счётчик импульсов) подключается к импульсному выходу счётчика воды или газа. Каждый импульс — определённый объём ресурса. Home Assistant считывает накопленное значение и переводит его в литры или кубометры.
Зачем вообще провода, если есть Zigbee и BLE?
Стоимость. DS18B20 в герметичном корпусе — условные пару долларов. Zigbee-датчик температуры Aqara — в десять раз дороже. Если нужно десять точек измерения, разница ощутима. Если двадцать — очевидна.
Надёжность. Провод не теряет связь, не страдает от помех, не разряжается. 1-Wire-датчик не «отваливается» из mesh-сети и не перестаёт работать, потому что кто-то выключил соседнюю лампочку-роутер.
Форм-фактор. Герметичная гильза на проводе — идеальна для труб, жидкостей, грунта. Ни один беспроводной датчик не предлагает такого варианта.
Отсутствие батареек. Ничего не нужно менять раз в год. Подключили — забыли.
Но есть и обратная сторона:
Провода. Их нужно прокладывать. В готовом доме это может быть проблемой. В строящемся — закладывается на этапе монтажа без проблем.
Только температура (в основном). 1-Wire-линейка устройств ограничена. Датчик движения, освещённости, влажности по 1-Wire вы не найдёте. Для этих задач — Zigbee и компания.
Скорость. Опрос двадцати DS18B20 с максимальным разрешением занимает около 15 секунд. Для температуры — нормально. Для быстрых процессов — медленно.
Отдельная боль. Рынок наводнён поддельными DS18B20. Особенно среди дешёвых предложений на AliExpress. Подделки могут работать — но с худшей точностью, нестабильно на длинных линиях, с ошибками при паразитном питании.
Признаки подделки: нестабильные показания, ошибки чтения при паразитном питании, точность хуже ±2°C, некорректная работа при изменении разрешения.
Как снизить риск: покупайте у проверенных поставщиков, тестируйте датчики перед установкой (сравните показания нескольких штук — разброс у оригинальных не должен превышать 0,5°C), используйте внешнее питание — подделки чаще глючат именно в паразитном режиме.
1-Wire — это технология из девяностых, которая нашла вторую жизнь в домашней автоматизации. Один провод, копеечные датчики, десятки точек измерения на одной шине — для задач мониторинга температуры это решение, которое трудно превзойти по соотношению цена/результат.
DS18B20 в герметичном корпусе — фактический стандарт для мониторинга систем отопления, тёплых полов, бойлеров и трубопроводов. Подключается к Raspberry Pi, ESP32, USB-адаптеру — и через минуту данные уже в Home Assistant.
Протокол не универсален. Он про температуру и немного про счётчики. Для всего остального есть Zigbee, Z-Wave и Wi-Fi. Но в своей нише 1-Wire — вне конкуренции. Дёшево, надёжно, и работает десятилетиями без обслуживания. Что ещё нужно от датчика на трубе.