Petit coup de main pour un scenario simple

Bonjour,

Je débute totalement pour faire un scenario et j’ai du mal à trouver les bonnes informations.
Pourriez-vous m’aiguiller car c’est assez obscur pour moi bien qu’ayant fais des recherche auparavant?

Voici l’équipement et le scenario que je souhaite mettre en place:

Matériel :
1 capteur de température avec le plugin RFXcom
1 prise connectée TTP-Link HS100 avec le plugin wifilightv2
Jeedom 4.4.19 sur Raspberry

Scenario souhaité :

Si la température est inférieure à 6° alors allumer la prise connectée avec le plugin wifilightv2

Tant que la prise est allumée elle ne pourra être allumée que 1h d’affilée et ensuite être éteinte pendant 15min. Tant que la température est inférieure à 6° le cycle de 1h allumée puis 15min éteinte continue en boucle.

Si la température est supérieure ou égale à 6° alors couper la prise connectée.

Dès que la température varie la prise se rallumera ou s’éteindra en fonction des critères ci-dessus et ceux-ci en boucle.

Le scenario devra continuer d’être actif après une coupure d’alimentation ou un reboot du RPI.

Simplement sur la partie allumer ou éteindre en fonction de la température j’ai essayé plusieurs choses sans résultat concluant. Quand j’arrive à allumer la prise quand la température passe en dessous de 6°, elle ne s’éteint pas quand elle repasse à 6° ou plus.

Je vous remercie pour l’aide que vous pourrez m’apporter.

Bonjour

Montrer nous, copies d’écran des deux onglets de votre scénario, ce que vous avez déjà fait.

Antoine

Il va falloir jouer avec plusieurs scenario. Un qui déclenche quand T<6 , allume la prise, active le scénario 2 et se désactive lui-même, et ce scénario 2 qui se déclenche quand T>6, éteint la prise, active le scénario 1 et se désactive.
Pour la durée d’allumage tu peux essayer de faire ça dans la config de la commande état de ta prise : si allumer plus d’une heure alors eteindre.

helloo

voici quelques pistes:

si ton capteur de température envoie régulièrement (genre toutes les minutes ou toutes les 5 minutes) un relevé, alors tu peux l’utiliser comme déclencheur de ton scénario.

tu historises le relevé de température, ca peut etre utile pour certaines opérations basées sur la longueur…

et tu joues avec des SI/ALORS dans ton scénario.

tu as aussi un bouton à disposition pour éviter de répéter une opération si la condition n’a pas changé:
image

Bonjour,
Comme vous pouvez le voir je n’ai aucune compétence en la matière mais souhaite m’y mettre.
J’avais fait un test avec une consigne à 17° pour pouvoir le réaliser en déplaçant le thermomètre dans une autre pièce plus froide. J’ai bien compris que je ne m’y suis pas bien pris et que je n’ai pas encore la logique des scenarii. Dans ce test la prise PC1 s’allumait bien quand la température passait en dessous de 17 et puis plus rien. Je me suis demandé sui le scenario ne s’arrêtait pas une fois qu’il envoyait la consigne à la prise.


Salut

D’ou vient le déclencheur?

Antoine

Bonjour,
Merci pour les précisions.
J’ai essayé de transcrire vos recommandation avec mon niveau de connaissance en scenario (c’est ma 1ere fois).

Est-ce correcte :
dans mes tests la prise commandée s’appelle PC 02 et la consigne de température est 17° pour pouvoir la simuler chez moi.

J’ai fait 2 scenarii « Allumer PC 02 » et « Eteindre PC 02 » chacun exécute l’allumage ou l’extinction de la PC 02 en fonction de la température et en même temps lance le scenario « inverse »
Est-ce bien cela?

Allumer PC 02:


Eteindre PC 02:


J’ai mis le thermomètre à 19° puis je l’ai mis a moins de 19°.
Je n’ai pas l’impression qu’une fois qu’il envoi une commande que le scenario se prolonge. J’ai l’impression qu’il exécute la commande et ensuite tout est fini.
Désolé, c’est peut etre logique mais je ne maitrise pas du tout pour l’instant.

Voici les logs des deux scenarii:


De mon incompréhension.
Ne sachant pas j’ai testé pleins de trucs.
J’avoue ne pas savoir ce qu’il faut mettre ici car il y avait un message indiquant qu’il n’y avait pas de déclencheur.

