WBE2-I-KNX KNX Extension Module: различия между версиями

Материал из Wiren Board
(не показано 67 промежуточных версий 9 участников)
Строка 1: Строка 1:
<languages/>
<translate>
{{DISPLAYTITLE:Модуль расширения: KNX, WBE2-I-KNX}}
'''[https://wirenboard.com/ru/product/WBE2-I-KNX/ Купить в интернет-магазине]'''
[[Файл:WBE2-I-KNX.png|thumb|200px|Модуль расширения WBE2-I-KNX]]
== Описание модуля == <!--T:1-->
[[Image: KNX_connect_controller.png|300px|thumb|right| Подключение контроллера Wiren Board к шине [[KNX]] с помощью модуля '''WBE2-I-KNX''', установленного в разъём '''MOD1''']]


Модуль '''WBE2-I-KNX''' устанавливается внутрь контроллера Wiren Board и добавляет контроллеру порт для подключения устройств, использующих для связи протокол KNX.


Распиновка:
 
<!--T:3-->
== Распиновка ==
{| class="wikitable noclear"
 
[[Файл:WBE2-I-KNX.png|thumb|300px|Модуль расширения WBE2-I-KNX]]
 
{| class="wikitable"
!Клемма
!Клемма
!Функция
!Функция
|-
|-
|O1 (ранее - Red)
|O1 (Red)
|KNX (+)
|KNX (+)
|-
|-
Строка 21: Строка 16:
|n/a
|n/a
|-
|-
|O3 (ранее - Gray)
|O3 (Gray)
|KNX (-)
|KNX (-)
|}
|}


==Установка==
[[Файл:Knx conector.png|300px|Модуль расширения KNX]]
{{Wbincludes:Setup MOD}}
 
{{Wbincludes:Installation MOD WBE2 Interfaces}}
==  Конфигурирование ==
{{Wbincludes:Configuration MOD}}
В веб-интерфейсе в разделе '''Configs => Hardware Modules Configuration''' необходимо выставить тип модуля для Internal slot 1 (MOD1), Либо для Internal slot 2 (MOD2) в зависимости от положения самого модуля KNX.
 
[[Файл:WBE2-I-KNX_Web.png|300px|настройка типа модуля]]
 
 
== Работа через iRidium Server ==
 
