Сценарии - новая версия API



  • Имеется:

    1. 3 зоны полива по разным сторонам света
    2. Отдельно в зонах:
      • В 1-й зоне 5 направлений
      • В 2-й зоне 3 направления
      • В 3-й зоне 4 направления
    3. В 3-х зонах по одному датчику влажности
      Хочется такое:
    4. Включение и отключение авто полива.
    5. Выставлять значение влажности в каждой зоне отдельно при котором значении включается полив
    6. В каждой зоне может включиться только одно направление полива и переключатся по очерёдно по расписанию, как пример ( 1-е направление – 15 минут, потом 2-е направление – 10 минут, потом 3-е направление - 7 минут и т.д.)

    Может кто писал какой-то похожий сценарий, от которого оттолкнуться.



  • Это достаточно сложный сценарий. Сразу у вас такой сделать не получится. Начните с включения/выключения полива по влажности, потом переключайтесь на зоны. Включение по влажности очень похоже на отопление. Если все таки сами не сможете, может кто-то согласиться вам помочь за вознаграждение.



  • Друзья, изучайте JS - он не так сложен, особенно если вы не знаете ни одного языка программирования). Только со знанием JS получится создать сценарий, который будет удовлетворять всем вашим критериям. Нативные блок-схемы - все это балоство.. .лучше начните баловаться с простыми выражениями типа...простых не нашел...все мои сценарии уже очень сложны, поскольку учитывают множество факторов. Все же умный дом):

        //Проверка основных условий (авто-режим клапана и дом снят с охраны)
        if(valve.auto && guard.isOff()) {
          //Если давление воды на вводе в норме
          if(pressure.value > pressure.setpoint) {
            //И если емкость не заполнена (показания датчика меньше 900)
            if(level.value < 900) {
              //Включаем клапан подачи воды в емкость
              if(valve.isOff()) valve.turnOnSaveAuto();
              this.message += valve.name+ " включен";
              
              //Взвод таймеров для установки "слушателя" и защитного отключения клапана
              this.startTimer("Timer_AddListener", 3, "AddListener");
              this.startTimer("Timer_OffValve", valve.getParam("timeOff")*60, "OffValve");
            }
            else {
              this.message += "Емкость заполнена";
            }
          }
          else {
            this.message += pressure.name+ " низкое!";
          }
        }
        else {
          this.message +
    


  • Коллеги, в мультисценарий потребовалось добавить переключатель режимов ПВУ (вдруг если где-то задымление, то отключаем систему вентиляции). Как это сделать?



  • @Alex_Jet, добрый день. Не совсем понятна проблема. Нужно добавить переключатель как устройство сценария, а потом в каждый экземпляр его добавить. Другой вариант - сделать виртуальное устройство как индикатор задымления, включить в мультисценарий его. По этому индикатору выключать вытяжку - мульти здесь уже не нужен.



  • @intrapro, первый вариант предпочтительней, поскольку в сценарии работы системы вентиляции уже наворочено сверх возможного. Однако как добавить переключатель как устройство сценария? Если как ActorD, то не могу выбрать переключатель в экземпляре мультисценария.



  • Добрый день!
    Подскажите, пожалуйста, где и как можно узнать свойства устройств и что они значат?



  • Пользователь @laronov написал в Сценарии - новая версия API:

    Добрый день!
    Подскажите, пожалуйста, где и как можно узнать свойства устройств и что они значат?

    В 4 версии все свойства устройства были определены в системе жестко. State - бинарные значения, Value - аналоговые, Blk.
    В 5 версии все свойства устройства можно настраивать. К примеру, есть датчик температуры и влажности. Сейчас нет необходимости делать два устройства. Можно одно устройство со свойствами temperature (температура) и humidity (влажность). Если понадобится еще давление, то просто добавить еще свойство pressure (давление). Благодаря такому механизму вы можете создать свои устройства.
    В комплекте с системой уже есть некоторые типовые устройства в папке "Типы устройств". Можно посмотреть как они сделаны.
    Подробнее можно почитать в документации



  • Пользователь @IntraVM написал в Сценарии - новая версия API:

    Blk
    что значит данное свойство?



  • Пользователь @laronov написал в Сценарии - новая версия API:

    Пользователь @IntraVM написал в Сценарии - новая версия API:

    Blk
    что значит данное свойство?

    Блокировка устройства.



  • Пользователь @intrapro написал в Сценарии - новая версия API:

    @Alex_Jet Да, это блокировка (свойство blk, операция setBlk) и setpoint - его наверно уже используете

    Добрый день!
    Есть сенсор, который получает значение с канала плагина mqtt.
    Значение отображается в индикаторе 1.
    Как можно в индикаторе 2 отобразить значение с другого канала mqtt?
    Видимо, это нужно/можно в скрипте как-то описать?


Log in to reply