Forum eedomus
https://forum.eedomus.com/

EST DEVIENT MAINTENANT..logique criteres pour les nouveaux
https://forum.eedomus.com/viewtopic.php?f=18&t=5073
Page 1 sur 2  Suivant »
Auteur:  influman [ 18 Jan 2017 16:26 ]
Sujet du message:  EST DEVIENT MAINTENANT..logique criteres pour les nouveaux

Pour les nouveaux arrivants, voici un point sur les opérateurs logiques à utiliser dans vos règles Eedomus :

EST.... : l'état est-il à cette valeur ?
en gros, si tu testes : volet "EST égal à" ouvert, alors le critère est valable en continue tant que ton volet est ouvert, sans notion de timing. Si tu le mets comme seul critère d'une règle, la règle va boucler tant que le volet est ouvert.

EST MAINTENANT.... : l'état vient-il de prendre cette valeur ?
si tu as une télécommande zwave, la valeur peut être précédemment à "bouton 1" (valeur du dernier appui). Le test "télécommande EST égal à bouton 1" est donc vérifié tant qu'on n'appuie pas sur un autre bouton.
Si tu appuies sur le bouton 1 encore une fois, cela valide le critère EST MAINTENANT égale à "bouton 1". Cela teste la valeur comme un EST, mais avec une notion de timing en plus : la valeur vient juste d'être positionnée. Le critère déclenche donc la règle une seule fois, dès l'appui du bouton.

DEVIENT MAINTENANT.... : l'état vient-il de prendre une nouvelle valeur ?
comme un EST MAINTENANT, mais seulement si la valeur précédente était différente.
Si j'appuie une nouvelle fois sur le bouton 1 de la télécommande, le DEVIENT MAINTENANT n'est pas vérifié, il faudrait appuyer sur le bouton 2 avant, puis le bouton 1.
Quand on teste un périphérique qui ne peut que changer de valeur (interrupteur on/off), on privilégie donc le "DEVIENT MAINTENANT" comme critère de déclenchement.

N'A PAS CHANGE DEPUIS : nécessite de positionner obligatoirement un critère horaire. Par exemple, à 14h, si détecteur EST égal à absent ET détecteur N'A PAS CHANGE depuis 12h, c'est qu'il n'y a personne à la maison depuis ce matin.

DEVIENT : mon avis, ne pas l'utiliser. Le concept m'échappe.

ETAIT : permet de rajouter un critère sur la valeur précédente d'un périphérique.
"Si jour ETAIT férié alors..." doit donner la même chose que "Si jour_précédent EST férié alors.."


Dans une règle donc, on se pose la question de :
- quelle(s) valeur(s) de périphérique doit avoir changée pour déclencher ma règle une seule fois : DEVIENT MAINTENANT
- quelle(s) valeur(s) de périphérique complémentaire doit être déjà positionnée comme pré-requis à mon déclenchement : EST

Exemple :
Si température DEVIENT MAINTENANT < 0°C
ET soleil EST couché
ET volet EST ouvert
ALORS fermer le volet


LES SOURCES

En fin de ligne de critères, le dernier champ indique la "SOURCE" de valorisation de votre critères.
Cela permet de prendre en compte un critère si et seulement s'il vient de la source précisée.
Exemple :
Si Portail DEVIENT MAINTENANT égal à Ouvert, source PORTAIL MOBILE
Alors Message TTS dans la maison : Ouverture Portail

Le message vocal ne sera lu que si l'ouverture du portail a été déclenchée depuis l'application mobile eedomus d'un smartphone. Si l'ouverture est commandée depuis la maison (source = PORTAIL ou autre), il n'y aura donc pas de message. L'usage est clair ici : pas besoin de message vocal si je l'ouvre moi-même depuis la maison , par contre je veux savoir si qqun d'autre arrive quand je suis dans la maison

LES OPERATEURS OU/ET

attention, ils sont testés dans l'ordre de haut en bas, il n'y a pas de priorité de l'un par rapport à l'autre. Pour comprendre par l'erreur :
Si je veux tester logiquement "(A ou B) ET (C ou D)", la règle ne sera pas :
A OU B ET C OU D
cette dernière va être testée séquentiellement de la manière suivante :
A OU B d'abord
(A OU B) ET C ensuite, puis
((A OU B) ET C) OU D
ce qui veut dire là que la règle sera toujours vraie dès que D et vrai, quels que soient les autres critères, ce qui n'est pas du tout le cas dans "(A ou B) ET (C ou D)" souhaité initialement.

