Автоматизация включения света

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm

Автоматизация включения света

Сообщение pruwait »

Затрудняюсь автоматизировать следующий сценарий:
Если датчик движения зафиксировал активность, при этом прошло более 30минут со времени заката - включить свет на нескольких выключателях для работы в течение 10 минут.
Если до сработки датчика движения свет был включен вручную - не нужно его выключать.
Иначе выключить через 10 минут.

Как такое прописать?
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm

Re: Автоматизация включения света

Сообщение freesh »

pruwait писал(а): Вс ноя 24, 2019 11:01 pm Затрудняюсь автоматизировать следующий сценарий:
Если датчик движения зафиксировал активность, при этом прошло более 30минут со времени заката - включить свет на нескольких выключателях для работы в течение 10 минут.
Если до сработки датчика движения свет был включен вручную - не нужно его выключать.
Иначе выключить через 10 минут.

Как такое прописать?
Через планирование
https://kb.mjdm.ru/planirovanie-zadach/
Raspberry pi3, xiaomi, sonoff rf.
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm

Re: Автоматизация включения света

Сообщение pruwait »

freesh писал(а): Вс ноя 24, 2019 11:30 pm Через планирование
https://kb.mjdm.ru/planirovanie-zadach/
Это достаточно общее направление.

Нельзя ли поэтапно расписать, где и что нужно подредактировать, чтобы работало именно так?
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm

Re: Автоматизация включения света

Сообщение pruwait »

Предполагаю, что одна из причин слабой распространенности умных домов в чрезмерной сложности реализации казалось бы обыденных вещей. Должно быть как-то проще все. Пара галочек в дружественном интерфейсе - и все работает как надо.
Аватара пользователя
tarasfrompir
Сообщения: 3216
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Автоматизация включения света

Сообщение tarasfrompir »

pruwait писал(а): Пн ноя 25, 2019 12:56 pm Предполагаю, что одна из причин слабой распространенности умных домов в чрезмерной сложности реализации казалось бы обыденных вещей. Должно быть как-то проще все. Пара галочек в дружественном интерфейсе - и все работает как надо.
Вы просто не предстевляете сколько вариантов и сложностей возникает при том что каждому нужно свое...
Спасибо нам ПОМОЖЕТ..!
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm

Re: Автоматизация включения света

Сообщение pruwait »

Каждому нужно свое - тут разговоров нет.
Ну разве не обыденная хотелка - включение света в темное время суток по датчику движения? Или когда кто-то дома.
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm

Re: Автоматизация включения света

Сообщение freesh »

pruwait писал(а): Пн ноя 25, 2019 12:53 pm
freesh писал(а): Вс ноя 24, 2019 11:30 pm Через планирование
https://kb.mjdm.ru/planirovanie-zadach/
Это достаточно общее направление.

Нельзя ли поэтапно расписать, где и что нужно подредактировать, чтобы работало именно так?
Не изменить а написать ручками используя встроенные функции.
Ну т.е. пример - в методе срабатывающем при обнаружении движения в комнате, например MotionSensor.StatusChanged (я не знаю какие у Вас железки и метды) проверяем если свет в комнате выключен и уже темно (свойство isDark) то надо включить свет
If (gg('LivingRoom.LightIsOff')==0) && (gg('thisComputer.isDark')==1) {
turnonlight(); //сюда пишем где включаем свет (в каких комнатах)
}
ClearTimeOut("TurnOffTheLight"); // в этом же методе сбрасываем таймер выключения
SetTimeOut("TurnOffTheLight","turnofflight();",600); //устанавливаем новый таймер на 10 мин.


т.е. если вы продолжаете ходить в комнате, датчик сработает ещё раз, только уже свет не включит, а просто сбросит таймер (очистит и снова поставит таймер на 10 мин)

Переменная LivingRoom.LightIsOff:
В методе включения света:
setGlobal('LivingRoom.LightIsOff',1);

В методе выключения света:
setGlobal('LivingRoom.LightIsOff',0);

Соответсвенно посмотреть если в Timer.OnNewMinute - поднимается флаг isDark

Ну как-то так, подробнее проще отвечать на вопросы и использовать интрукции :)

Соответсвенно методы turnonlight() и turnonlight() подставляете свои, которые включают и выключают свет.
Raspberry pi3, xiaomi, sonoff rf.
Chainik
Сообщения: 1465
Зарегистрирован: Вс янв 10, 2016 11:05 am

Re: Автоматизация включения света

Сообщение Chainik »

Несложно кодом накрутить любую логику.
https://ab-log.ru/forum/viewtopic.php?f ... 440#p28440
Вам все равно придется хотя бы чуть-чуть разобраться в PHP.
pruwait
Сообщения: 42
Зарегистрирован: Ср ноя 07, 2018 3:05 pm

Re: Автоматизация включения света

Сообщение pruwait »

Как прописать в коде "включить лампу через полчаса после заката"?
freesh
Сообщения: 189
Зарегистрирован: Сб окт 12, 2019 2:10 pm

Re: Автоматизация включения света

Сообщение freesh »

pruwait писал(а): Ср ноя 27, 2019 3:45 pm Как прописать в коде "включить лампу через полчаса после заката"?
Наверное как-то так.

SetTimeOut("TurnOnTheLamp","Lamp.TurnOn;",1800); //устанавливаем новый таймер отработки метода Lamp.TurnOn; на 30 мин.

Но лучше сделать сценарий например lampTurnOnAfterDark
В нем проверять, а не включили ли мы уже лампу сами, на всякий случай
if (gg('Lamp.Status')==0){
CallMethod(Lamp.TurnOn);
}

И планировать уже этот сценарий
SetTimeOut("TurnOnTheLamp","lampTurnOnAfterDark;",1800); //устанавливаем новый таймер отработки метода Lamp.TurnOn; на 30 мин.


А куда это засунуть решай сам, можно в onNewMinute, где у тебя флаг заката поднимается, или в DarknessMode.Activate если он включается
Raspberry pi3, xiaomi, sonoff rf.
Ответить