Discussions au sujet de NI LabVIEW

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

Modifier la fréquence d'acquisition d'une Waveform sur oscillo tektronik

Résolu !
Accéder à la solution
Highlighted

Bonjour,

 

Je rencontre quelque problème pour la mise en place d'un programme Labview de pilotage d'oscilloscope.

 

Mon objectif est de pouvoir contrôler la fréquence d'acquisition de la tension mesurée pour ensuite l'inscrire dans un fichier.

 

Pour l'instant mon programme (cf fichier joint) crée des tableaux de 10 000 mesures en ligne deux ou trois fois par seconde. Et j'utilise la fonction redimensionner un tableau pour n'avoir qu'une donnée par ligne.

 

J'aurais donc besoin, sans y parvenir,

-soit d'augmenter le nombre de mesure par seconde

-soit d'augmenter le nombre de mesure par ligne

 

Le problème c'est que j'ai l'impression de n'avoir la main sur rien.

J'ai essayer la fonction "dt à l'échelle" mais ça ne change rien au fichier que je récupère à la fin...

 

Je vous remercie d'avance pour toute l'aide que vous voudrez bien m'apporter.

0 Compliments
Message 1 sur 7
779 Visites
Highlighted

En général un oscilloscope acquisitionne toujours à fréquence constante. On peut modifier le nombre de points à acquisitionner et la base de temps pour sélectionner et manipuler un sous ensemble des points acquisitionnés.

 

Par exemple, pour un oscilloscope qui a une fréquence d'échantillonage de 2.5GS/s. Si on acquisitionne 10K points et que la base de temps (timebase) est de 10 secondes (ce qui correspond à 1 sec/div) on obtiendra l'équivalent de 1000 points/sec ce qui correspond à un intervalle de 1 ms entre chaque point. En réalité en 1 ms l'oscilloscope aura acquisitionné 2.5 x 10^6 échantillons et c'est là que le mode d'opération entre en jeu. Si on est en mode "sample" (mode par défault) alors seulement le premier des 2.5x10^6 points est retenu, en mode HiRes la valeur retenue est la moyenne de ces 2.5x10^6 points. Je te recommande de consulter la documentation de l'oscilloscope pour plus de détails et pour l'explication des autres modes.

 

Donc, pour modifier l'acquisition de ta waveform tu peux utiliser le vi Configure Timebase.vi qui est inclus dans la librairie Tektronix.

 

Additionellement, je te recommande d'utiliser un seul fil Visa Resource pour relier les vi de la librairie Tektronix (la plupart de ces vi ont une entrée et sortie visa resource) et de fermer la session visa à la fin (après la boucle while) à l'aide du vi Close.vi.

 

Ben64

--------------------------------------------------
The best way to say thanks is to give kudos!
Message 2 sur 7
715 Visites
Highlighted

Merci beaucoup pour votre aide !

 

Je vais essayer d'avancer dans cette direction 😉

0 Compliments
Message 3 sur 7
604 Visites
Highlighted

Je me permets de revenir vers vous...

 

Grâce au VI "Configure Timebase", j'arrive bien à paramétrer mon nombre de points (ce qui est un grand plus merci beaucoup).

Malheureusement, je n'arrive toujours à régler mon nombre d'acquisition par seconde. Dans mon fichier de résultats (cf pièce jointe) j'ai toujours deux ou trois lot de mille point par seconde. J'ai beau essayer de modifier tous les paramètres (time base, mise à l'échelle du dt...) rien n'y fait.

 

Ce que j'aimerai c'est arriver à avoir un lot de oints toutes les secondes, et de pouvoir paramétrer le nombre de points dans ce lot avec le "Record Length" du VI "Configure Timebase".

Auriez-vous des pistes pour moi ?

 

Merci d'avance pour toutes aides supplémentaire que vous voudrez bien m'apporter.

Cordialement

Download All
0 Compliments
Message 4 sur 7
574 Visites
Highlighted
Solution
Accepté par l'auteur du sujet FrançoisUPHF

Je ne suis pas sur de comprendre le but de ton vi. Si c'est pour enregistrer des waveforms dans un fichier, il existe des fonctions pour cela. Voir l'exemple Waveform - Write Waveforms to File.vi.

 

Sinon il est possible de remplace ta boucle while par une boucle cadencée à 1000ms. Cela fera que ton acquisition est sauvegardée toutes les secondes. 

0 Compliments
Message 5 sur 7
534 Visites
Highlighted

Quel est le modèle de ton oscilloscope, quel timebase et Record lenght as-tu utilisé?

 

Je te recommenderais également de ne pas faire la sauvegarde du data dans la boucle d'acquisition mais plutôt d'utiliser une file pour envoyer le data dans une boucle dédiée à l'écriture dans un fichier (voir l'architecture Producteur/Consommateur).

 

@Walker34, je ne recommande pas l'utilisation d'une boucle cadencée car ici c'est le temps d'acquisition de l'oscilloscope qui détermine le cadencement. Une boucle cadencée fonctionnerais si la durée de l'acquisition est inférieure à 1 seconde mais dans ce cas les points ne seraient pas distribués uniformément dans l'intervalle (à moins que ce soit ce qui est voulue mais comme tu le dis le but n'est pas très clair).

 

Ben64

--------------------------------------------------
The best way to say thanks is to give kudos!
0 Compliments
Message 6 sur 7
524 Visites
Highlighted

J'utilise un modèle Tektronix MDO 3034, avec un Record Lenght de 1000. Pour la timebase j'ai essayer plusieurs valeur 10 - 1 - 0,1 secondes mais ça n'a rien changé au fichier que j'obtiens à la fin.

 

Mon but est d'écrire les mesures de mon oscilloscope dans un fichier. Avec une mesure uniformément répartie sur un dt que je peux choisir.

 

Désolé pour mon manque de clarté et encore merci pour votre aide.

0 Compliments
Message 7 sur 7
521 Visites