Скачайте свежую версию установочного deb пакета с названием '''iRidium server для Raspbian Jessie with the PIXEL и WB 0 (gen 6)''' отсюда [https://iridi.com/ru/download/software/v3/ Загрузки iRidium Pro]
 
[[Файл:iridium_server_download_link_screenshot.png]]
 
скопируйте файл на контроллер и установите его выполнив команду
 
'''dpkg -i iridiumserver_1.3.0-15590_RPI.deb'''
 
Зайдите на web интерфейс iRidium Server по ссылке '''''адрес_вашего_wirenboard:8888''''' и авторизуйтесь на сервере.
 
Далее при создании проекта добавте драйвер KNX Serial (UMC) и настройте его как показано ниже
 
[[Файл:iridium_server_knx_serial_driver_settings.jpg]]
 
ипользуйте '''''/dev/ttyMOD2''''' если модуль установлен во второй слот расширения
 


В папке /dev Появятся симлинки на устройства ttyKNX1 — для Internal slot 1 и ttyKNX2 — для Internal slot 2. Если выбрано всего Одно устройство KNX, то так же появитcя симлинк ttyKNX, при этом не важно в каком слоте из двух будет установлен модуль.


==Работа==
== Работа через MQTT  ==
Основную информацию по сетям KNX можно найти [https://www.ixbt.com/home/knx-intro.shtml в статье на сайте IXBT] и на странице [[KNX]].


=== Предустановленное ПО ===
Необходимо зайти в консоль и установить пакеты [https://contactless.ru/wiki/index.php/MQTT_KNX_Bridge wb-mqtt-knx (MQTT KNX Bridge)], knxd, knxd-tools:


Мы рекомендуем использовать сервис [[MQTT_KNX | wb-mqtt-knx]], который транслирует KNX-телеграммы в MQTT-топики и наоборот. С KNX-шиной он общается через роутер [[Knxd]].
'''apt-get update'''


Для отладки удобно использовать программу [[KnxTool]].
'''apt-get install knxd knxd-tools wb-mqtt-knx'''


=== Альтернативное ПО ===
После установки необходимо отредактировать файл '''/etc/default/knxd''':


Так же на контроллеры Wiren Board для работы с KNX можно установить ПО [[IRidium Server]], которое может работать с шиной KNX как на прямую или через роутер knxd.
Замените строку:


== Примеры ==
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ip:"
* [[KNX_Quick_start | Быстрый старт по KNX]]
на :
* [[KNX demo-stand]], статья описывает работу сервиса wb-mqtt-knx в режиме Сетевой мост, который устарел и не поддерживается.


== Известные неисправности ==
'''DAEMON_ARGS="-d /var/log/knxd.log -t 0xffe -f 9 -e 1.2.255 -E 1.1.10:30 -u /var/run/knx -i -b ncn5120:/dev/ttyMOD1 -D -T -R -S"'''
[[WBE2-I-KNX:_Errata |Список известных неисправностей]]


== Ревизии устройства == <!--T:20-->
 
{{Wbincludes:Revision}}
Расшифровка ключей:
{| class="wikitable"
!Ключ
!Функция
|-
| -d /var/log/knxd.log
| уйти в фон и писать в лог.
|-
| -e 1.1.255
|назначает KNX-адрес knxd равным 1.1.255, как IP-шлюзу.
|-
| -E 1.1.10:30
|указывает knxd выдавать KNX-адреса узлам из IP-сети в диапазоне 1.1.10..1.1.30
|-
|-
|2.5
| -u /var/run/knx
|v2.5B - ...
|открываем локальный Unix-сокет
|01.2024 - ...
|
*На чипе NCN5121
|-
|-
|2.5
| -t 0xffe
|v2.5A
|задаём маску вывода отладочных сообщений.
|10.2023
|
*Больше вырез в контуре платы, для совместимости с WB7.4.
|-
|-
|2.4
| -f 9
|v2.4E, v2.4F
|задать макс. verbosity level
|05.2023 - 10.2023
|
*На чипе NCN5120
|-
|-
|2.4
| -i
|v2.4A, v2.4B, v2.4C, v2.4D - ...
|указываем слушать TCP-порт (по умолчанию 6720). Можно прописывать -i 6721 или другой порт. Не исключающая альтернатива -u
|01.2022 - ...
|
*Изменена геометрия платы для совместимости с WB7
|-
|-
|2.3
| -b ncn5120:/dev/ttyMOD1
|v2.3A - v2.3E
|активируем ncn5120-драйвер на порту для MOD1 (при установке модуля в слот расширения MOD 2 следует указать ttyMOD2)
|04.2020 - 01.2022
|
*На чипе NCN5121 (исправлена ERRKNX220001)
|-
|-
|2.2
| -T -R
|v2.2A
|активируем режим шлюза, туннеля (нужно для работы с ETS)
|09.2019 - 04.2020
|
*Изменена геометрия платы (увеличен крепежный выступ)
|-
|-
|2.1
| -D
|
|говорит knxd оповещать о себе (Discovery) в сети
|конец 2017 - 08.2019
|
*Первая версия
|-
|-
| -S
|запускаем сервер (который отвечает на мультикасты)
|}
|}


</translate>
Подробнее:
 
knxd --help
 
==  Работа ==
 
 
Для запуска KNX daemon, необходимо прописать строку в консоль:
'''service knxd start'''
 
При необходимости перезапуска:
'''service knxd restart'''
 
Для проверки статуса:
'''service knxd status'''
 
 
 
Все логи хранятся в файле '''/var/log/knxd.log'''
 
При получении сообщения от KNX устройства данные публикуются в MQTT топик '''/devices/knx/controls/data''' на WirenBoard.
 
Для управления устройствами KNX необходимо отправлять команды в MQTT топик '''/devices/knx/controls/data/on''' .
 
Пример команды:
 
mosquitto_pub -h 192.168.0.10 -p 1883 -t /devices/knx/controls/data/on -m "g:0/0/1 GroupValueWrite 0x01"
 
Где:
 
-h 192.168.0.10 - IP-адрес контроллера с KNX
 
-p 1883 - порт MQTT
 
-t /devices/knx/controls/data/on - MQTT топик для выгрузки информации
 
-m "g:0/0/1 GroupValueWrite 0x01" - сообщение для KNX устройства
 
Подробнее о работе с данными KNX: [https://contactless.ru/wiki/index.php/MQTT_KNX_Bridge wb-mqtt-knx (MQTT KNX Bridge)]
 
 
Скрипт для [https://contactless.ru/wiki/index.php/%D0%94%D0%B2%D0%B8%D0%B6%D0%BE%D0%BA_%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB_wb-rules wb-rules] упрощающий обработку телеграмм: [https://gist.github.com/Yanni66/bc7604bb8646d52c9c864b4ca40c63b6 knx_group_addresses.js]
 
 
 
При работе с ETS '''Важно''': в “interfaces” ETS надо выбирать сам интерфейс ПК, через который происходит общение. Обращение с knxd в по юникасту (ip-адресу хоста с демоном) не даёт запрограммировать устройства. На иллюстрации стрелкой отмечено, какой способ взаимодействия с ETS работает:
 
 
[[Файл:EtsInterface.png|500px|Интерфейсы]]

Версия 14:20, 23 октября 2018


Распиновка

Модуль расширения WBE2-I-KNX
Клемма Функция
O1 (Red) KNX (+)
O2 (n/a) n/a
O3 (Gray) KNX (-)

Модуль расширения KNX

Конфигурирование

В веб-интерфейсе в разделе Configs => Hardware Modules Configuration необходимо выставить тип модуля для Internal slot 1 (MOD1), Либо для Internal slot 2 (MOD2) в зависимости от положения самого модуля KNX.

настройка типа модуля


Работа через iRidium Server

Скачайте свежую версию установочного deb пакета с названием iRidium server для Raspbian Jessie with the PIXEL и WB 0 (gen 6) отсюда Загрузки iRidium Pro

Iridium server download link screenshot.png

скопируйте файл на контроллер и установите его выполнив команду

dpkg -i iridiumserver_1.3.0-15590_RPI.deb

Зайдите на web интерфейс iRidium Server по ссылке адрес_вашего_wirenboard:8888 и авторизуйтесь на сервере.

Далее при создании проекта добавте драйвер KNX Serial (UMC) и настройте его как показано ниже

Iridium server knx serial driver settings.jpg

ипользуйте /dev/ttyMOD2 если модуль установлен во второй слот расширения


Работа через MQTT

Необходимо зайти в консоль и установить пакеты wb-mqtt-knx (MQTT KNX Bridge), knxd, knxd-tools:

apt-get update

apt-get install knxd knxd-tools wb-mqtt-knx

После установки необходимо отредактировать файл /etc/default/knxd:

Замените строку:

DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ip:" на :

DAEMON_ARGS="-d /var/log/knxd.log -t 0xffe -f 9 -e 1.2.255 -E 1.1.10:30 -u /var/run/knx -i -b ncn5120:/dev/ttyMOD1 -D -T -R -S"


Расшифровка ключей:

Ключ Функция
-d /var/log/knxd.log уйти в фон и писать в лог.
-e 1.1.255 назначает KNX-адрес knxd равным 1.1.255, как IP-шлюзу.
-E 1.1.10:30 указывает knxd выдавать KNX-адреса узлам из IP-сети в диапазоне 1.1.10..1.1.30
-u /var/run/knx открываем локальный Unix-сокет
-t 0xffe задаём маску вывода отладочных сообщений.
-f 9 задать макс. verbosity level
-i указываем слушать TCP-порт (по умолчанию 6720). Можно прописывать -i 6721 или другой порт. Не исключающая альтернатива -u
-b ncn5120:/dev/ttyMOD1 активируем ncn5120-драйвер на порту для MOD1 (при установке модуля в слот расширения MOD 2 следует указать ttyMOD2)
-T -R активируем режим шлюза, туннеля (нужно для работы с ETS)
-D говорит knxd оповещать о себе (Discovery) в сети
-S запускаем сервер (который отвечает на мультикасты)

Подробнее:

knxd --help

Работа

Для запуска KNX daemon, необходимо прописать строку в консоль: service knxd start

При необходимости перезапуска: service knxd restart

Для проверки статуса: service knxd status


Все логи хранятся в файле /var/log/knxd.log

При получении сообщения от KNX устройства данные публикуются в MQTT топик /devices/knx/controls/data на WirenBoard.

Для управления устройствами KNX необходимо отправлять команды в MQTT топик /devices/knx/controls/data/on .

Пример команды:

mosquitto_pub -h 192.168.0.10 -p 1883 -t /devices/knx/controls/data/on -m "g:0/0/1 GroupValueWrite 0x01"

Где:

-h 192.168.0.10 - IP-адрес контроллера с KNX

-p 1883 - порт MQTT

-t /devices/knx/controls/data/on - MQTT топик для выгрузки информации

-m "g:0/0/1 GroupValueWrite 0x01" - сообщение для KNX устройства

Подробнее о работе с данными KNX: wb-mqtt-knx (MQTT KNX Bridge)


Скрипт для wb-rules упрощающий обработку телеграмм: knx_group_addresses.js


При работе с ETS Важно: в “interfaces” ETS надо выбирать сам интерфейс ПК, через который происходит общение. Обращение с knxd в по юникасту (ip-адресу хоста с демоном) не даёт запрограммировать устройства. На иллюстрации стрелкой отмечено, какой способ взаимодействия с ETS работает:


Интерфейсы