[Настройка] Автоматическое управление освещением в комнате

Описание настройки чего либо

Модераторы: immortal, newz20

lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение lihodeev » Сб мар 30, 2019 7:47 pm

Chainik писал(а):
Сб мар 30, 2019 6:41 pm
lihodeev писал(а):
Сб мар 30, 2019 6:03 pm
Можно попробовать использовать доп.свойство аля "лег_спать". Если свойство = "1", код исходного скрипта запускаться не будет. После восхода солнца и срабатывания датчика движения свойству "лег_спать" присвоится значение "0". Только надо проверить, что в ThisComputer.SunRise время восхода устанавливается правильно.

Код: Выделить всё

if(timeBetween('ThisComputer.SunRise', '17:59')){
sg("ОБЪЕКТ.Свойство_лег_спать', 0);
}
if(gg("ОБЪЕКТ.Свойство_лег_спать') == "0"){
ИСХОДНЫЙ КОД СКРИПТА
}
спасибо, буду пробовать
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение Chainik » Сб мар 30, 2019 8:56 pm

lihodeev писал(а):
Сб мар 30, 2019 7:47 pm
...
спасибо, буду пробовать
Небольшая поправочка: свойство в системе, где хранится время восхода солнца, правильно называется "ThisComputer.SunRiseTime" (в примере кода поправил).
Я бы даже сделал чуть по-другому. В коде, где выставляется свойство "лег_спать", тут же прописал бы его обнуление в момент восхода солнца:

Код: Выделить всё

$tm = timeConvert(gg('ThisComputer.SunRiseTime'));
addScheduledJob('command','sg("ОБЪЕКТ.Свойство_лег_спать", "0");',$tm);
Либо, если у вас есть где-то (в скриптах, в методах) перечень действий при восходе солнца, можно вписать туда

Код: Выделить всё

sg("ОБЪЕКТ.Свойство_лег_спать", "0");
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение lihodeev » Сб мар 30, 2019 10:57 pm

Еще раз огромное спасибо, все заработало, только
sg("ОБЪЕКТ.Свойство_лег_спать', 0); c одинарными кавычками
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение lihodeev » Пн апр 01, 2019 10:33 am

как сделать включение света за 20 минут до захода солнца? Понимаю что надо взять глобальную переменную ThisComputer.SunRiseTime и отнять от значения 20 минут, и уже это значение поставить в сценарий. Но синтаксически не силен.
скрипт -
sg('pirHAL.status', 1);
if(timeBetween('ThisComputer.SunRiseTime - 20*60', '23:59')){
SetTimeOut("MS2ActTimer","sg('pirHAL.status', 0);",0);
getURL("http://192.168.1.37/?Hai0=1", 0);
//run timer on 10 minuts
clearTimeOut("lightOffTimer5");
SetTimeOut("lightOffTimer5","getURL('http://192.168.1.37/?Hai0=0', 0);",60*10);}
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение xor » Пн апр 01, 2019 2:25 pm

lihodeev писал(а):как сделать включение света за 20 минут до захода солнца? Понимаю что надо взять глобальную переменную ThisComputer.SunRiseTime и отнять от значения 20 минут, и уже это значение поставить в сценарий. Но синтаксически не силен.
скрипт -
sg('pirHAL.status', 1);
if(timeBetween('ThisComputer.SunRiseTime - 20*60', '23:59')){
SetTimeOut("MS2ActTimer","sg('pirHAL.status', 0);",0);
getURL("http://192.168.1.37/?Hai0=1", 0);
//run timer on 10 minuts
clearTimeOut("lightOffTimer5");
SetTimeOut("lightOffTimer5","getURL('http://192.168.1.37/?Hai0=0', 0);",60*10);}
У вас свойство заход в юникстайм, а тайм бетвин требует обоих аргументов в строке, приведите вычисленное юникс время функцией date к виду 'чч:сс'

Отправлено с моего Redmi 4X через Tapatalk

Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение xor » Пн апр 01, 2019 2:29 pm

Timebetween(date ('H:i',gg('время_заката')-20*60),"23:59")

Отправлено с моего Redmi 4X через Tapatalk


Санрайз это же восход?
За это сообщение автора xor поблагодарил:
lihodeev (Пн апр 01, 2019 3:11 pm)
Рейтинг: 1.16%
lihodeev
Сообщения: 148
Зарегистрирован: Ср июл 25, 2018 10:37 pm
Благодарил (а): 43 раза
Поблагодарили: 8 раз

Re: [Настройка] Автоматическое управление освещением в комнате

Сообщение lihodeev » Пн апр 01, 2019 3:12 pm

Ход мысли понял, буду пробовать.Спасибо
Raspberry 3, AMS 16, arduinka 2560, Orange pi Zero, Broadlink RM3, Xiaomi Mi Robot Vacuum SKV4000GL
Ответить