Demostand

Материал из Wiren Board

Страница находится в процессе наполнения

Общая информация

Фото

Подключённые устройства

Modbus устройства Пристыковочные модули
Модель Описание Модель Описание
WB-MR6HV/I Мощный 6-ти канальный релейный модуль. Входы 220В. Подробнее. Купить. WBIO-R10A8 Релейный модуль. До 7А/230В на канал. Идеален для

управления освещением/контакторами/моторами. Подробнее. Купить.

WB-MR3LV/I Мощный 3-х канальный релейный модуль. Входы вида "Сухой контакт" Подробнее. Купить. WBIO-HS-8 Модуль с 8 выходами вида "High Side Switch"

Подробнее. Купить.

WB-MDM2 Диммер ламп (как накаливания, так и светодиодных).

Номинальная мощность до 400Вт. Подробнее. Купить.

WBIO-R1G16 Релейный модуль с 16-ю выходами и общим каналом.

Подробнее. Купить.

WB-MRGBW-D Диммер RGB-лент. Допустимый ток 3А на канал.

Отдельный канал для управления белыми лентами. Подробнее. Купить.

WBIO-DI-DR14 Модуль содержит 8 входов вида "Сухой контакт"

Подробнее. Купить.

WB-MAP6S 6-ти канальный счётчик электроэнергии.

Страница с документацией. Купить.

WBE2-DI-DR-3 Модуль расширения на 3 входа вида "Cухой кнтакт"

Вставляются внутрь корпуса Wiren Board Подробнее. Купить.

WB-MRM2mini/no
WB-MIR
Датчики
WB-MSW2
WB-MSW/THLS
WB-MSGR
WB-M1W2

Правила

Датчик движения

Показать код

   defineAlias("movement_lamp", "wb-gpio/EXT1_R3A2");
   defineAlias("movement_virtual_switch", "movement_sensor_control/Иммитация движения");
   defineAlias("movement_timeout_before", "movement_sensor_control/Задержка после начала движения");
   defineAlias("movement_timeout_after", "movement_sensor_control/Задержка после прекращения движения");
   
   var motion_timer_before = null;
   var motion_timer_after = null;
   
   defineVirtualDevice("movement_sensor_control", {
       title: "Датчик движения",
       cells: {
           "Иммитация движения": {
               type: "switch",
               value: false
           },
           "Задержка после начала движения": {
               type: "range",
               value: 2,
               min: 1,
               max: 10
           },
           "Задержка после прекращения движения": {
               type: "range",
               value: 2,
               min: 1,
               max: 10
           }
   
   
       }
   });
   
   defineRule("physical_movement_to_virtual_switch", {
       whenChanged: "wb-gpio/EXT5_DR8",
       then: function(newValue, devName, cellName) {
           movement_virtual_switch = newValue;
   
       }
   });
   
   
   defineRule("movement_handler", {
       whenChanged: "movement_sensor_control/Иммитация движения",
       then: function(newValue, devName, cellName) {
           if (newValue == true) {
               if (motion_timer_before) {
                   clearTimeout(motion_timer_before);
               }
               motion_timer_before = setTimeout(function() {
                   movement_lamp = 1;
                   motion_timer_before = null;
               }, movement_timeout_before * 1000);
           } else {
               if (motion_timer_after) {
                   clearTimeout(motion_timer_after);
               }
               motion_timer_after = setTimeout(function() {
                   movement_lamp = 0;
                   motion_timer_after = null;
               }, movement_timeout_after * 1000);
           }
       }
   });

Управление освещением

