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.

Discussions au sujet de NI LabVIEW

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Labview 7.1 - évènements UI et polling VISA

Bonjour,

Je cherche à faire une application de mesure qui permette soit de déclencher une mesure sur demande utilisateur (via la face avant), soit en fonction d'une valeur de processus (température) mesurée via VISA/Modbus

 

J'ai fait le brouillon suivant, globalement basée sur une structure producteur/consommateur, dans laquelle j'utilise l'évènement "timeout" coté producteur pour lire la température sur le VISA (dans le brouillon, je génère un nombre aléatoire -sous VI "get temp"), la comparer à une valeur de référence et en fonction déclencher l'évènement "MESURE" qui correspond aussi à un bouton en face avant pour déclenchement manuel.

 

L'ensemble du VI sera intégré à un VI supérieur qui gérera la config de manip/des calculs et des sauvegarde disque.

 

ça à l'air de fonctionner, mais je ne suis pas très sûr de moi et j'aimerais des conseils pour mieux faire (je suis loin d'être un spécialiste de la gestion d'évènements)

 

Merci d'avance pour vos suggestions éclairées...

 

PS: mon labo n'a de licence QUE pour la version 7.1.... ^^

Tout télécharger
0 Compliments
Message 1 sur 5
2 295 Visites

Ce n'est pas mal mais il faudrait que tu relies les fils de Ressource VISa, d'erreur  et de la file MESSAGE dans tous les cas de la structure événement. En ce moment ton VI ne s'arrête pas lorsqu'on appuie sur stop. Au lieu d'utiliser la propriété value signaling tu pourrais également regarder les User Event qui n'ont pas besoin de passer par un contrôle du panneau avant.

 

Ben64

0 Compliments
Message 2 sur 5
2 280 Visites

Merci pour les remarques, je vais corriger les fils manquants.

 

Je n'ai pas utilisé de "user event" parce que j'ai cru comprendre qu'ils constituaient une file évènement distincte de celle des boutons en face avant, du coup, je ne voyais pas comment générer une mesure à la fois sur demande via la face avant ("UI event") et par le polling visa ("user event"): la structure évènement semble considérer qu'il s'agit de type de données différents

0 Compliments
Message 3 sur 5
2 273 Visites

Tu peux définir le type de l'événement (dans mon exemple un booléen) et un cas de la structure événement peut avoir plusieurs sources, dans mon exemple boolean value chenge et MyEvent user event. Le user event est généré lors du timeout.

 

Multiple Event Sources.png

 

Ben64

Message 4 sur 5
2 270 Visites

Super, merci pour le conseil. Je vais tester ça demain

 

(PS: désolé pour l'absence ces derniers jours, j'ai eu une urgence à gérer)

0 Compliments
Message 5 sur 5
2 246 Visites