Bonjour,
Merci pour ces precisions, c’est la première fois que je fais un scenario et je ne maitrise pas tout ça et je m’en excuse.
Mon capteur émet, il est réceptionné par le RFXcom et s’affiche sur mon dashboard.
La seule chose que je maitrise c’est d’utiliser la commande température pour se baser sur la température affichée.
Je ne sais pas comment déclencher un scenario quand le RFXcom reçoit les informations du thermomètre.

Bonjour,

Dans la liste des déclencheurs, en mode « Provoquer » il faut simplement aller sélectionner votre sonde avec le thermomètre.

Une fois fait, cela va alors déclencher automatiquement le scénario à chaque changement de température et donc, activer votre scénario.

Une fois que vous avez compris cela, il faut maintenant limiter le déclenchement aux seules valeurs que vous souhaitez, il suffit alors d’ajouter < 6 à la fin du déclencheur. Ainsi, le scénario ne se déclenchera qu’au moment ou votre sonde détecte une température plus petite que à 6°C.

Bonjour,
Merci pour ces précisions.
Je vais chercher et tester ça.
merci beaucoup

J’ai mis la sonde de température nommée « CHAMBRE » en déclencheur. J’ai changé la température à 17° au lieu de 6 pour faciliter les tests.
Pour les limites du décochement j’avoue ne pas avoir trouvé comment cela doit être fait.
J’ai fais cela mais ne sais absolument pas si cela correspond à vos recommandations.



Est-ce comme ça?

Non, directement dans le déclencheur, après votre sonde #blabla# < 17

Et dans votre scénario, on verra cela plus tard, mais c’est pas la peine de faire 2 blocs

Si blabla est vrai ALORS je fais truc, SINON je ne fait rien ou autre chose

Il faut raisonner en Français pour comprendre et au final, on se rend compte que c’est très logique.

Bonjour,

Le problème n’est pas si simple qu’il en a l’air en fait…

Ce que j’ai compris de mon côté, et pour résumer :

  • T° >= à 6°C, la prise connectée est placée sur OFF.
  • T° < à 6°C, la prise est placée sur ON, mais pendant 60 minutes, puis sur OFF pendant 15 minutes, puis sur ON pendant 60 minutes, etc…, et ce tant que la T° ne repasse pas à 6°C et plus.

Et tout le problème revient à gérer ce cycle tant que la T° est inférieure à 6°C, car nativement les scénarios n’intègrent pas l’équivalent des instructions WHILE…DO (TANT QUE ceci est vrai FAIRE cela), ce qui est bien dommage d’ailleurs…

Voici une proposition qui fonctionne (testée), en utilisant deux variables et deux scénarios.

1.- Initialiser les variables

Dans ‹ Outils ›, ‹ Variables ›

Cliquer sur Ajouter en haut à droite :

Sur la première ligne qui apparaît (vierge), mettre dans Nom le nom de la première variable (Flag1 par exemple), et sa valeur, 0.
Cliquer ensuite sur la coche verte pour valider


(dû à un petit bug qui sera corrigé avec la prochaine version de Jeedom, la largeur des colonnes n’est pas ajustée et empêche de bien voir les noms)

Faire pareil pour la seconde variable, Flag2 par exemple.

Au final, vous devriez avoir ceci :


(Utilisée dans sera vide pour l’instant, contrairement à la copie d’écran ci-dessus).

Voilà pour les deux variables.

2.- Les scénarios

On va créer deux scénarios : ‹ scenario_froid › et ‹ scenario_gestion › par exemple.

Le premier scénario va donc réagir lorsque la T° est inférieure à 6°C.

Donc, dans les déclencheurs, il faut mettre :

[...][...][Température] < 6, où […][…][Température] est la température renvoyée par le capteur. Cet équipement peut se trouver en le cherchant directement avec cette icône :

Par exemple,

Côté scénario :

J’explique.

  1. Je place la prise connectée sur ON (ici, simulé par une instruction log ‹ ON ›, qui va simplement mettre la chaine de caractère ON dans le log du scénario).
  2. Je teste si la variable Flag1 est encore à 0. Si non, j’arrête là.
  3. Si oui (Flag1 = 0), ALORS je la mets à 1. Puis je programme 60 minutes après l’exécution de ce bloc :

a. Je place la prise connectée sur OFF
b. Je Je teste si la variable Flag2 est encore à 0. Si non, j’arrête là.
c. Si oui (Flag2 = 0), je la mets à 1, et 15’ après, je programme un nouveau bloc :

I. Flag1 et Flag2 sont remis à 0