la documentation officielle : http://doc.eedomus.com/view/Exemples_Crit%C3%A8res
Auteur:  Kitor [ 18 Jan 2017 16:30 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

Merci influman :D Une bonne leçon de règles
Pour la règle 'n'a pas changer' je l'utilise souvent, exemple pour mettre le chauffage en mode eco à partir d'une certaine heure quand je ne suis plus dans une pièce (pas de mouvement) depuis plus de 30 Mn
Auteur:  stef31 [ 18 Jan 2017 16:43 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

Je me demandais quel était ce post avec un titre tout en majuscule comme s'il était arrivé quelque chose de grave. :D

Finalement, c'est un super post qui n'est pas utile qu'aux nouveaux. Je trouve les explications très limpides avec des exemples sympas.

Merci Influman. :)
Auteur:  rover820i [ 18 Jan 2017 16:45 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

Et la question piège :

Si je veux tester logiquement "(A ou B) ET (C ou D)", la règle ne sera pas :
A OU B ET C OU D


Que sera alors la règle ? :mrgreen:
Auteur:  influman [ 18 Jan 2017 16:52 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

rover820i a écrit:Et la question piège :

Si je veux tester logiquement "(A ou B) ET (C ou D)", la règle ne sera pas :
A OU B ET C OU D


Que sera alors la règle ? :mrgreen:


Si tu dois te retrouver à coder réellement cette formule en une seule règle, il faut à mon sens revoir la logique domotique de ton cerveau chez toi :) car c'est inmaintenable :)
Dans les faits, c'est nécessaire, et il vaut de toute façon mieux, passer par des états intermédiaires et donc plusieurs règles.
Auteur:  rover820i [ 18 Jan 2017 17:08 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

influman a écrit:
rover820i a écrit:Et la question piège :
Si tu dois te retrouver à coder réellement cette formule en une seule règle, il faut à mon sens revoir la logique domotique de ton cerveau chez toi :) car c'est inmaintenable :)
Dans les faits, c'est nécessaire, et il vaut de toute façon mieux, passer par des états intermédiaires et donc plusieurs règles.

Si tu savais le bordel que c'est dans mon cerveau :mrgreen:

C'était une blagounette :mrgreen:
Auteur:  influman [ 18 Jan 2017 17:12 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...POINT DE LOGIQUE POUR LES NOUVE

rover820i a écrit:
influman a écrit:
rover820i a écrit:Et la question piège :
Si tu dois te retrouver à coder réellement cette formule en une seule règle, il faut à mon sens revoir la logique domotique de ton cerveau chez toi :) car c'est inmaintenable :)
Dans les faits, c'est nécessaire, et il vaut de toute façon mieux, passer par des états intermédiaires et donc plusieurs règles.

Si tu savais le bordel que c'est dans mon cerveau :mrgreen:

C'était une blagounette :mrgreen:

i knew, mais il fallait de toute façon répondre à cette question :)
Auteur:  Patskins [ 18 Jan 2017 17:26 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Bonjour,

D'après moi le critère DEVIENT est à utiliser lorsque dans la règle un horaire a été défini (dans ce cas, le DEVIENT MAINTENANT ne peut pas fonctionner), si on reprend le cas des volets:
Je ne veux vérifier que les volets se sont fermés que le soir à 18h00,je mets un critère horaire à "Tous les jours", "18h" et "0 minutes". et Si volets DEVIENT fermé, ALORS ; si à cette heure là les volets sont fermés alors qu'ils étaient ouverts auparavant, le critère devient vrai.
La différence avec EST est que la condition ne boucle pas et pour DEVIENT MAINTENANT est que l'on tient compte d'un horaire pour vérifier un changement d'état. Par contre, je ne vois pas trop la différence avec EST MAINTENANT :P

D'un autre côté, je me plante peut-être complétement, mais avec cette interprétation, j'arrive à créer des règles qui tiennent la route
Auteur:  influman [ 18 Jan 2017 17:29 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Patskins a écrit:Bonjour,

D'après moi le critère DEVIENT est à utiliser lorsque dans la règle un horaire a été défini (dans ce cas, le DEVIENT MAINTENANT ne peut pas fonctionner), si on reprend le cas des volets:
Je ne veux vérifier que les volets se sont fermés que le soir à 18h00,je mets un critère horaire à "Tous les jours", "18h" et "0 minutes". et Si volets DEVIENT fermé, ALORS ; si à cette heure là les volets sont fermés alors qu'ils étaient ouverts auparavant, le critère devient vrai.
La différence avec EST est que la condition ne boucle pas et pour DEVIENT MAINTENANT est que l'on tient compte d'un horaire pour vérifier un changement d'état. Par contre, je ne vois pas trop la différence avec EST MAINTENANT :P

D'un autre côté, je me plante peut-être complétement, mais avec cette interprétation, j'arrive à créer des règles qui tiennent la route


Avec un critère horaire, la règle ne boucle pas à mon sens, elle s'exécute une seule fois au moment de l'horaire. C'est l'horaire le premier déclencheur, c'est équivalent au test : L'heure DEVIENT MAINTENANT égal à 18h00.
Donc, rajouter le critère VOLET EST FERME, devrait fonctionner à mon sens.
Je peux me tromper...

Je me dis qu'à partir du moment où on peut le faire avec d'autres opérateurs, pourquoi se rajouter le DEVIENT à l'esprit.
Auteur:  Reigua [ 03 Fév 2017 19:51 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Bonjour

Je débute dans la programmation et les macros et je ne parviens pas à comprendre pourquoi cette petite programmation ne fonctionne pas comme je le souhaite.

Capture.PNG
capture
Capture.PNG (12.04 Kio) Consulté 23694 fois


Un détail, une subtilité m'échappe sans doute mais laquelle :mrgreen:

Bref, si vous pouviez m'aider, ce serait super ;)

Reigua
Auteur:  latoupie [ 03 Fév 2017 21:08 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

influman a écrit:Pour les nouveaux arrivants, voici un point sur les opérateurs logiques à utiliser dans vos règles Eedomus :

EST.... : l'état est-il à cette valeur ?
en gros, si tu testes : volet "EST égal à" ouvert, alors le critère est valable en continue tant que ton volet est ouvert, sans notion de timing. Si tu le mets comme seul critère d'une règle, la règle va boucler tant que le volet est ouvert.

EST MAINTENANT.... : l'état vient-il de prendre cette valeur ?
si tu as une télécommande zwave, la valeur peut être précédemment à "bouton 1" (valeur du dernier appui). Le test "télécommande EST égal à bouton 1" est donc vérifié tant qu'on n'appuie pas sur un autre bouton.
Si tu appuies sur le bouton 1 encore une fois, cela valide le critère EST MAINTENANT égale à "bouton 1". Cela teste la valeur comme un EST, mais avec une notion de timing en plus : la valeur vient juste d'être positionnée. Le critère déclenche donc la règle une seule fois, dès l'appui du bouton.

DEVIENT MAINTENANT.... : l'état vient-il de prendre une nouvelle valeur ?
comme un EST MAINTENANT, mais seulement si la valeur précédente était différente.
Si j'appuie une nouvelle fois sur le bouton 1 de la télécommande, le DEVIENT MAINTENANT n'est pas vérifié, il faudrait appuyer sur le bouton 2 avant, puis le bouton 1.
Quand on teste un périphérique qui ne peut que changer de valeur (interrupteur on/off), on privilégie donc le "DEVIENT MAINTENANT" comme critère de déclenchement.

N'A PAS CHANGE DEPUIS : nécessite de positionner obligatoirement un critère horaire. Par exemple, à 14h, si détecteur EST égal à absent ET détecteur N'A PAS CHANGE depuis 12h, c'est qu'il n'y a personne à la maison depuis ce matin.

DEVIENT : mon avis, ne pas l'utiliser. Le concept m'échappe.

ETAIT : permet de rajouter un critère sur la valeur précédente d'un périphérique.
"Si jour ETAIT férié alors..." doit donner la même chose que "Si jour_précédent EST férié alors.."


Dans une règle donc, on se pose la question de :
- quelle(s) valeur(s) de périphérique doit avoir changée pour déclencher ma règle une seule fois : DEVIENT MAINTENANT
- quelle(s) valeur(s) de périphérique complémentaire doit être déjà positionnée comme pré-requis à mon déclenchement : EST

Exemple :
Si température DEVIENT MAINTENANT < 0°C
ET soleil EST couché
ET volet EST ouvert
ALORS fermer le volet


LES SOURCES

En fin de ligne de critères, le dernier champ indique la "SOURCE" de valorisation de votre critères.
Cela permet de prendre en compte un critère si et seulement s'il vient de la source précisée.
Exemple :
Si Portail DEVIENT MAINTENANT égal à Ouvert, source PORTAIL MOBILE
Alors Message TTS dans la maison : Ouverture Portail

Le message vocal ne sera lu que si l'ouverture du portail a été déclenchée depuis l'application mobile eedomus d'un smartphone. Si l'ouverture est commandée depuis la maison (source = PORTAIL ou autre), il n'y aura donc pas de message. L'usage est clair ici : pas besoin de message vocal si je l'ouvre moi-même depuis la maison , par contre je veux savoir si qqun d'autre arrive quand je suis dans la maison

LES OPERATEURS OU/ET

attention, ils sont testés dans l'ordre de haut en bas, il n'y a pas de priorité de l'un par rapport à l'autre. Pour comprendre par l'erreur :
Si je veux tester logiquement "(A ou B) ET (C ou D)", la règle ne sera pas :
A OU B ET C OU D
cette dernière va être testée séquentiellement de la manière suivante :
A OU B d'abord
(A OU B) ET C ensuite, puis
((A OU B) ET C) OU D
ce qui veut dire là que la règle sera toujours vraie dès que D et vrai, quels que soient les autres critères, ce qui n'est pas du tout le cas dans "(A ou B) ET (C ou D)" souhaité initialement.

la documentation officielle : http://doc.eedomus.com/view/Exemples_Crit%C3%A8res

Nickel ce petit point... Il devrait être épinglé dans une nouvelle rubrique "tuto" ou "le dico de la domo"

Envoyé de mon SM-G935F en utilisant Tapatalk
Auteur:  influman [ 04 Fév 2017 02:07 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Reigua a écrit:Bonjour

Je débute dans la programmation et les macros et je ne parviens pas à comprendre pourquoi cette petite programmation ne fonctionne pas comme je le souhaite.

Capture.PNG


Un détail, une subtilité m'échappe sans doute mais laquelle :mrgreen:

Bref, si vous pouviez m'aider, ce serait super ;)

Reigua


ta règle indique que le soleil doit juste se lever et que dans le même moment un mouvement doit être détecté : il y a peu de chance que ces deux événements se fassent exactement en même temps :D

Je pense que tu veux que (note bien les opérateurs) :
Si le soleil EST égal à levé (en gros la journée quoi)
ET que le volet EST égal à fermé
ET que le détecteur DEVIENT MAINTENANT égal à mouvement
Alors ouvrir le volet

Attention, si tu fermes le volet pendant la journée ensuite, volontairement, ou même à moitié, un seul mouvement et hop, il se réouvre.
Si tu veux pouvoir éviter cela, il y a une technique qui consiste à ne faire l'action qu'une seule fois, avec l'utilisation d'un état complémentaire (à créer) et une autre règle complémentaire :
- Quand soleil devient maintenant couché, alors mettre cet Etat = "0"
Dans la première règle tu rajoutes :
- "et ETAT = 0" dans les critères
- ETAT = 1 dans les actions

Il faudra alors attendre le jour suivant pour que la règle se réactive.
Auteur:  Reigua [ 07 Fév 2017 09:23 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Bonjour Influman

Merci pour tes explications.

J'ai modifié la règle comme tu le préconise, je verrai bien ;)

Capture.JPG
Capture.JPG (35.79 Kio) Consulté 23644 fois


Pour le déclenchement de la règle, je vais voir si le paramètre "autoriser le réenclenchement" peut m'aider à "limiter" toute commande non voulue du volet (j'ai indiqué "APRES 12 HEURES").

@+
Reigua
Auteur:  enr37 [ 11 Mars 2017 20:51 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

@INFLUMAN

voici comment j'utilise par exemple le DEVIENT :

je ferme mes volets par rapport aux lux relevés. La règle est SI lux DEVIENT < 4 ALORS fermer centralisation volets. Ce paramètre est important a comprendre et a ne pas confondre avec EST. Car si je mets EST, le matin, volets fermés, la valeur est a 0 lux et donc si on ouvre les volets, ceux-ci se refermeront 10 cm après avoir commencé à s'ouvrir ;)
Auteur:  influman [ 12 Mars 2017 23:48 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

enr37 a écrit:@INFLUMAN

voici comment j'utilise par exemple le DEVIENT :

je ferme mes volets par rapport aux lux relevés. La règle est SI lux DEVIENT < 4 ALORS fermer centralisation volets. Ce paramètre est important a comprendre et a ne pas confondre avec EST. Car si je mets EST, le matin, volets fermés, la valeur est a 0 lux et donc si on ouvre les volets, ceux-ci se refermeront 10 cm après avoir commencé à s'ouvrir ;)


ok, mais ça marcherait aussi avec DEVIENT MAINTENANT dans ce cas.
On peut encore se passer du "DEVIENT" seul ici.
Auteur:  mirandole [ 01 Avr 2017 21:32 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Il me semble que les 'devient' sont des déclencheurs par opposition aux 'est' qui demande d'être précédé d'un autre déclencheur de type detection ou bien horaire.

Donc on ne peut pas controller uniquement avec une suite de 'est' sauf en disant par exemple de le déclencher toutes les minutes, ce qui très lourd pour le processeur

Donc j'écris toujours mes scénario en commençant par un déclencheur que je fais suivre d'autres conditions 'est'

Par contre comme dit plus haut 2 déclencheurs ne peuvent se suivre sauf avec un 'ou'.

Attention aussi aux plages horaires, personnellement j'enclenche et déclenche une variable au debut et a la fin de la période.

Juste mon avis qui fonctionne très bien chez moi
Auteur:  ctve [ 03 Avr 2017 10:40 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Vu les problèmes que nous avons tous avec la façon dont la box gère les "est", "est maintenant", "devient" et "devient maintenant", il serait peut-être bien que le support nous explique une bonne fois pour toutes comment la box gère ces quatre conditions (les autres ne semblant pas vraiment poser de problèmes de compréhension).

En effet, toutes les explications pleines de bonne volonté que nous donnons tous sont issues de ce que nous avons observé du comportement de nos propres règles, ce qui ne garantit pas que nous ayons analysé toutes les situations possibles.

Alors si quelqu'un du support passe par là, une petite précision, via ce forum ou, mieux, via une correction de l'aide en ligne de la box, serait la bienvenue ;)
Auteur:  influman [ 03 Avr 2017 16:25 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

mirandole a écrit:Il me semble que les 'devient' sont des déclencheurs par opposition aux 'est' qui demande d'être précédé d'un autre déclencheur de type detection ou bien horaire.

Donc on ne peut pas controller uniquement avec une suite de 'est' sauf en disant par exemple de le déclencher toutes les minutes, ce qui très lourd pour le processeur

Donc j'écris toujours mes scénario en commençant par un déclencheur que je fais suivre d'autres conditions 'est'

Par contre comme dit plus haut 2 déclencheurs ne peuvent se suivre sauf avec un 'ou'.

Attention aussi aux plages horaires, personnellement j'enclenche et déclenche une variable au debut et a la fin de la période.

Juste mon avis qui fonctionne très bien chez moi



Oui, comme je l'explique dans le message initial, la logique de base est bien :
- D'abord le déclencheur : forcément un DEVIENT MAINTENANT ou un critère horaire (pareil qu'un DEVIENT MAINTENANT sur l'horloge). Il peut y avoir plusieurs déclencheurs différents pour la même action au final, avec des OU donc entre les déclencheurs.

- Ensuite les prérequis : une suite de "EST" nécessaires (avec des ET donc, car avec des OU, on fausse le déclencheur de la règle avec la logique eedomus de lecture des opérateurs)

Mais je ne vois toujours pas le besoin du "DEVIENT" sans le "MAINTENANT", car par définition, quelque chose qui serait un déclencheur de règle par changement d'état, doit justement déclencher "maintenant", au moment du changement, et pas dans deux heures....

Effectivement, un retour du support ou un exemple dans l'aide en ligne permettrait de compléter cette question sur le "DEVIENT" seul.
Auteur:  milillicuti [ 02 Mai 2017 08:17 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Merci pour toutes ces précisions !

J'essaie de faire fonctionner une règle avec le critère était et point de succès.

- Si luminosité devient maintenant supérieure à 30lux
ET que luminosité était inférieure à 30lux

ALORS éteindre la lumière.

Je ne comprends pas où est l'erreur :mrgreen: :mrgreen:

Si certains ont une idée :idea: , merci !
Auteur:  aurique [ 02 Mai 2017 08:20 ]
Sujet du message:  Re: EST DEVIENT MAINTENANT...Point de logique pour les nouve

Bonjour ,

Dans ma logique, si Luminosité devient supérieure à 30 Lux, ça veut dire qu'auparavant , elle était inférieure à 30 lux .... donc pour moi la 2eme condition est non nécessaire et surtout perturbatrice.
Page 1 sur 2 Le fuseau horaire est UTC+1 heure