Databáze znalostí YATUN

Ovládání roletového aktoru jedním Z-Wave tlačítkem

ID článku: 217
Naposledy upravený: 31 Jul, 2015
Revision: 2

Ovládání roletového aktoru Fibaro pomocí klíčenky KFOB-2 / tlačítka ZME_WCS2 (ZME_WCD2)

V Z-Wave síti je nutné vytvořit 2 globální proměnné. Proměnná "smer" indikuje, zda se roleta zatahuje (směr nahoru) nebo roztahuje (směr dolů). Proměnná "pohyb" označuje zda roleta vykonává akci (roztahuje se nebo zatahuje --> běží) nebo je zastavená (stojí).

Pro testování byla použita klíčenka KFOB 2. roletový aktor Fibaro a jednotka HC2 (z důvodu nutnosti programovat v LUA).

--[[
%% properties
12 sceneActivation
%% globals
--]]
-- id zařízení, scény
local id_klicenka = 12
local id_rolety = 14
local id_sceny = 156

-- hodnoty na zařízeních
local klicenka = tonumber(fibaro:getValue(id_klicenka, "sceneActivation"))
local pozice = tonumber(fibaro:getValue(id_rolety,"value"))
fibaro:debug(klicenka)

------------------------------------------------------------------------------
if klicenka == 13 and fibaro:getGlobalValue("pohyb") == "běží"
 then
    -- rolety se zatáhnou
    if pozice == 0
      then
          fibaro:call(id_rolety,"open")
   
          fibaro:setGlobal("smer", "nahoru")
        fibaro:debug(fibaro:getGlobalValue("smer"))
    end
    -- rolety se roztáhnou
    if pozice >= 95
      then
        fibaro:call(id_rolety,"close")
   
        fibaro:setGlobal("smer", "dolu")
        fibaro:debug(fibaro:getGlobalValue("smer"))
      end
      -- zastavení
      if  pozice < 97
        or pozice > 0
    then
        fibaro:call(id_rolety,"stop")
        fibaro:setGlobal("pohyb", "stojí")
        fibaro:killScenes(id_sceny)
    end

elseif klicenka == 11 and fibaro:getGlobalValue("pohyb") == "stojí"
    then
    -- znovu spustit rolety
      if pozice < 97
    or pozice > 0
    then
        -- zatáhnout
        if fibaro:getGlobalValue("smer") == "nahoru"
               then fibaro:call(id_rolety, "open")
          -- roztáhnout
           elseif fibaro:getGlobalValue("smer") == "dolu"
             then fibaro:call(id_rolety, "close")
         end
     -- přepne proměnou na běží
     fibaro:setGlobal("pohyb", "běží")
    end
end
    
fibaro:debug(pozice)

Předchozí   Další
Zastřežení a odstřežení bez PINu pomocí univerzálního...     Probuzení nečinných uzlů přes LUA scénu v HC2