Jump to content
News Ticker
  • Zwave-Community.it diventa DOMOTICA Easy!!
  • Il portale dedicato alla DOMOTICA WIRELESS
  • Forum - Guide - Recensioni

REGISTRATI PER VISUALIZZARE TUTTI I CONTENUTI DEL NOSTRO PORTALE!

ATTENZIONE: Alcuni contenuti del sito sono visualizzabili sono dagli utenti registrati. 

REGISTRATI ADESSO alla nostra comunità e dai anche il tuo supporto per ottenere di più!

Recommended Posts

Posted (edited)

Salve a tutti.

Avrei bisogno di sapere come vincolare una scena al valore di una variabile.

Ovvero permettere l’esecuzione di una scena, solo se tale variabile ha un valore prefissato

es.: abilitare la modalita notte( chiusura porte, finestre, tv, etc) solo se il garage è chiuso.

Grz 1000

Edited by Vincent
Correzione

Share this post


Link to post
Share on other sites

La scena si deve attivare tramite trigger sulla variabile desiderata e poi con una if testi il valore desiderato

Inviato dal mio LM-G710 utilizzando Tapatalk

Share this post


Link to post
Share on other sites

Grz per la risposta 

mi puoi fare esempio dato che non mi e’ molto chiaro?

nel senso: la scena può partire( manualmente, senza alcun automatismo) solo se il garage si trova in posizione di ‘chiuso’

Non intendo di far partire la scena quando chiudo garage

grz

Share this post


Link to post
Share on other sites

la scena può tranquillamente partire ogni cambio della variabile, poi sta a te condizionarla

nell'esempio sotto la scena si attiva se la porta (82) viene aperta o chiusa... e accende la luce id 264

inoltre si attiva quando la variabile TimeOfDay cambia di stato e in base alla fase del giorno accende o spegne la luce id 265

 

--[[
%% properties
82 value
%% events
%% globals
TimeOfDay
--]]

local startSource = fibaro:getSourceTrigger()
local timeOfDay             = "TimeOfDay"
local timeOfDayMapping      = {Morning="Mattina", Day="Giorno", Evening="Sera", Night="Notte"}
local porta = tonumber(fibaro:getValue(82, 'value'))
if porta == 1 then
    fibaro:debug(porta.." Porta Aperta")
    fibaro:call(264, "turnOn")
      else
    fibaro:debug(porta.." Porta Chiusa")
      fibaro:call(264, "turnOff")
end  
if fibaro:getGlobalValue(timeOfDay)==timeOfDayMapping.Evening or fibaro:getGlobalValue(timeOfDay)==timeOfDayMapping.Night then
    fibaro:debug(fibaro:getGlobalValue(timeOfDay).." Vetrina Spenta")
      fibaro:call(265, "turnOff")
      else
    fibaro:debug(fibaro:getGlobalValue(timeOfDay).." Vetrina Accesa")
      fibaro:call(265, "turnOn")  
end

Share this post


Link to post
Share on other sites

Ti ringrazio per la pronta risposta, ma credo di essermi spiegato male.

la scena la faccio partire io manualmente. A prescindere dallo stato delle variabili 

Alla sera, attivo manualmente la scena ‘notte’.

Spesso accade che il garage rimane aperto di notte, dato che non è a vista.

Io vorrei che , nel caso in cui il garage non fosse chiuso, la scena , (abilitata da me), non parta, facendomi capire che il garage è aperto, ed obbligandomi cosi a scendere per andare a chiuderlo

grz

Share this post


Link to post
Share on other sites

allora fai prima a testare il valore del sensore e ti fai mandare una allert sullo smartphone o una notifica alla hc2... o un messaggio telegram....

io fari così

Share this post


Link to post
Share on other sites

Allora condiziona tutta la scena allo stato della porta del garage. If chiusa esegui il blocco delle istruzioni else manda messaggio

Inviato dal mio LM-G710 utilizzando Tapatalk

Share this post


Link to post
Share on other sites

E come condiziono la scena alla porta ?

che poi è la domanda iniziale?

ovvio che non deve essere uguale il contrario

ovvero, ogni volta che chiudo la porta del garage, non deve partire la scena ‘notte’

Share this post


Link to post
Share on other sites

Così, non ti serve variabile o trigger

local porta = tonumber(fibaro:getValue(XX, 'value'))
if porta == 1 then

   messaggio

else

  tuo codice notte

end

 

xx è 'id del tuo sensore porta.

 

se avvi la scena notte e la porta del garage è aperta non viene eseguito le istruzioni notte e viene inviato in messaggio, altrimenti esegue il tuo codice

 

 non so se sono riuscito a spiegarmi,

altrimenti posta la tua scena e ti aggiungo le istruzioni

Share this post


Link to post
Share on other sites

