Discussions au sujet des autres produits NI

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

variable local buffer ecriture

Bonjour,

Mon probleme ce situe au niveau de l'utilisation des variables locales !

je vous poste un Vi simplifié de mon projet afin de mieux comprendre le probleme!

en effet je crée des variables locales (des buffers d'ecritures des instruments que je veut commander afin d'envoyé des commandes plus loin dans le diagramme, en voulant qu'à chaque fois q'une commande est mis dans la variable locales "Ecrire IHM" par ex, le Vi ecrive sur le buffer et lise la reponse !

pour cela j'ai testé avec une boucle while (sans conviction et sans résultat)

Merci ! Cordialement !

Ps : j'utilise Labview 2009 mais enregister pour Labview 8.6
0 Compliments
Message 1 sur 10
5 012 Visites

Bonjour,

votre problème est surtout dans la compréhension de Labview !! lol

 

Alors pour faire simple, vous avez une structure séquence empilée qui fait :

 

1) Etape 0

Initialisation des deux port série, puis si le booléen écrire est a vrai, alors il écrit effectivement ce qu'il y a en face avant dans le port série (en l'occurence, rien) , puis pour chaque port, une petite attente histoire de donner un peu de temps a l'appareil de répondre, puis paf, une lecture. Fin de l'étape 1

 

2) Etape 1 :

Maintenant, vous écrivez dans les variables locales des choses. Ces variables locales correspondent bien à ce que vous voudriez écrire dans votre port série (ça s'affiche bien la ou il faut), mais rien n'est transmis au port série. Logique, car c'était fait dans l'étape 0 !!

 

3) Etape 2 qui ferme les port série.

 


Il faut faire différemment : pour comprendre un peu mieux comment marche Labview, vous pouvez modifier votre condition 0 : supprimez les commandes d'écriture, et mettez vos constantes à la place. Vous pouvez enchainer plusieurs ecritures//lectures sur le port série avec vos tempo de 10 secondes.
Supprimez la condition 1, et exécutez.

 

Cordialement,

 

V-F
0 Compliments
Message 2 sur 10
4 981 Visites

Bonjour, ramses64

 

Comme tu a pu le remarquer je suis débutant et voici mon problème, je suis en stage de fin d'étude et je dois faire une application sous Labview 2009 où j'inter agie avec un appareil en Bluetooth (clé BT sur pc portable) et avec un appareil de mesure en RS232 via (usb/comm DB9)

 

Donc voila mon problème je dois tantôt envoyer des commandes particulières à l'appareil BT et recevoir un acquittement tantôt envoyer des commandes particulières via RS 232 et recevoir un acquittement. Mes commandes fonctionnent bien en direct Q/R.

 

je ne sait pas comment m'y prendre pour séquencer les commandes sur les 2 ports com . (une centaines de commandes pour chaque appareil ! couper en plusieur fonction Init ; Check ; Test ; Etc) . Mon post précedent etait juste une idée !

 

En effet mon probleme et un probleme de compréhension de Labview 😕 ( 1 er prog et seul ) , j'ai pensé que les variables locales me renvoyées les données à mon buffer d'ecriture de base (afin de refaire la sequence 1 (comme un sous programme) ! Or ce n'est apparement pas le cas . Je reposte MON VI plus complet afin de bien comprendre mon probleme !

 

N'hésiter pas je suis ouvert à toute remarques sur ce que j’ai fait de maladroit ou de faux et aux idées de développements etc..

 

Merci

 

par ex : BT comm 5 et RS232 comm 6

 

ex Commandes a envoyé :

 

 =>BAT+CG=6 (comm 5)

<=Timeout 20Sec pour réponse CT+CG=2 (comm 5)

=>CL :LU (comm 6)

=> BAT+CP= ? (comm 5)

<= Timeout 20Sec pour réponse (comm 5)

=>CL :MSN :RL ? comm 6<=-28 ;23 ;98 comm 6
0 Compliments
Message 3 sur 10
4 963 Visites

OH PUTAIN... il faut google earth pour lire ton diagramme ou quoi ?

N'hésite pas a créer des sous VI : ton code n'en sera que plus clair et plus lisible ! Un Vi qui fait 1Mo n'est pas normal.

 

ci joint un exemple de structure à utiliser : Une boucle while qui tourne a l'infini, et a l'intérieur, une structure événementielle. A chaque fois que tu cliques sur écrire, tu lances l'événement et les actions associées.

 

Je te suggère de commencer par bien maitriser ce fonctionnement, et de FAIRE SIMPLE !!

 

D'abord, limite toi a un seul instrument, il va falloir que penses comment stocker les réponses pour ensuite générer un rapport proprement.

 

Pas de précipitation, ton application n'a pas l'air très compliquée.

 

++

V-F
Message 4 sur 10
4 959 Visites

MDR ! google earth ! je m'en suis pas rendu compte (j'avais la tete dans le gidon) je vais essayé de l'alleger avec des sous VIs !

 

