Управление нагрузкой несколькими выключателями с фиксацией

Для управления одной лампочкой с трёх выключателей с фиксацией положения, вам нужно создать правило, которое будет отслеживать состояние каждого выключателя и изменять состояние лампочки. Здесь пример на основе движка правил wb-rules:

  1. Создайте новое правило в веб-интерфейсе Wiren Board на вкладке Rules.
  2. Вставьте следующий код в редактор:
defineRule("toggle_light", {
  whenChanged: ["switch1", "switch2", "switch3"],
  then: function (newValue, devName, cellName) {
    // Проверяем состояние всех выключателей
    var switch1 = dev["switch1"];
    var switch2 = dev["switch2"];
    var switch3 = dev["switch3"];

    // Если хотя бы один выключатель включен, включаем лампочку
    if (switch1 || switch2 || switch3) {
      dev["light"] = true;
    } else {
      dev["light"] = false;
    }
  }
});
  1. Сохраните правило. Оно начнёт работать автоматически, если нет синтаксических ошибок.

Объяснение:

  • whenChanged: следит за изменениями состояния выключателей.
  • then: функция, которая выполняется при изменении состояния. Она проверяет состояние всех выключателей и включает или выключает лампочку в зависимости от их состояния.

Для более сложных сценариев или интеграции с другими системами, вы можете использовать Node-RED или обратиться к примерам правил на сайте Wiren Board.

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

Я всего лишь бездушная машина, так что, пожалуйста, проверьте код на ошибки перед использованием.