Bonjour,
Comme déjà dit, il y a plein de façons différente pour arriver à quelque chose d’à peu près convenable.
Mais tout d’abord, un constat : pour allumer une lampe dans une pièce à vivre où il est important que la lumière ne s’éteigne pas alors qu’il y a quelqu’un, qu’il soit statique ou en mouvement (comme par exemple une cuisine, une salle de bain,…), les détecteurs de mouvement à base de capteur PIR (infra-rouge) ne sont pas les plus indiqués.
En effet, ils ont pour inconvénients majeurs :
- une détection de mouvement uniquement (par effet doppler) : donc plus de détection si la personne reste statique.
- un temps de réarmement qui peut être assez long (entre 60 et 90 secondes) : il n’y a donc pas de changement de l’état de détection de 1 à 0 pendant au moins toute cette période.
C’est pour ça que je préconiserai plutôt l’utilisation d’un détecteur de présence qui est bien plus indiqué, car :
- Il s’agit d’une détection par ondes millimétriques (radar), donc que la personne soit en mouvement ou reste statique, cela ne change rien, il y a une remontée de détection.
- Le temps de réarmement est relativement bref (de l’ordre de 15 secondes).
Et de plus, aujourd’hui on en trouve des pas trop chers et plutôt efficaces. Perso j’utilise des SonOff SNZB-06P pour une cuisine et WC.
Par contre pour des pièces où on ne stagne normalement pas (couloirs, porche, entrée…), un détecteur de mouvement peut suffire néanmoins.
Bon, ceci dit, pour le scénario, voilà comment j’ai résolu de mon côté pour gérer l’éclairage de l’entrée (mais ce n’est certainement pas la seule méthode…).
Pour allumer : je passe par un premier scénario.
Déclencheur : une détection de mouvement qui prend la valeur 1 (présence)
Scénario :
Je teste d’abord ces conditions (l’une OU l’autre) :
- S’il y a une présence à la maison (évite que le chat déclenche l’allumage si personne n’est sensé être là) ET la luminosité est inférieure à un certain seuil (jours de mauvais temps),
- L’heure à laquelle est déclenchée ce scénario est comprise entre le coucher de soleil - 30’ et le lever de soleil + 30’ (la nuit donc),
Si c’est vrai pour au moins une de ces deux conditions, j’allume la lumière.
Pour l’éteindre : j’utilise un autre scénario.
Déclencheur : une détection de mouvement qui prend la valeur 0 (absence) ET l’état de la lampe est allumée (1)
Scénario :
- A heure + 3 minutes (ou moins, ou plus…) [time_op(#time#,3)] FAIRE
- SI présence == 0 ALORS j’éteint la lampe
- SINON je supprime toutes es occurences programmées de ce scénario [remove_inat]
Ce qui donne ceci :
Quelqu’un arrive, il y a détection de mouvement. J’allume donc la lumière si la luminosité est inférieure au seuil programmé et que la maison n’est pas vide, ou si c’est la nuit.
Il n’y a plus de détection de mouvement, l’état repasse à 0.
Je lance le second scénario si lampe est également bien allumée de son côté. Si celle-ci est déjà éteinte, je ne fait donc rien.
Je programme dans 3 minutes (ou moins, ou plus) un bloc d’instruction et je stoppe là mon scénario.
Après 3 minutes, Jeedom exécute ce bloc. On teste si l’état du détecteur de mouvement est toujours à 0.
Si oui, la personne est donc bien partie, j’éteins la lumière.
Si non, elle est donc toujours là. Je supprime d’éventuelles programmations qui auraient été lancées entre-temps, et je ne fais rien d’autre, la lumière reste allumée.
Le délai incompressible entre l’allumage et l’extinction est donc au minimum le délai de réarmement (90"), plus le délai programmé dans le scénario d’arrêt.
Ça marche plutôt pas mal, mais encore une fois le mieux est le détecteur de présence, nettement plus simple à mettre en place et surtout très efficace (la preuve : je n’entends plus râler dans le noir
…).