Aller au contenu

0 > 21 ?


retrack

Messages recommandés

Bonjour,

 

Sur HCL, j'ai créé : 

 

- une variable PRESENCE comme expliqué ici http://www.domotique-fibaro.fr/index.php/topic/3166-virtual-devices-variables/
Elle prend soit la valeur HOME (je suis chez moi) soit AWAY (je suis parti)

 

- une variable JOUR_NUIT piloté par 2 scènes (au lever du soleil = JOUR et au coucher = NUIT)

 

- une variable HEURE avec 24 scènes qui à  chaque heure lui donne la valeur de l'heure (0,1,2,3.... jusqu'à  23)

 

NB : toutes mes scènes sont toujours cochées "Lancé au démarrage du Home Center"

 

J'ai ensuite créé la scene ci-dessous afin de fermer mes volets au coucher du soleil.

Mais je me suis dit si jamais ma HCL est éteinte au moment du coucher du soleil alors la variable JOUR_NUIT va rester sur JOUR et mes volets ne se fermeront jamais.

Alors j'ai ajouté une condition;

soit les volets se ferment quand la variable JOUR_NUIT passe à  NUIT,

soit au pire quand la variable HEURE est supérieure à  21. Ce qui veut qu'au pire les volets se ferme à  22 heures.

 

Voici le code :

PRESENCE == HOME

et

JOUR_NUIT == NUIT

ou

HEURE > 21

alors

Volet = Fermer

et

Envoyer notification par mail

 

J'ai désactivé la scene qui fait passer JOUR_NUIT à  NUIT et à  22 heures mes volets se sont fermés, et j'ai reçu la notification. Impeccable

 

La logique veut que à  23 heures ( HEURE > 21) la scène se soit relancée (sans conséquence puisque les volets étaient déjà  fermés) et que j'ai reçu la notification.

 

Par contre la scene s'est aussi relancée à  0 h, 1h, 2h , 3h , 4h , 5h, 6h ... et comme je me lève à  6 heures quand j'ai vu ça j'ai mis à  jour la scene et retiré la condition HEURE > 21.

 

J'avoue que y'a un truc qui m'échappe : comment 0, 1, 2, 3, 4, 5, 6 peuvent être > 21 ???

 

Lien vers le commentaire
Partager sur d’autres sites

J'y avais pensé exactement comme tu dis en mettant
VOLET <> Fermé mais y'a pas <> dans le choix des opérateurs

peut être tu peux m'expliquer ?

et puis cela ne résout pas le problème de logique : comment une scene peut s'executer avec une condition fausse d'un point de vue logique (0 > 21 ???)

Lien vers le commentaire
Partager sur d’autres sites

je vois un autre problème logique dans ta scène : les ET ont priorité sur les OU => comment elle pourrait fonctionner ?

je ferais ce qui suit

SI PRESENCE == HOME ET JOUR_NUIT == NUIT ET Volet > 1 OU PRESENCE == HOME ET HEURE > 21 ET Volet > 1

ALORS ...

Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

Je reviens à  mon petit problème

 

Comment fais tu sur HCL pour faire le test Volet > 1

 

Les opérateurs disponibles sont : ==, <, >, <= et >=

Et les valeurs possibles : ON, OFF, Ouvert, Fermé

 

J'ai tenté Volet > Fermé, le volet se ferme bien à  22, mais la commande se relance à  23... et je vais voir cette nuit
Donc le test n'est pas bon. Je sèche

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...