Discussions au sujet de NI LabVIEW

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

Récupérer tension et l'envoyer par le protocole UDP

Résolu !
Accéder à la solution

Bonjour à tous !

 

Tout d'abord je vais exposer ma problématique : je dois récupérer une tension alternatif sous LV et la transmettre par le procotole UDP sur Max MSP. Je possède un GBF et une carte d'acquisition NI USB-6216.
Pour utiliser le protocole UDP sous LV, j'ai vu qu'il fallait envoyer les données sous forme d'une chaîne de caractère. 

 

Donc actuellement j'arrive à récupérer la tension via DAQmx, j'arrive à transformer cette tension analogique en une donnée numérique. Ensuite c'est ici que ça se complique :

J'ai décidé d'utiliser "obtenir des des composantes de données numériques" pour avoir un tableau de données que je puisse transformer en chaîne de caractères. 

Le problème est : sur mon waveform de données numériques, j'ai 1 donnée numérique par échantillon, or sur mon tableau de données numériques, j'ai uniquement les 2 premiers échantillons. 

Je ne comprends pas pourquoi il ne m'affiche pas un tableau avec tout mes échantillons. Si quelqu'un a une idée pour que je puisse résoudre ce soucis.

 

Je vous met le VI en pièce-jointe pour que vous y voyez plus clair.

0 Compliments
Message 1 sur 3
2 725 Visites
Solution
Accepté par l'auteur du sujet Aspx

Il y a un truc magique dans labview, c'est que les les waveform graph "bufferisent" les valeurs automatiquement. Je m'explique : tu branches le graph avec une valeur dans une boucle While, et automatiquement le graph se met à jour et fait défiler les valeurs.

Ce comportement est pratique, mais il induit en erreur, car les valeurs ne sont en réalité pas bufferisées par programmation, c'est le graph qui le fait tout seul. Pour extraire les données, il faut arrêter la boucle et récupérer tout ce qui a été acquis.

Regarde l'exemple en annexe. (Pour changer le mode du tunnel en sortie: clique-droit, tunnel mode, concatening).

 

J'espèere avoir compris ta question...

 

Message 2 sur 3
2 700 Visites
C'était pas tout à fait le problème mais tu m'as aidé à comprendre l'histoire de buffering. Merci à toi. J'ai réussi à résoudre mon problème, il me fallait juste utiliser la transformation tableau 2D -> 1D.  De plus, le protocole UDP n'autorise pas assez de valeurs, je suis passé par le protocole TCP.
0 Compliments
Message 3 sur 3
2 678 Visites