Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.
Корзина  (пустая) 0 руб.

+7 495 204-27-80

Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА: Скрипт для управления вытяжным вентилятором

Скрипт для управления вытяжным вентилятором 11 Март 2019 23:18 #26121

  • Bogdan
  • Bogdan аватар
  • Вне сайта
  • Новый участник
  • Vera Secure UI7
  • Сообщений: 14
  • Репутация: 0
Привет всем. Вопрос следующего характера. Как прописать скрипт LUA в сцене для вентилятора, чтоб он периодически включался и выключался. Как вычислить сколько времени он работает т.е. включено реле?
Знаю только как состояние узнать: VentSpeed = luup.variable_get("urn:upnp-org:serviceId:SwitchPower1", "Status", 5)
Подскажите плиз как организовать сцену со скриптом - не могу продвинуться дальше, новичек пока.
Спасибо.

Скрипт для управления вытяжным вентилятором 12 Март 2019 07:09 #26124

  • aov
  • aov аватар
  • Вне сайта
  • Живу я здесь
  • Сообщений: 1145
  • Спасибо получено: 87
  • Репутация: 5
Контроллер какой?
Играюсь...
Сейчас: Vera Edge, Vera Plus, Hubitat, MiHome, Tuya, Алиса, Alexa, Google Home

Скрипт для управления вытяжным вентилятором 12 Март 2019 07:17 #26125

  • Bogdan
  • Bogdan аватар
  • Вне сайта
  • Новый участник
  • Vera Secure UI7
  • Сообщений: 14
  • Репутация: 0
VeraSecure

Скрипт для управления вытяжным вентилятором 12 Март 2019 07:23 #26126

  • aov
  • aov аватар
  • Вне сайта
  • Живу я здесь
  • Сообщений: 1145
  • Спасибо получено: 87
  • Репутация: 5
Если Lua у тебя не ради любви к искусству, посмотри на плагин с названием "Reaсtor" ... ;)

Можешь ещё на "DelayLight" глянуть ....
Играюсь...
Сейчас: Vera Edge, Vera Plus, Hubitat, MiHome, Tuya, Алиса, Alexa, Google Home
Последнее редактирование: 12 Март 2019 07:29 от aov.

Скрипт для управления вытяжным вентилятором 12 Март 2019 11:30 #26129

  • Moffus
  • Moffus аватар
  • Вне сайта
  • Живу я здесь
  • VeraPlus
  • Сообщений: 469
  • Спасибо получено: 54
  • Репутация: 8
Как вычислить сколько времени он работает т.е. включено реле?
Некошерно - записать в файл момент полручения на включение.
Кошерно - повесить на событие "включился" (т.е. уровень потребления стал более 0) запись временной отметки. Атомарная сцена. С тупой, линейной логикой.
На выключение - 0 (Атомарная сцена).

После этого в скриптах можно читать файл и смотреть, включен или нет.
Но в 99% случаев, достаточно сделать интерактивно, в сцене.
Активация "раз в N"
Задание - включить
Отложенное задание (через минуту) - выключить.
Спасибо сказали: Bogdan

Скрипт для управления вытяжным вентилятором 12 Март 2019 11:50 #26131

  • Bogdan
  • Bogdan аватар
  • Вне сайта
  • Новый участник
  • Vera Secure UI7
  • Сообщений: 14
  • Репутация: 0
Я думал можно из какой то переменной вытянуть типа lasttrip сколько времени реле включено. И обратно проверять сколько простоя сценой раз в 5 мин. Но вариант с потреблением конечно не плох. И что значит отложеенное действие?

Скрипт для управления вытяжным вентилятором 12 Март 2019 18:10 #26136

  • Moffus
  • Moffus аватар
  • Вне сайта
  • Живу я здесь
  • VeraPlus
  • Сообщений: 469
  • Спасибо получено: 54
  • Репутация: 8
Вот сходная задача. Маленький кусочек автоматизации дома.
Дано:
Есть циркуляционный насос горячей воды. Нужен для того, чтоб из крана сразу текла горячая вода, а бойлер - центральный, на четверть тонны.
Постоянная (избыточная) циркуляция чрезмерно выстужает бойлер.

