Après pas mal de tests et manip, je sèche sur un besoin qui me semblait simple au départ :
J’ai un capteur de poids sous le lit, et je voudrais monter un virtuel qui m’indique « l’occupation » :
0 si poids < 25000
1 si 25001 < poids < 40000
2 si poids > 40001
j’ai pu le faire avec 3 items différents dans le virtuel, mais je voudrais un seul item qui évolue (plus simple à adresser dans les scénarios)
Tu pourrais le faire avec un seul virtuel bien sûr mais ce serait un calcul assez lourd à faire à cet endroit qui n’est pas prévu pour ça. A mon sens le mieux serait de traiter la valeur du capteur de poids dans un scénario qui ferait un event sur une commande virtuelle (info/numérique) pour la passer à 0, 1 ou 2.
Evènement (event) : Permet de pousser une valeur dans une commande de type information de manière arbitraire.
oui j’y ai pensé, ce qui m’a arrêté c’est la fréquence de déclenchement.
Le capteur remonte une info toutes les 30 secondes, et il est très sensible, même en journée, la valeur change en permanence (de quelques grammes certes, mais elle évolue)
Les mises à jour sont calées à 30 secondes pour être réactif sur les éclairage de nuit (ça doit être WAF)
Rien ne t’empêche de n’activer ton scénario qu’au moment de ton choix et/ou ne le faire tourner qu’à la minute ou toutes les 5 minutes par exemple. Bref trouver l’usage adéquat.
Tu es stoppé par la fréquence de déclenchement d’un scénario prévu pour alors que la solution du calcul dans un virtuel sera bien pire en terme d’impact sur le système et les perfs : tu feras un calcul complexe à chaque chgt de valeur avec lancement de toute la mécanique Jeedom à chaque fois !
Si c’est pour de l’affichage pourquoi ne pas tout simplement appliquer un widget numérique multistate sur ton capteur ?
Tu ajoutes trois conditions de test et pour chaque condition une image (ou un texte) différente.
Si c’est pour utiliser une info qui doit générer une action en conséquence pourquoi ne pas utiliser dans la configuration avancée de ta commande info capteur des Actions sur la valeur ? (voir exemple ci dessous où trouver cela) ?