Discussions au sujet de NI LabVIEW

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

Mauvaise lecture read visa?

Bonjour á tous,

j´ai un problème dans le programme Labview ci joint. Ce programme a toujours bien fonctionné.sauf que je ne sais pas quels changements j´ai du faire pour que le Read Visa ne fonctionne plus bien. j´envoie une requête par le Write Visa j´attend que le Read Visa me renvoie les Bytes de la requête plus une reponse. le Read Visa me renvoie bien les bytes de la requête envoyée mais seulement les bytes de la reponse qu´il me renvoie est celui de l´evenement qui a été effectué avant et par celui de l´evenement actuel ainsi de suite. Exemple:

TX: 0xA0, 0x11,0x00,0x0A    -------> (Bytes envoyés)

RX: 0xA1, 0x11, 0x03, 0x0A  -------> (Reponse attendue)

mais j´ai dans le Read buffer,

RX: 0xA1, 0x11, 0x02, 0x0A  -------> (Reponse reçue, qui est celui de la requete precédente)

es ce que quelqu´un sait quel est le problème puisque je ne l´avais pas au début.

 

Merci d´avance pour vos reactions

Gisele

0 Compliments
Message 1 sur 6
3 990 Visites

Bonjour Gisele,

 

Je ne pense pas qu'il y ait un réel souci de cadencement du VI. Par contre, il est plausible qu'un buffer soit déjà présent au moment où vous ouvrez votre session VISA. Du coup, la première lecture lit ce buffer, et non pas la réponse à la première écriture, provoquant un décalage.

Vérifiez le nombre d'octets attendant au port avant les premières écritures/lectures !

 

Cordialement,

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

Message 2 sur 6
3 971 Visites

Bonjour,

j´ai essayée de vérifier le nombre d'octets attendant au port avant les premières écritures/lectures en implementant un property Node et un Visa Read juste avant le Visa Write pour pouvoir lire Number of Bytes at Serial Port avant les premières écritures/lectures. je reçois  que j ´ai 0 bytes avant l´ écriture et rien ne s´affiche dans Visa Read. Donc je ne sais pas si un buffer soit déjà présent au moment où j´ouvre la session VISA parceque je reçois 0 byte avant les premières écritures et lectures.

Si tel est le cas comment faire pour resoudre ce Problème?

merci d´avance

cordialement

Gisele

0 Compliments
Message 3 sur 6
3 965 Visites

Bonsoir,

j´aimerai par mesure de précaution juste avant l'écriture toujours vider le tampon de réception (receiver buffer).

comment implemente t-on cela dans Labview?

Merci

Bonne Soirée

Cordialement

Gisele

0 Compliments
Message 4 sur 6
3 958 Visites

bonne idée : Labview VISA Flush I/O Buffer, how can they be used?

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW |
LabVIEW Architect (CLA) & TestStand Developper (CTD) | LabVIEW Champion
MESULOG | NERYS

0 Compliments
Message 5 sur 6
3 953 Visites

Bonsoir,

j´ai essayée par mesure de précaution juste avant l'écriture de toujours vider le tampon de réception (receiver buffer), mais sa pas fonctionné. je pense le problème vient du fait que les 4 derniers Bytes que j´envoie c est generalement pour demander la reponse. et je les envoie en meme temps que les bytes de commandes.

J´aimerai donc envoyer les 4 derniers Bytes quelques secondes après les bytes de commandes.

Comment mettre un delay de quelques secondes dans l´envoie des 4 derniers Bytes?

ci dessous le VI.

merci d´avance et bonne soirée á tous

Gisele

0 Compliments
Message 6 sur 6
3 926 Visites