Example Code

TDMS to ASCII File Converter Using LabVIEW

Products and Environment

This section reflects the products and operating system used to create the example.

To download NI software, including the products shown below, visit ni.com/downloads.

    Software

  • LabVIEW

Code and Documents

Attachment

Overview
This example allows user to convert from the TDMS (a binary format) to ASCII files, which can be opened in any text editor

 

Description

This convertor allows user to select a delimiter, and generate a single file for all data or create an individual file with each group
The ASCII converter allows user to write files in the TDMS format to gain the performance advantages, then convert the file once it is written to a more easily accessible format.  This is also useful when using the built-in logging functionality of the DAQmx drive.

 

Requirements

  • LabVIEW 2012 (or compatible)

Steps to Implement or Execute Code

  1. Insert a correct TDMS file path
  2. Field the correct destination file path and choose the group handling method.
  3. Run VI then will generate a new ASCII file path

 

Additional Information or References
Labview front panel

1.png 

 

 

 **This document has been updated to meet the current required format for the NI Code Exchange.**

 

 

 

Al B.
Staff Software Engineer - TestStand
CTA/CLD

Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.

Comments
likewise
Member
Member
on

Hello,

 

I have used the converter tool for converting my data acquired through a multi-function DAQmx card (PXIe-6396). While the vi technically operates very well, I am concerned about the correct data scaling. When I compare the converted data using the v12 VI on LV 2016 with the proprietary TDMS File Viewer (see http://zone.ni.com/reference/en-XX/help/371361R-01/lvdialog/tdms_file_viewer_db/), the data differ: 

 

Here is the TDMS Viewer output of the first 5 lines

0,524075 0,351363 0,702558
0,520087 0,349645 0,705598
0,522465 0,353551 0,711365
0,523434 0,352879 0,710115
0,524364 0,353793 0,708333

 

and here the result from TDMS to ASCII Convertor 2012 NIverified.vi

0,5189726336 0,3512462884 0,6960789317
0,5211136101 0,3491289421 0,6997128930
0,5229029664 0,3502384003 0,6999864170
0,5251455223 0,3511603444 0,7049958137
0,5220981468 0,3507540640 0,7089032998

 

It seems that different scaling operations have been applied. How do I know which data are correct ? They were read from the same .tdms file.