Умный дом
бизнес и премиум класса

+ 7 (812) 963-97-78 СПб

+ 7 (495) 664-59-35 МСК

23.06.2023

Как добавить рекуператор VAKIO SMART BASE в умный дом Wiren Board, Apple Home, Яндекс Алису и SprutHub

VAKIO BASE SMART

Wiren Board

SprutHub

Apple Home

Яндекс Алиса



Важно!

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

В данном обзоре мы не рассматриваем работу рекуператора по прямому назначению и не оцениваем его с этой точки зрения.

Основной обзор заключается в интеграции рекуператора в различные системы умного дома. И исходя из этого, написано мнение нашей компании.




1. Описание

Секция статьи "1. Описание"

Рекуператор Vakio Base Smart - это установка работающая в двух режимах:

- Приточный режим. Подается воздух с улицы. Очищается с помощью установленных фильтров.
- Вытяжной режим. Отработанный воздух удаляется обратно на улицу

Производительность - до 120 м3 воздуха в час при энергопотреблении 5-18 Вт.

Рекуператор подключается к "Умному дому" с помощью REST API и MQTT протокола.

2. Оглавление

Секция статьи "2. Оглавление"

3. Официальная документация

Секция статьи "3. Официальная документация"



Руководство по эксплуатации.pdf




Инструкция по подключению к Android.pdf




Инструкция по подключению к IOS.pdf




4. Технические характеристики

Секция статьи "4. Технические характеристики"

Изображение
загружается

Фотография с обозначением размеров рекуператора VAKIO


Цвет Белый,
Черный,
Серый,
Сияние (бежевый),
Алое пламя,
Корица,
Синий
Номинальная частота переменного тока, Hz 50
Класс электрозащиты II класс
Модель Base Smart
Потребляемая мощность 5-40Вт
Поддерживаемые протоколы MQTT, REST API, Wi-Fi
Размеры прибора на стене (ШхВхГ), мм 234x505x98
Размеры упаковки (ШхВхГ), мм 550х300х250
Стойка Без стойки
Страна изготовитель Россия
Толщина стены более, мм 440
Уровень шума, дБ 1/20, 2/25, 3/30, 4/33, 5/36, 6/38, 7/39
Вес брутто, кг информация отсутствует
Вес нетто, кг информация отсутствует
Внутренний диаметр канала 125мм
Номинальное значение напряжения электропитания или диапазон напряжения, V 220-240
Размеры фильтрующего элемента, мм 215x75x35



5. Из чего состоит рекуператор Vakio Base Smart

Секция статьи "5. Из чего состоит рекуператор Vakio Base Smart"

Изображение
загружается

Лицевая часть рекуператора VAKIO BASE SMART

Лицевая часть рекуператора VAKIO BASE SMART




Изображение
загружается

Обратная сторона рекуператора VAKIO BASE SMART

Обратная сторона рекуператора VAKIO BASE SMART




Изображение
загружается

Магнитная решетка на верхней части рекуператора

Магнитная решетка на верхней части рекуператора




Изображение
загружается

Обратная сторона снятой магнитной решетки

Обратная сторона снятой магнитной решетки




Изображение
загружается

Вид на воздушный фильтр

Вид на воздушный фильтр




Изображение
загружается

Вид на снятый воздушный фильтр

Вид на снятый воздушный фильтр




Изображение
загружается

Внутренняя часть рекуператора

Внутренняя часть рекуператора




Изображение
загружается

Кабель питания и кабель управления вентилятором

Кабель питания и кабель управления вентилятором




Изображение
загружается

Дисплей с тремя кнопками на лицевой стороне рекуператора

Дисплей с тремя кнопками на лицевой стороне рекуператора




Изображение
загружается

Вентиляционный блок рекуператора

Вентиляционный блок рекуператора




Изображение
загружается

Вентиляционный блок рекуператора. Вид со стороны подключаемой к установке.

Вентиляционный блок рекуператора. Вид со стороны подключаемой к установке.




