1-Wire: различия между версиями

Материал из Wiren Board
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
[[File:ds18b20.jpg|400px|thumb|Самый популярный температурный датчик 1-Wire - DS18B20, установленный в герметичном корпусе]]
[[File:ds18b20.jpg|400px|thumb|Самый популярный температурный датчик 1-Wire - DS18B20, установленный в герметичном корпусе]]
[https://en.wikipedia.org/wiki/1-Wire '''1-Wire'''] - шина для подключения внешних датчиков, чаще всего температурных. Датчики подключаются по двум или трём проводам. Так как это шина, на один 1-Wire порт Wiren Board можно подключить несколько датчиков.
[https://en.wikipedia.org/wiki/1-Wire '''1-Wire'''] - шина для подключения внешних датчиков, чаще всего температурных. Датчики подключаются по двум или трём проводам. Так как это шина, на один 1-Wire порт Wiren Board можно подключить несколько датчиков при соблюдении определённых условий.
== Поддерживаемые датчики ==
== Поддерживаемые датчики ==
Wiren Board поддерживает один тип 1-Wire датчиков: температурные датчики на основе чипов DS18B20 и подобные. Они продаются в нашем [http://contactless.ru/store/#!/%D0%A6%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%BE%D0%B9-%D0%B4%D0%B0%D1%82%D1%87%D0%B8%D0%BA-%D1%82%D0%B5%D0%BC%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B-1-Wire/p/49713039/category=14225168 магазине].
Wiren Board поддерживает один тип 1-Wire датчиков: температурные датчики на основе чипов DS18B20 и подобные. Они продаются в том числе в нашем [http://contactless.ru/store/#!/%D0%A6%D0%B8%D1%84%D1%80%D0%BE%D0%B2%D0%BE%D0%B9-%D0%B4%D0%B0%D1%82%D1%87%D0%B8%D0%BA-%D1%82%D0%B5%D0%BC%D0%BF%D0%B5%D1%80%D0%B0%D1%82%D1%83%D1%80%D1%8B-1-Wire/p/49713039/category=14225168 магазине].


Диапазон измерения температуры: -55..+125 °C.
Диапазон измерения температуры: -55..+125 °C.
Строка 9: Строка 9:


== Подключение ==
== Подключение ==
Датчик имеет три вывода:
=== Подключение одного датчика по трём проводам ===
*(обычно красный) - питание, VCC. Нужно подключить к +5В (клеммник 5V out).
Датчик имеет три вывода. Их цвета могут меняться от модели к модели, желательно найти документацию на свою модель.
*(обычно жёлтый) - земля, GND. Нужно подключить к земле (клеммник GND).
{| class="wikitable"
*(обычно зелёный) - данные, DATA. Нужно подключить к клеммнику данных 1-Wire, на контроллере именно он называется ''1-Wire'' или ''1W''.
!Сигнал||К какому клеммнику <br> Wiren Board подключать||Цвет: модель 1||Цвет: модель 2||Цвет: модель 3
|-
|Vdd (VCC, питание)||+5V Out||Красный||Красный||Красный
|-
|GND (земля)||GND||Чёрный||Чёрный||Желтый
|-
|DQ (DATA, данные)||1W||Синий||Жёлтый||Зелёный
|}
=== Подключение одного датчика по двум проводам ===
В некоторых случаях датчик можно подключить всего двумя проводами. Для этого нужно соединить контакты питания и земли датчика, и подключить их к земле контроллера. При таком подключении датчик будет брать питание с канала данных. '''Этот способ не рекомендуется''', так как при этом замедляется опрос датчиков, особенно если их несколько на одном порту контроллера: время тратится на зарядку внутренних емкостей датчиков напряжением от линии данных. Этот способ крайне не рекомендуется при одновременном подключении нескольких датчиков, так как тока с линии данных может не хватить для зарядки нескольких датчиков
=== Подключение нескольких датчиков на одну шину ===
'''Внимание! Одновременная надёжная работа двух и более датчиков гарантируется только при соблюдении описанных ниже условий.'''


В некоторых случаях датчик можно подключить всего двумя проводами. Для этого нужно соединить контакты питания и земли датчика, и подключить их к земле контроллера. При таком подключении датчик будет брать питание с канала с данными. Этот способ не рекомендуется, так как при этом замедляется опрос датчиков, особенно если их несколько на одном порту контроллера: время тратится на зарядку внутренних емкостей датчиков напряжением от линии данных.
Основной документ при проектировании шины - инструкция от разработчика 1-Wire [https://www.maximintegrated.com/en/app-notes/index.mvp/id/148 TUTORIAL 148: Guidelines for Reliable Long Line 1-Wire Networks]. Основные тезисы оттуда:
 
* Длина шины при подключении одного датчика может составлять 200 метров
Длина шины теоретически может достигать сотни метров, однако реальная дальность зависит от наводок и качеств кабеля.
* Если вы собираетесь подключать несколько датчиков, обязательно подключайте их к питанию 5В (не используйте двухпроводную схему подключения)
* Если вы прокладываете шину на несколько метров, или короткую, но в условиях повышенных помех (например, в щитке) - используйте витую пару, например, Cat 5
* Количество датчиков, которые можно подключить к одному мастеру (например, контроллеру Wiren Board), зависит как от длины шины, так и от её топологии
* Прокладка линии одной шиной лучше, чем прокладка звездой. При прокладке линии звездой надёжная работа не гарантируется


== Поддержка в ПО ==
== Поддержка в ПО ==
Строка 23: Строка 37:
Значения датчика транслируются в очередь сообщений [[MQTT]] драйвером [https://github.com/contactless/wb-homa-w1 wb-homa-w1].
Значения датчика транслируются в очередь сообщений [[MQTT]] драйвером [https://github.com/contactless/wb-homa-w1 wb-homa-w1].
[[Файл:1wire_mqtt.png|900px|thumb|center|MQTT-топик и идентификатор датчика в разделе ''Settings'' веб-интерфейса]]
[[Файл:1wire_mqtt.png|900px|thumb|center|MQTT-топик и идентификатор датчика в разделе ''Settings'' веб-интерфейса]]
== Поддержка в устаревших устройствах (Wiren Board 2.8) ==
[[1-Wire в Wiren Board 2.8]]

Версия 16:25, 20 марта 2017

Самый популярный температурный датчик 1-Wire - DS18B20, установленный в герметичном корпусе

1-Wire - шина для подключения внешних датчиков, чаще всего температурных. Датчики подключаются по двум или трём проводам. Так как это шина, на один 1-Wire порт Wiren Board можно подключить несколько датчиков при соблюдении определённых условий.

Поддерживаемые датчики

Wiren Board поддерживает один тип 1-Wire датчиков: температурные датчики на основе чипов DS18B20 и подобные. Они продаются в том числе в нашем магазине.

Диапазон измерения температуры: -55..+125 °C.

Возможна реализация поддержки других 1-Wire устройств по запросу на [1].

Подключение

Подключение одного датчика по трём проводам

Датчик имеет три вывода. Их цвета могут меняться от модели к модели, желательно найти документацию на свою модель.

Сигнал К какому клеммнику
Wiren Board подключать
Цвет: модель 1 Цвет: модель 2 Цвет: модель 3
Vdd (VCC, питание) +5V Out Красный Красный Красный
GND (земля) GND Чёрный Чёрный Желтый
DQ (DATA, данные) 1W Синий Жёлтый Зелёный

Подключение одного датчика по двум проводам

В некоторых случаях датчик можно подключить всего двумя проводами. Для этого нужно соединить контакты питания и земли датчика, и подключить их к земле контроллера. При таком подключении датчик будет брать питание с канала данных. Этот способ не рекомендуется, так как при этом замедляется опрос датчиков, особенно если их несколько на одном порту контроллера: время тратится на зарядку внутренних емкостей датчиков напряжением от линии данных. Этот способ крайне не рекомендуется при одновременном подключении нескольких датчиков, так как тока с линии данных может не хватить для зарядки нескольких датчиков

Подключение нескольких датчиков на одну шину

Внимание! Одновременная надёжная работа двух и более датчиков гарантируется только при соблюдении описанных ниже условий.

Основной документ при проектировании шины - инструкция от разработчика 1-Wire TUTORIAL 148: Guidelines for Reliable Long Line 1-Wire Networks. Основные тезисы оттуда:

  • Длина шины при подключении одного датчика может составлять 200 метров
  • Если вы собираетесь подключать несколько датчиков, обязательно подключайте их к питанию 5В (не используйте двухпроводную схему подключения)
  • Если вы прокладываете шину на несколько метров, или короткую, но в условиях повышенных помех (например, в щитке) - используйте витую пару, например, Cat 5
  • Количество датчиков, которые можно подключить к одному мастеру (например, контроллеру Wiren Board), зависит как от длины шины, так и от её топологии
  • Прокладка линии одной шиной лучше, чем прокладка звездой. При прокладке линии звездой надёжная работа не гарантируется

Поддержка в ПО

Показания датчика и его уникальный идентификатор на странице Devices веб-интерфейса

После подключения значения с датчиков сразу появятся в веб-интерфейсе. Если к контроллеру подключены несколько датчиков, они будут различаться своими идентификаторами. (Идентификаторы установлены в датчики на заводе,они содержат тип устройства, номер и контрольную сумму.) Значения датчика транслируются в очередь сообщений MQTT драйвером wb-homa-w1.

MQTT-топик и идентификатор датчика в разделе Settings веб-интерфейса

Поддержка в устаревших устройствах (Wiren Board 2.8)

1-Wire в Wiren Board 2.8