Using Wiren Board with pulsed output devices: различия между версиями

Материал из Wiren Board
м (A.Degtyarev переименовал страницу Wiren Board 5: Подключение устройств с импульсными выходами в Using Wiren Board with pulsed output devices без оставления перенаправления: Часть переводимой страницы Wiren Board 5: Подключение устройств с импульсными выходами.)
м (Обновил)
Строка 1: Строка 1:
<languages/>
{{DISPLAYTITLE: Подключение устройств с импульсными выходами }}
<translate>
[[File:Installation_WB5_+_WaterMeter.png|thumb|right|400px|Пример подключения счетчика с импульсным выходом]]
{{DISPLAYTITLE:Подключение устройств с импульсными выходами}}
 
== Введение ==
К универсальным входам/выходам A1­-A4 можно подключить устройства с импульсным выходом или кнопки.
 
В примере мы подключим ко входу A1 счетчик воды с импульсным выходом.


[[File:Installation_WB5_+_WaterMeter.png|thumb|right|400px|Пример подключения счетчика с импульсным выходом]]
== Подготовка ==
[[File:DiscreteIO.png|thumb|right|400px|Данные от счетчика]]
=== Смена уровня доступа к веб-интерфейсу ===
<!--T:2-->
{{Wbincludes:WebUI Change Access Level}}
Универсальные входы/выходы A1-A4 контроллера (как и остальные [[GPIO]]) могут использоваться для подключения различных устройств с импульсным выходом или кнопок. Типичный пример: счетчики воды или электросчетчики.
[[Image: DiscreteIO.png |400px|thumb|right| Данные от счетчика ]]
[[Image: GPIO6 WaterMeter.png |400px|thumb|right| Вид интерфейса настройки счетчика ]]
=== Смена режима универсального входа/выхода ===
Перейдите на вкладку '''Devices''' → '''Discrete I/O''' и установите флажок '''A1_OUT''' в положение '''OFF'''.


=== Пример подключения === <!--T:3-->
=== Получение имени GPIO и смещения ===
Для настройки входа нам понадобятся параметры:
* Path to chip character device
* GPIO line offset


<!--T:4-->
Найти их можно в файле <code>/var/lib/wb-mqtt-gpio/conf.d/system.conf</code>. Например, вход '''A1_IN''' в файле описан так:
Импульсный вход одним проводом подключаем к источнику питания 5 — 24 В, второй провод к клемме А1.
<syntaxhighlight lang="java">
      "name": "A1_IN",
      "gpio": {
        "chip": "/dev/gpiochip2",
        "offset": 14
      },
      "direction": "input",
      "inverted": true,
      "initial_state": false
    },
</syntaxhighlight>
Нам интересны параметры gpio: '''chip''' и '''offset'''.


<!--T:5-->
== Схема подключения ==
Далее в веб-интерфейсе необходимо настроить универсальный вход A1 как счетчик.
Подключите импульсный выход счетчика одним проводом к клемме A1, а другим к клемме +5Vout. Проверьте, на клемме +5Vout есть напряжение.
В меню '''Configs''' выбираем раздел '''GPIO Driver Configuration'''.
На панели выбираем настройки входа A1_IN, нажимаем кнопку '''Properties''' и отмечаем все флажки. Еще раз нажимаем кнопку '''Properties'''.
Теперь  в свойствах входа A1_IN появились дополнительные поля.
В списке поля '''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...''' задает, сколько знаков после запятой будет отображаться в интерфейсе Wiren Board.
Сохраняем настройки, нажав кнопку '''Save''' вверху страницы и переходим к списку устройств на страницу '''Devices'''.


Находим устройство '''Discrete I/O''' и видим, что у него появились новые свойства: ''A1_IN_current'' и ''A1_IN_total''. Поле ''A1_IN_current'' показывает текущий расход воды, а ''A1_IN_total'' — какой объем был израсходован с момента подключения. В mqtt этим полям соответствуют топики '''/devices/wb-gpio/controls/A1_IN_current''' и '''/devices/wb-gpio/controls/A1_IN_total'''.  
== Настройка входа ==
Настроим универсальный вход A1 как счетчик:
1. Перейдите в меню '''Settings''' → '''Configs''' '''GPIO Driver Configuration Type'''.
2. В разделе '''List of GPIO channels''' добавьте новый канал, для этого нажмите на кнопку '''+GPIO channel'''.
3. В форме добавленного канала нажмите кнопку '''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''' еще раз.
4. Заполните форму настроек канала:
:* MQTT 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
5. После ввода настроек нажмите кнопку '''Save'''.


<!--T:6-->
== Результат ==
Значение '''A1_IN_total''' сохраняется после перезагрузки контроллера (как retained сообщение в хранилище mqtt-брокера).
Результат можно посмотреть на вкладке '''Devices''', устройство '''Discrete I/O'''. В нем появятся два новых параметра:
* A1_IN_total — объем, израсходованный с момента подключения счетчика к контроллеру. Сохраняется после перезагрузки контроллера как retained сообщение в хранилище mqtt-брокера.
* A1_IN_current — текущий расход воды.


[[File:GPIO6_WaterMeter.png|thumb|center|800px|Вид интерфейса настройки счетчика]]
Также значения будут доступны в mqtt-топиках:
</translate>
* /devices/wb-gpio/controls/A1_IN_total
* /devices/wb-gpio/controls/A1_IN_current

Версия 20:45, 21 апреля 2021

Пример подключения счетчика с импульсным выходом

Введение

К универсальным входам/выходам A1­-A4 можно подключить устройства с импульсным выходом или кнопки.

В примере мы подключим ко входу A1 счетчик воды с импульсным выходом.

Подготовка

Смена уровня доступа к веб-интерфейсу

Уровень «Администратор»

Для изменения настроек контроллера вам нужен уровень доступа Администратор, который можно выставить в разделе НастройкиПрава доступа.

После завершения настроек рекомендуем поставить уровень доступа Пользователь или Оператор — это поможет не совершить случайных ошибок при ежедневной работе с веб-интерфейсом.

Данные от счетчика
Вид интерфейса настройки счетчика

Смена режима универсального входа/выхода

Перейдите на вкладку DevicesDiscrete I/O и установите флажок A1_OUT в положение OFF.

Получение имени GPIO и смещения

Для настройки входа нам понадобятся параметры:

  • 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. Проверьте, на клемме +5Vout есть напряжение.

Настройка входа

Настроим универсальный вход A1 как счетчик: 1. Перейдите в меню SettingsConfigsGPIO Driver Configuration Type. 2. В разделе List of GPIO channels добавьте новый канал, для этого нажмите на кнопку +GPIO channel. 3. В форме добавленного канала нажмите кнопку 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 еще раз.

4. Заполните форму настроек канала:

  • MQTT 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

5. После ввода настроек нажмите кнопку 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