Изображение
загружается

Вентиляционный блок рекуператора

Вентиляционный блок рекуператора. Серийный номер блока




Изображение
загружается

Вентиляционный блок рекуператора

Вентиляционный блок рекуператора. Пломба не вскрывать




Изображение
загружается

Разъем для подключения вентиляционного блока к рекуператору

Разъем для подключения вентиляционного блока к рекуператору




Изображение
загружается

Вентиляционный блок рекуператора. Вид с обратной стороны

Вентиляционный блок рекуператора. Вид с обратной стороны




Изображение
загружается

Теплообменник рекуператора

Теплообменник рекуператора




Изображение
загружается

Теплообменник рекуператора. Вид на сторону ближайшую к установке

Теплообменник рекуператора. Вид на сторону ближайшую к установке




Изображение
загружается

Теплообменник рекуператора. Вид на сторону ближайшую к улице

Теплообменник рекуператора. Вид на сторону ближайшую к улице




Изображение
загружается

Монтажная пластина рекуператора

Монтажная пластина рекуператора




Изображение
загружается

Монтажная пластина рекуператора

Монтажная пластина рекуператора




Изображение
загружается

Наружная решетка и винты крепления

Наружная решетка и винты крепления




6. Скорость работы

Секция статьи "6. Скорость работы"
Скорость работыПроизводительность
в режимах: приток, вытяжка
Производительность
в режиме: рекуперация
Уровень шума
Скорость 1 40м3/ч 20м3/ч 20дБА
Скорость 2 65м3/ч 32м3/ч 25дБА
Скорость 3 80м3/ч 40м3/ч 30дБА
Скорость 4 90м3/ч 45м3/ч 33дБА
Скорость 5 100м3/ч 50м3/ч 36дБА
Скорость 6 110м3/ч 55м3/ч 38дБА
Скорость 7 120м3/ч 60м3/ч 39дБА


В руководстве по эксплуатации сказано, что рекуператор Vakio Base Smart на максимальной скорости обеспечивает воздухообмен на уровне:
• 120м3ч - в режиме притока вытяжки
• 60м3ч - в режиме рекуперации

Если руководствоваться Сп 54. 13330. 2016, то для создания комфортного воздухообмена в жилых помещениях необходимо:
• 3 м3ч - на 1м2 жилой площади. (Если площадь квартиры составляет менее 20м2 на одного человека. Например: в 32 м2 проживают 2 человека).
• 30 м3ч - на одного человека, но не менее 35 от всего объема помещения в час. (Если площадь квартиры составляет более 20 м2 на одного человека).

Для обеспечения комфортного воздухообмена двух взрослых человек в квартире более 50 м2, рекуператор включается на максимальную скорость. Уровень шума составит 39 дБА. Что сопоставимо с человеческой речью.

При установке двух рекуператоров производительность устанавливается на вторую скорость. Показатель шума составит 25 дБА. Это сравнимо с шепотом человека на расстоянии 1 метра.




7. Чем VAKIO Smart Base отличается от стандартных рекуператоров?

Секция статьи "7. Чем VAKIO Smart Base отличается от стандартных рекуператоров?"

Изображение
загружается

Принцип работы большинства рекуператоров на рынке

Как правило, большинство рекуператоров имеет два вентилятора: приточный и вытяжной. Пока работает вытяжной вентилятор, из помещения удаляется загрязненный воздух, и теплый (прохладный) воздух из помещения передается на теплообменник. После чего вытяжной вентилятор выключается и в дело вступает приточный вентилятор. Он затягивает в помещение свежий воздух с улицы, который, проходя через теплообменник, нагревается (охлаждается). И далее, проходя через системы фильтрации, поступает в помещение.

У данного подхода есть один минус: не постоянный уровень шума.

Каждую минуту (примерный цикл работы всех рекуператоров) вы будете слышать, как останавливается один вентилятор и запускается второй.

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


Изображение
загружается

График работы рекуператоров с последовательной работой вентиляторов



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

