Aller au contenu

Messages recommandés

Posté(e)

@Steven


 


Au sujet de ma lampe de salon avec le détecteur de mouvement, ça ne fonctionne pas très bien.


 


La variable globale "SalonAllumer" devrait passer à  blanc au moins 300s (5mn) après l'extinction de la lampe. C'est le temps entre chaque remontée de luminosité.


Ainsi la règle avec la luminosité peut fonctionner.


La variable devrait mis à  "GEA" si la lampe est allumée avant ces 5min, car la valeur de luminosité remontée n'est plus fiable du à  l'éclairage de la lampe.


 


Qu'en penses-tu ?


Posté(e)

Je pense que cela à  du sens. Par contre depuis mon smartphone spécial "main de bébé" j'ai de la peine à  pondre le code. Peux-tu le faire ou on attend demain ? Ou tu as trop peur d'être encore privé de piscine ? 😉

Envoyé de mon GT-I9192 en utilisant Tapatalk

Posté(e)

@Steven,

 

Que penses-tu de ces règles ?

-- S'il y a une détection dans le salon et que la luminosité est inférieure à  75,
-- on retient que la luminosité n'est plus utilisable.
-- La prochaine règle allumera la lampe.
GEA.add(id["MOV_SALON"], -1, "", {{"Global", "SalonUseLum", "No"}, {"If", {{"Value-", id["LUM_SALON"], 75}}} })

-- S'il y a une détection dans le salon, on allume la lampe.
GEA.add(id["MOV_SALON"], -1, "", {{"turnOn", id["LAMPE_SALON"]}, {"If", {{"Global", "SalonUseLum", "No"}}} })

-- On éteint la lampe si elle est allumée depuis 10mn.
GEA.add(id["MOV_SALON"], 10*60, "", {{"Inverse"}, {"turnOff", id["LAMPE_SALON"]}})

-- Si la lampe est éteinte depuis 5mn et 30s, on indique que la luminosité est fiable maintenant.
-- Nota: La luminosité est remontée toutes les 5mn par le détecteur.
GEA.add(id["LAMPE_SALON"], 5*60+30, "", {{"Inverse"}, {"Global", "SalonUseLum", "Yes"}})

 

Posté(e)

En fait, le seul truc que me semble faux, n'est pas vraiment faux. Pendant tout le temps ou la lampe est allumée, chaque détection de mouvement va rallumer la lampe. Cela n'a pas d'impacte sauf si un jour tu met un trigger sur cette lampe.
 
Je rajouterais donc juste la condition {"Value-", id["LAMPE_SALON"], 1}  lampe>1=éteint pour ne pas allumer la lampe déjà  allumée. Ce qui donne

GEA.add(id["MOV_SALON"], -1, "", {{"turnOn", id["LAMPE_SALON"]}, {"If", {{"Global", "SalonUseLum", "No"},{"Value-", id["LAMPE_SALON"], 1}}} })

Sinon, tu peux essayer plus compliqué :

LUM_SALON et MOV_SALON en trigger

Une variable globale pour socker la luminosité du salon si la lampe est éteinte :

-- On stock la valeur de LUM_SALON à  chaqu'une de ses remontées si la lampe est éteinte
GEA.add({"Value+", id["LUM_SALON"], 0}, -1, "", {{"Global", "LumSalon", "#value#"},  {"If", {{"Value-", id["LAMPE_SALON"], 1}}}})

-- On allume la lumière sur détection de mouvement si la luminosité est trop faible et on augmente manuellement la LumSalon
GEA.add(id["MOV_SALON"], -1, "", {{"turnOn", id["LAMPE_SALON"]}, {"Global", "LumSalon", "999"}, {"If", {{"Global-", "LumSalon", 75}}}})

-- Extinction de la lampe si aucun mouvement pendant plus de 10mn. On met LumSalon à  0, il reprendra sa vrai valeur à  sa prochaine remontée puisque la lumière est éteinte. Pendant ce temps, étant à  0 la condition ci-dessus reste valable
GEA.add(id["MOV_SALON"], 10*60, "", {{"Inverse"}, {"turnOff", id["LAMPE_SALON"]}, {"Global", "LumSalon", "0"}})

Tordu comme code.

Posté(e)

Merci Steven.

 

Tu as raison: allumer la lampe quand elle est déjà  allumée n'est pas très propre.

 

Évidemment, s'il y a la java dans le salon du soir jusqu'à  midi, la lampe ne s’éteindra jamais. Mais c'est exceptionnel.

Du même genre, si on arrive dans le salon dans la journée et que les volets sont fermés, la lampe s'allumera si la luminosité est trop faible. Mais elle risque de ne pas s’éteindre tant qu'elle ne s'éteindra pas au moins 5mn et 30s pour la remontée de luminosité soit fiable.

Une solution est d'ajouter une condition sur la luminosité du salon qui ne peut être atteinte que si les volets sont ouverts.

 

Pour ton code tordu imaginatif, je pense qu'il faudrait stoker la luminosité uniquement si la lampe est éteinte depuis 5mn. Qu'en penses-tu ?

Posté(e)

"Pour ton code tordu imaginatif, je pense qu'il faudrait stoker la luminosité uniquement si la lampe est éteinte depuis 5mn. Qu'en penses-tu ?"

Non pas besoin car on est en instantané, c'est a dire que dès que ton capteur de luminosité envoi une donnée. Si elle est reçu alors que la lumière est allumée, on l'ignore, sinon, c'est que cette valeur est correcte.

Posté(e)

Si on reçoit la luminosité 2mn après l'extinction de la lampe, elle ne sera pas fiable car elle sera parasitée par la lampe.

