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

1-Wire

photo

Рисунок 1. Общий вид контроллера Lavritech с подключённым датчиком DS18B20.

Опция 1-Wire позволяет получать данные о температуре с датчиков DS18B20, DS1820 и DS18S20. Поддерживается работа как с одиночными датчиками, так и сетью из нескольких датчиков (до 20 штук).

board

Рисунок 2. Подключение датчика DS18B20 к контроллеру при помощи модуля LTE2-DIO2-IO (V).

В контроллерах Lavritech датчики DS18B20 обычно подключаются при помощи модулей LTE2-DIO2-IO, которые выпускаются в «вертикальном» и «горизонтальном» (для экономии места внутри контроллера) исполнении.

modules

Рисунок 3. Внешний вид модулей LTE2-DIO2-IO в вертикальном и горизонтальном исполнении.

Подключаются эти модули в SOCKET1 в разъёмы WB1.1 или WB1.2. Обратите внимание: разъём, в который подключается модуль, должен быть сконфигурирован (резисторами на плате) как UART. Электрически, эти модули подключают напрямую выводы микроконтроллера ESP32 к выходным колодкам контроллера.

socket

Рисунок 4. Распиновка региона SOCKET1 и места подключения модулей LTE2-DIO2-IO и датчика DS18B20 (1-Wire).

В нашем случае мы будем подключать модуль LTE2-DIO2-IO в разъём WB1.1 и будем использовать 1-й канал (CH1) и GPIO26 (см. иллюстрацию выше).

Подключение датчика DS18B20 к 1-й выходной колодке:

O1.1 — GND
O2.1 — DATA (CH1)
O3.1 — не используется
O4.1 — 3V3

Преднастройки в конструкторе прошивок

В контроллерах Lavritech преднастройки 1-Wire в конструкторе прошивок по умолчанию имеют следующий вид:

constructor

При необходимости их можно изменить, заново перекомпилировать прошивку и загрузить её в контроллер (см. соответствующий раздел документации).

Здесь задаётся максимально поддерживаемое количество датчиков (10 шт.) и прочие опции: «Использование аппаратного RMT» — это экспериментальная функция, в некоторых случаях улучшающая стабильность работы 1-Wire сети.

Настройки в прошивке

Настройка работы 1-Wire начинается с включения этой функции и задания номера GPIO (26), к которому подключён датчик DS18B20 (на странице «Hardware» веб-интерфейса контроллера).

hardware

Обратите внимание: если в системе присутствуют конфликты распределения GPIO (можно увидеть на странице «GPIO»), то возможны проблемы с инициализацией работы 1-Wire. В этом случае нужно устранить конфликт распределения номеров GPIO в конструкторе прошивок.

Настройки 1-Wire находятся в соответствующем пункте меню:

menu

Здесь можно просканировать доступные 1-Wire датчики и узнать с какой точностью они определяют температуру (в данном случае — 12 бит).

settings

В случае правильного подключения датчика(ов) на главной странице можно увидеть их текущую температуру:

main

А на странице «Metrics» появляется соответствующая метрика температуры, которую можно использовать в других опциях системы и при написании скриптов.

metrics

Сетевые команды

Управлять точностью измерения температуры можно при помощи GET запросов.

http://[ip_adr]/config1wire?set=Y&bits=X, где Y — номер датчика, X — битность 9-12.

Связанные темы

Настройка опций
ModBus
LoRa
MCP23008

Где купить

Купить оборудование Lavritech можно в официальном интернет-магазине.