Пример подобного устройства можно наблюдать на картинке ниже.


Изображение
загружается

Пример работы рекуператоров с приточным и вытяжным вентилятором



Но для корректной работы данной системы, решетки притока и вытяжки устанавливаются на таком удалении, что бы приточный воздух сразу же не попадал в вытяжной воздуховод. Данный вариант отлично подойдет для полноценной Приточно-Вытяжной Установки (ПВУ). Но никак не вписывается в концепцию компактного устройства для создания постоянного воздухообмена в помещении.

Одной из главных особенностей рекуператора Vakio является поворотный механизм вентилятора.

Видео
загружается

Пример работы поворотного механизма вентилятора

На видео представлен наглядный пример работы поворотного механизма вентилятора

Этим решается сразу несколько проблем:
Стабилизируется уровень шума, незначительно снижаясь во время повтора вентилятора.

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

Как итог, график уровня шума от рекуператора Vakio будет примерно такой:

Изображение
загружается

График работы рекуператора с поворотным вентилятором



8. Схема интеграции VAKIO в умный дом

Секция статьи "8. Схема интеграции VAKIO в умный дом"

Изображение
загружается

Общая логическая схема подключения рекуператора в систему умного дома



9. Настройка рекуператора

Секция статьи "9. Настройка рекуператора"

9.1 Подключение рекуператора к локальной сети

Секция статьи "9.1 Подключение рекуператора к локальной сети"


• Включаем питание рекуператора


Если рекуператор уже подключен, необходимо его отключить от питания и включить вновь для гарантированного включения Wi-Fi точки доступа




• Находим Wi-Fi точку доступа имеющую в названии “VakioBaseSmart”.



Изображение
загружается

Точное название точки доступа можно узнать удерживая зеленую клавишу в течении 2-х секунд.




• Подключаемся к точке доступа Wi-Fi


Изображение
загружается

Подключаемся к сети VakioBaseSmart_44

Изображение
загружается

Подключаемся к сети VakioBaseSmart_44



Открываем браузер



Изображение
загружается

Открываем браузер



Вводим следующий IP адрес: 192.168.0.1



Изображение
загружается




• Для нас откроется окно настройки подключения к сети
• Указываем имя вашей домашней Wi-Fi сети



Изображение
загружается

Для нас откроется окно настройки подключения к сети


Важно!!! Рекуператор может подключаться только к точкам доступа работающим на частоте 2.4Ghz



• Указываем пароль от вашей домашней Wi-Fi сети
• Нажимаем кнопку сохранить в нижней части экрана
• При успешном подключении “Статус Подключения” изменится с “Оффлайн” на “Онлайн”.

9.2 Подключение рекуператора к MQTT брокеру

Секция статьи "9.2 Подключение рекуператора к MQTT брокеру"


Важно!!! При настройке подключения к MQTT брокеру необходимо быть подключенным к локальной сети рекуператора. В ином случае записанные настройки сохранены не будут.





Изображение
загружается

Настройка MQTT



Изображение
загружается

• Нажимаем на три вертикальные полосы в верхней правой части экрана
• Нажимаем на “Настройка mqtt”
• В параметре “Сервер для подключения” выбираем “Свой сервер”
• Вводим адрес mqtt брокера, к примеру, у меня mqtt брокер живет на Wirenboard, поэтому я указываю его IP адрес в локальной сети
• Порт: 1883
• Логин: Логин от вашего mqtt брокера, если на вашем брокере не настроен логин, то оставляете поле пустым
• Пароль: Пароль от вашего mqtt брокера, если на вашем брокере не настроен пароль, то оставляете поле пустым
• Топик: MQTT топик, по которому будет осуществляться управление рекуператором.



Если у вас несколько рекуператоров, то для каждого рекуператора нужно указать уникальный топик.





• Нажимаем “Сохранить настройки”



Если введенные данные верны, то Статус подключения изменится на “Онлайн”




10. Интеграция VAKIO в Wirenboard

