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

Навигация

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

4593 байта убрано ,  2 месяца назад
 
(не показано 49 промежуточных версий 5 участников)
Строка 1: Строка 1:
<languages/>
<languages/><translate>
<translate>
<!--T:26-->
<!--T:1-->
{{DISPLAYTITLE: 1-Wire в контроллерах Wiren Board }}
'''[https://wirenboard.com/ru/product/1wire-DS18B20/ Купить в интернет-магазине]'''
'''[https://wirenboard.com/product/1wire-DS18B20/ Купить датчик температуры DS18B20 1-Wire]'''


<!--T:2-->
[[Image: ds18b20.jpg |300px|thumb|right| Самый популярный температурный датчик 1-Wire DS18B20, установленный в герметичном корпусе. '''[https://wirenboard.com/product/1wire-DS18B20/ Купить]''' ]]
[[File:ds18b20.jpg|400px|thumb|Самый популярный температурный датчик 1-Wire - DS18B20, установленный в герметичном корпусе]]
== Подключение == <!--T:27-->
[[Image: WirenBoard+1-Wire.png |200px|thumb|right| Подключение датчика 1-Wire к контроллеру Wiren Board ]]
{{Wbincludes:1-Wire Network}}


<!--T:3-->
== Поддержка в ПО == <!--T:28-->
[https://en.wikipedia.org/wiki/1-Wire '''1-Wire'''] - шина для подключения внешних датчиков, чаще всего температурных. Датчики подключаются по двум или трём проводам. Так как это шина, на один 1-Wire порт Wiren Board можно подключить несколько датчиков при соблюдении определённых условий.
Значения датчика транслируются в очередь сообщений [[MQTT|MQTT]] драйвером [https://github.com/wirenboard/wb-homa-w1 wb-mqtt-w1].


== Поддерживаемые датчики == <!--T:4-->
<!--T:29-->
<gallery mode="traditional" widths ="400px" heights="250px">
Image: 1wire_mqtt.png | MQTT-топик и идентификатор датчика в разделе ''Settings'' веб-интерфейса
Image: Web-devices-1-wire.png | Показания датчика и его уникальный идентификатор на странице ''Devices'' веб-интерфейса
</gallery>


<!--T:5-->
После подключения датчиков к контроллеру значения с датчиков сразу появятся в [[Веб-интерфейс 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 магазине].
== Изображения и чертежи датчика температуры DS18B20 ==
<gallery mode="packed" heights="220px">
Файл:ds18b20.jpg|Датчик температуры DS18B20 1-Wire
Файл:ds18b20-1.jpg|Размеры DS18B20
</gallery>


<!--T:6-->
'''SVG:''' [[File:DS18B20.svg.zip]]
Диапазон измерения температуры: -55..+125 °C.


<!--T:7-->
== Полезные ссылки == <!--T:30-->
Возможна реализация поддержки других 1-Wire устройств по запросу на [mailto:support@contactless.ru].


 
<!--T:31-->
== Подключение == <!--T:8-->
{{Wbincludes:Device Page Footer}}
 
 
=== Подключение одного датчика по трём проводам === <!--T:9-->
 
<!--T:10-->
Датчик имеет три вывода. Их цвета могут меняться от модели к модели, желательно найти документацию на свою модель.
{| class="wikitable"
!Сигнал||К какому клеммнику <br> Wiren Board подключать||Цвет: модель 1||Цвет: модель 2||Цвет: модель 3
|-
|Vdd (VCC, питание)||+5V Out||Красный||Красный||Красный
|-
|GND (земля)||GND||Чёрный||Чёрный||Желтый
|-
|DQ (DATA, данные)||1W||Синий||Жёлтый||Зелёный
|}
 
=== Подключение одного датчика по двум проводам === <!--T:11-->
 
<!--T:12-->
В некоторых случаях датчик можно подключить всего двумя проводами. Для этого нужно соединить контакты питания и земли датчика, и подключить их к земле контроллера. При таком подключении датчик будет брать питание с канала данных. '''Этот способ не рекомендуется''', так как при этом замедляется опрос датчиков, особенно если их несколько на одном порту контроллера: время тратится на зарядку внутренних емкостей датчиков напряжением от линии данных. Этот способ крайне не рекомендуется при одновременном подключении нескольких датчиков, так как тока с линии данных может не хватить для зарядки нескольких датчиков
 
=== Подключение нескольких датчиков на одну шину === <!--T:13-->
 
<!--T:14-->
'''Внимание! Одновременная надёжная работа двух и более датчиков гарантируется только при соблюдении описанных ниже условий.'''
 
<!--T:15-->
Основной документ при проектировании шины - инструкция от разработчика 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), зависит как от длины шины, так и от её топологии
* Прокладка линии одной шиной лучше, чем прокладка звездой. При прокладке линии звездой надёжная работа не гарантируется
 
 
== Поддержка в ПО == <!--T:16-->
 
<!--T:17-->
[[File:Web-devices-1-wire.png|400px|thumb|Показания датчика и его уникальный идентификатор на странице ''Devices'' веб-интерфейса]]
После подключения значения с датчиков сразу появятся в [[Special:MyLanguage/Веб-интерфейс Wiren Board|веб-интерфейсе]]. Если к контроллеру подключены несколько датчиков, они будут различаться своими идентификаторами. (Идентификаторы установлены в датчики на заводе,они содержат тип устройства, номер и контрольную сумму.)
Значения датчика транслируются в очередь сообщений [[Special:MyLanguage/MQTT|MQTT]] драйвером [https://github.com/contactless/wb-homa-w1 wb-homa-w1].
[[File:1wire_mqtt.png|900px|thumb|center|MQTT-топик и идентификатор датчика в разделе ''Settings'' веб-интерфейса]]
 
== Поддержка в устаревших устройствах (Wiren Board 2.8) == <!--T:18-->
 
<!--T:19-->
[[Special:MyLanguage/1-Wire в Wiren Board 2.8|1-Wire в Wiren Board 2.8]]
</translate>
</translate>
translator, wb_editors
4251

правка