Toutes les mesures faites après 5mn seront fiables.

Posté(e)

Le capteur prend la mesure à  un instant T et l'envoi à  la box. Il ne prend pas la mesure, attend 5 minutes puis l'envoi à  la box. A moins que je me trompe ?

Posté(e)

En effet, si on la prenait sur l'extinction de la lampe on aurait du attendre 5mn et quelques secondes de sécurité. Mais là, directement sur la luminosité, on devrait être bon.

Posté(e)

Version 3.60

  • [Nouveauté] Ajout de la condition {"Slider-", <id_vd>, <nom_slider>, <valeur>}
  • [Nouveauté] Ajout de la condition {"Slider+", <id_vd>, <nom_slider>, <valeur>}
  • [Nouveauté] Ajout de la condition {"Label", <id_vd>, <nom_label>, <contenu>}

 

Nouvelle version permettant d'utilisé les modules virtuels comme condition déclencheur

 

 

La mise à  jour est ICI

 

N'oubliez pas de sauver votre entête et à  partir de "A VOUS DE JOUER"

 

P.S. Désolé pour ceux qui viennent de se mettre à  jour avec la 3.51.

Posté(e)

Version 3.61


  • [Correction] Les options Label et Slider introduit dans la v1.70 ne fonctionnaient pas correctement

La mise à  jour est ICI


 


N'oubliez pas de sauver votre entête et à  partir de "A VOUS DE JOUER"


Posté(e)

Pour les utilisateurs de modules virtuels comme moi, voici une petite astuce qui va vous permettre de copie des valeurs entre différents modules virtuels
 
Exemple : un module 116 (netatmo), un module 106 (Co2 salon)
Je souhaite copier la valeur du slider sIntCo2 de netatmo dans le label lblCo2 de Co2 salon

GEA.add({"Slider+", 116, "sIntCo2", 0}, 30, "", {{"Label", 106, "lblCo2", "Le co2 est de #value# ppm"}, {"Repeat"}})

La valeur du slider sIntCo2 étant plus grande que 0, GEA stock la valeur de ce dernier dans #value#. Il lui suffit donc de lui dire de la remettre dans l'autre label.
 
Utiliser directement les sliders pour envoyé un push

GEA.add({"Slider+", 116, "sIntCo2", 1000}, 30, "Attention #value# ppm correspond à  un CO2 élevé, veuillez aéré.")
GEA.add({"Slider+", 116, "sExtPluie", 0}, 30, "Il pleut, il pleut bergère")
GEA.add({"Slider-", 116, "sExtPluieMois", 10}, 30, "Un mois sans pluie (#value#) .. tu arroses quand tu veux", {{"Dates","31/07","31/07"},{"Dates","31/08","31/08"}})
Posté(e)

Je dis des bêtises dans mon message précèdent.

 

La code ne fonctionne pas complètement.

 

Même si la luminosité est supérieure à  75, la valeur est 999 est inscrite dans LumSalon.

 

Je ne comprends pas  :(

Je cherche le pourquoi.

Posté(e)

En mode "écran pour bébé" pendant 2 heures 😑

Slider+... Si la valeur du slider est supérieur à  la valeur indiquée.

Slider-... Si la valeur du slider est inférieur à  la valeur indiquée.

Il y a aussi Value- Global-

Envoyé de mon GT-I9192 en utilisant Tapatalk

Posté(e)

Je dis des bêtises dans mon message précèdent.

La code ne fonctionne pas complètement.

Même si la luminosité est supérieure à75, la valeur est 999 est inscrite dans LumSalon.

Je ne comprends pas :(

Je cherche le pourquoi.

Regarde bien la 1ere ligne de mon code tordu, cela doit venir de là. Quand la lampe est éteint, c'est cette ligne qui s'exécutera.

Envoyé de mon GT-I9192 en utilisant Tapatalk

Posté(e)

V3.61 installé :60:

Steven tu pourrais partager ton VD pour la Netatmo sur la quelle je lorgne depuis un bout de temps? Tu as un pluvio aussi pour gérer l'arrosage non? Tu fais comment?

Posté(e)

C'est tout ICI Monsieur :)

 

J'ai pas de PHP donc je fais tourner un Script Google toutes les 5mn. Il va me chercher les infos de Netatmo et manipule les sliders du VD.

 

Pour l'arrosage, j'ai un autre VD qui utilise les données du pluviomètre Netatmo et les prévisions de pluie des 3 prochain jours (wuweather). Si il est prévu de pleuvoir fort, je ne fais rien. S'il est prévu de pleuvoir peu, et que le sol est sec, je prévoir un tout petit arrosage. Si rien n'est prévu, je fais un vrai arrosage.

Pour calculer tout cela, c'est mon VD pluie et il met à  jour une variable global.

 

L'électo-vanne est manipuler par GEA selon la valeur de la variable globale.

 

Je te laisse déjà  regarder le post mentionné en 1ere ligne, et si tu veux, demain, je te fais un vrai tuto avec NetAtmo + VD Pluie + GEA.

Posté(e)

Ah trop fort le Steven, bien joué ton truc, cela me fait de plus en plus baver sur mon clavier à  l'idée d'acheter un netatmo et de l'interfacer avec la HC2 / arrosage... Voila c'est malin maintenant va falloir que je change le PC a cause de la bave pufff :15:;)

 

Je veux bien un petit tuto mais bon c'est pas aux pièces. D'ailleurs sans vouloir abuser si tu pouvais indiquer comment faire avec un NAS pour le script cela serait top :60:

×
×
  • Créer...