Секция статьи "10. Интеграция VAKIO в Wirenboard"

Так как генерируемые рекуператором MQTT топики не соответствуют Wiren Board Mqtt Conventions, нам необходимо создать виртуальные устройство и написать небольшой конвертор, позволяющий связать виртуальные устройство с MQTT топиками рекуператора.


• Копируем ниже приведенный код с помощью кнопки "Скопировать"


Изображение
загружается

Копируем ниже приведенный код с помощью кнопки Скопировать



• Заходим на веб интерфейсе контроллера
• Открываем раздел “Правила”
• Нажимаем “Создать…”


Изображение
загружается

Правила-создать



• Указываем имя правила, например driverVakio.js
• Вставляем в данный файл скопированный код. После чего нажимаем кнопку "Сохранить"


Изображение
загружается

Вставляем в данный файл скопированный код. После чего нажимаем кнопку Сохранить


 
createVakioBaseSmart({
  id: 1, //Указываем уникальный идентификатор виртуального устройства
  topic: "VAKIO", //Указываем MQTT топик, который был указан при настройке подключения к MQTT серверу
  polling_interval: 3, //Указываем период опроса наличия соединения с рекуператором в секундах
  hidden_update: true, //Указываем, будет ли скрыта кнопка обновления устройства: true = скрыта / false = актива
  hidden_reset: true, //Указываем, будет ли скрыта кнопка сброса до заводских настроек: true = скрыта / false = актива
})