Néanmoin il faisait 300ko enregister sous Labview 2009 et 1Mo sous 8.6 😐 .

 

Bref tout cela pour te remericer de cette idée ! Mais j'ai un souci avec la structure evenement  sous ma version de "Labview 2009 de base"

en effet je peut lancer un VI contenant une structure evenement mais pas en crée une ou la modifier ! Est ce du aà ma version ?

 

celle que j'utilise est issu d'un exemple Labview!

 

Je me met au boulot pour voir comment faire !

 

Merci

 

Cordialement !

0 Compliments
Message 5 sur 10
4 949 Visites

nordine24000 wrote: [...] Mais j'ai un souci avec la structure evenement  sous ma version de "Labview 2009 de base"

en effet je peut lancer un VI contenant une structure evenement mais pas en crée une ou la modifier ! Est ce du aà ma version ?


Salut,

 

La structure évènement n'est pas disponible en version de base (à partir de la version complète seulement). Cf. l'aide.

Help - Envent structure.jpg

 

A+

Message 6 sur 10
4 943 Visites

ARFFF ! ok Merci pour l'information M.Steiner Mathieu

 

(autre question plus ou moin liée ! ) j'ai la meme license pour l'application builder or j'utilise des structures evenements issu d'exemple Labview , est ce que j'aurais un probleme à ce moment là  ?  ( afin que je sache si je doit : ne pas utiliser cette structure ou demander une licence proffesionnel ?)

 

En attendant la solution proposé par ramses64 ne marche plus pour moi pour l'instant !

 

PS : j'ai toujours pas compris cette histoire de variable locale ! ca transfert les données uniquement en face avant ou les données sont réelement rediriger dans le diagramme au niveau où on a crée notre variable ! 

 

je reposte mon Vi un peu plus simplifier ! si tu vois autre chose n'hesite pas !

 

N’hésitez pas à faire des remarques comme ramses64  ! J'apprend de mes erreurs mais la j'apprend trop !

 

Merci encore

 

Cordialement.

 

 

 

 

 

0 Compliments
Message 7 sur 10
4 933 Visites
les variables local ne transfert les données que sur la face avant. on peut bien sûr utiliser des variables locales pour lire la donnée de la face avant afin de réduire la longueur des fils.
Cordialement
L.MICOU
Message 8 sur 10
4 931 Visites

Re,

 

Je veux bien jetter un oeilà ton code, mais je n'ai pas LV2009 sur ma machine de travail.

Peux tu poster en 8.6 ?

 

A+

0 Compliments
Message 9 sur 10
4 915 Visites

Voila le VI en 8.6 !

 

 

A savoir ! je me suis trompé sur l'utilisation des variables locales en pensant retourner les données au buffer ecriture VISA  or ce n'est pas le cas ! Il faut que je trouve une solution qui me permette d'envoyer les commandes de mes fonctions au buffer  (sans Structure evenement pour le moment )

 

 

merci de te pencher sur mon probleme !

 

Cordilement

0 Compliments
Message 10 sur 10
4 910 Visites