Dans la chronologie :

A la première exécution, Flag1 et 2 sont à 0. Dès que la T° passe à moins de 6°C (le déclencheur), j’ai donc :
Au premier test, Flag1 passe donc le test, et est mis à 1. Je programme l’arrêt de la prise dans 60’, et je termine le programme.
La T° évolue, disons de 5° à 5,5°C. Le programme est déclenché, mais la T° reste inférieure à 6°C.
Donc je remets la prise sur ON (ce qui ne change rien…), mais là, comme Flag1 est à 1, j’arrête là mon scénario. Cela évite de reprogrammer le bloc dans 60 minutes.
Et ce tant que la T° est inférieure à 6°C, même si elle évolue.

60 minutes après, Jeedom lance donc le bloc programmé (il n’y a pas de déclenchement sur une variation de température cette fois) :
Donc je passe la prise sur OFF, et je teste si Flag2 est à 0. Comme elle l’est, je la mets donc à 1 et je reprogramme dans 15 minutes le redémarrage de la prise et fin du programme.
Toujours pareil, tant que la T° est inférieure à 6°C, et même si elle évolue, comme Flag1 est toujours à 1, on ne fait rien : la prise reste sur OFF.

15 minutes après, Jeedom lance donc le bloc programmé : je repasse cette fois les variables Flag1 et 2 à 0, remet la prise sur ON, et fin du programme.

Résultat : à la prochaine variation de T°, on repart sur le même cycle, avec au départ les mêmes états qu’au début…
On a bien donc une alternance de périodes de 60 minutes sur ON, 15 minutes sur OFF, et ce indéfiniment tant que la T° reste inférieure à 6°C (même si reboot après une coupure d’alim).

Le second scénario

Celui-ci, ‹ scenario gestion ›, va casser cette boucle lorsque la T° est supérieure ou égale à 6°C.

Donc, dans les déclencheurs, il suffit de mettre cette fois :

[...][...][Température], où là, toute variation de la T° va déclencher ce scénario.

Et côté scénario, il est très simple :

  1. Je teste si la T° est supérieure ou égale à 6°C.
  2. Si oui : je mets la prise sur OFF, et je désactive le premier scénario. Cela aura pour conséquence d’inhiber également toutes les occurrences éventuelles déjà programmées de ce premier scénario. J’en profite pour remettre les variables Flag1 et 2 à 0, prêt ainsi à redémarrer avec les bonnes conditions initiales.
  3. Si non, j’active le premier scénario, qui prend donc la main à partir de ce moment.

Ainsi, dès que la T° atteint les 6° et plus, on stoppe la prise sans conditions, et on inhibe le premier scénario qui ne réagira donc plus, jusqu’à ce qu’il soit réactivé.

Ça peut paraître compliqué vu comme ça, mais la gestion des cycles n’est pas si simple avec les scénarios.
Ou alors il faudrait passer par un bloc code…

Et les chats seront au chaud… :wink:

je suis désolé mais je ne trouve l’endroit où intervenir directement dans le déclencheur pour faire les modifs indiquées.
Pardonnez_moi c’est la première fois que je mets le nez là dedans.

Bonjour,
Je vous remercie beaucoup pour ces explications très détaillées qui sont adaptées à mon niveau actuel et très formateur pour moi.
Je vais mettre en œuvre vos propositions pour tester car vous avez très bien compris le but recherché.

Et le chat errant vous remerciera car il ne finira pas congelé.

:+1:
On a les mêmes préoccupations je vois ! :wink:
J’en gère deux de mon côté, et ils ont droit eux aussi à un coussin chauffant dans le jardin lorsqu’il fait froid, mais j’avoue n’avoir jamais pensé à le gérer avec Jeedom !
Du coup, cela me servira peut-être aussi… :wink:

oui, nous serons précurseurs avant qu’une loi impose de mettre un thermostat pour le chauffage des animaux.
Coté isolation je suis déjà aux normes. :slightly_smiling_face:

Je vous remercie pour avoir pris tout ce temps pour rédiger en se mettant à mon niveau et qui me sera très formateur. :pray:

Il ne me reste plus qu’à tester.

1 « J'aime »

@DanielJ de retour pour l’interrogation écrite.
Est-ce correct?



daniel j a simuler l’équipement

J’explique.

Je place la prise connectée sur ON (ici, simulé par une instruction log ‹ ON ›, qui va simplement mettre la chaine de caractère ON dans le log du scénario).