function createVakioBaseSmart(params){ //Создаем функцию
  var id = params.id //В переменную id передаем значение параметра id
    var topic = params.topic //В переменную topic передаем значение параметра topic
    var polling_interval = params.polling_interval == undefined ? 3 : params.polling_interval //Если параметр polling_interval объявлен, то передаем его в переменную polling_interval, в ином случае в переменную передаем "3"
    var hidden_update = params.hidden_update == undefined ? false : params.hidden_update //Если параметр hidden_update объявлен, то передаем его в переменную hidden_update, в ином случае в переменную передаем "false"
    var hidden_reset = params.hidden_reset == undefined ? false : params.hidden_reset //Если параметр hidden_reset объявлен, то передаем его в переменную hidden_reset, в ином случае в переменную передаем "false"

    var nameVirtualDevice = "Vakio_{}".format(id) //Формируем наш DevName (device name)

    var mqttTopicState = "State"
    var mqttTopicWorkmode =  "Workmode"
    var mqttTopicSpeed = "Speed"
    var mqttTopicSeries = "Series"
    var mqttTopicSubType = "SubType"
    var mqttTopicXtalFreq = "xtalFreq"
    var mqttTopicMAC = "MAC"
    var mqttTopicFWversion = "FW version"
    var mqttTopicConnect = "Connect"
    var mqttTopicReset = "Reset"
    var mqttTopicUpdate = "Update FW"

    defineVirtualDevice(nameVirtualDevice, {
      title: "Vakio Base Smart {}".format(topic),
      cells: {}
    });


    getDevice(nameVirtualDevice).addControl(mqttTopicState, { type: "switch", order: 0, value: false});
    getDevice(nameVirtualDevice).addControl(mqttTopicWorkmode, { type: "range", order: 1, min: 0, max: 6, value: 0});
    getDevice(nameVirtualDevice).addControl(mqttTopicSpeed, { type: "range", order: 2, min: 1, max: 7, value: 0});
    getDevice(nameVirtualDevice).addControl(mqttTopicSeries, { type: "text", order: 3, readonly: true, value: "Loading"});
    getDevice(nameVirtualDevice).addControl(mqttTopicSubType, { type: "text", order: 4, readonly: true, value: "Loading"});
    getDevice(nameVirtualDevice).addControl(mqttTopicXtalFreq, { type: "text", order: 5, readonly: true, value: "Loading"});
    getDevice(nameVirtualDevice).addControl(mqttTopicMAC, { type: "text", order: 6, readonly: true, value: "Loading"});
    getDevice(nameVirtualDevice).addControl(mqttTopicFWversion, { type: "text", order: 7, readonly: true, value: "Loading"});
    getDevice(nameVirtualDevice).addControl(mqttTopicConnect, { type: "switch", order: 10, readonly: true, value: false});


    function sendTranslate(controlTopic, meta){
      publish("/devices/{}/controls/{}/meta".format(nameVirtualDevice, controlTopic), meta, 2, true);
    }

    sendTranslate(mqttTopicState, '{"type": "switch","order":"0","readonly":0,"title":{"ru": "Состояние"}}')
    sendTranslate(mqttTopicWorkmode, '{"type": "range","order":"1","max":"6","readonly":0,"title":{"ru": "Режим работы"}}')
    sendTranslate(mqttTopicSpeed, '{"type": "range","order":"2","max":"7","readonly":0,"title":{"ru": "Скорость"}}')
    sendTranslate(mqttTopicSeries, '{"type": "text","order":"3","readonly": "1","title":{"ru": "Серия"}}')
    sendTranslate(mqttTopicSubType, '{"type": "text","order":"4","readonly": "1","title":{"ru": "Тип вентилятора"}}')
    sendTranslate(mqttTopicXtalFreq, '{"type": "text","order":"5","readonly": "1","title":{"ru": "Частота кварцевого генератора"}}')
    sendTranslate(mqttTopicMAC, '{"type": "text","order":"6","readonly": "1","title":{"ru": "MAC адрес"}}')
    sendTranslate(mqttTopicFWversion, '{"type": "text","order":"7","readonly": "1","title":{"ru": "Версия ПО"}}')
    sendTranslate(mqttTopicConnect, '{"type": "switch","order":"10","readonly": "1","title":{"ru": "Соединение"}}')


    function publishMqtt(subtopic, value){
      publish("{}/{}".format(topic, subtopic), value, 2, true);
    }


    if(!hidden_update){
        getDevice(nameVirtualDevice).addControl(mqttTopicUpdate, { type: "pushbutton", value: false, order: 8 });
        sendTranslate(mqttTopicUpdate, '{"type": "pushbutton","order":"8","readonly": 0,"title":{"ru": "Обновить ПО"}}')
      defineRule("Update FW{}".format(nameVirtualDevice), {
         whenChanged: nameVirtualDevice + "/" + mqttTopicUpdate,
          then: function (newValue, devName, cellName) {
              publishMqtt("system", "0609")
         }
        });
    }
    else{
        if(getDevice(nameVirtualDevice).isControlExists(mqttTopicUpdate)){
          getDevice(nameVirtualDevice).removeControl(mqttTopicUpdate, { type: "pushbutton", value: false, order: 8 });
        }
    }

    if(!hidden_reset){
        getDevice(nameVirtualDevice).addControl(mqttTopicReset, { type: "pushbutton", value: false, order: 9 });
        sendTranslate(mqttTopicReset, '{"type": "pushbutton","order":"9","readonly": 0,"title":{"ru": "Сбросить до заводских"}}')
      defineRule("Reset{}".format(nameVirtualDevice), {
         whenChanged: nameVirtualDevice + "/" + mqttTopicReset,
          then: function (newValue, devName, cellName) {
              publishMqtt("system", "0608")
         }
        });
    }
  else{
        if(getDevice(nameVirtualDevice).isControlExists(mqttTopicReset)){
          getDevice(nameVirtualDevice).removeControl(mqttTopicReset, { type: "pushbutton", value: false, order: 9 });
        }
    }

    trackMqtt("/devices/{}/controls/{}/on".format(nameVirtualDevice, mqttTopicState), function(message){
       var state;
       state = message.value == true ? "on" : "off"
       publishMqtt("state", state)
       if(!dev[mqttTopicSpeed]){
         publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicSpeed), 1, 2, true);
       }
    });


    trackMqtt("{}/state".format(topic), function(message){
      var stateReal = message.value == "on" ? 1 : 0
      publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicState), stateReal, 2, true);
    });


    trackMqtt("/devices/{}/controls/{}/on".format(nameVirtualDevice, mqttTopicWorkmode), function(message){
      log.info(message.value)
      switch(parseInt(message.value)){
         case 0:
           publishMqtt("workmode", "inflow")
         break;
         case 1:
           publishMqtt("workmode", "inflow_max")
         break;
         case 2:
           publishMqtt("workmode", "recuperator")
         break;
         case 3:
           publishMqtt("workmode", "winter")
         break;
         case 4:
           publishMqtt("workmode", "outflow")
         break;
         case 5:
           publishMqtt("workmode", "outflow_max")
         break;
         case 6:
           publishMqtt("workmode", "night")
         break;
       }
    });



    trackMqtt("{}/workmode".format(topic), function(message){
      switch(message.value){
        case "inflow":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 0, 2, true);
        break;
        case "inflow_max":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 1, 2, true);
        break;
        case "recuperator":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 2, 2, true);
        break;
        case "winter":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 3, 2, true);
        break;
        case "outflow":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 4, 2, true);
        break;
        case "outflow_max":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 5, 2, true);
        break;
        case "night":
          publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicWorkmode), 6, 2, true);
        break;
      }

    });

    trackMqtt("/devices/{}/controls/{}/on".format(nameVirtualDevice, mqttTopicSpeed), function(message){
      publishMqtt("speed", message.value)
    });

    trackMqtt("{}/speed".format(topic), function(message){
      publish("/devices/{}/controls/{}".format(nameVirtualDevice, mqttTopicSpeed), parseInt(message.value, 10), 2, true);
    });

    publishMqtt("system", "0687")
   var flagReady = false
    setInterval(function () {
      publishMqtt("system", "0687")
        flagReady = true
    }, 1000 * polling_interval);


    function errorTopic(nameVirtualDevice, nameControl, value){
        value = value == true ? "r" : ""
      publish("/devices/{}/controls/{}/meta/error".format(nameVirtualDevice, nameControl), "{}".format(value), 2, true);
    }

    var oldValue = "default"
    trackMqtt("{}/system".format(topic), function(message){
    if(message.value == "0685"){
          dev[nameVirtualDevice][mqttTopicConnect] = true;

          errorTopic(nameVirtualDevice, mqttTopicState, false)
          errorTopic(nameVirtualDevice, mqttTopicWorkmode, false)
          errorTopic(nameVirtualDevice, mqttTopicSpeed, false)
          errorTopic(nameVirtualDevice, mqttTopicSeries, false)
          errorTopic(nameVirtualDevice, mqttTopicSubType, false)
          errorTopic(nameVirtualDevice, mqttTopicXtalFreq, false)
          errorTopic(nameVirtualDevice, mqttTopicMAC, false)
          errorTopic(nameVirtualDevice, mqttTopicFWversion, false)

      }
        else if((message.value == oldValue)&&(flagReady)){
          dev[nameVirtualDevice][mqttTopicConnect] = false;

          errorTopic(nameVirtualDevice, mqttTopicState, true)
          errorTopic(nameVirtualDevice, mqttTopicWorkmode, true)
          errorTopic(nameVirtualDevice, mqttTopicSpeed, true)
          errorTopic(nameVirtualDevice, mqttTopicSeries, true)
          errorTopic(nameVirtualDevice, mqttTopicSubType, true)
          errorTopic(nameVirtualDevice, mqttTopicXtalFreq, true)
          errorTopic(nameVirtualDevice, mqttTopicMAC, true)
          errorTopic(nameVirtualDevice, mqttTopicFWversion, true)

        }

        if(!(message.value).indexOf('0601')){
           var hardwareInfoObj = JSON.parse(message.value.slice(4, message.value.lenght))
           dev[nameVirtualDevice][mqttTopicSeries] = hardwareInfoObj.series
       dev[nameVirtualDevice][mqttTopicSubType] = hardwareInfoObj.subtype
           dev[nameVirtualDevice][mqttTopicXtalFreq] = hardwareInfoObj.xtal_freq
      }

        if(!(message.value).indexOf('060006')){
           dev[nameVirtualDevice][mqttTopicMAC] = message.value.slice(11, 28)
           dev[nameVirtualDevice][mqttTopicFWversion] = message.value.slice(6, 11)
      }

        oldValue = message.value
    });

}

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




