Перейти к содержанию

Wiren-board-1-wire-sensors

Материал из XIOT Wiki


🧩 О шине 1-Wire

1-Wire — это цифровой интерфейс, позволяющий подключать несколько датчиков по одному сигнальному проводу. Каждый датчик имеет уникальный 64-битный адрес, поэтому контроллер опрашивает их индивидуально без конфликтов.

Чаще всего используются температурные датчики DS18B20. Они недорогие, компактные и легко интегрируются в систему умного дома.

📡 Особенности передачи сигнала

  • Работа осуществляется по двум проводам: DATA и GND.
  • Поддерживается питание по отдельному проводу (VCC), либо паразитное питание через линию DATA.
  • Встроенный подтягивающий резистор 3 кОм между DATA и +5V уже установлен в контроллерах Wiren Board.
  • В ряде случаев (длинные линии, большое количество датчиков) может потребоваться замена этого резистора на внешний с номиналом 4,7 кОм.
  • Шина крайне чувствительна к:
 * разветвлённой топологии (допустима только шина, без «звёзд»),
 * паразитной ёмкости кабеля,
 * длине линии (оптимально до 30 метров),
 * качеству соединений (рекомендуется пайка или клеммы, не скрутки).

🔌 Подключение к Wiren Board

Контроллеры Wiren Board (например, WB6, WB7, WB9) имеют встроенный порт 1-Wire:

  • 1W-DATA — сигнальный провод;
  • 1W-GND — земля;
  • +5V — питание для датчиков.

Подключение выполняется следующим образом:

  1. Все выводы GND от датчиков соединяются с 1W-GND.
  2. Все выводы DATA соединяются с 1W-DATA.
  3. Питание (VCC) подключается к +5V на контроллере, если не используется паразитный режим.

🧵 Правильная прокладка кабеля

  • Используйте витую пару — например, кабель UTP 5e.
  • Рекомендуем DATA + GND в одной паре, VCC + GND — в другой.
  • Не используйте тройники, скрутки и ответвления.
  • Прокладывайте кабель вдали от силовых линий.
  • При монтаже более 5 датчиков на одной линии используйте пониженную скорость или внешний адаптер.

✅ Проверка подключения через веб-интерфейс

После физического подключения:

  1. Перейдите в веб-интерфейс контроллера по IP-адресу (например, http://192.168.1.10).
  2. Откройте раздел Devices (Устройства).
  3. Найдите блок 1-Wire Devices.
  4. Все подключённые датчики появятся автоматически со своими уникальными идентификаторами (например, 28-00000xxxxxxx).
  5. Убедитесь, что отображается текущая температура.

Важно: если датчики не отображаются — проверьте надёжность соединений, целостность линии и при необходимости установите внешний резистор 4,7 кОм между DATA и +5V.

⚠️ Типичные ошибки

  • Нет данных от датчика:
 * перепутаны провода (DATA и GND);
 * плохой контакт;
 * отсутствие необходимого подтягивающего резистора при нестандартной топологии.
  • Ошибки чтения:
 * кабель слишком длинный;
 * есть разветвления;
 * используется паразитное питание.
  • Периодическое пропадание датчиков:
 * слабое питание;
 * наводки от силовых кабелей;
 * плохая пайка или скрутки.

📘 Заключение

1-Wire — удобный и экономичный интерфейс для подключения цифровых датчиков к Wiren Board. При соблюдении рекомендаций по монтажу и топологии система работает стабильно. Встроенный резистор подтяжки присутствует, но в некоторых случаях может потребоваться замена на другой номинал для повышения надёжности.