Connaitre le temps de fonctionnement de mon bruleur (En service) pour la journée

Bonjour,
Avec l’aide de @Fifirept, @pj66, j’ai bien avancé dans mon projet.
Aujourd’hui, je souhaiterais savoir comment je peux connaitre le temps de fonctionnement de mon bruleur (En service) pour la journée: je connais le temps qu’il est allumé à chaque fois qu’il est En service (En service depuis) mais pas pour la journée (maxbetween n’a pas l’air de fonctionner).
Ensuite je souhaiterais historiser ces relevés journaliers.
Pouvez vous encore m’aider pour cette mise au point.
Merci

Bonjour,

Avez vous essayé la fonction « duration » ?

  • duration(commande, valeur, période) & durationbetween(commande,valeur,start,end) : Donnent la durée en minutes pendant laquelle l’équipement avait la valeur choisie sur la période (period=[month,day,hour,min] ou expression PHP) ou entre les 2 bornes demandées (sous la forme Y-m-d H:i:s ou expression PHP).

Bonjour et merci pour votre réponse,
Je viens d’essayer ceci dans le testeur:
duration(#[chaudière][Chauffage_Analyse 1][En service depuis]#,day)
et j’ai une réponse; 41 ce chiffre serait le temps cumulé de fonctionnement du bruleur depuis 00:00

A l’instar de votre précédente demande, « day » représente les dernières 24 heures.
Si vous voulez le temps depuis minuit, ce sera :
durationbetween(commande,valeur,start,end)
avec start = today et end = now

PS : J’aime beaucoup la dernière commande « TEST ». En divisant des minutes par des dégrés, quel est le résultat attendu ? :thinking: :joy:

si j’écris dans le testeur:
durationbetween(#[chaudière][Chauffage_Analyse 1][En service depuis]#, today, now)
j’ai en réponse 0, je pense que c’est normal puisque la période n’est pas encore commencée.
Pour le TEST, pas d’inquiètude c’était une erreur :sob: j’ai supprimé depuis sur le virtuel original

Je ne sais pas à quoi correspond cette commande ni si elle est dans un autre virtuel / récente / historisée. Est ce la #16003# ?
Par contre,

Today a bien commencé à 00:00:00. Soit, il y a plus de 15 heures.

Edit : Quoi qu’il en soit, les valeurs calculées dans le screenshot semblent peu probables.

En service depuis 0 minute et en veille depuis 0 minute. Il existerait un 3ème état d’une valeur binaire ? :face_with_spiral_eyes:
Durée en minutes depuis minuit = 0. Le chauffage est coupé ?
Affichage formaté = 0.2. devrait donner par exemple 01h08m12s. Enlevez le « /60 »

Le bruleur s’allume (#15998#), En service depuis (#16003#) cette commande compte le temps d’allumage du bruleur jusqu’à son extinction (passage à 0) je souhaiterais cumuler ces périodes sur une journée et également les conserver sur une période à définir

Voir l’édit au dessus.

je pense que cela sera mieux:



c’est mon original, cela sera peut être plus clair. Il y a certaines commandes qui n’ont pas trop d’intérêt sauf celui d’essayer des commandes

j’ai enlevé « /60 » et j’ai maintenant 12h00m00s c’est mieux et surtout plus proche de la réalité

Je suppose que c’est la commande #15927# qui pose problème et reste désespérément à 0.
C’est normal !
On ne demande pas quelle valeur doit être scrutée. La valeur à 1.

Il faut donc :
duration(#[chaudière][Chauffage_Analyse][En service depuis]#,1,today)
ou
durationbetween(#[chaudière][Chauffage_Analyse][En service depuis]#,1,today,now)

Edit : Il y a des jours où on n’est pas inspiré. Aujourd’hui en est un. :face_with_spiral_eyes:
La proposition ci dessus ne fonctionnera pas mieux puisqu’on calcul une durée à partir d’une autre durée (ça fait combien de temps qu’on est à 9 minutes ? réponse : 0 minute).
Donc, il faut saisir :
duration(#[chaudière][Chauffage_Analyse][Bruleur_Etat Binaire En service]#,1,today)
ou
durationbetween(#[chaudière][Chauffage_Analyse][Bruleur_Etat Binaire En service]#,1,today,now)

hello,
pour avoir une idée du temps que tourne la pompe de la piscine ; si ca peut te donner des idées:
Hier:

 strstr(ConvertDuration(durationbetween(#[Piscine][Pompe Piscine][Etat]#,1,yesterday 01:00,yesterday 23:59)*60),"in",true)

Aujourd’hui

#sday# : strstr(ConvertDuration(durationbetween(#[Piscine][Pompe Piscine][Etat]#,1,today ,now)*60),"0s",true)

Depuis le début de l’année

strstr(convertduration(durationBetween(#[Piscine][Pompe Piscine][Etat]#,1,first day of January 01:00,Now)*60),"in",true)

Bonjour,
J’ai lu hier mais trop vite car le message a disparu qu’il y avait peut être un souci avec les commandes 16017 et 16018, pouvez vous me confirmer

Bonjour,

Je n’ai pas tout lu, mais voici ce que je fais et qui semble correspondre à votre question :

Pour avoir cela :
image

Je fais cela :

Bonjour,

Pas d’inquiétude, le message initial se basait sur une erreur de ma part. Je l’ai donc supprimé.
De plus, je ne sais pas à quoi correspondent les commandes 16017 et 16018.

Autant pour moi il s’git des commandes 15906 et 15936

Pas de problème avec ces 2 commandes.
Ma dernière proposition reste valide.

Pour la suite, tout dépend de la mise en forme que vous souhaitez.

Ok,
une petite question: est il normal que les commandes 15937 et 15938 tournent en // et non pas lorsque c’est à 1 ou o au niveau du bruleur ?
Par ailleurs, les temps remontés sont en secondes je suppose.

:slightly_smiling_face:
En fait, ces 2 deux commandes donnent le même résultat pour une raison toute simple.
Elles sont toutes les 2 basées sur la même chose.
La 15937 indique la valeur à 1 de « En service ». Donc en service.
La 15938 indique la valeur à 0 de « En veille ». Donc en service aussi.
Il faut remplacer 0 par 1 dans 15938.

Si la question est pour ces mêmes commandes, alors oui, c’est en secondes.
Mais vu que les commandes se terminent par « /60 », alors on a des minutes.

C’est fait et cela fonctionne !
la commande 15927: duration(#[chaudière][Chauffage_Analyse][Bruleur_Etat Binaire En service]#,1,today), si je lui ajoute ,now après today, j’aurai le temps cumulé d’allumage sur la période de minuit 00:00 à 23:59