WBE2-I-KNX KNX Extension Module/en: различия между версиями
FuzzyBot (обсуждение | вклад) м (FuzzyBot переименовал страницу KNX Module for WB6 (WBE2-I-KNX)/en в WBE2-I-KNX KNX Extension Module/en без оставления перенаправления: Часть переводимой страницы KNX Module for WB6 (WBE2-I-KNX).) Метки: правка с мобильного устройства правка из мобильной версии |
(Новая страница: «copy the file to the controller [https://wirenboard.com/wiki/index.php/%D0%9F%D1%80%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80_%D1%84%D0%B0%D0%B9%D0%BB%D0%BE%D0%B2_%D0%B…») |
||
(не показаны 34 промежуточные версии 1 участника) | |||
Строка 42: | Строка 42: | ||
'''dpkg -i iridiumserver_1.3.0-15590_RPI.deb''' | '''dpkg -i iridiumserver_1.3.0-15590_RPI.deb''' | ||
Зайдите на web интерфейс iRidium Server по ссылке '''''адрес_вашего_wirenboard:8888''''' и авторизуйтесь на сервере. | |||
Далее при создании проекта добавте драйвер KNX Serial (UMC) и настройте его как показано ниже | |||
[[Файл:iridium_server_knx_serial_driver_settings.jpg|Файл:iridium_server_knx_serial_driver_settings.jpg]] | [[Файл:iridium_server_knx_serial_driver_settings.jpg|Файл:iridium_server_knx_serial_driver_settings.jpg]] | ||
ипользуйте '''''/dev/ttyMOD2''''' если модуль установлен во второй слот расширения | |||
== | == Работа через MQTT == | ||
Необходимо зайти в консоль и установить пакеты [https://contactless.ru/wiki/index.php/MQTT_KNX_Bridge wb-mqtt-knx (MQTT KNX Bridge)], knxd, knxd-tools: | |||
'''apt-get update''' | '''apt-get update''' | ||
Строка 61: | Строка 61: | ||
'''apt-get install knxd knxd-tools wb-mqtt-knx''' | '''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="-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"''' | '''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"''' | ||
Строка 72: | Строка 72: | ||
На WB6, с новой версией прошивки для корректного запуска knxd необходимо исправить 2 файла: | |||
/etc/knxd.conf - | /etc/knxd.conf - вторую строчку заменить на: | ||
KNXD_OPTS="-t 0xffe -f 9 -e 1.1.255 -E 1.1.10:30 -b ncn5120:/dev/ttyMOD1 -D -T -R -S" | KNXD_OPTS="-t 0xffe -f 9 -e 1.1.255 -E 1.1.10:30 -b ncn5120:/dev/ttyMOD1 -D -T -R -S" | ||
/lib/systemd/system/knxd.service - | /lib/systemd/system/knxd.service - Закоментить User и Group (поставить перед ними решетки, как показано ниже) , либо удалить эти строки: | ||
#User=knxd | #User=knxd | ||
#Group=knxd | #Group=knxd | ||
после этого следует перезагрузить контроллер и всё должно заработать | |||
Расшифровка ключей: | |||
{| class="wikitable" | {| class="wikitable" | ||
! | !Ключ | ||
! | !Функция | ||
|- | |- | ||
| -d /var/log/knxd.log | | -d /var/log/knxd.log | ||
| | | уйти в фон и писать в лог. | ||
|- | |- | ||
| -e 1.1.255 | | -e 1.1.255 | ||
| | |назначает KNX-адрес knxd равным 1.1.255, как IP-шлюзу. | ||
|- | |- | ||
| -E 1.1.10:30 | | -E 1.1.10:30 | ||
| | |указывает knxd выдавать KNX-адреса узлам из IP-сети в диапазоне 1.1.10..1.1.30 | ||
|- | |- | ||
| -u /var/run/knx | | -u /var/run/knx | ||
| | |открываем локальный Unix-сокет | ||
|- | |- | ||
| -t 0xffe | | -t 0xffe | ||
| | |задаём маску вывода отладочных сообщений. | ||
|- | |- | ||
| -f 9 | | -f 9 | ||
| | |задать макс. verbosity level | ||
|- | |- | ||
| -i | | -i | ||
| | |указываем слушать TCP-порт (по умолчанию 6720). Можно прописывать -i 6721 или другой порт. Не исключающая альтернатива -u | ||
|- | |- | ||
| -b ncn5120:/dev/ttyMOD1 | | -b ncn5120:/dev/ttyMOD1 | ||
| | |активируем ncn5120-драйвер на порту для MOD1 (при установке модуля в слот расширения MOD 2 следует указать ttyMOD2) | ||
|- | |- | ||
| -T -R | | -T -R | ||
| | |активируем режим шлюза, туннеля (нужно для работы с ETS) | ||
|- | |- | ||
| -D | | -D | ||
| | |говорит knxd оповещать о себе (Discovery) в сети | ||
|- | |- | ||
| -S | | -S | ||
| | |запускаем сервер (который отвечает на мультикасты) | ||
|} | |} | ||
Подробнее: | |||
knxd --help | knxd --help | ||
== | == Работа == | ||
Для запуска KNX daemon, необходимо прописать строку в консоль: | |||
'''service knxd start''' | '''service knxd start''' | ||
При необходимости перезапуска: | |||
'''service knxd restart''' | '''service knxd restart''' | ||
Для проверки статуса: | |||
'''service knxd status''' | '''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" | 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- | -h 192.168.0.10 - IP-адрес контроллера с KNX | ||
-p 1883 - MQTT | -p 1883 - порт MQTT | ||
-t /devices/knx/controls/data/on - MQTT | -t /devices/knx/controls/data/on - MQTT топик для выгрузки информации | ||
-m "g:0/0/1 GroupValueWrite 0x01" - | -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| | [[Файл:EtsInterface.png|500px|Интерфейсы]] | ||
Так же если вы пользователь Windows 8, 10 советуем отключить антивирусы и брандмауэр, так как они могут мешать работе ETS. |
Версия 11:21, 27 июня 2019
Pinout
Terminal | Function |
---|---|
O1 (Red) | KNX (+) |
O2 (n/a) | n/a |
O3 (Gray) | KNX (-) |
Configuration
You need to set the module type in the web interface, sectionConfigs => Hardware Modules Configuration: for Internal slot 1 (MOD1) or for Internal slot 2 (MOD2) depending on the KNX module position.
Working via iRidium Server
Download the latest version of the installation of a deb package signed the iRidium server for Raspbian Jessie with the PIXEL 0 and WB (gen 6) here iRidium Pro downloads
copy the file to the controller (detailed description of how to copy files to the controller) and install it by running the command
dpkg -i iridiumserver_1.3.0-15590_RPI.deb
Зайдите на web интерфейс iRidium Server по ссылке адрес_вашего_wirenboard:8888 и авторизуйтесь на сервере.
Далее при создании проекта добавте драйвер KNX Serial (UMC) и настройте его как показано ниже
ипользуйте /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"
На WB6, с новой версией прошивки для корректного запуска knxd необходимо исправить 2 файла:
/etc/knxd.conf - вторую строчку заменить на: KNXD_OPTS="-t 0xffe -f 9 -e 1.1.255 -E 1.1.10:30 -b ncn5120:/dev/ttyMOD1 -D -T -R -S"
/lib/systemd/system/knxd.service - Закоментить User и Group (поставить перед ними решетки, как показано ниже) , либо удалить эти строки:
- User=knxd
- Group=knxd
после этого следует перезагрузить контроллер и всё должно заработать
Расшифровка ключей:
Ключ | Функция |
---|---|
-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 работает:
Так же если вы пользователь Windows 8, 10 советуем отключить антивирусы и брандмауэр, так как они могут мешать работе ETS.