Aller au contenu
Romain80

Verifier Et Éteindre Une Lampe Extérieure Si Allumée En Journée.

Recommended Posts

Salut Domodial. 

 

Si je comprend bien tu veux pouvoir faire par exemple : heure de coucher de soleil + XX Min, c'est bien ça ?

Partager ce message


Lien à poster
Partager sur d’autres sites

De toute façon, cette heure de levée ou couchée du soleil, c'est bien sans l’être, vous avez surement des volets roulant qui ce faire au coché du soleil, et bien très souvent, on y voit encore très bien et les volets ce ferment, alors on les ré-ouvre ou on allume la lumière, pas super économique.

Ou il se ferme pas alors que on voit plus rien, alors on allume la lumière et les voisin profite de tout ce qui ce passe chez vous en attendant qu'il se ferment.(généralement, on les ferment manuellement dans ce cas là ).

Et des fois, c'est calé :P 

vivement que les Å“ils de saumon soit dispo pour régler tous ça ;)  

Partager ce message


Lien à poster
Partager sur d’autres sites

Alors, me concernant, la valeur du couché de soleil me parviens parfaitement. 

 

Concernant mes volets, je l' adapte. 

 

Peut être que cela servira a domodial.

 

Il faut en fait ajouter une donnée qui ajoutera ou enlèvera du temps par rapport a l' heure de coucher de soleil recuprée par la box. 

 

Dans l'exemple la c'est 59 min APRES le couché de soleil ( j'ai mis 59 pour ne pas confondre avec l' autre 60)

os.date("%H:%M", os.time()-59*60) == fibaro:getValue(1, "sunsetHour")

Pour faire 59 min AVANT le couché de soleil, on aura : 

os.date("%H:%M", os.time()+59*60) == fibaro:getValue(1, "sunsetHour")

Donc pour notre code d'extinction de lumière, il faudra bidouiller un peu car la actuellement il prend en compte une variable globale. 

 

Alors soit on dégage la variable globale pour le test, soit on modifie le code de la variable globale (après a voir si ça ne perturbe pas les autres scenarios liés a cette variable ...)

 

en espérant avoir aidé

Partager ce message


Lien à poster
Partager sur d’autres sites

donc, je pensé utiliser un capteur de luminosité, ça devrait le faire?

Carrément, sauf que je n'en ai pas :(

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut Domodial. 

 

Si je comprend bien tu veux pouvoir faire par exemple : heure de coucher de soleil + XX Min, c'est bien ça ?

oui c'est bien ça, histoire de compenser si yahoo me sort un jour/nuit pas forcément comme je le veux.

Partager ce message


Lien à poster
Partager sur d’autres sites

Alors, me concernant, la valeur du couché de soleil me parviens parfaitement. 

 

Concernant mes volets, je l' adapte. 

 

Peut être que cela servira a domodial.

 

Il faut en fait ajouter une donnée qui ajoutera ou enlèvera du temps par rapport a l' heure de coucher de soleil recuprée par la box. 

 

Dans l'exemple la c'est 59 min APRES le couché de soleil ( j'ai mis 59 pour ne pas confondre avec l' autre 60)

os.date("%H:%M", os.time()-59*60) == fibaro:getValue(1, "sunsetHour")

Pour faire 59 min AVANT le couché de soleil, on aura : 

os.date("%H:%M", os.time()+59*60) == fibaro:getValue(1, "sunsetHour")

Donc pour notre code d'extinction de lumière, il faudra bidouiller un peu car la actuellement il prend en compte une variable globale. 

 

Alors soit on dégage la variable globale pour le test, soit on modifie le code de la variable globale (après a voir si ça ne perturbe pas les autres scenarios liés a cette variable ...)

 

en espérant avoir aidé

oui c'est bien ça, je vire la variable globale et j'ajoute ce code.

A tester ce soir.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

 

Non, je vais essayer dimanche je pense :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Je vais tester, mais mon code est comme ça avec une variable globale.

 

if (fibaro:getGlobal("Jour_Nuit") == "Jour") then
    for i = 1, #lights do
        if (tonumber(fibaro:getValue(lights[i], "value")) > 0) then

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut domodial,

 

Donc la si je recapitule, tu veux que le script, s'arrête 1h avant le couché de soleil. Tu aimerais que tes lumières ne s'éteignent plus automatiquement 1h avant ? 

 

Si c'est bien ça, je te propose d'essayer ça : 

if (fibaro:getGlobal("Jour_Nuit") == "Jour" and
os.date("%H:%M", os.time()+59*60) <= fibaro:getValue(1, "sunsetHour")
) then
    for i = 1, #lights do
        if (tonumber(fibaro:getValue(lights[i], "value")) > 0) then

Tu me diras ce que tu as comme résultats. Normalement le script devrait tester si ta variable est sur jour et si l'heure est inférieur a l' heure de sunset - 59 min.

 

au pire tu peux mettre un debug dans ton if juste pour voir deja si tu rentres dedans en journée (extinction auto) et un debug après ton if pour voir quand la condition n'est pas respectée soit quand ta globale est sur Nuit ou quand Jour et 59 min avant couché de soleil.

 

