Discussions au sujet de NI LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Horodatage dans un fichier en TDMS (avec lecture en fichier Excel)

Solved!
Go to solution
Highlighted

Bonjour,

Je souhaiterai horodater des mesures à 10 kHz (par exemple), voici le VI en question (vous pouvez entrer un chemin fichier pour l'essai). Le wave form vient d'une acquisition (que je prend pour un exemple en réalité il est en continue venant d'une carte DAQmx). Je ne sais pas si c'est le VI 'TDMS -Ecrire' qui limite à ms ( 3 zéro après le virgule) ou bien c'est le fichier excel qui n'arrive pas à lire après 3 chiffres après le virgule. 

 

Excel.jpg    

Dans l'exemple je travaille à 10 kHz et il me manque un virgule. Savez vous d'où cela peut venir ? Si un autre utilisateur ouvre ce fichier tdms (fichier d'acquisition) pourra-il voir les quatres chiffres de précision ? Merci d'avance.

 

Cordialement

 

0 Kudos
Message 1 of 10
(400 Views)
Highlighted

Je ne sais pas ce que tu entends par une virgule qui manque mais pour le nombre de chiffres après la virgule tu peux essayer de faire un clic-droit sur t0 dans le tableau élément puis sélectionner Display Format ... et changer le nombre de digits pour 6.

 

Ben64

--------------------------------------------------
The best way to say thanks is to give kudos!
0 Kudos
Message 2 of 10
(375 Views)
Highlighted

Bonjour,

Ma fréquence d'acquisition étant à 10 kHz (je prends 30.000 éch/voie) tout les 0.1 ms je dois avoir un point. Or d'après mon précédent VI et dans le fichier Excel ci -dessous :  

 

1.jpg

J'ai 10:39:16,851 : il manque un chiffre de précision (soit 4 chiffres et non 3 chiffres après le virgule), en faisant un clique droit suivant ta méthode ne change rien au problème. En revanche je me demande si cela est limité par le fichier excel et non fichier enregistrement en TDMS.

  

0 Kudos
Message 3 of 10
(369 Views)
Highlighted

je vois bien ce que tu veux dire, en effet si tu laisses le "write TDMS" primitive faire la conversion timestamp to string, tu as 3 décimales.

si tu veux avoir un formatage "à toi" de ta string de timestamp, tu dois te la faire et donner un tableau de string au "write to TDMS" au lieu de donner un tableau de timestamp.

 

mais est-ce bien utile d'avoir une colonne "timestamp" dans ton fichier, sachant que tu as un incrément de temps fixe?

si tu sauves le t0 et dt, ça te suffit pas?

d'ailleur je sui à peu près sûr que la fonction "write TDMS" t'écrit le t0 et le dt dans un groupe du fichier tdms lorsque tu donnes en entrée ton waveform.


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

Epictetus

Antoine Chalons

0 Kudos
Message 4 of 10
(361 Views)
Highlighted
Solution
Accepted by topic author GSXR100038

Ha, en fait non, dans le TDMS c'est un DBL qui est enregistré pour chaque timestamp donc tu a toute la précision, c'est le plugin d'import vers Excel qui t'as fait le formatage en coupant à 3 décimales.

 

Ouvre ton fichier avec scout (gratuit) et tu verras

come je le disais dans le message précédent, la fonction write TDMS avec un waveform t'enregistre les propriété sur la chaque voies, c'est bien foutu!

Capture d’écran 2020-09-28 160628.png


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

Epictetus

Antoine Chalons

Message 5 of 10
(351 Views)
Highlighted

https://zone.ni.com/reference/en-XX/help/371361R-01/lvwave/get_waveform_attribute/#details


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

Epictetus

Antoine Chalons

0 Kudos
Message 6 of 10
(350 Views)
Highlighted

Bonjour Titou,

Non je ne pense pas nécessaire de faire un tableau de string car la fonction 'Get Waveform Time Array.vi' en allant dans son format d'affichage (comme d'ailleurs l'a remarqué Ben64) tu modifie ses propriétés pour avoir autant de précision après le virgule. Je me demande si le format est déjà précis mais c'est que Excel ne permet de le voir tout simplement, c'est un problème de visu seulement à mon sens

 

Format Excel.jpg 

Effectivement, il est un peu inutile de rajouter une colonne de Timestamp car on connait t0 et delta t entre les acquisitions. Je voulais simplifier le fichier pour éviter que mes collègues modifient sous Python.   

 

 

0 Kudos
Message 7 of 10
(347 Views)
Highlighted

des virgules comme séparateur décimal... c'est très français ça!

Windows en français France utilise la virgule par défaut, même Windows en français Suisse utilise le point.

Je me demande Windows français Belge 😮

Mais bon...

 

Pour tes collègues Python, il existe des libraries pour charger directement le TDMS, comme ça pas de soucis de transcription 😉

 

https://pypi.org/project/npTDMS/


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

Epictetus

Antoine Chalons

0 Kudos
Message 8 of 10
(337 Views)
Highlighted

Bonjour Titou,

 

Je n'ai pas ouvert avec scout mais nous avons DIAdem et je l'ai ouvert le fichier et effectivement la précision est attendue. 

DIAdem.jpg

 

Merci pour la réponse et bonne journée.

 

 

0 Kudos
Message 9 of 10
(311 Views)
Highlighted

Bonjour,

Je reviens encore sur ce topic désolé. Après avoir effectuer avec une Fe=10 kHz j'essaie avec une Fe= 100 kHz et là je n'obtient pas les précisions attendues avec DIAdem. Probablement avec un cDAQ simulé je ne pourrai pas aller au delà de 100 Khz  ? Ci joint le nouveau VI avec 100 kHz. Merci de vos conseils. 

Copie d'écran avec DIAdem : 

limité à 4 chiffres.jpg

Probablement il faut peut-être afficher la précision sous DIAdem pour voir 5 chiffres après le point ? Merci

 

 

  

0 Kudos
Message 10 of 10
(300 Views)