Discussions au sujet de NI LabVIEW

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

Horodater des mesures avec TDMS

Résolu !
Accéder à la solution

Bonjour,

J'ai fait un VI qui permet d'enregistrer les valeurs de mesures, tout va bien jusqu'ici mais en revanche savez vous comment je peux rajouter l'horodatage des mesures dans le fichier TDMS ? Je vous remercie par avance. Je travaille sur une cible cRIO et avec une variable partagée je récupère les valeurs dans un tableau de double. 

 

PS : ci-joint les VIs en version 2015

Tout télécharger
0 Compliments
Message 1 sur 13
2 695 Visites

ajouter horodatage.png

Ben64

 

0 Compliments
Message 2 sur 13
2 687 Visites

Bonjour,

Le VI "To Waveform.vi" il fonctionne sur la cible cRIO, je pense qu'on récupérer l'horodatage sur le cRIO via le VI "RT Get Timestamp.vi". Mais en revanche je ne sais pas comment

 

   

 

 

 

0 Compliments
Message 3 sur 13
2 683 Visites

Bonjour,

J'ai fait un VI qui ajoute date et heure en seconde, dans le fichier d'enregistrement j'ai seulement deux colonnes, il ne prend pas la colonne d'horodatage. Savez-vous pour quelle raison, j'ai du oublié une étape.....

 

PS : ci-joint le VI en version 2015      

0 Compliments
Message 4 sur 13
2 661 Visites

Je pense que tu mélanges un peu les choses.

Un waveform c'est fait pour avoir un t0, un dt et un tableau de valeur, ça veut donc dire que le dt est fixe.

Si tu veux écrire à une fréquence non fixe dans ton fichier, alors n'utilise pas un waveform.

 

Dans ton exemple tu mets 3 voies (tableau contenant 3 chaines de caractères) mais tu donnes un tableau contenant 2 waveforms. C'est pas la bonne méthode.

 

Dans ton appli, est-ce que ta fréquence d'acquisition est fixe?

Est-ce que tes 2 voies (vitesse et feedback) sont acquisent de manière synchrone?

Si oui, tu peux enregistrer en waveform, mais je te conseille de regarder les exemples de LabVIEW pour mettre tes données dans le bon ordre.


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 5 sur 13
2 659 Visites

Bonjour Titou,

Les 2 voies (vitesse et feedback) sont à la même fréquence. Effectivement j'ai un tableau contenant 3 chaines de caractères et je lui donne que 2 waveforms pour l'enregistrement l'idéal serait que dans la première waveforms j'enregistre uniquement l'horodatage et les 2 autres colonnes sont vitesse et feedback. Je vais regarder les exemples dans LabVIEW. 

   

 

0 Compliments
Message 6 sur 13
2 656 Visites

Bonjour,

 

Après avoir parcouru les exemples de LabVIEW, je ne trouve pas le moyen de mettre la première colonne en horodatage dans une waveforms (ci-joint la copie d'écran). Avez-vous une idée ?

Merci d'avance

 

PS : copie d'écran

 

   

0 Compliments
Message 7 sur 13
2 648 Visites

Dans ton application, tu vas écrire les points un par un? Quelle est ta fréquence d'acquisition?

 

Le waveform n'est pas fait pour avoir une colonne "temps", il contient un t0 et un dt qui sont valable pour l'ensemble du tableau de points, donc si tu utilises le waveform pour écrire ton TDMS tu n'auras pas de colonne de temps, c'est normal.

Prends l'exemple : TDMS Write Time Domain Data.vi

Lorsque tu relis le TDMS, il y a deux voies, mais une seule colonne par voie, pour chaque voie, dans les propriétés il y a le t0 et le dt, qui te permettent si tu le souhaite de recréer la colonne temporelle.


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 8 sur 13
2 645 Visites

si tu veux absolument une colonne avec le temps, c'est possible mais ça va être un peut pénible à faire car le tdms est bien adapté au waveform mais moins au tableau de différents type.

Ce que tu peux faire, c'est avoir une voie "temps" sous forme de string ou de DBL (=timestamp) en plus de tes deux voies de données (qui elles seront sous forme de DBL et pas de waveform).

 

regardes l'exemple attaché.


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 9 sur 13
2 642 Visites

Bonjour Titou,

Merci pour le VI d'exemple, pourras tu poster le VI avec la version de LabVIEW 2015 car je ne possède pas la version de LabVIEW 2018. Merci d'avance.

Titou a dit :


Lorsque tu relis le TDMS, il y a deux voies, mais une seule colonne par voie, pour chaque voie, dans les propriétés il y a le t0 et le dt, qui te permettent si tu le souhaite de recréer la colonne temporelle.


Alors si je comprends bien, lors de l'enregistrement on ne peut pas (ou alors pas simple) mais en revanche à la lecture du fichier d'enregistrement on pourra l'avoir l'horodatage ? Pourtant j'ouvre mon fichier avec "Excel Importer" et je ne vois pas la colonne temps ! Probablement il faut faire un VI dans LabVIEW qui permet de lire le fichier d'enregistrement précédemment sans doute, dans ce cas là je ne pense pas que pour les utilisateurs cela les intéresseraient. J'avais choisi le fichier TDMS car par rapport au fichier texte cela prend moins de mémoire (tout les 0.2s j'enregistre 4 voies) et d'autant plus que pour ouvrir un fichier ".txt" cela prend pas mal de temps pour rapport au fichier indexé de TDMS. Merci, je vais regarder ton VI           

0 Compliments
Message 10 sur 13
2 638 Visites