Код правила

       defineAlias("small_light_switcher", "wb-msgr_9/Relay");
       defineAlias("lamp1_switcher", "wb-gpio/EXT2_K1");
       
       var FORCE_ILLUMINANCE_FLAG = false;
       var FORCE_LAMP_FLAG = false;
       
       
       defineVirtualDevice("switch_small_light", {
           title: "Управление освещением",
           cells: {
               "Принудительное освещение датчика": {
                   type: "switch",
                   value: false
               },
               "Включить освещение вручную": {
                   type: "switch",
                   value: false
               },
               "Уровень освещения днём": {
                   type: "range",
                   value: 500,
                   max: 1000
               }
       
           }
       });
       
       
       defineRule("small_light_control", {
           whenChanged: "switch_small_light/Принудительное освещение датчика",
           then: function(newValue, devName, cellName) {
               if (newValue == true) {
                   small_light_switcher = 1;
                   FORCE_ILLUMINANCE_FLAG = true;
                   dev["switch_small_light/Включить освещение вручную"] = false
               } else {
                   small_light_switcher = 0;
                   FORCE_ILLUMINANCE_FLAG = false;
               }
           }
       });
       
       
       defineRule("manual_light_control", {
           whenChanged: "switch_small_light/Включить освещение вручную",
           then: function(newValue, devName, cellName) {
               if (MANUAL_SWITCHER_1_FLAG == false) {
               if (newValue == true) {
                   lamp1_switcher = 1;
                   FORCE_LAMP_FLAG = true;
                   dev["switch_small_light/Принудительное освещение датчика"] = false
               } else {
                   lamp1_switcher = 0;
                   FORCE_LAMP_FLAG = false;
           }
               }
           }
       });
       
       
       
       
       defineRule("illuminance_ms_thls", {
           whenChanged: "wb-ms-thls-v2_8/Illuminance",
           then: function(newValue, devName, cellName) {
               if (MANUAL_SWITCHER_1_FLAG == false) {
               if (FORCE_ILLUMINANCE_FLAG == false && FORCE_LAMP_FLAG == false) {
                   if (newValue < dev["switch_small_light"]["Уровень освещения днём"]) {
                       lamp1_switcher = 1;
                   } else {
                       if (newValue > dev["switch_small_light"]["Уровень освещения днём"]) {
       
                           lamp1_switcher = 0;
               }
                       }
                   }
               }
           }
       });

Ручное управление выключателями

Код правила

   defineAlias("lamp1_switcher_control", "wb-gpio/EXT2_K1");
   defineAlias("lamp2_switcher_control", "wb-mdm2_2/Channel 1");
   defineAlias("lamp3_switcher_control", "wb-mr3_3/K1");
   
   var MANUAL_SWITCHER_1_FLAG = false;
   var MANUAL_SWITCHER_2_FLAG = false;
   var MANUAL_SWITCHER_3_FLAG = false;
       
   
   defineRule("switcher_1", {
       whenChanged: "wb-gpio/EXT5_DR1",
       then: function(newValue, devName, cellName) {
        if (newValue == true) {
           MANUAL_SWITCHER_1_FLAG = true;
         lamp1_switcher_control = 1;
        }
        else {
        MANUAL_SWITCHER_1_FLAG = false;
        lamp1_switcher_control = 0;
        }
       }
   });
   
   
   
   defineRule("switcher_2", {
       whenChanged: "wb-gpio/EXT5_DR2",
       then: function(newValue, devName, cellName) {
        if (newValue == true) {
           MANUAL_SWITCHER_2_FLAG = true;
         lamp2_switcher_control = 100;
        }
        else {
        MANUAL_SWITCHER_2_FLAG = false;
        lamp2_switcher_control = 0;
        }
       }
   });
   
   
   
   defineRule("switcher_3", {
       whenChanged: "wb-gpio/EXT5_DR3",
       then: function(newValue, devName, cellName) {
        if (newValue == true) {
           MANUAL_SWITCHER_3_FLAG = true;
         lamp3_switcher_control = 1;
        }
        else {
        MANUAL_SWITCHER_3_FLAG = false;
        lamp3_switcher_control = 0;
        }
       }
   });

Имитация управления кондиционером