См. картинку:
Там где 1 - график.
Там, где 2 - как раз время работы
Там, где 3 - ограничение, не нужно гонять воду, когда дома никого нет. И ночью - тоже не особо надо.

Ничего не надо программировать тут.
Pump.jpg

Скрипт для управления вытяжным вентилятором 12 Март 2019 20:22 #26138

  • Bogdan
  • Bogdan аватар
  • Вне сайта
  • Новый участник
  • Vera Secure UI7
  • Сообщений: 14
  • Репутация: 0
Ребят, спасибо за идеи и подсказки. Но я выбрал путь LUA и надеюсь что кто то даст пример или подсказку, как это в се прописать в коде сцены. Как минимум хочу понять как такие задачи можно решить с помощью кода.
Нарыл вот такой код, теперь думаю оно или нет. Что скажите?

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

2. Добавьте этот код в раздел кода Luup :
local sensorDeviceNo = 16 -- Motion Sensor device number
local lightDeviceNo = 13 -- Light device number
local period = 10 -- Seconds

local SS_SID = "urn:micasaverde-com:serviceId:SecuritySensor1" -- Security Sensor Service ID
local SP_SID = "urn:upnp-org:serviceId:SwitchPower1" -- Switch Power Service ID

function checkLastTrip()
local lastTrip = luup.variable_get (SS_SID, "LastTrip", sensorDeviceNo) or os.time()
if (os.difftime (os.time(), tonumber (lastTrip)) >= period) then
luup.call_action (SP_SID, "SetTarget", {["newTargetValue"] = 0}, lightDeviceNo) -- Turn off the light.
else
luup.call_delay ("checkLastTrip", period) -- Check when the sensor was last tripped every <period> seconds.
end
end

luup.call_delay ("checkLastTrip", period)

return true

Скрипт для управления вытяжным вентилятором 12 Март 2019 20:26 #26139

  • Bogdan
  • Bogdan аватар
  • Вне сайта
  • Новый участник
  • Vera Secure UI7
  • Сообщений: 14
  • Репутация: 0
а еще нашел такой оператор:
luup.call_timer("checkMasterBedroomAC", 1, "1m", "") -- 1=Interval timer 1m=every 1 minute

я так понял с указанным интервалом запускает функцию. Но пока не понял как прикрутить

Скрипт для управления вытяжным вентилятором 13 Март 2019 01:48 #26140

  • aov
  • aov аватар
  • Вне сайта
  • Живу я здесь
  • Сообщений: 1145
  • Спасибо получено: 87
  • Репутация: 5
Bogdan пишет:
Сцена, которая включает свет, когда обнаруживает движение, и выключает свет, когда некоторое время не обнаруживает движения.

Такое вообще решается мимо контроллера. Прямой ассоциацией. Можно ещё и освещённость добавить .... Незачем контроллер грузить лишними действами...
Играюсь...
Сейчас: Vera Edge, Vera Plus, Hubitat, MiHome, Tuya, Алиса, Alexa, Google Home

Скрипт для управления вытяжным вентилятором 13 Март 2019 11:42 #26143

  • Moffus
  • Moffus аватар
  • Вне сайта
  • Живу я здесь
  • VeraPlus
  • Сообщений: 469
  • Спасибо получено: 54
  • Репутация: 8
Bogdan пишет:
Сцена, которая включает свет, когда обнаруживает движение, и выключает свет, когда некоторое время не обнаруживает движения.
В качестве изучения luup - Ok.
Идеологически же - неправильно.
Идеология Z-Wave - устройства сами включают линейную логику. Контроллер следует использовать в сложных взаимодействиях.
В связке "событие-реакция", Z-Wave контроллер нужен только для конфигурирования устройств.

Т.е:
Сенсор движения параметрируется на таймаут и ассоциируется с реле вентилятора. Всё работает даже при выключенном контроллере. (в KNX - только так и работает, там нет контроллеров, а логические модули - несколько ко иное)

P.S. В прикладном плане так не очень хорошо, т.к. человек там пребывает в неподвижности. Тут была идея работы по уровню освещённости - человек затеняет датчик света :)
Время создания страницы: 0.149 секунд