​Je sais pas si ce que je dis est très clair :P

 

 

 

 

Voila ++

Partager ce message


Lien à poster
Partager sur d’autres sites

cette méthode compare une heure "décalée" avec sunsetHour.

comment faire pour "décaler" sunsetHour

 

ex : sunDown = sunsetHour + 30*60

Partager ce message


Lien à poster
Partager sur d’autres sites

j'ai trouvé :D

function round(num, dec)
local mult = 10^(dec or 0)
return math.floor(num * mult + 0.5) / mult
end
-------------------------------------------------------------------------------------------------------------
local sunsetHour = fibaro:getValue(1, "sunsetHour");
local sunsetMin = tonumber(string.sub(fibaro:getValue(1, "sunsetHour"), 1, 2)) * 60 + tonumber(string.sub(fibaro:getValue(1, "sunsetHour"), 4)) + 60;
local sunsetDelayH = round(sunsetMin/60 - 0.5,0);
local sunsetDelayM = sunsetMin - sunsetDelayH*60;
local sunsetDelay = string.format("%02d", sunsetDelayH) .. ":" .. string.format("%02d", sunsetDelayM);

ici, l'heure est décalé de 60 minutes par rapport àl'heure de coucher du soleil ("+60" ligne 8)

Je suis sur qu'on peut faire plus simple, mais ça a le mérite de marcher

Partager ce message


Lien à poster
Partager sur d’autres sites

si tu utilises un motion sensor avec le LUX et tu dis au dessus de 150LUX tout éteint et au dessous de 150 automatique. ou en variable 150<JOUR / 150>NUIT.

 

par contre, j'ai un problème de clignotement (1min) a cause du motion sensor qui me détecte et éteint tout après 30sec alors que j'ai allumer par l'interrupteur.

 

Il faut que je modifie ma scène pour dire quand l'interrupteur (jardin) est ON alors (ou coupe la scène d’association) ou (sensor détecte et l' interrupteur jardin déjà  sur ON alors pas de scène.)

 

y a t-il des experiences sur l'association du motion sensor ?

Partager ce message


Lien à poster
Partager sur d’autres sites

De mémoire il y a un paramètre pour lui dire de ne pas couper si il est déjàen on.

Par contre toi tu passes par une scène au niveau du module de la lampe c'est ça et le motion ne contrôle pas la lampe en direct ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello,

 

sympa effectivement, cependant vous mettez quel genre de module zwave sur vos lampes ext ?

 

en sachant qu'elle soit protéger par la pluie et l'humidité non ?

 

Merci de l'info, j'en ai deux a domotiser :)

 

Alain

Partager ce message


Lien à poster
Partager sur d’autres sites

Des Dimmers FGD-211 ça va bien en extérieur, il faut "juste" les mettre à  l’abri de la pluie, donc boite de dérivation étanche IP66 ou équivalent.

Perso j'en ai un dans une boite accrochée à  un mur derrière une haie, et l'autre dans le coffret du moteur du portail.

 

EDIT : bien que très utile, le script de la première page n'a plus beaucoup d'intérêt aujourd'hui, car on fait la même chose en 1 ligne avec GEA.

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci Lazer de ta réponse :)

 

Par contre qu'est que tu veux dire par :

 

-----

EDIT : bien que très utile, le script de la première page n'a plus beaucoup d'intérêt aujourd'hui, car on fait la même chose en 1 ligne avec GEA.

-----

 

J'ai vais commander deux modules du coup pour mes deux lampes ext.

Partager ce message


Lien à poster
Partager sur d’autres sites

GEA est un script qui a été créé par Steven et mis à  disposition de la communauté pour gérer quasiment tous les scénarios qu'on peut imaginer avec notre box.

Donc au lieu d'écrire des lignes de codes LUA, on n'a plus qu'à  écrire des lignes de configuration qui seront interprétées par GEA.

Cela simplifie grandement la gestion de nombreux scénarios domotiques sur nos box.

 

Je t'invite à  consulter les sujets suivants pour en savoir plus, il y a de nombreux exemples, comme celui permettant l'extinction automatique d'une lumière :

[Tuto HC2] Gea : Gestionnaire D'événements Automatique

Support Gea

Showroom Configs Gea

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci Lazer, ca l'air chaud lol tous ces codes :D

 

Comment tu intègres un LUA ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Les scripts LUA peuvent être intégrés dans un module virtuel ou dans une scène.

Il y a plein de tutos pour ça sur le forum, ici ce n'est pas l'endroit pour détailler.

 

Quant à  GEA, ce script LUA est à  copier/coller dans une scène.

Pour les scénarios basiques, GEA est vraiment simple, il suffit de bien lire le descriptif (syntaxe de la ligne de commande), et de regarder comment sont fait les nombreux exemples partagés.

Là  où GEA se complique, c'est pour les scénarios complexes. Mais dis toi que d'écrire la même chose en LUA est bien pire !

Si tu as des questions, le topic "Support GEA" est là  pour ça :)

 

Bon après tu peux aussi utiliser des scènes en mode Bloc, pour débuter c'est plus facile :) Mais tellement limité....

Partager ce message


Lien à poster
Partager sur d’autres sites

×