VAKIO Driver.js




11. Рекуператор в WEB интерфейсе WirenBoard

Секция статьи "11. Рекуператор в WEB интерфейсе WirenBoard"


Отображение рекуператора, со скрытыми кнопками, сброса и обновления ПО


Изображение
загружается

Отображение рекуператора, со скрытыми кнопками, сброса и обновления ПО


Отображение рекуператора, с полным набором параметров


Изображение
загружается

Отображение рекуператора, с полным набором параметров

Так как генерируемые рекуператором MQTT топики не соответствуют Wiren Board Mqtt Conventions, нам необходимо создать виртуальные устройство и написать небольшой конвертор, позволяющий связать виртуальные устройство с MQTT топиками рекуператора.

Состояние
Вкл - рекуператор включен
Выкл - рекуператор выключен

Режим работы
0 - inflow (Приток)
1 - inflow_max (Приток MAX)
2 - recuperator (Рекуперация)
3 - winter (Рекуперация Зима)
4 - outflow (Вытяжка)
5 - outflow_max (Вытяжка MAX)
6 - night (Ночной)



При включении ночного режима рекуператор в течении первых 5 минут вытягивает воздух из помещения на максимальной скорости. После чего переключается на скорость, установленную в настройках ночного режима.
Скорость вентилятора в ночном режиме можно настроить только через приложение VAKIO Smart Control



