Using Wiren Board with pulsed output devices: различия между версиями
Brainroot (обсуждение | вклад) |
|||
(не показано 9 промежуточных версий 3 участников) | |||
Строка 4: | Строка 4: | ||
== Введение == | == Введение == | ||
К универсальным входам/выходам A1-A4 | Устройства с импульсным выходом и датчики с выходом «сухой контакт» можно подключить к контроллеру несколькими способами: | ||
* К универсальным входам/выходам A1-A4 (A1–A3, D1). | |||
* С помощью модулей [[WB-MCM8_Modbus_Count_Inputs | WB-MCM8]] и [[WB-MWAC Modbus Water Consumption Metering and Leak Monitoring | WB-MWAC]]. | |||
В примере мы подключим к входу A1 счетчик воды с импульсным выходом. | В примере мы подключим к входу A1 счетчик воды с импульсным выходом. | ||
Строка 11: | Строка 13: | ||
=== Смена уровня доступа к веб-интерфейсу === | === Смена уровня доступа к веб-интерфейсу === | ||
{{Wbincludes:WebUI Change Access Level}} | {{Wbincludes:WebUI Change Access Level}} | ||
<gallery mode="traditional" widths ="250px" heights="200px"> | |||
Image: GPIO6 WaterMeter.png| Вид интерфейса настройки счетчика | |||
Image: DiscreteIO.png| Данные со счетчика | |||
</gallery> | |||
=== Подготовка выходов контроллера === | === Подготовка выходов контроллера === | ||
Переключите универсальный вход/выход '''A1''' в режим входа: | Переключите универсальный вход/выход '''A1''' в режим входа: | ||
Строка 25: | Строка 30: | ||
=== Получение имени GPIO и смещения === | === Получение имени GPIO и смещения === | ||
устарело, для релизов новее 2207 неактуально | |||
Для настройки входа нам понадобятся параметры: | Для настройки входа нам понадобятся параметры: | ||
* Path to chip character device | * Path to chip character device | ||
* GPIO line offset | * GPIO line offset | ||
Найти их можно в файле <code>/var/lib/wb-mqtt-gpio/conf.d/system.conf</code | Найти их можно в файле <code>/var/lib/wb-mqtt-gpio/conf.d/system.conf</code>. Например, вход '''A1_IN''' в файле описан так: | ||
<syntaxhighlight lang="java"> | <syntaxhighlight lang="java"> | ||
"name": "A1_IN", | "name": "A1_IN", | ||
Строка 47: | Строка 55: | ||
== Настройка входа == | == Настройка входа == | ||
Настройте универсальный вход A1 как счетчик. | |||
# Добавьте новый канал: | # Добавьте новый канал: | ||
Строка 70: | Строка 78: | ||
== Результат == | == Результат == | ||
Результат можно посмотреть на вкладке '''Devices''', устройство '''Discrete I/O'''. В нем появятся два новых параметра: | Результат можно посмотреть на вкладке '''Devices''', устройство '''Discrete I/O'''. В нем появятся два новых параметра: | ||
* A1_IN_total — объем, израсходованный с момента подключения счетчика к контроллеру. Сохраняется после перезагрузки контроллера как retained сообщение в хранилище mqtt-брокера. | * A1_IN_total — объем, израсходованный с момента подключения счетчика к контроллеру. Сохраняется после перезагрузки контроллера как retained сообщение в хранилище [[MQTT |mqtt-брокера]]. | ||
* A1_IN_current — текущий расход воды. | * A1_IN_current — текущий расход воды. | ||
Текущая версия на 11:55, 23 августа 2024
Введение
Устройства с импульсным выходом и датчики с выходом «сухой контакт» можно подключить к контроллеру несколькими способами:
В примере мы подключим к входу A1 счетчик воды с импульсным выходом.
Подготовка
Смена уровня доступа к веб-интерфейсу
Для изменения настроек контроллера вам нужен уровень доступа Администратор, который можно выставить в разделе Настройки → Права доступа.
После завершения настроек рекомендуем поставить уровень доступа Пользователь или Оператор — это поможет не совершить случайных ошибок при ежедневной работе с веб-интерфейсом.
Подготовка выходов контроллера
Переключите универсальный вход/выход A1 в режим входа:
- Перейдите на вкладку Devices
- Найдите устройство Discrete I/O
- Установите переключатель A1_OUT в положение OFF.
В примере мы будем подавать питание с выхода +5Vout, поэтому включите его:
- Перейдите на вкладку Devices
- Найдите устройство Discrete I/O
- Установите переключатель 5V_OUT в положение ON.
Получение имени GPIO и смещения
устарело, для релизов новее 2207 неактуально
Для настройки входа нам понадобятся параметры:
- Path to chip character device
- GPIO line offset
Найти их можно в файле /var/lib/wb-mqtt-gpio/conf.d/system.conf
. Например, вход A1_IN в файле описан так:
"name": "A1_IN",
"gpio": {
"chip": "/dev/gpiochip2",
"offset": 14
},
"direction": "input",
"inverted": true,
"initial_state": false
},
Нам интересны параметры gpio: chip и offset.
Схема подключения
Подключите импульсный выход счетчика черным проводом к клемме A1, а красным к клемме +5Vout, смотрите рисунок Пример подключения счетчика с импульсным выходом.
Настройка входа
Настройте универсальный вход A1 как счетчик.
- Добавьте новый канал:
- Перейдите в меню Settings → Configs
- Найдите пункт GPIO Driver Configuration Type и перейдите в него.
- В разделе List of GPIO channels добавьте новый канал, для этого нажмите на кнопку +GPIO channel.
- В форме добавленного канала нажмите кнопку Properties и включите пункты:
- Pulse counter type (if any)
- Number of pulses per unit (kWh or m^3)
- Number of decimal places in _current topic (pulse counters only)
- Чтобы скрыть список опций, нажмите на кнопку Properties еще раз.
- Заполните форму настроек канала:
- MQTT id — ID канала, к которому подключен счетчик:
A1_IN
. - Path to chip character device — путь к устройству:
/dev/gpiochip2
. - GPIO line offset —
14
. - Direction — режим входа:
Input
. - Pulse counter type (if any) — тип счетчика:
water_meter
. - Number of pulses per unit (kWh or m^3) — количество импульсов на кубометр. Например, если 1 импульс счетчика соответствует 10 литрам воды, то установите значение
100
. Если 1 литру — 1000. Значение можно узнать из документации счетчика воды. - Number of decimal places in _current topic (pulse counters only) — количество знаков после запятой:
3
.
- MQTT id — ID канала, к которому подключен счетчик:
- После ввода настроек нажмите кнопку Save.
Результат
Результат можно посмотреть на вкладке Devices, устройство Discrete I/O. В нем появятся два новых параметра:
- A1_IN_total — объем, израсходованный с момента подключения счетчика к контроллеру. Сохраняется после перезагрузки контроллера как retained сообщение в хранилище mqtt-брокера.
- A1_IN_current — текущий расход воды.
Также значения будут доступны в mqtt-топиках:
- /devices/wb-gpio/controls/A1_IN_total
- /devices/wb-gpio/controls/A1_IN_current