Ecco immagini

il sensore della

porta Garage è il n.364 e si chiama “sensore Garage”

( probabilmente dovrò  vincolare la scena a due sensori, ma comincio con uno)

grz

Please login or register to see this attachment.

Please login or register to see this attachment.

Share this post


Link to post
Share on other sites
Che poi sarebbe questo

Please login or register to see this link.


Riesci a mandarmi la scena in un txt o copia all'interno del messaggio in modo che non debba riscrivere tutto?

Inviato dal mio LM-G710 utilizzando Tapatalk

Share this post


Link to post
Share on other sites

eccola la scena, devi mettere gli id dei tuoi smartphone 

fammi sapere

 

--[[
%% properties
%% weather
%% events
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
local garage = tonumber(fibaro:getValue(364, 'value'));
local PhoneID = {xx, yy};                   -- Array ID Phone (cambiare con i gli id degli smartphone su fibaro)
if (
 ( false )
or
startSource["type"] == "other"
)
then
    if garage == 1 then  -- garage aperto
        for x in next, PhoneID do
            fibaro:call(PhoneID[x], "sendPush", "Attenzione porta garage Aperta"); -- Push phone
        end
    else                 -- garage chiuso            
        fibaro:call(420, "secure");
        fibaro:call(50, "turnOff");
        fibaro:call(36, "turnOff");
        fibaro:call(46, "turnOff");
        fibaro:call(164, "turnOn");
        fibaro:call(254, "turnOn");
        fibaro:call(367, "setBrightness", "255");
        fibaro:call(367, "setR", "255");
        fibaro:call(367, "setG", "234");
        fibaro:call(398, "secure");
        fibaro:call(350, "turnOff");
    end
end

Share this post


Link to post
Share on other sites

Off topic veloce... Vedo che nella descrizione hai Velux.. Che tipo? Le hai integrate in fibaro?

Share this post


Link to post
Share on other sites
2 ore fa, Dvittorio ha scritto:

eccola la scena, devi mettere gli id dei tuoi smartphone 

fammi sapere

 

--[[
%% properties
%% weather
%% events
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
local garage = tonumber(fibaro:getValue(364, 'value'));
local PhoneID = {xx, yy};                   -- Array ID Phone (cambiare con i gli id degli smartphone su fibaro)
if (
 ( false )
or
startSource["type"] == "other"
)
then
    if garage == 1 then  -- garage aperto
        for x in next, PhoneID do
            fibaro:call(PhoneID[x], "sendPush", "Attenzione porta garage Aperta"); -- Push phone
        end
    else                 -- garage chiuso            
        fibaro:call(420, "secure");
        fibaro:call(50, "turnOff");
        fibaro:call(36, "turnOff");
        fibaro:call(46, "turnOff");
        fibaro:call(164, "turnOn");
        fibaro:call(254, "turnOn");
        fibaro:call(367, "setBrightness", "255");
        fibaro:call(367, "setR", "255");
        fibaro:call(367, "setG", "234");
        fibaro:call(398, "secure");
        fibaro:call(350, "turnOff");
    end
end

@Vincent hai provato la scena?

Share this post


Link to post
Share on other sites

forse sbaglio qualcosa

mi da errore nella linea 18

Please login or register to see this attachment.

Share this post


Link to post
Share on other sites

Togli gli apici e metti le parentesi graffe nella definizione del PhoneId
Se la notifica ti serve per un solo smartphone possiamo togliere il ciclo per l'invio multiplo.

Inviato dal mio LM-G710 utilizzando Tapatalk

Share this post


Link to post
Share on other sites
16 minuti fa, Vincent ha scritto:

Funziona!!!

si, mi occorre solo per uno smartphone 

grz

Perfetto.

se hai bisogno solo di uno smartphone puoi semplificare così:

 

--[[
%% properties
%% weather
%% events
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
local garage = tonumber(fibaro:getValue(364, 'value'));
if (
 ( false )
or
startSource["type"] == "other"
)
then
    if garage == 1 then  -- garage aperto
            fibaro:call(197, "sendPush", "Attenzione porta garage Aperta"); -- Push phone
    else                 -- garage chiuso            
        fibaro:call(420, "secure");
        fibaro:call(50, "turnOff");
        fibaro:call(36, "turnOff");
        fibaro:call(46, "turnOff");
        fibaro:call(164, "turnOn");
        fibaro:call(254, "turnOn");
        fibaro:call(367, "setBrightness", "255");
        fibaro:call(367, "setR", "255");
        fibaro:call(367, "setG", "234");
        fibaro:call(398, "secure");
        fibaro:call(350, "turnOff");
    end
end

 

altrimenti la puoi lasciare come è adesso, magari un giorno ti serve la notifica anche su un secondo smartphone

Ciao

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×