Log data in TDMS format
Hi I would like to log the acquired digital and analog data ( 2 seperate channels) into one 1 TDMS file. I acquire both signals in the same loop. Could you please help me on this and let me know how can I wrire and read it back using TDMS format
Thanks
You can find examples in LabVIEW like TDMS - Write/Read (events) which I think can satisfy your requirements with some modifications.
Similar Messages
-
Hey peope of the world, I have a question about how to use the TDMS write function. I have never used this form of file I/O and even still I'm not very good at even using write to spreadhseet functions. My attached project is based of the continuous measurement and logging template, and I know that they use TDMS in their program. My only issue is I dont quite understand what all theyre doing and quite frankly I dont believe my program requires such detail in the logging loop. I have a logging loop setup with a open/write/close TDMS functions connected, but I'm pretty positive im doing it wrong. Any suggestions/feedback would be greatly appreciated, thank you!!!
Attachments:
DC Motor Dyno Test.zip 501 KBWhen you open a log from that test can you tell me when the log was started? When was it stopped? What computer was it ran on? What user was logged in when it ran? What is the time between samples, or sample rate? Did the test end due to an error? Or what was the test end reason? What was the settings to the test? Meaning what was the selected current, voltage, or loads? What was the UUT type? What was the UUT serial number? And I just realized what is the name of the data you recorded?
TDMS allows for properties to be set, which can be like meta data. Information about the data that can help you understand more about how the data was taken. This information is very useful in helping to understand an event that likely took place when someone wasn't around to see what happened.
To set properties use the TDMS Set Properties. If you give no group or channel name then the property is set on the file which will probably be fine for all the settings I mentioned.
Another thing is I highly recommend giving a Group name and Channel name to the data being logged. I actually thought the write VI had these terminals as required. Without it I have no idea what the data even is. Is it a pressure sensor? Is it in Voltage, or Current? Is it RPM? Is it Analog 0 or Analog 1? These types of things can be better understood with a channel name, and properties of the channel.
Oh and if your index file is too big at the end (it should be on the order of a few kb) then use a TDMS defrag on the file after the close to save space.
Unofficial Forum Rules and Guidelines - Hooovahh - LabVIEW Overlord
If 10 out of 10 experts in any field say something is bad, you should probably take their opinion seriously. -
Write to measurement file loses timestamp data in tdms format
Hello all, I'm using the Write to Measurement File expressVI and I have created a loop in order to be able to individually label the column headers for each data signal that I'm writing. However, while the loop is successful in doing this the resulting TDMS file that the expressVI creates ends up losing the timestamp data that is used to record the time for each row and just writes a '0' instead. The timestamp data is present before the loop that adds column headers, which I have verified by adding an expressVI just before the loop. Please see the attached code for clarification.
How do I regain the timestamp info after the for loop executes and adds column header info? Thank you.
Attachments:
Write to measurement file specify column name.vi 106 KBThe problem with Express VIs and with the Dynamic Data wire is that they (almost) complete obscure what is being done "under the covers". They manipulate data in ways that are unseen and often unexpected. While they allow beginners to do extremely simple tasks quickly, they can easily lead to situations such as you are discovering.
If what you want to do is to write a TDMS data file, you should probably investigate the TDMS functions on the File I/O palette. I've not used TDMS myself, but I know there are examples and documentation in the LabVIEW Help. I suspect that if you do go with straight TDMS, you will probably save yourself further problems by not bundling your four inputs into a Dynamic Wire, but making them a 1D Array (or possibly a Cluster).
Bob Schor -
To write data into TDMS at a interval time
Hi, I am developing sensors (mass flow controller, thermocouple etc) and uses DAQ to read the data. Then I write the data into TDMS format.
The problem is I need to read the data at 1sec interval but write the data into TDMS format in 10sec interval.
I developed the vi in a while loop which I set the timing to be 5s while I figure the sampling rate of the DAQ Assistant to 1sec. But both read and write have the speed of 5s.
Please kindly share your opinion.
Thanks and regards.Blueberet wrote:
I developed the vi in a while loop which I set the timing to be 5s while I figure the sampling rate of the DAQ Assistant to 1sec. But both read and write have the speed of 5s.
What do you exactly mean by this? Is it possible for you to post a snapshot of version of your code that isolates the issue?
Adnan Zafar
Certified LabVIEW Architect
Coleman Technologies -
Saving acquired data in text format instead of TDMS using the NI DAQ ANSI C code
Hello,
I would like to know how to change the code to make it save the file in .txt format instead of TDMS format.
It would be great if you could help me out with this !!!
I am attaching the DAQ mx ANSI C code for your reference
Thanks,
Haritha Srinivasan
Attachments:
TDMS-Cont Acq-Int Clk.zip 1360 KBHello Haritha, Hope you are doing great!
I think this covers up what you are looking for.
This has been covered in other forum before, please feel free to check it.
Regards,
LuisA -
Logging Data from USB 6000 without Labview
Greetings all.
I am sure this questions is buried somewhere, so I apologize if I am repeating a question that has already been posed and addressed. If this is a redundant question, simply pointing me to the relavent post will help.
I've got a USB 6000. I've got it set up and working just fine in a MAX test panel. Is there any way to log acquired data to any sort of file without Labview, measurment studio, signal express, or lab windows/cvi? In a similar note, being able to acquire and log data without a different programming routine like .Net or C++. Maybe there is a way to create a task and call it from an excel macro?
I know I've dug my own grave by getting the bottom of the like USB DAQ. However, even with the USB-6000, there must be a way to log the data being acquired without needing to make additional investments in development software. Not trying to do anything fancy like triggering or data manipulation, I'm just looking to log measured voltages to file and do post processing in Excel.
Again, I am sure this (or at least a similar) question has been posed before. Any help would be appreciated.
Thanks,
BenI think Signal Express is what you really want to use here. It was designed for the very high level, simple measurement acquisition.
In MAX, you can set up the task to log to a TDMS file. With that enabled, you should be able to just let Signal Express run your task and then tell it to stop whenever you want it to and the data will be logged. -
hi everybody!!
can i save an array of string in tdms format???
how can i do it??any example??You can save a string array in .tdms file in either of the following two approaches:
Save an array of string in a "string data type" channel;
Also you can choose to save an array of string in the form of properties.
The string data type channel is a simple way to store a string array, shown in the picture below. The channel is natively an array of elements of the same data type.
I wrote an example VI to demonstrate the both ways to save a string array, you can refer to the attachment VI for details.
Attachments:
SaveStringsInTDMS.vi 14 KB -
Transfer Data to TDMS Cluster (TDMS4HCM)
Hello experts,
could anyone please let me know how I can transfer the data to the tdms cluster. I have completet follwoing steps.
-> Prepare Data Transfer (Status: Execution successfully completed)
-> Data Transfer (Status: Execution successfully completed)
But if I compare the Data from the receiver system with the data of the sender system it seems to be identical.
I used the standard SAP_HCM_DE_GERMANY Scrambling rule.
The extende process monitor seems to be ok. The only steps without a status information are:
- Return to Configuration and Selection and
- Transfer Data to TDMS Cluster
The whole Data Transfer Phase is still in status: Running in process
Is there anything else I have to do to copy the data?
Regards
MarcoHello Marco,
As per the steps mentioned by you, the data transfer is comeplete.
You need not execute the below steps to complete the data transfer.
- Return to Configuration and Selection and
- Transfer Data to TDMS Cluster
But as told that you have used SAP_HCM_DE_GERMANY Scrambling rule, can you just check in the log of the activity 'Transfer Selection Criteria', whether the scrambling rule SAP_HCM_DE_GERMANY has been activated or not.
You need to activate the scrambling rule 'SAP_HCM_DE_GERMANY' in activity 'Define Scrambling rules'.
If you still face any issues, raise an OSS message.
Regards,
Prasanth -
Log data when signal is for at least one hour stable
All, can you please help me out with the following;
I have data to log when one signal is for at least one hour between two values. If this is the case, all the data can be kept. If this is not the case, let's say after 30min that one signal is out of spec, previous measured data in those 30min may not be displayed in the log file. Does somebody have a solution for this?
Thanks in advance
Solved!
Go to Solution.So, it means, you want to log data if pressure is between 8 and 12 bar. Else, discard data and continue monitoring of data. Monitor only value
Right?
you can compare the pressure value using an In Range function and put a case structure to log data only when the value is in range. use timestamps to know when the data was in range. so the file only contains data when the pressure is in range
Or, if you want to log data ONLY IF the presusre was between 8 and 12 bar AND for an hour or more, then, put a timer to check time elapsed since the last value change and then log if timer has counted an hour. Then instead of inrange, use a shift register to see the last value which changed and then turn on a timer. When the value changed next, update the shift register. when the timer is up, reset the timer and log data.
I will take time to put these two logics on code and post. instead, you can make a code of either of the two options and post back. we can review your progress.
Almost forgot two questions: How are you reading the data? hardware used and data type? which file format do you plan to use? -
Possible to log data this way?
Hello, i was wondering if its possible to have data logged onto a file in the following manner. Essentially, whenever someone starts the program, it'll log data into a NEW file everytime they push start. To make sure the file doesn't overwrite itself, I'll use LV's time stamp feature as a string to append itself onto the name of the file. In the end, everytime someone starts the program, it'll have the name of the file followed by the time stamp which will be saved to some directory.
thank you.BurningH34t wrote:
Hello, i was wondering if its possible to have data logged onto a file in the following manner. Essentially, whenever someone starts the program, it'll log data into a NEW file everytime they push start. To make sure the file doesn't overwrite itself, I'll use LV's time stamp feature as a string to append itself onto the name of the file. In the end, everytime someone starts the program, it'll have the name of the file followed by the time stamp which will be saved to some directory.
thank you.
Hello,
Here is a simple VI which produces new files in a readable timestamped format which will always save files within the same directory as the VI itself.
This VI saves to a spreadsheet as an example but it could be easily replaced with more file I/O.
Alex Thomas, University of Manchester School of EEE LabVIEW Ambassador (CLAD)
Attachments:
AutoNaming.vi 13 KB -
Displaying data in readable format
select *from user_tables;
TABLE_NAME TABLESPACE_NAME CLUSTER_NAME IOT_NAME STATUS PCT_FREE PCT_USED INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE FREELISTS
FREELIST_GROUPS LOG B NUM_ROWS BLOCKS EMPTY_BLOCKS AVG_SPACE CHAIN_CNT AVG_ROW_LEN AVG_SPACE_FREELIST_BLOCKS NUM_FREELIST_BLOCKS DEGREE INSTANCES CACHE TABLE_LO SAMPLE_SIZE LAST_ANAL PAR IOT_TYPE T S NES BUFFER_ ROW_MOVE GLO USE
DURATION SKIP_COR MON CLUSTER_OWNER DEPENDEN COMPRESS DRO
JOB_GRADES USERS VALID 10 1 255 65536 1 2147483645
YES N 6 5 0 0 0 9 0 0 1 1 N ENABLED 6 03-SEP-12 NO N N NO DEFAULT DISABLED YES NO
DISABLED YES DISABLED DISABLED NO
ERROR USERS VALID 10 1 255 65536 1 2147483645
YES N 1 5 0 0 0 84 0 0 1 1 N ENABLED 1 03-SEP-12 NO N N NO DEFAULT DISABLED YES NO
DISABLED YES DISABLED DISABLED NO
TABLE_NAME TABLESPACE_NAME CLUSTER_NAME IOT_NAME STATUS PCT_FREE PCT_USED INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE FREELISTS
FREELIST_GROUPS LOG B NUM_ROWS BLOCKS EMPTY_BLOCKS AVG_SPACE CHAIN_CNT AVG_ROW_LEN AVG_SPACE_FREELIST_BLOCKS NUM_FREELIST_BLOCKS DEGREE INSTANCES CACHE TABLE_LO SAMPLE_SIZE LAST_ANAL PAR IOT_TYPE T S NES BUFFER_ ROW_MOVE GLO USE
DURATION SKIP_COR MON CLUSTER_OWNER DEPENDEN COMPRESS DRO
TEST_A USERS VALID 10 1 255 65536 1 2147483645
YES N 3 5 0 0 0 16 0 0 1 1 N ENABLED 3 03-SEP-12 NO N N NO DEFAULT DISABLED YES NO
DISABLED YES DISABLED DISABLED NO
COLLECTIONS_EG USERS VALID 10 1 255 65536 1 2147483645
YES N 1 1 N ENABLED NO N N NO DEFAULT DISABLED NO NO
TABLE_NAME TABLESPACE_NAME CLUSTER_NAME IOT_NAME STATUS PCT_FREE PCT_USED INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE FREELISTS
FREELIST_GROUPS LOG B NUM_ROWS BLOCKS EMPTY_BLOCKS AVG_SPACE CHAIN_CNT AVG_ROW_LEN AVG_SPACE_FREELIST_BLOCKS NUM_FREELIST_BLOCKS DEGREE INSTANCES CACHE TABLE_LO SAMPLE_SIZE LAST_ANAL PAR IOT_TYPE T S NES BUFFER_ ROW_MOVE GLO USE
DURATION SKIP_COR MON CLUSTER_OWNER DEPENDEN COMPRESS DRO
DISABLED YES DISABLED DISABLED NO
COUNTRIES VALID 0 0 0 0
N 4 0 19 0 1 1 N ENABLED 4 03-SEP-12 NO IOT N N NO DISABLED YES NO
DISABLED YES DISABLED DISABLED NO
DEPARTMENTS EXAMPLE VALID 10 1 255 65536 1 2147483645
TABLE_NAME TABLESPACE_NAME CLUSTER_NAME IOT_NAME STATUS PCT_FREE PCT_USED INI_TRANS MAX_TRANS INITIAL_EXTENT NEXT_EXTENT MIN_EXTENTS MAX_EXTENTS PCT_INCREASE FREELISTS
FREELIST_GROUPS LOG B NUM_ROWS BLOCKS EMPTY_BLOCKS AVG_SPACE CHAIN_CNT AVG_ROW_LEN AVG_SPACE_FREELIST_BLOCKS NUM_FREELIST_BLOCKS DEGREE INSTANCES CACHE TABLE_LO SAMPLE_SIZE LAST_ANAL PAR IOT_TYPE T S NES BUFFER_ ROW_MOVE GLO USE
DURATION SKIP_COR MON CLUSTER_OWNER DEPENDEN COMPRESS DRO
NO N 8 5 0 0 0 19 0 0 1 1 N ENABLED 8 03-SEP-12 NO N N NO DEFAULT DISABLED YES NO
DISABLED YES DISABLED DISABLED NO
EMPLOYEES EXAMPLE VALID 10 1 255 65536 1 2147483645
NO N 20 5 0 0 0 66 0 0 1 1 N ENABLED 20 03-SEP-12 NO N N NO DEFAULT DISABLED YES NO
DISABLED YES DISABLED DISABLED NOi want to display the data in readable format
10g oracle.Hi,
Rahul_India wrote:
i want to display the data in readable formatHow to do that depends on what you consider "readable".
SET PAGESIZE higher, to get fewer header rows.
SET LINESIZE higher, if appropriate
Look up the COLUMN command in the SQL*Plus manual The
FORMAT
FOLD_AFTER, FOLD_BEFORE
TRUNCATED, WRAPPED, WORD_WRAPPED
options are especially useful.
Do you really need to see all the columns? If not, don't use SELECT *.
Consider explicitly listing the columns in a different order. The output may be more readable if related columns are listed together, or one directly above the other. At any rate, you can probably pack multi-line output more tightly if you specify the order.
Do you have a text editor where reading long lines is easier than it is in the SQL*Plus window? If so, SPOOL the output, and read the file it creates in your editor. -
Datensatz-Eigenschaften in TDM-Format
Hallo,
mit der Version 9 sollten Daten im TDM-Format abgespeichert werden.
Nach jeder Messung werden die Daten in einer TDM-Datei gespeichert.
Für die Auswertung werden mehrere Dateien in das Datenportal geladen.
Bei älteren Dateien im DAT-Format werden die Datensatz-Eigenschaften durch das Script "DAT_HeaderToChnGrp" dazugeladen und in den Kanalgruppen-Eigenschaften ergänzt.
Dieses kann für jede DAT-Datei im Datenportal durchgeführt werden.
Mit der Version 9 werden die Daten nach der Messung jetzt im TDM-Format abgespeichert.
Für die Auswertung werden jetzt mehrere TDM-Dateien in das Datenportal geladen.
Für jede Datei gibt es eine Kanalgruppe und entsprechende Eigenschaften.
Wie können die Datensatz-Eigenschaften von einzelnen TDM-Datei dazugeladen werden?
Gibt es einen Befehl HDLoad() für TDM-Dateien ?
Gruß
T. SchusterHallo Hr. Schuster,
dazugeladen werden kann es nicht direkt, meines Wissens nach.
Sie koennen jedoch im VBS Script mit
ChnPropGet, ChnPropSet und ChnPropCreate arbeiten.
MfG
ThSa
http://www.newgistics.com -
SAP Business Workplace - No log data exists message
Hi,
We have the work items of EDI 810 configured to reach the workflow inbox of certain users. The users have 300+ items in their workflow inbox - but when they click the Workflow Inbox they get a message - "No log data exists".
The message is an error type: Message BL 223
The message is coming from the function module BAL_CNTL_REFRESH.
We tried to get the same workflow positions assigned to our user id and the unprocessed 300 + items came to our inbox and we are able to view and process the work items without any issue.
The issue pertains only to the two users. It seems like it has something to do with the filter / layout settings set for the two users alone. Could you please advice.
Regards,
PrabaharanHi
i am using SAP GUI at client place via Citrix.
it was working fine till yesterday
pls suggest. wat could be other possible reason
thanks -
Hi experts
when i am entering RRMX tcode. i am getting error message at status bar as " No log data exists"
Please help me out. What could be reson and how can i reslove it
thanks
pavanHi
i am using SAP GUI at client place via Citrix.
it was working fine till yesterday
pls suggest. wat could be other possible reason
thanks -
Change Log Data from DSO to CUBE
Hi Experts,
Is it possible to load/transfer change log data as well from DSO to Cube
ThanksHi,
Yes it is possible.
Create a DTP from DSO to cube.
In the extraction tab of DTP choose the option
Datasource Change log
Hope it Helps!!
Reward if useful
Manish
Maybe you are looking for
-
Hi..help me in getting certified
I am going for SAP XI certification..Please provide me some sample questions.. Mail to : [email protected]. Your help will be apprecited and awrded.. Thanks.. Satya...
-
Why my notes from my iPhone 5 don't synchronize w/ iCloud?
I just tried to tranfer my notes from my iphone 5 to my MacBook Pro, I did my homework by uploading and sinchronizing my phone with Itunes and then with iCloud. And the notes taken today didn't tranfer to icloud??? all my points are checked/on. any o
-
Do u use vista 32bit or 64bit software with bootcamp 1.4?
I just got a mac pro and need to use older pc software and will load vista. macpro is 64bit computer but the bootcamp 1.4 manual says for XP use 32 bit software. Is this the same for Vista, or can I use 64bit vista software? Many thanks
-
So I noticed tonight that as I was trying to set a new wallpaper, that it seems to let you adjust the picture but you can't reduce the size to make it fit the screen. If someone can help me this I would be most appreciative.
-
I have read that backing up by ethernet is faster than by WiFi. Makes sense. If I plug my TC directly into my iMac by ethernet, and then kickoff a backup, will it default to the ethernet method or backup by WiFi? Is there a setting I must chose to e