Скорость
0 - 0 Скорость вентилятора (Вентилятор останавливается)
1 - 1 Скорость вентилятора
2 - 2 Скорость вентилятора
3 - 3 Скорость вентилятора
4 - 4 Скорость вентилятора
5 - 5 Скорость вентилятора
6 - 6 Скорость вентилятора
7 - 7 Скорость вентилятора

Серия

Тип вентилятора
Nidec
Delta
DHE
AVC
PFB
Delta-i
ADDA


Частота кварцевого генератора
MAC адрес
Версия ПО
Обновить ПО (Можно скрыть)
Сбросить до заводских (Можно скрыть)

Соединение
Выкл - отсутствует подключение к рекуператору
Вкл - установлена связь с рекуператором




11.1 Отображение пропажи связи с контроллером

Секция статьи "11.1 Отображение пропажи связи с контроллером"

Изображение
загружается

Отображение пропажи связи с контроллером

При потери соединения с рекуператором помечаются красным, а переключатель “Соединение” переходит в состояние “Выкл”.




12. Интеграция в SprutHub

Секция статьи "13. Интеграция в SprutHub"

Для добавления нашего драйвера в Sprut.Hub необходимо скачать на контроллер данный шаблон. И выполнить инструкцию по установке кастомных шаблонов на Wirenboard.





Шаблон VAKIO для SprutHub.JSON





Изображение
загружается

Функции рекуператора в интерфейсе SprutHub

Изображение
загружается

Параметры рекуператора в интерфейсе SprutHub



13. Отображение в Apple HomeKit

Секция статьи "13. Отображение в Apple HomeKit"

Изображение
загружается

Главный экран Apple Home с плиткой управления Рекуператор

Главный экран Apple Home с плиткой управления "Рекуператор"




Изображение
загружается

Экран управления рекуператором в Apple Home

Экран управления рекуператором в Apple Home




14. Отображение в Яндекс Умный дом при интеграции через Sprut.Hub

Секция статьи "14. Отображение в Яндекс.Умный дом при интеграции через Sprut.Hub"

Внимание!

Данное отображение доступно пользователям Beta версии Sprut.Hub, начиная с 1.9.6 сборка 10673





Изображение
загружается

