Подключение термоэлектрических сервоприводов к WBIO-DO-SSR-8 или WBIO-DO-HS-8

Подключение термоэлектрических сервоприводов к WBIO-DO-SSR-8 или WBIO-DO-HS-8

Добрый день.

Мне необходимо управлять термоэлектрическими сервоприводами TWA-K 24 В, Danfoss 088H3140 и Danfoss 088H3141 (392.8 КБ).

Исходя из документа описывающего технические характеристики Danfoss 088H3140 и Danfoss 088H3141 (392.8 КБ), понятно, что каждый привод потребляет 2 вата мощности, и имеет пусковой ток 350 мили ампер, что подходит для обоих устройств WBIO-DO-SSR-8, и WBIO-DO-HS-8.

При помощи этих приводов я хочу управлять теплым полом в разных комнатах, а так же радиаторами.

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

Для управления температурой поверхности пола, я буду использовать датчик 1-wire DS18B20 установленный непосредственно под керамогранитом у самого верха стяжки закрывающей трубы теплого пола.

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

Для достижения частичного закрытия, я хочу использовать свойство инертности термоэлектрических сервоприводов TWA-K 24 В, Danfoss 088H3140 и Danfoss 088H3141 (392.8 КБ), что приведет к частому переключению реле.

В моей системе будет использовано 19 приводов, сумарная мощность 38 ват, и блок питания HDR-60-24.

Изначально мой выбор пал на WBIO-DO-SSR-8, так как коммутация очень простая, минус я подключаю к приводу, плюс блока питания я подключаю к WBIO-DO-SSR-8, и далее к приводу.

Но почитав форум я понял, что люди советуют использовать WBIO-DO-HS-8 как более оптимальное решени, с максимально возможных числом переключений.

Но в данном случае меня смутило описание как подключать нагрузку:

Подключение нагрузки
Требует подключения внешнего питания к клеммам Vin и GND (от 11 до 45В).

Земля модуля должна быть соединена с землей контроллера!

В моём случае схема будет выглядеть следующим образом:

  1. Блок питания, к которому подключен контроллер на 15 ват.
  2. Контроллер к которому подключено 3 штуки WBIO-DO-HS-8
  3. Блок питания, к которому я хочу подключить 19 приводов, на 60 ват.
  4. Приводы, плюс которых подключается к Vin и GND WBIO-DO-HS-8

Вопрос первый

Правильно ли я понимаю, что мне нужно объединить на одной шине GND блока питания на 60 ват, каждого GND WBIO-DO-HS-8, GND контроллера WB, и блока питания на 15 ват ?

Вопрос второй

Есть ли принципиальная разница в том, какой модуль использовать в моём случае этот WBIO-DO-SSR-8 или этот WBIO-DO-HS-8 ?

Или для управления термоэлектрическими сервоприводами TWA-K 24 В, Danfoss 088H3140 и Danfoss 088H3141 (392.8 КБ), нет никакой разницы, они будут одинаково работать и запас переключений будет одинаковый ?

Вопрос третий

Почему для 8й клеммы у WBIO-DO-HS-8 нет клеммы с землей ?

Добрый день.

Да, верно. Для WBIO-DO-HS-8 так и есть. Его выходные клеммы не развязаны гальванически.

Нет. Для управления актуаторами - нет разницы, наоборот, WBIO-DO-SSR-8 удобней тем что не нужно иметь общую землю, также можно использовать для питания актуаторов переменный ток.

С точки зрения приводов - нет разницы чем (каким модулем) они управляются. WBIO-DO-HS-8 как правило выбирают когда нужно коммутировать нагрузку уже имеющую общий “-”, что в случае приводов неверно.

Клемма, которая могла бы использоваться как "земляная) - отдана для подключения питания “V+”. Все "земляный клеммы внутри модуля объединены и ииспользовать можно любую.

Набросать “общий” пример медленного ШИМ?

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

Большое спасибо за ответ, я буду использовать WBIO-DO-SSR-8 как и хотел.

Вот пример реализации “медленный ШИМ”:

//12_27_slow_PWM.js

//Имя виртуального устройства
var nameDevicePWM = "testPWM";

//Определим обект для виртуального устройства
var virt_device_params = {
      cells: {  }
    };

//Установим имя виртуальнго устройства
virt_device_params.title = nameDevicePWM;

//Описываем функцию.
function slowPWM_generator(namePWM, devicePWM, maxValue, periodPWM){
  //Добавляем в объект элементы управления
  virt_device_params.cells[namePWM] = {"type": "range", "value" : 0};
  virt_device_params.cells[namePWM].max = maxValue;
  
  //Создаем таймер для канала.
  this[namePWM+"_IntervalID"] = setInterval(function () {
  	//Тут Включим канал, если значение контрола виртуального устройства не 0
    log.debug("timer for", namePWM, "enter");
    if (dev[nameDevicePWM][namePWM]){
      log.debug("Enable", devicePWM);
      dev[devicePWM]=true;
      //и сразу зададим время "включенного" состояние
      setTimeout(function () {
        //По таймауту - отключаем устройство
        log.debug("Disable", devicePWM)
        dev[devicePWM]=false;
      }, (periodPWM*1000)/maxValue*dev[nameDevicePWM][namePWM]);

    }
    
  }, periodPWM*1000); 
  log.info("Создано PWM устройство", namePWM)
  log.info(namePWM+"_IntervalID=", this[namePWM+"_IntervalID"])
}


//Вызовем нужное количество раз функцию, параметры:
//Имя канала виртустройства
//топик физического устройства
//"максимальное" значение
//период ШИМ в секундах
slowPWM_generator("Device1_A1", "wb-gpio/A1_OUT", 100, 2)
slowPWM_generator("Device1_A2", "wb-gpio/A2_OUT", 100, 5)
slowPWM_generator("Device1_A3", "wb-gpio/A3_OUT",100, 12)
slowPWM_generator("Device1_A4", "wb-gpio/A4_OUT",100, 8)


//Создадим само виртуальное устройство
if (Object.keys(virt_device_params.cells).length) {
      defineVirtualDevice(nameDevicePWM, virt_device_params);
}
2 лайка

Я думал вы предложите принципиальный алгоритм, но вы сделали пример реализации, большое вам за это спасибо :wink:

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

1 лайк

Эта тема была автоматически закрыта через 7 дней после последнего ответа. В ней больше нельзя отвечать.