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



  • Подскажите как в Cherry настроить работу электрическими роллетами использую MegaD там все подключил через:

    .

    Но в IH не знаю как подключить чтобы реле зажималось на некоторое время (на время опускания или поднятия роллеты), там использую 2 реле, одно на поднятие второе на опускание.

    Еще есть момент я так понимаю должно быть 3 режима: верх, стоп, низ.

    Пробовал так: создал актуатор универсальный бинарный, добавил значение

    создал на мнемосхеме переключатель, но на 3 положение не переключается



  • @amgstone:

    Но в IH не знаю как подключить чтобы реле зажималось на некоторое время (на время опускания или поднятия роллеты), там использую 2 реле, одно на поднятие второе на опускание.

    Еще есть момент я так понимаю должно быть 3 режима: верх, стоп, низ.

    Пробовал так: создал актуатор универсальный бинарный, добавил значение

    создал на мнемосхеме переключатель, но на 3 положение не переключается

    Здесь состояние устройства не отслеживается, нужно только подавать команды на MegaD

    Такой функционал легко сделать на кнопках и прямых командах плагину, без устройств и без каналов

    1. Ставите три кнопки - вверх, стоп, вниз.

    2. На каждой кнопке на вкладке параметры задаете Действие - Команда плагина
    megad_plugincommand.png

    В качестве команды вводите команду, которую нужно передать на MegaD.

    Например,

    Вверх: /%pwd%/?cmd=10:1;p300;10:0 - реле порт 10 включить на 30 сек и выключить

    Стоп: /%pwd%/?cmd=10:0;12:0 - реле порт 10 и 12 выключить

    Вниз: /%pwd%/?cmd=12:1;p300;12:0 - реле порт 12 включить реле на 30 сек и выключить

    Синтаксис запросов определяется MegaD

    Можете и подстановку пароля не делать, если пароль не меняли /sec/?cmd=8:1;p300;8:0. Или вписать свой пароль

    Время импульса задайте как надо. Обратите внимание, что в команде MegaD задается время в десятых секунды 10=1сек



  • А подскажите где мне добавлять дейсвия для меги что то запутался. Это я нашол:

    Если я не создаю устройство то я не могу включить роллеты в сценарий и при создании 3 действий это визуально не очень, как сделать красиво, практично и функционально?



  • @amgstone:

    А подскажите где мне добавлять дейсвия для меги что то запутался. Это я нашол:

    Если я не создаю устройство то я не могу включить роллеты в сценарий и при создании 3 действий это визуально не очень, как сделать красиво, практично и функционально?

    Вы точно также можете выдавать команды плагину из сценария:

    this.pluginCommand({unit:'megad1', command:'/sec/?cmd=7:1;p100;7:0'});
    
    

    Если делаете блок-схему, используйте "Команды" - "Команда плагина"

    Там нужно выбрать плагин, а в строке ввести команду, например: /sec/?cmd=7:1;p100;7:0 или /%pwd%/?cmd=7:1;p100;7:0

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

    Единственное различие - не будет выбранного текущего состояния. А вам это и надо.



  • дошли руки к роллетам, все таки надо видеть статус открыты жалюзи или нет, будет стоять датчики света и где будет очень яркий свет то роллеты будут опускаться на половину (если полный цикл закрытия 30 сек то буду опускать на 15 сек.), такая задумка, а на закате будут закрываться полностью, на рассвете будут отрываться. Но есть еще момент, если я нахожусь на террасе то ролокасета не закрывается пока там есть движения так как там у меня установлен датчик движения. Ну и хочу чтобы был ручной режим, под каждым окном Switch (on,off,stop), чтобы при желании я мог закрыть или открыть роллету.

    Я так понимаю ето все нужно делать на мульти сценарии



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



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



  • Вы сначала обдумайте как должен работать умный дом, а потом задавайте вопросы. А вообще на форуме уже все описано и решений всяких полно. Копипастишь из одного сценария в другой и получаешь результат, используя отладчик.

    Я к тому, что ваше решение не дееспособно. Вы что постоянно будете двигаться на своем заднем дворе чтобы роллета не начала закрываться? Датчик движения ведь работает "быстро" - зафиксировал движение - включился (разомкнулись СК), никакого движения теплых тел вокруг не происходит в течении какого-то времени (10 сек - 1 мин) - выключился (замкнулись СК). Если по вашему желанию, то необходимо в течении какого-то времени проверять включался ли ДД? Если в течении 30 минут - 1 час он не включался и при этом время позже "закат" (уровень датчика освещенности ниже критического), то "задраить" окно шторой.

    А по мне легче зайти в дом и сказать "Алиса закрой окно на заднем дворе"… или еще проще - при выключении света на заднем дворе закрывать и окно.



  • Создал такой сценарий, но тут проблема с IH передаю безпосредственно на MegaD, подскажите как можно управлять роллетами чтобы был двухсторонняя связь между устройствами?

    /**

    • @name Новый мультисценарий

    • @desc

    • @version 4

    */

    const switch_1 = Device("ActorE","Switch");

    const jalusi = Device("ActorD","Actor7",[

    {"name":"point_open", "note":"Пін відкриття", "type":"number", "val":15},

    {"name":"point_close", "note":"Пін закриття", "type":"number", "val":16}

    ]);

    startOnChange([switch_1,jalusi]);

    script({

    start() {

    if(this.isChanged(switch_1)){

    this.onSwitch();

    }

    if(this.isChanged(jalusi)){

    this.onJalusi();

    }

    },

    onSwitch(){

    switch(switch_1.value){

    case 0:

    jalusi.on();

    break;

    case 1:

    //this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':0;'+jalusi.getParam('point_close')+':0'});

    break;

    case 2:

    jalusi.off();

    break;

    }

    this.log('Жалюзі статус : '+switch_1.value);

    },

    onJalusi(){

    this.log(this.isChanged(jalusi)+' 38 line');

    if(jalusi.isOn()){

    this.log('jalusi On');

    this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_open')+':1;p200;'+jalusi.getParam('point_open')+':0'});

    }else{

    this.log('jalusi Off');

    this.pluginCommand({unit:'megad3', command:'/258/?cmd='+jalusi.getParam('point_close')+':1;p200;'+jalusi.getParam('point_close')+':0'});

    }

    this.log('(Ручне) Жалюзі статус : '+switch_1.value);

    this.exit();

    }

    });


Авторизуйтесь, чтобы ответить