From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

temporisation automatique

Solved!
Go to solution

Bonjour,

 

Voilà je voudrais faire une temporisation de 30 minutes... L'idée c'est de piloter 2 pompes et quand la pompe 2 s'arrête il faut attendre 30 minutes avant d’arrêter la pompe 1 ... Je voudrais aussi faire en sorte que la temporisation de bloque pas la face avant. ( dans certains cas il est possible d'éteindre la pompe 2 sans nécessairement vouloir éteindre la 1 donc l'utilisateur doit pouvoir manipuler encore et non être bloquer pendant le temps de la tempo ... ).

Je ne sais pas du tout comment faire donc si vous avez des idées !

 

Merci d'avance et bonne journée !

0 Kudos
Message 1 of 13
(3,740 Views)

Il ne faut évidemment pas appeler une fonction d'attente qui bloquera le programme pendant 30 minutes.

 

Une manière de faire :

  1. Au moment de l'arrêt de la pompe 2, lire le timestamp actuel.
  2. Ajouter 30 minutes à celui-ci; ce qui correspond au moment auquel la pompe 1 devra être arrêtée.
  3. Dans une boucle, attendre que le temps d'arrêt de la pompe 1 soit atteint en lisant le timestamp actuel pour le comparer à celui du point 2.

 

Est-ce suffisamment clair ?

0 Kudos
Message 2 of 13
(3,730 Views)
Solution
Accepted by topic author Kipim

Un rapide exemple très basique avec un délai défini à 60 secondes :

 

Exemple arrêt différé.png

Message 3 of 13
(3,723 Views)

Pour le principe c'est clair. Maintenant reste au voir si j'arrive à réaliser le vi adéquate .. 
En tout cas merci pour l'idée et la réponse !

0 Kudos
Message 4 of 13
(3,718 Views)

Ah bas ducoup merci pour l'exemple également !

Je vais essayer comme ça ! 

0 Kudos
Message 5 of 13
(3,714 Views)

Une manière de faire parmi d'autres.

Vous pourriez par exemple aussi utiliser le VI Express Elapsed Time que vous trouverez dans le groupe Timing de la palette de fonctions.

0 Kudos
Message 6 of 13
(3,712 Views)

Ne pas oublier d'ajouter également une façon alternative de stopper la boucle d'attente (si le temps est écoulé ou si la valeur d'un contrôle, variable ou autre est TRUE par exemple). Si on veut arrêter le programme il ne faudrait pas attendre 30 minutes avant que la bouclel se termine.

 

Ben64

0 Kudos
Message 7 of 13
(3,693 Views)

Si on veux arreter le programme donc la pompe 1 avant que les 30 minutes soit écoulées il y a un risque d'endomager la pompe 2. Ducoup c'est pour cela que je met une temporisation afin que l'utilisateur sache qu'il ne doit pas éteindre la pompe 1. 

0 Kudos
Message 8 of 13
(3,686 Views)

Kipim a écrit :

Si on veux arreter le programme donc la pompe 1 avant que les 30 minutes soit écoulées il y a un risque d'endomager la pompe 2. Ducoup c'est pour cela que je met une temporisation afin que l'utilisateur sache qu'il ne doit pas éteindre la pompe 1. 


La remarque pour l'arrêt prématuré de l'attente est judicieuse et j'avais d'ailleurs initialement ajouté un bouton à cet effet dans mon exemple. Je l'avais ensuite supprimé pour obtenir l'exemple le plus basique possible.

 

Dans votre cas, il pourrait être utile de permettre de quitter le programme avant la fin de l'attente mais sans arrêter la pompe 1. A vous de voir selon votre configuration mais ce n'est en règle générale pas recommandé d'avoir un programme qu'il est impossible de quitter avant un long délai. Cela augmente le risque d'un arrêt brutal (par exemple par le gestionnaire des tâches) avec un comportement non maîtrisé du programme.

0 Kudos
Message 9 of 13
(3,678 Views)

Désolé pour cette réponse tardive ... En effet je n'avais pas envisager ce probème .. 

Si vous avez des idées pour régler ce problème ? Peu être tout simplement un bouton stop pour la boucle ? 

 

Merci en tout cas pour toute ces informations qui me sont très utiles et me permettent peu à peu de mieux apprèhender ce logiciel ! 

0 Kudos
Message 10 of 13
(3,630 Views)