wb_editors
31
правка
(→Используемое оборудование: Исправлена опечатка) Метки: правка с мобильного устройства правка из мобильной версии Расширенная мобильная правка |
|||
(не показано 11 промежуточных версий 2 участников) | |||
Строка 2: | Строка 2: | ||
== Используемое оборудование == | == Используемое оборудование == | ||
Чтобы на примере показать работу с KNX- | Чтобы на примере показать работу с KNX-устройствами мы взяли оборудование: | ||
* Контроллер [[Wiren Board | Wiren Board 6.7]]. | * Контроллер [[Wiren Board | Wiren Board 6.7]]. | ||
* Модуль расширения [[WBE2-I-KNX_KNX_Extension_Module|WBE2-I-KNX]]. | * Модуль расширения [[WBE2-I-KNX_KNX_Extension_Module|WBE2-I-KNX]]. | ||
Строка 38: | Строка 38: | ||
== Теория KNX == | == Теория KNX == | ||
=== Адресация === | === Адресация === | ||
Про групповые адреса и телеграммы читайте | Про групповые адреса и телеграммы читайте на странице [[KNX]]. | ||
Примеры групповых адресов: | Примеры групповых адресов: | ||
Строка 138: | Строка 138: | ||
Теперь в проекте есть два устройства. | Теперь в проекте есть два устройства. | ||
== Взаимодействие KNX | == Взаимодействие контроллера Wiren Board с KNX устройствами== | ||
=== Настройка в ETS === | |||
В нотации KNX принято индивидуальные адреса записывать через точки, а групповые — через слеши, поэтому: | |||
# Добавьте для '''канала A''' устройства '''US/U2.2''' индивидуальный адрес <code>1.1.5</code>. | |||
# Создайте новый групповой адрес <code>1/1/55</code>. | |||
<gallery mode="packed" heights="150px" caption="Настройка адресов"> | |||
Image: ETS sampleProject_config_A.png | Конфигурирование '''канала А''' как кнопки | |||
Image: ETS sampleProject_create_group_address.png | Создание группового адреса | |||
</gallery> | |||
После настройки загрузите модуль в прикладную программу и проверьте, что при замыкании '''входа A''' отправляются телеграммы на указанный выше групповой адрес: | |||
<syntaxhighlight lang="console"> | |||
# knxtool vbusmonitor1 local:/var/run/knx | |||
L_Busmon: BC 11 05 09 37 E1 00 81 09 :L_Data low from 1.1.5 to 1/1/55 hops: 06 T_Data_Group A_GroupValue_Write (small) 01 | |||
L_Busmon: BC 11 05 09 37 E1 00 80 08 :L_Data low from 1.1.5 to 1/1/55 hops: 06 T_Data_Group A_GroupValue_Write (small) 00 | |||
L_Busmon: BC 11 05 09 37 E1 00 81 09 :L_Data low from 1.1.5 to 1/1/55 hops: 06 T_Data_Group A_GroupValue_Write (small) 01 | |||
</syntaxhighlight> | |||
То же самое вы сможете наблюдать при мониторинге шины в ETS. | |||
[[Image: ETS sampleProject_bus monitor.png |900px|Мониторинг шины в ETS]] | |||
=== Настройка в контроллере Wiren Board === | |||
[[Image: ETS sampleProject_wb-mqtt-knx.conf_01.png.png |400px|thumb|right| Создание контрола с группововым адресом]] | |||
[[Image: ETS sampleProject_devices switch.png.png |400px|thumb|right| Групповой адрес в Devices]] | |||
Здесь мы рассмотрим пример, дополнительную информацию смотрите в [[MQTT_KNX_V2 | описании сервиса wb-mqtt-knx]]. | |||
Настраиваем устройство в веб интерфейсе: | |||
* '''Device ID''' будет именем '''устройства''', то есть частью пути к MQTT топику | |||
* '''Title''' - именем окна в Devices, произвольное | |||
* '''Control ID''' - именем канала устройства | |||
* '''Title''' именем канала в Devices, произвольное | |||
В '''Devices''' групповой адрес контрола можно узнать, если навести курсор мыши на его название. | |||
=== Взаимодействие с правилами === | |||
[[Image: ETS sampleProject devices rule.png |300px|thumb|right| Вывод сообщений в лог]] | |||
Изменение состояния контрола '''1.1.5/SwitchA''' можно использовать для управления любыми устройствами, подключенными к контроллеру, в том числе и другими KNX устройствами. | |||
Допустим, нужно включать и выключать выход [[Wiren_Board#Универсальные входы/выходы A1-A4|A1]] контроллера Wiren Board в зависимости от состояние контрола '''1.1.5/SwitchA''', тогда правило на [[wb-rules | wb-rules]] будет примерно таким: | |||
<syntaxhighlight lang="bash"> | |||
//KNX_integration_01.js | |||
var KNXdev = "1.1.5/SwitchA" | |||
var WBdev ="wb-gpio/A1_OUT" | |||
defineRule("SwitchKNX_01", { | |||
whenChanged: KNXdev, //при изменении переключателя | |||
then: function (newValue, devName, cellName) { //выполняй следующие действия | |||
log.info("Устройство", devName, "контрол", cellName, "новое значение", newValue) | |||
dev[WBdev] = newValue; | |||
} | |||
}); | |||
</syntaxhighlight> | |||
Правило будет вызываться при любом изменении контрола (при приходе телеграммы) и устанавливать устройство '''wb-gpio/A1_OUT''' (выход A1) в состояние, указанное в телерамме. | |||
== Полезные ссылки == | == Полезные ссылки == | ||
* [[MQTT_KNX_V2 | Описание сервиса wb-mqtt-knx в Вики]] | * [[MQTT_KNX_V2 | Описание сервиса wb-mqtt-knx в Вики]] | ||
* [[WBE2-I-KNX_KNX_Extension_Module | Модуль расширения WBE2-I-KNX]] | * [[WBE2-I-KNX_KNX_Extension_Module | Модуль расширения WBE2-I-KNX]] |