LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Data missing from measurement file

I have a critical issue with the Write Measurement File SubVI - although I captured and write the data for 60 sec, the measurement file only contains data totaling 30 sec. It seems that for every 10 sec of data, the next 10 sec is not recorded, i.e. the measurement only contains data for 0-10 sec, 20-30 sec and 40-50 sec but not that for 10-20 sec, 30-40 sec and 50-60 sec. I need to solve this urgently, please assist.

0 Kudos
Message 1 of 21
(3,336 Views)
Could you attach the VI/ pic of the block diagram which is showing this behaviour while saving to file??
0 Kudos
Message 2 of 21
(3,331 Views)

Hiii, Cooljet

          It seems that you have setup a flag in your software, which writes the data for 10 secs, then stops for another 10 secs, then again start for 10 secs, which you shold remove, and best thing is to get the solution is to attach the vi, s Dev told you.

Thanks,

Nishant

0 Kudos
Message 3 of 21
(3,327 Views)
Sorry, I should have included the VI in my original post. As I am a beginner at LabView, my VI probably need quite a bit of fine tuning. I am scanning 28 channels total continuously at a scan rate of 1000Hz. Besides Write LabView Measurement file not capturing all the data, the other problem I have is whenever I have the signal conditioning and write measurement file SubVIs running, it will cause the filtering process to reinitialize every 30 sec or so. Would really appreciate your advice.
 
Thanks in advance!
0 Kudos
Message 4 of 21
(3,331 Views)
I should add that if I scanned at a lower rate, say 250 Hz, these problems do not seem to appear. Could these issues be related to the buffer size for the Write LabView Measurement SubVI? If so, how can I increase it?
0 Kudos
Message 5 of 21
(3,313 Views)

cooljet,

You mention that you are only reading seconds 0-9, 20-29 etc, but not 10-19.  How do you know this from the measurement file?  Inside the measurement file you do not have the exact time for every sample, rather a to (initial time) and dt (delta t/period) for the data. 

From the image you provided I only see two areas of concern in your code.  First, there is your logging control.  If you toggle this value, you will stop logging data.

Next, you have a stop button in your loop.  You are using this to stop your application.  When you hit the stop button, depending on how you configured your expressVI, there could still be data in your DAQ pc buffer that has not been written to your file yet.  The faster your sampling rate, the more data you need to record to disk.  Since writing to disk is slow, your PC buffer builds up.  I would check how many samples remain in your buffer when you press your stop button (do this by using the Available Samples Per Channel property found in a DAQmx Read property node under Status).

Regards,

Jesse
Applications Engineering
National Instruments



Jesse O. | National Instruments R&D
0 Kudos
Message 6 of 21
(3,300 Views)

Hiii, Cooljet

                  One thing is i am not sure that, why you are using the LVM format, inspite of there are so many methods to write the file, cos this file will take much of a time to write the data, instead you could use the Write spreadsheet to file, which takes minimum time, another thing is what you have done where you have attached the shiftregisters to the Latch action, so please describe your vi, which can give some idea about what you are doing in it.

Thanks,

Nishant

Message Edited by mini_vyas on 03-24-2006 10:27 PM

0 Kudos
Message 7 of 21
(3,291 Views)
Hi guys,
 
Thanks for your comments. Sorry for the late reply - was tied up with other issues.
 
>> How do you know this from the measurement file?  Inside the measurement file you do not have the exact time for every sample, rather a to (initial time) and dt (delta t/period) for the data. 
-- I might have gotten it wrong but isn't the values in the first column (X_Value) the time? These values ranges from 0-10, 20-30, 40-50. In addition, I am scanning at 1000Hz for 60 sec, so I should have 60,000 rows but the measurement only contains 30,000 rows.

>> First, there is your logging control.  If you toggle this value, you will stop logging data.
-- Yes, I toggle this value to start and stop the logging of data.

>> Next, you have a stop button in your loop.  You are using this to stop your application.  When you hit the stop button, depending on how you configured your expressVI, there could still be data in your DAQ pc buffer that has not been written to your file yet.  The faster your sampling rate, the more data you need to record to disk.  Since writing to disk is slow, your PC buffer builds up.  I would check how many samples remain in your buffer when you press your stop button (do this by using the Available Samples Per Channel property found in a DAQmx Read property node under Status).
-- I am using the logging control to start and stop logging data. 
 
>>One thing is i am not sure that, why you are using the LVM format, inspite of there are so many methods to write the file, cos this file will take much of a time to write the data, instead you could use the Write spreadsheet to file, which takes minimum time,
-- I am new at LabView so as a first try I use the Write LabView Measurement File express VI. Thanks for pointing this out, I will try out Write spreadsheet to file.
 
>>another thing is what you have done where you have attached the shiftregisters to the Latch action, so please describe your vi, which can
give some idea about what you are doing in it.
-- my vi is monitoring the temperature from 25 sensors and if the temperature exceeds a preset safety limit, it will cut off the heating power supply to avoid damaging the sensors. The Latch action is there so that the heater will not turn back on when the temperature drops below the preset limit unless I manually reset it.
 
Would appreciate your further advice.

Message Edited by cooljet on 03-27-2006 06:29 PM

0 Kudos
Message 8 of 21
(3,270 Views)

I think my mistake is I assume by toggling on the logging button for 60 sec the Write Measurement will also write 60 sec worth of data which clearly is not the case. I did consider putting the Write Measurement File subVI outside the while loop but this will not work as I need to continuously monitor the temperature even while not logging the data (so the while loop will not stop). Any advice will be greatly appreciated.

Thanks in advance.

Message Edited by cooljet on 03-27-2006 08:43 PM

0 Kudos
Message 9 of 21
(3,262 Views)

Any advice will be appreciated.

Thank you.

0 Kudos
Message 10 of 21
(3,244 Views)