Модуль расширения KNX (WBE-I-KNX)/en: различия между версиями
(Новая страница: «with:») |
|||
Строка 40: | Строка 40: | ||
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ip:" | DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ip:" | ||
with: | |||
'''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/ttyAPP2 -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/ttyAPP2 -D -T -R -S"''' |
Версия 19:11, 1 июля 2019
Pinout
When ordering the expansion module together with the controller are installed other terminals (pictured).
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.
Go to the console and install the packages wb-mqtt-knx (MQTT KNX Bridge), knxd, knxd-tools:
apt-get update
apt-get install knxd knxd-tools wb-mqtt-knx
After installation, you must edit the file /etc/default/knxd:
Replace the line:
DAEMON_ARGS="-u /tmp/eib -u /var/run/knx -i -b ip:"
with:
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/ttyAPP2 -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/ttyAPP2 | активируем ncn5120-драйвер на порту для MOD1 (при установке модуля в слот расширения MOD 2 следует указать ttyAPP3) |
-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 работает: