Cette question a déjà du être posée et répondues maintes fois … désolé si c’est le cas, mais je n’ai pas trouvé réponse.
Je dispose d’une valeur numérique, dont la commande émane d’un capteur de pression.
J’obtiens donc la représentation numérique d’une valeur analogique retournée par le capteur.
Comment puis-je décliner cette valeur en affichant dans le dashboard :
la valeur numérique elle-même (ça c’est facile, il suffit de cocher « Visible » dans Equipement/options) ;
mais aussi une autre valeur calculée à partir de la valeur numérique (pour afficher par exemple un taux en %, et/ou une hauteur d’eau en mm, et/ou un volume d’eau en litres ?
Faut-il forcément créer une valeur supplémentaire dans la commande ?
Difficile de répondre, il y a plein de solutions.
Il faut que tu precises
le plugin en question
les calculs que tu souhaites exactement. La réponse ne sera pas la même si le calcul est juste une convention d’unité ou si il nécessite d’agréger des valeurs d’autres commandes
Si l’objectif, c’est d’avoir des stats (min/max/average), pas forcement, si c’est autre chose, on ne parle pas de valeur supplémentaire dans la commande, mais d’une autre commande.
De manière générale, une commande = 1 donnée ou 1 action
Le plugin utilisé est MyModbus.
La commande, qui interroge une passerelle RS485 / Ethernet de façon périodique, retourne une valeur numérique comprise entre 600 et 3000 (en gros) et correspond à la hauteur d’eau contenue dans une cuve. J’affiche pour le moment cette valeur dans mon « dashboard ».
Et j’aimerais également indiquer :
la hauteur d’eau en mm ( égale à 0,19 x [valeur] - 122 )
et le volume d’eau estimé ( égal à 31 x [hauteur d’eau] … ou encore égal à 5,92 x [valeur] - 3794 )
le taux de remplissage ( égal à 0,1 x [valeur] - 58 )
Je pense qu’il serait intelligent que je crée 2 constantes (valeurs ?) égales à :
6500 (volume maximal, en litres)
209 (hauteur maximal, en mm)
Par conséquent :
le volume d’eau estimé serait égal à : (6500 / 209) x [hauteur d’eau]
le taux de remplissage à 100 x 209 / [hauteur d’eau]
J’aimerais pouvoir afficher ces 4 valeurs (valeur numérique, hauteur, volume, taux) sans avoir à recréer 3 commandes. Enfin, si c’est possible de faire autrement bien sûr !
Edit : l’idée serait également de pouvoir afficher des stats, oui ! Actuellement le graphique proposé par Jeedom – qui est excellent – se base sur la valeur numérique retournée par le CAN situé entre la sonde et la passerelle Modbus ; avoir une échelle basée sur une hauteur d’eau, un volume ou un pourcentage serait quand même plus parlant … d’autant plus que l’ordonnée n’est pas à l’origine avec la valeur numérique du CAN (quand il n’y a pas d’eau, la valeur est de 600).
Tu crées un équipement « infos cuve », avec 4 commandes
Valeur numérique = ta commande myModBus)
Hauteur (info/numérique, unité : mm)
Volume d’eau estimé (info/numérique, unité : L)
taux de remplissage ( (info/numérique, unité : %)
Les 3 dernieres commandes peuvent etre directement calculées dans le virtuel ou dans un scenario (je prefere)
Tu peux éventuellement mettre le volume et la hauteur en variables -ou en tags dans le scenario)
Et tu masques ton équipement myModBus
Il suffit d’historiser les commandes. Ensuite, pour les stats, si c’ets min/max/avg, c’ets à selectionner au niveau de l’affichage du widget. Si c’est les graphiques, il suffira de cliquer sur les valeurs
Merci beaucoup, ainsi qu’à @Mips , pour cette solution, ça fonctionne à merveille (et cela m’évite de « polluer » mon équipement MyModbus).
J’ai un peu buté sur le rafraichissement des commandes du virtuel, voici comment j’ai fait :
dans la commande de l’équipement MyModbus, utilisation du champ Push URL pour mettre à jour la commande du virtuel qui reprend la valeur de la commande MyModbus :
J’ai remarqué que lorsque l’état de l’une des commandes est mise à jour, alors les états des commandes qui en dépendent sont recalculés (et mis à jour).
J’espère avoir vu juste ! Cela me semble propre comme méthode (plutôt que de faire un CRON).
tu n’as pas besoin du push URL, il suffit que dans ta commande « valeur can » (celle du virtuel), tu rensiegnes dans le champ valeur ta commande [valeur can] via rechercher equipement (celle de myModBus)
A chaque MAJ de [valeur can], tout sera rafraichit