Compteur temps de fonctionnement

Bonjour,

j’aimerai comptabiliser le temps de fonctionnement de ma pompe de piscine. Elle est actionner via le relais 8 de mon IPX.

j’ai crée le scénario suivant :
Si relais 8 et NON variable temps ALORS ON Incrémentation Compteur Et ON Variable temps.

La variable temps ayant un TB de 60s.

Mon compteur est donc incrémentée toute les minutes… Le problème, dés que je met en route la pompe, le compteur passe directement à 1 et pas au bout d’une minute… je ne vois pas trop comment régler ce problème…
La c’est eu minute pour les essais, mais après je vais y passer en heure, je n’aimerai pas que ça m’ajoute une heure a chaque fois que j’allume la pompe pour 10 secondes…

J’ai essayer en ajouter une règle SI relais 8 alors ON variable temps mais ça ne change rien…

Avez vous une idée ?

Bonjour,
au lieu de régler un Tb, vous pouvez essayer avec Ta.

Je pense que l’utilisation des Ta Tb peut constituer un problème de comptage si la pompe démarre ou s’arrête alors que les tempos ne sont pas atteintes.
Personnellement, je serais tenté de fonctionner avec un compte à rebours, de 60s ou de 3600 s pour les heures. Ce compte à rebours incrementerait un compteur en minutes ou heures selon le réglage précédent.
En cas de coupure de courant, redémarrage manuel de la pompe,…, pas de perte d’unités de temps (au pire, juste la seconde en cours) les valeurs sont enregistrées. contrairement au Ta Tb.

Cdlt

En gros, il me faut donc un scénario
Si relais active, je décrémente un compteur.
Si compteur = 0 j incrémente un compteur horaire et je remet mon compteur à 3600s.

C est bien ca ?

L inconvenant on utilise un compteur en plus, mais bcp plus fiable…

oui, je pense que c’est ça.

Mais cela n’engage que moi :wink:
Cdt

Par contre, je n arrive pas trop à voir comment faire le fonctionnement avec un Ta…

Si relais 8 ON variable temps ( ma variable démarre sur activation du relais )

Si relais 8 ET variable temps ON Compteur ( j incrémente mon compteur au boue des 60s du ta de la variable temps )

Mais comment faire couper ma variable temps afin de la relancer ensuite ???
Un Tb ? Couplet a un scénario supplémentaire ?

oui, c’est soit le Ta, soit la variable temps je pense, sinon ils s’additionnent.
Je pense qu’il faut Ta=60, Tb=0 pour incrémenter le compteur sur le ON du relais
mais je vais laisser les experts prendre la suite.
L’unité est la seconde ou bien le dixième ?

La seconde.
Du coup la variable devrait passer à ON au bout de 60secondes, mais qu est ce qui va l éteindre ? Je n’arrive pas trop a voir la…

la je seche… quelqu’un pour m’aider ?

Bonjour,
Comme je l’ai dit , Je ne vois rien d’autre que le cpt à rebours qui se décrémente pendant le fonctionnement de la pompe et qui incrémente un second compteur quand il arrive à 0.
Si d’autres ont une idée…
Cdt

1 J'aime

Bonjour la solution serait d’avoir des compteur horaire en natif qui du coup compte à la seconde les temps de fonctionnement :slight_smile:

1 J'aime

Oui j’ai bien compris, et la solution fonctionnerait… seulement je ne vois pas comment la gérer avec les scénarios…
je m’explique

J’ai ma variable temps VT, mon relais 8 R8,mon Compteur1 CP1 et mon Compteur 2 CP2
VT a un Tb = 1s

Si R8 ON VT
Si R8 ET Non VT ON CP Décremente ET VT
Si CP1 = 0 ON Set CP1 = 60 CP2 Incremente

Mais cela ne fonctionne pas… le compteur CP1 ne repasse pas a 60…

Qq un a une idée ?

La encore, mais c’est moins grave, la seconde commence immédiatement… des activations du relais 8, ça passe directe à 1…

Merci

C’est claire, si la Team GCe pouvait en tenir compte ça serait cool :slight_smile:

Bonjour,

J’aborderai les choses différemment :

  • Soit vous essayez de répondre à un problème d’affichage (afficher des heures et pas des secondes)
    Dans ce cas le plus simple est de continuer à incrémenter un compteur de secondes et d’afficher sa valeur divisée par 3600 (par exemple (datasources[« IPX »][« response »][« cpt0 »]/3600).toFixed(0)).

  • Soit vous devez impérativement exposer des heures à un autre device
    Là aussi je conserverais un compteur pour cumuler les secondes de fonctionnement de la pompe (avec une règle simple articulée autour d’une sortie virtuelle avec un TA=1). J’ajouterais un compteur pour les heures, alimenté par une règle simple : si compteur secondes >= 3600 alors incrément de 1 du compteur heures. En parallèle j’ajouterais une règle de remise à 0 du compteur des secondes : si compteur secondes >= 3600 compteur seconde =0.

