Управление нагрузкой на Wirenboard

Добрый день. Нужна помощь в подборе оборудования для реализации задачи.
Задача: выделено 100 кВт мощности, 3х фазная сеть. Необходимо при загруженности одной из фаз менее чем на 85% подключать нагрузку.
Пример: на фазе А просела нагрузка до 60%, подключаем на эту фазу дополнительную нагрузку. Если на фаза загружена на 95%, то отключаем дополнительную нагрузку.
На каком оборудовании это возможно реализовать?

Во первых надо нарисовать схему что и куда подключено - в ивдеале у каждого потребителя по 3 реле на все фазы - чтобы его можно было перекинуть на любую, также надо реализовать защиту аппаратную - чтобы случайно две фазы не “встретились” на каком нибудь реле. У каждого реле - поставить по реле контроля напряжения и если там 0.4 кВ то сигнал на замыкания этого реле не должен проходить, а если 0.23 кВ - то все ок, можно включать. Тоесть пока на потребителе есть фаза его нельзя подключить к другой фазе, потому что между фазами у нас 0.4 кВ. Еще можно сделать через размыкание цепей управления 2 других реле - когда одно включенно оно размыкает цепи к двум другим - и они не могут быть включенны - это даже дешевле будет, надо просто реле взять 2 цепи слабых на размыкание, одна мощная на замыкание.

По силовой части вопросов нет
Вопрос стоит в том какое оборудование от WirenBoard может реализовать эту логику?
Измерение нагрузки и выполнение каких-то действий исходя из размера нагрузки

Делится на три:

Когда пытаюсь пройти по этой ссылке выдает ошибку “Ой! Эта страница не существует или скрыта от публичного просмотра.”

У нас будет 9 контакторов
Возможно в этой схеме использовать WBIO-DO-R1G-16 вместо WBIO-DO-R10A-8?

Да. Можно и этот.

//01_08_test_1.js

//Идея в том, чтобы определить переключение только после того как знчение в течении заданного
// времени находится БОЛЬШЕ уставки.

var devInput = "01_08_Test0/test0"; // устройство-источник значений.
var compValue = 10; //Значение, превышение которого отслеживаем
var debounceTime = 2000; //Время "дребезга" в миллисекундах

var timerId = null; //тут будем сохранять идентификатор таймера

log.info("start")

defineRule( "debounceTime" ,{
  whenChanged: "01_08_Test0/test0",
  then: function (newValue, devName, cellName){
    log.info("I’m here!", newValue)
    if(newValue > compValue) { //Если значение БОЛЬШЕ
      log.info("Compare BIGGER", newValue)
      if (timerId){ //Если таймер УЖЕ есть
        log.info("Timer started BEFORE", newValue)
      }
      else{ //Запускаем таймер
        log.info("Timer NEED started", newValue)
        timerId = setTimeout(function () { //Начинаем описывать таймер
          log.info("VALUE BIGGER over", debounceTime, " ms") //тут можно описать требуемое действие
          timerId = null; //Сбрасываем идентификатор отработавшего таймера
        }, debounceTime);
      }
    }
    else{ //Если значение МЕНЬШЕ уставки
      if (timerId){ //Если таймер УЖЕ есть
        log.info("Kill timer", timerId);
        clearTimeout(timerId); //останавливем таймер
        timerId = null; //Сбрасываем идентификатор таймера
      }
    }
  }
})

“log.info” можно удалить или закомментировать