Виртуальное устройство "Кнопка"
Кнопка - это системное виртуальное устройство XIOT для обработки физической или программной кнопки. Устройство принимает сигнал нажатия/отпускания, определяет тип действия и запускает связанные команды: управление светом, шторами, устройствами или сценариями.

⚙️ Назначение
Кнопка используется как промежуточный логический слой между реальным входом и управляемыми устройствами. На практике это позволяет:
- превратить дискретный вход контроллера, KNX-клавишу или другой источник в события XIOT;
- быстро выполнять действие сразу при нажатии;
- отличать одиночный, двойной и тройной клик;
- отличать короткое нажатие от долгого удержания;
- использовать одну кнопку для света, штор, реле, розеток, сирен и сценариев.
🧩 Работа характеристик
Устройство содержит две обязательные характеристики и одну дополнительную:
- состояние кнопки - входная характеристика. Принимает состояния нажата и отжата. Обычно именно она связывается с физическим адресом состояния входа.
- действие кнопки - логическая характеристика. Заполняется автоматически по результату обработки нажатия.
- счетчик нажатий - дополнительная характеристика для источников, которые передают не состояние нажата / отжата, а растущий счетчик нажатий.
При изменении характеристики состояние кнопки устройство запускает внутреннюю логику. Результат записывается в действие кнопки и может быть использован встроенными блоками управления или сценариями.
Если используется счетчик нажатий и включен параметр Определять действие кнопки по счетчику нажатий, изменение счетчика на одно значение формирует одиночный клик, на два значения - двойной клик, на три значения - тройной клик. После такого события кнопка автоматически возвращает действие кнопки в состояние отпустили.
🔌 Интеграция с оборудованием
Для корректной работы необходимо связать характеристику состояние кнопки с адресом состояния входа.
Поддерживаются:
- Входы контроллера или модулей Wiren Board — WBDI-14, WB-MCM8 (в режиме быстрого Modbus), входы реле и диммеров
- Выключатели KNX — через привязку к соответствующему групповому адресу (GA)
При замыкании вход должен переводить характеристику в состояние нажата, при размыкании - в состояние отжата.
Если оборудование или интеграция передает только счетчик нажатий, можно добавить характеристику счетчик нажатий и связать ее с соответствующим адресом состояния.
⚙️ Настройка действий
Можно назначить действия для разных типов нажатий:
- Управлять светильниками (Одиночный клик - вкл/выкл, долгое нажатие - диммирование).
- Управлять светильниками (Одиночный клик - включение, долгое нажатие - диммирование вверх).
- Управлять светильниками (Одиночный клик - выключение, долгое нажатие - диммирование вниз).
- Управлять светильниками (Одиночный клик - переключить).
- Управлять устройствами (Одиночный клик и удержание - переключить).
- Управлять шторами (Одиночный клик - открыть/закрыть, долгое нажатие - стоп).
- Действие при нажатии кнопки, Действие при отпускании кнопки, Действие при долгом нажатии, Действие при одиночном клике, Действие при двойном клике, Действие при тройном клике.
Вы можете использовать встроенные разделы:
- управлять светильниками;
- управлять устройствами;
- управлять шторами;
- действия при событиях кнопки.
В этих разделах достаточно выбрать нужные устройства из списка — кнопка автоматически выполнит нужные действия по каждому типу нажатия.
При управлении несколькими устройствами действует следующая логика:
- Если выбраны несколько светильников:
- Если их состояния различаются (один включён, другой выключен) — первое короткое нажатие выключает все светильники, следующее включает все.
- При удержании кнопки, если светильники поддерживают диммирование — они будут плавно менять яркость от текущего значения до максимального. Повторное удержание меняет направление — до минимального уровня.
- Если выбраны несколько светильников в режиме переключения без диммирования:
- Если хотя бы один светильник включён — одиночный клик выключит все выбранные светильники.
- Если все выключены — одиночный клик включит все выбранные светильники.
- Если выбраны несколько штор:
- Короткое нажатие, если не все шторы открыты — откроет все.
- Повторное короткое нажатие — закроет все шторы.
- Удержание кнопки — остановит движение всех штор одновременно.
Если нужно больше гибкости — можно не использовать встроенные блоки, а задать произвольную логику через сценарий Сценарные кнопки. В этом сценарии:
- выбираются одна или две кнопки, участвующие в логике;
- настраиваются действия на события нажали, отпустили, одиночный клик, двойной клик, долгое нажатие;
- можно задать индивидуальные задержки длинного нажатия для каждой кнопки.
Возможность задать действия при одновременном нажатии двух кнопок — находится в планах реализации.
⏱ Параметры
- Время долгого нажатия - длительность удержания, после которой формируется событие долгое нажатие. Значение задается в единицах по 0.1 сек. По умолчанию: 6, то есть 0.6 сек.
- Максимальное количество нажатий - сколько кликов объединять в одну серию: одно, два или три. Если выбрано одно, одиночный клик определяется сразу после отпускания. Если выбрано два или три, система короткое время ожидает следующие клики серии.
- Определять действие кнопки по счетчику нажатий - включает обработку характеристики счетчик нажатий. При изменении счетчика на одно, два или три значения формируются соответствующие клики.
🧾 Возможные значения «Действие кнопки»
Характеристика действие кнопки принимает одно из следующих состояний:
| Событие | Когда формируется |
|---|---|
| нажали | сразу при переходе состояния кнопки в состояние нажата |
| отпустили | при переходе состояния кнопки в состояние отжата или после обработки счетчика |
| одиночный клик | после одного короткого нажатия |
| двойной клик | после двух коротких нажатий подряд |
| тройной клик | после трех коротких нажатий подряд |
| долгое нажатие | после удержания дольше заданного времени |
Нажали - это мгновенное событие при замыкании входа. Его удобно использовать там, где нужна минимальная задержка, например для быстрого включения света или переключения простого реле. В старых материалах это событие может называться коснулись.
Одиночный клик определяется после отпускания. Если разрешены двойной или тройной клик, система короткое время ждет продолжения серии, поэтому одиночный клик может сработать с небольшой задержкой.
Долгое нажатие отменяет определение короткого клика. После отпускания кнопки дополнительно формируется событие отпустили.
🧪 Что удобно показать на практике
Для живого эфира удобно подготовить три демонстрации:
- Свет - добавить виртуальную кнопку, связать состояние кнопки с входом, выбрать светильник в блоке управлять светильниками. Проверить одиночный клик, удержание и отпускание.
- Шторы - выбрать карниз в блоке управлять шторами. Проверить одиночный клик открыть/закрыть и долгое нажатие стоп.
- Сценарий - создать сценарий Сценарные кнопки, выбрать кнопку в поле Кнопка 1 и назначить разные действия на одиночный клик и долгое нажатие.
👁 Интерфейс
Кнопка — это системное устройство. Она не отображается в пользовательском интерфейсе и служит для построения логики.