Код правила

   defineAlias("virtual_dimmer", "climate_system_control/Диммирование нагревателя");
   defineAlias("physical_dimmer", "wb-mdm2_2/Channel 1");
   defineAlias("temperature_sensor", "wb-m1w2_7/External Sensor 2")
   defineAlias("low_temp_value", "climate_system_control/Слишком низкая температура");
   defineAlias("norm_temp_value", "climate_system_control/Комфортная температура");
   defineAlias("high_temp_value", "climate_system_control/Слишком высокая температура");
   
   defineAlias("turn_on_red", "wb-mir-simple_10/Play from ROM1");
   defineAlias("turn_on_green", "wb-mir-simple_10/Play from ROM3");
   defineAlias("turn_on_blue", "wb-mir-simple_10/Play from ROM2");
   
   defineVirtualDevice("climate_system_control", {
       title: "Управление климатом",
       cells: {
           "Диммирование нагревателя": {
               type: "range",
               value: 20,
               min: 1,
               max: 100
           },
           "Слишком низкая температура": {
               type: "range",
               value: 24,
               min: 1,
               max: 35
           },
           "Слишком высокая температура": {
               type: "range",
               value: 28,
               min: 1,
               max: 45
           }
   
   
   
   
       }
   });
   
   
   
   defineRule("virtual_dimmer_to_physical", {
       whenChanged: "climate_system_control/Диммирование нагревателя",
       then: function(newValue, devName, cellName) {
           if (MANUAL_SWITCHER_2_FLAG == false) {
               physical_dimmer = newValue;
           }
       }
   });
   
   
   
   defineRule("indicate_temp", {
       whenChanged: "wb-m1w2_7/External Sensor 2",
       then: function(newValue, devName, cellName) {
           log(newValue);
           if (newValue <= low_temp_value) {
               turn_on_blue = 1;
               log("Low");
           }
   
           if ((newValue > low_temp_value) && (newValue < high_temp_value)) {
               turn_on_green = 1;
               log("normal");
           }
   
           if (newValue >= high_temp_value) {
               log(high_temp_value);
               turn_on_red = 1;
               log("High");
           }
       }
   });

Управление вентилятором и миниреле

Код правила

   defineAlias("relay1_control", "wb-mrm2_11/Relay 1");
   defineAlias("relay_button_lamp", "wb-gpio/EXT3_HS4");
   
   defineAlias("fan_control", "wb-gpio/EXT3_HS5");
   defineAlias("fan_button_lamp", "wb-gpio/EXT3_HS6");
   defineAlias("virtual_fan_switch", "virtual_fan/Включить вручную");
   defineAlias("virtual_mrm2_mini_switch", "virtual_mrm2_mini/Включить вручную");
   
   defineVirtualDevice("virtual_fan", {
       title: "Управление вентилятором",
       cells: {
           "Включить вручную": {
               type: "switch",
               value: false
           }
       }
   });
   
   defineVirtualDevice("virtual_mrm2_mini", {
       title: "Управление миниреле",
       cells: {
           "Включить вручную": {
               type: "switch",
               value: false
           }
       }
   });
   
   
   defineRule("fan_virtual_to_physical", {
       whenChanged: "virtual_fan/Включить вручную",
       then: function(newValue, devName, cellName) {
           fan_control = newValue;
           fan_button_lamp = newValue;
   
       }
   });
   
   
   defineRule("mrm2_mini_virtual_to_physical", {
       whenChanged: "virtual_mrm2_mini/Включить вручную",
       then: function(newValue, devName, cellName) {
           relay1_control = newValue;
           relay_button_lamp = newValue;
   
       }
   });
   
   
   
   defineRule("fan_manual_turn_on", {
       whenChanged: "wb-gpio/EXT5_DR7",
       then: function(newValue, devName, cellName) {
           if (newValue == true) {
               virtual_fan_switch = !virtual_fan_switch;
   
           }
       }
   });
   
   
   
   defineRule("mini_relay_manual_turnon", {
       whenChanged: "wb-gpio/EXT5_DR9",
       then: function(newValue, devName, cellName) {
           if (newValue == true) {
               virtual_mrm2_mini_switch = !virtual_mrm2_mini_switch;
   
           }
       }
   });