Управление WB-LED и WB-MR6C v.2 от одной кнопки

Здравствуйте. Есть задача с одной кнопки управлять включением светодиодной лентой через WB-LED и бра на 220в через WB-MR6C v.2. Реально ли это?

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

Если сами по себе без контроллера, то не знаю. Во всяком случае лично я бы не разрешил параллельное подключение двух входов модулей. Если сильно надо через независимые входы, то сигнал можно размножить через промежуточное реле с двумя группами контактов, питание всё равно в щите есть для модулей.

Контроллер будет. Идея понятна. Вот только программист из меня так себе. где можно посмотреть шаблон для такого скрипта?

defineRule("track_and_change", {
    whenChanged: "wb-mr6c_1/Input 1",
    then: function() {
      if (dev['wb-mr6c_1']['K1'] == true) dev['wb-led_1']['Channel 1'] = true;
      if (dev['wb-mr6c_1']['K1'] == false) dev['wb-led_1']['Channel 1'] = false;       
}
});

День добрый!
Конечно, так как вы описываете сделать можно. С помощью правил.

Например:

  1. Откройте файл конфигурации правил, например, /etc/wb-rules/my_rules.js.
  2. Добавьте следующее правило:
defineRule("toggle_led_and_bra", {
    whenChanged: "wb-gpio/EXT1_IN1", // кнопка подключена к EXT1_IN1
    then: function (newValue, devName, cellName) {
        var ledState = dev["wb-led"]["LED_1"] ? 0 : 1;
        var braState = dev["wb-mr6c_1"]["K1"] ? 0 : 1;

        // Переключаем состояние LED и бра
        dev["wb-led"]["LED_1"] = ledState;
        dev["wb-mr6c_1"]["K1"] = braState;
    }
});
  1. Сохраните изменения в файле и перезапустите службу правил:
service wb-rules restart

А по-моему, у вас нельзя сейчас в правилах писать 0 или 1, должны быть false, true.

Ну или вообще не парится
dev[‘wb-mr6c_1’][‘K1’] = dev[‘wb-led_1’][‘Channel 1’] = !dev[‘wb-led_1’][‘Channel 1’];
Или кто там ведущий.

  1. Сработка будет 2 раза: при нажатии и отпускании кнопки.

  2. Добавлять условие на 0 и 1 смысла нет, логическое значение дальше передать не проблема.

Здравствуйте.

Подскажите пожалуйста: удалось ли решить данный вопрос?