WB сценарий - Управление светом

Добрый вечер!

Просьба помочь разобраться с настройкой встроенных сценариев (вкладка Правила-Сценарии в веб интерфейсе) “Управление светом“.

Имеются устройства:

  1. Лампа - wb-mr6c_107/K2 (0-выкл, 1- вкл)
  2. Выключатель (звонкового типа) - wb-mr6c_107/Input2 (работает по импульсу, “короткое нажатие - переключить“)
  3. Датчик движения - wb-msw-v4_226/Current Motion
  4. Датчик открытия двери - wb-gpio/EXT1_DR6 (0 - дверь открыта, 1 дверь закрыта)

Настроил сценарий с настройками, как на скрине.

Проблематика и вопросы:

  1. При включении сценария (света в санузле) от выключателя свет фактически один раз моргает, т.е. нажал выключатель - свет отрабатывает так: включился-выключился- включился. Далее по сценарию.
  2. При выключении сценария (света в санузле) от выключателя свет фактически один раз моргает, т.е. нажал выключатель - свет отрабатывает так: выключился-включился- выключился.
  3. Если включить свет от выключателя, но при этом не зайти в санузел (отсутствует сработка датчика открытия двери и/или датчика движения), то сценарий фактически не запускается и свет остается включенным, пока его не выключить выключателем или не запустить сценарий (войти в санузел, н-р). Как сделать так, чтобы свет выключился через заданный промежуток времени (н-р, по таймеру отсутствия движения)?
  4. с точки зрения логики сработки по датчику движения, что лучше использовать значение топика Current Motion или Max Motion?

Контроллер WB7.3, wb-2602 (со всеми последними обновлениями).

Добрый день!

Собрал на стенде схему, но пока не могу воспроизвести проблему.

Пожалуйста пришлите диагностический архив, для уточнения настроек модулей и файл /mnt/data/etc/wb-scenarios.conf или его содержимое.

Создание архива описано в документации.

Добрый день!

Направляю диагностический архив + файл сценария.

С уважением,

(вложения)

wb-scenarios.conf (1.41 KB)

приложен диагностический архив, доступен только сотрудникам поддержки
(9.35 MB)

Благодарю!

Думаю, что дело в том, что вход реле нужно настроить в режим “кнопка без фиксации”:

“in2_mode” : 6, => “in2_mode” : 0,

Уточните, при закрытой двери на входе wb-gpio/EXT1_DR6 0 или 1?

Если датчик движения опрашивается быстро (несколько раз в секунду), можно использовать Current motion для обнаружения движения с хорошим временным разрешением. Но если датчик опрашивается редко (например, раз в 30 секунд, в большой сети), то чтобы не пропустить быстрое однократное движение, используйте значение Max Motion и установите ширину временного окна N больше, чем период опроса датчика.

Я так понимаю тут настроить “кнопка без фиксации“ и отвязать выход тоже от К2 в самом модуле?

если дверь закрыта = 1, открыта = 0.

Еще немаловажный момент – этот сценарий рассчитан на работу с выключателями с фиксацией, а не звонкового типа. При включении света выключателем - все автоматизации блокируются до момента выключения света выключателем.

Датчик открытия двери:

  • Включает свет при открытии двери
  • Сразу при включении таймера запускается таймер выключения света. Закрывание двери не влияет на логику - свет остается включенным

Описание:

Проверьте, что у вас работает не так как описано.

Значит в базовой конфигурации мне данный сценарий не подходит. Может есть возможность где поправить логику под “звонковый тип“ выключателя?

А попробуйте использовать срабатывание по топику wb-mr6c_107/Input 2 counter. Если задержка выключения будет вам мешать, то её можно увеличить или отключить.

В сценарии работа настроена наоборот. Когда дверь отрывается сигнал на вход приходит 1 и включается свет с таймером.
Это можно обойти виртуальным устройством, которое будет инвертировать сигнал.

А там же в самом сценарии можно настроить логику срабатывания для датчика двери и поменять на “Событие при открытии двери - когда отключилось“. У меня так стоит. Тут должно вроде без виртуального устройства работать, нет?

Еще возник более глобальный вопрос. Просто чувствую придется писать свой алгоритм и сценарий (а хотел обойтись стандартным). Можно ли сделать логику работы следующим образом?

В модулях управления светом привязана аппаратная логика (как у меня было в этом кейсе, что сейчас обсуждаем - по mapping матрице). И есть, например, алгоритм в котором эти же входа с выключателей и выхода на лампу задействованы. Можно ли настроить работу системы таким образом, что при отсутствие связи с контроллером свет управлялся по аппаратной логике прописанной в модуле по mapping матрице, а если есть связь и сценарий (алгоритм управления светом) активный, то логика работает по алгоритму?

Да, вы правы.

Да, это называется Безопасный режим.

Безопасный режим позволяет остановить технологические процессы в случае, если контроль над модулем утрачен, например, перебит кабель RS-485. Рекомендуем учитывать возможность потери связи с контроллером при проектировании систем управления. (см. Настройка безопасного режима)

Да, тут вроде понятно и дома поэксперементирую с настройкой режим. Если правильно понимаю, то необходимо привязать в модуле входа-выхода, как они должны работать в безопасном режиме, а на вкладке безопасный режим выставить для выходов возможность управления с входов только в безопасном режиме.

Но данный режим позволяет обработать ситуацию “связь с модулем потеряна“ - это только часть вопроса. А если надо, чтобы при отключении сценария контролом на виджите, подключалась логика “безопасного режима“ в модуле (т.е. связь есть с модулем, конроллер опрашивает, ланные получаем. Но при отключении сценария управление переходит в модуль, при включении в контроллер, где работает сценарий)?

Такую гибкость в готовых сценариях не реализовали.
Описанное вами поведение можно обеспечить написанием собственных правил на wb-rules.

В целом рабочий вариант получился: 1) настройка безопасного режима на самом модуле. В случае пропажи связи с контроллером подключается аппаратная логика; 2) настройка на wb-mr6c_107/Input 2 counter для кнопочного выключателя в целом работает так, как wb-mr6c_107/Input 2 для обычного выключателя.

Единственное конечно, если отключаешь сценарий управления светом, то возможность управления по выключателю также пропадает.

Если надо модифицировать готовый сценарий (хочу попробовать добавить дополнительные параметры в части управления отдельными группами света по времени суток, согласно заданному параметру + все же при отключении сценария программно напрямую связать входа-выхода (а еще вроде видел возможность переписать командой по модбас параметры модуля, тогда можно думаю при отключении сценария в безопасный режим записывать нужный параметр и подключать аппаратную логику)) в части логики управления, то какие непосредственно файлы и где надо править?

Для информации о разработке новых сценариев - смотрите файл для разработчиков develop/README.md.

Добрый день!

Вам еще нужна помощь?

Доброе утро!

Спасибо, нет!
Смог настроить с помощью стандартных сценариев необходимое поведение в той мере, в которой они позволяют это сделать. К сожалению стандартные сценарии много чего не учитывают (и это понятно), поэтому придется писать свой.

С уважением,
Александр