Cordialement,

Edit :
ATTENTION l’information initiale est fausse : il faut renseigner le délai dans le TB et pas le TA. Voir ma correction et le test associé un peu plus bas

Merci, c’est bien ce que je compte faire, mais je ne vois pas comment faire ma regle avec un TA, avec un TB pas de problème,

Ex : avec VT qui à un Tb=1

SI R8 ET NON VT alors ON CP1 Incr Et VT

Cette régle permet d’incrémenter un compteur CP1 toute les seconde.

Mais si VT à un Ta = 1, je ne vois pas comment faire… si j’ai un Ta, je va avoir un retard à l’allumage de 1 seconde, ce qui est très bien pour ne pas démarer le compteur à 1 seconde, mais qu’est ce qui va eteindre la variable ? un Tb ? régler presque à 0 ? une autre règle ?

C est bon ! Je pense avoir trouve !

2 variables : VT avec Ta=1 et VA avec Tb = 1

Si R8 ON VT
Si R8 et VT et NON VA ON CP incr et VA
SI NON R8 OFF VT

Donc quand le relais 8 sera actionné, 1 seconde plus tard VT s allumera et ON commencera l incrémentation du compteur. Quand on coupera le relais 8, on coupe aussi VT.

Je pense avoir un truc correct.

Il ne me reste plus qu’à arriver à faire fonctionner la remise à 0 de mon compteur seconde.

Ton comptage de temps de fonctionnement sert à faire des statistiques ? Ou y a t’il un utilité fonctionnelle ?

Dans ton cas j’utiliserai les push avec l’étiquette $TS (timestamp) et ensuite je ferai la différence entre les 2 $TS. J’utilise déjà çà pour calculer la durée d’ensoleillement de ma terrasse !

Pour ce faire il te faut une base de données, un serveur web, une api. C’est très simple, je peux donner les sources ici :wink:

Bonjour,

Je n’ai pas testé ma réponse avant de la poster et elle comprend une erreur : il faut spécifier le délai d’une seconde dans le TB de la sortie virtuelle et pas dans le TA.

Voici le contenu de mon test :

  • VO20 : sortie virtuelle 20, test compteur de secondes
  • VO21 : sortie virtuelle 21, simulation du relai
  • C08 : compteur de secondes
  • C09 : compteurs de minutes
  • Scène 253 - incrément minutes : si C08 =60 ON C09 Incrément 1
  • Scène 254 - RAZ Secondes : SI C08=60 ON C08 = 0
  • Scène 255 - Décompte secondes : SI NON VO20 ET VO21 ON VO20 C08 Incrément 1

Pour tester j’ai créé un widget basique :

P.S. Je corrige mon post précédent

Cordialement,

1 J'aime

J’avais fais cela en parallèle, voir mon poste au dessus, et cela marche a merveille ! Merci de votre aide.

j’ai aussi remarqué quelque chose :

L’ipx dois effectuer la lecture des scénario dans l’ordre, car si je fais :

Scene 5 : Si Compteur Seconde = 60 Alors Set Compteur Seconde =0
Scene 6 : Si Compteur Seconde = 60 Alors Incrémentation Compteur heure de 1

Et bien le compteur d’heure ne s’incrémente pas.

En revanche si je fais :

Scene 5 : Si Compteur Seconde = 60 Alors Incrémentation Compteur heure de 1
Scene 6 : Si Compteur Seconde = 60 Alors Set Compteur Seconde =0

La le compteur d’heure s’incrémente…

je pensais que L’ipx était capable de lire les scénarios en parallèle et que l’ordre d’écriture n’influençait pas le résultat…

je vais ouvrir un post la dessus afin d’avoir des explications de GCE.

Je suis bien partis sur une compteur en seconde qui se remet à 0 à 3600 seconde et incrémente un compteur heure à 3600 seconde.

Cette méthode est donc précise à la seconde, mais en terme de solicitation de l’ipx… est ce que l’ipx ne serait’l pas moins solicité avec un compteur en minute ? en passant les TA et TB à 60 seconde ?

Ou que l’ipX égraine un TA, Tb ou un compteur, en terme de sollicitation cela est équivalent ?

Bonjour,

Selon un autre post sur le forum, l’IPX exécute les règles séquentiellement dans l’ordre dans lesquelles elles sont définies. Définir un autre ordre de manière arbitraire me semblerait d’ailleurs dangereux.

Dans le même ordre d’idée il n’y a pas de parser dans l’éditeur de scènes : les informations sont décodées de gauche à droite, sans ordre de priorité pour les opérateurs.

La sollicitation de l’IPX pour un simple compteur est très faible. A votre place je conserverais les secondes.

1 J'aime