Главный экран управления

Главный экран управления




Изображение
загружается

Экран управления рекуператором

Экран управления рекуператором




15. Отображение в приложении VAKIO

Секция статьи "15. Отображение в приложении VAKIO"



Инструкция по добавлению устройства на операционной системе IOS.pdf




Инструкция по добавлению устройства на операционной системе Android.pdf





Изображение
загружается

Главный экран приложения VAKIO

Главный экран приложения VAKIO




Изображение
загружается

Экран управления рекуператором VAKIO

Экран управления рекуператором VAKIO




Изображение
загружается

Экран настройки скорости работы вентилятором в ночном режиме

Экран настройки скорости работы вентилятором в ночном режиме




Изображение
загружается

Общий экран настроек Base Smart

Общий экран настроек Base Smart




Через родное приложение мы можем:
• Включить/выключить рекуператор
• Выбрать Нужных режим работы
- Приток
- Вытяжка
- Рекуперация
- Макс. приток
- Макс. вытяжка
- Ночь
- Выбрать скорость ночного режима

• Посмотреть показания с датчиков CO2/Температуры/Влажности
• Активировать зимний режим
• Настроить режим работы “Smart”
• Выставить желаемую скорость вентилятора




16. Отображение в Яндекс.Умный дом при интеграции через навык Vakio Smart Control

Секция статьи "17. Отображение в Яндекс.Умный дом при интеграции через навык Vakio Smart Control"

У производителя есть свой навык для интеграции в Яндекс.Умный дом. Поддерживается следующий список устройств:

- Vakio Base Smart
- Vakio Window Smart
- Vakio Openair
- Vakio Atmosphere

Рассмотрим какой функционал доступен:


Изображение
загружается

Навык для интеграции в Яндекс.Умный дом

Навык для интеграции в Яндекс.Умный дом




Изображение
загружается

Главный экран приложения Яндекс Умный Дом

Главный экран приложения Яндекс.Умный дом




Изображение
загружается

Внутренний экран управления рекуператором

Внутренний экран управления рекуператором




Изображение
загружается

Внутренний экран управления рекуператором. Выбор программ, скорости вентиляции и примеры голосовых команд

Внутренний экран управления рекуператором. Выбор программ, скорости вентиляции и примеры голосовых команд




Через приложение мы можем:
Включить / Выключить устройство
Выбрать программу (режим работы)
1 - Вытяжка
2 - Приток
3 - Рекуперация
4 - Вытяжка MAX
5 - Приток MAX
6 - Ночной

Скорость вентиляции
Низкая - 1 Скорость
Средняя - 3 Скорость
Высокая - 5 Скорость
Турбо - 7 Скорость




17. Выводы

Секция статьи "18. Выводы"

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

Плюсы
- Хорошо описанная документация по управлению с помощью MQTT.
- Возможность добавления в Яндекс Умный дом, используя родное приложение.
- Имеется техническая поддержка, готовая ответить на все ваши вопросы.
- Производство в России. Не будет проблем с поставкой оборудования.

Минусы
- Для подключения рекуператора к MQTT брокеру необходимо подключаться к локальной сети рекуператора. В ином случае выбранные настройки не сохранятся.
- Нет отдельного топика либо команды для скорости ночного режима. При активации ночного режима, у вас включится прошлая установленная скорость.
- При подключении к стороннему MQTT брокеру теряется возможность управления из родного приложения и потеряется функция взаимодействия с другими устройствами VAKIO.
- Нельзя настроить время цикла притока и вытяжки для режима рекуперации.
- Необходимо иметь точку доступа Wi-Fi на частоте 2.4GHz. И устанавливать точки доступа поблизости с рекуператором.




18. Ссылки на все файлы статьи

Секция статьи "18. Ссылки на все файлы статьи"


Руководство по эксплуатации.pdf




Инструкция по подключению к Android.pdf




Инструкция по подключению к IOS.pdf




VAKIO Driver.js




Шаблон VAKIO для SprutHub.JSON