DASYLab

cancel
Showing results for 
Search instead for 
Did you mean: 

DASYLAB QUERIES on Sampling Rate and Block Size

HELP!!!! I have been dwelling on DASYLAB for a few weeks regarding certain problems faced, yet hasn't come to any conclusion. Hope that someone would be able to help.Lots of thanks!


1. I need to have more data points, thus I increase the sampling rate(SR). When sampling rate is increased, Block size(BS) will increase correspondingly.
For low sampling rate (SR<100Hz) and Block size of 1, the recorded time in dasy and the real experimental time is the same. But problem starts when SR>100Hz for BS=1. I realized that the recorded time in dasylab differs from the real time. To solve the time difference problem, I've decided to use "AUTO" block size.
Qn1: Is there any way to solve the time difference problem for high SR?

Qn2: For Auto Block Size, Is the recorded result in dasylab at one time moment the actual value or has it been overwritten by the value from the previous block when AUTO BS is chosen.


2. I've tried getting the result for both BS=1 and when BS is auto. Regardless of the sampling rate, the values gotten when BS=1 is always larger than that of Auto Block size. Qn1: Which is the actual result of the test?
Qn2: Is there any best combination of the block size and sampling rate that can be used?



Hope someone is able to help me with the above problem.

Thanks-a-million!!!!!




Message Edited by JasTan on 03-24-2008 05:37 AM
0 Kudos
Message 1 of 6
(12,397 Views)
Generally, the DASYLab sampling rate to block size ratio should be between 2:1 and 10:1.
If your sample rate is 1000, the block size should be 500 to no smaller than 100.

Very large block sizes that encompass more than 1 second worth of data often cause display delays that frustrate users.

Very small block sizes that have less than 10 ms of data cause DASYLab to bog down.

Sample rate of 100 samples / second and a block size of 1 is going to cause DASYLab to bog down.

There are many factors that contribute to performance, or lack there of - the speed and on-board buffers of the data acquisition device, the speed, memory, and video capabilities of the computer, and the complexity of the worksheet. As a result, we cannot be more specific, other than to provide you with the rule of thumb above, and suggest that you experiment with various settings, as you have done.

Usually the only reason that you want a small block size is for closed loop control applications. My usual advice is that DASYLab control is around 1 to 10 samples/second. Much faster, and delays start to set in. If you need fast, tight control loops, there are better solutions that don't involve Microsoft Windows and DASYLab.

Q1 - without knowing more about your hardware, I cannot answer the question, but, see above. Keep the block size ratio between 2:1 and 10:1.
Q2 - without knowing more about your hardware, and the driver, I'm not sure that I can fully answer the question. In general, the DASYLab driver instructs the DAQ device driver to program the DAQ device to a certain sampling rate and buffer size. The DASYLab driver then retrieves the data from the intermediate buffers, and feeds it to the DASYLab A/D Input module. If the intermediate buffers are too small, or the sample rate exceeds the capability of the built-in buffers on the hardwar, then data might be overwritten. You should have receive warning or error messages from the driver.
Q3 - See above.

It may be that your hardware driver is not configured correctly. What DAQ device, driver, DASYLab version, and operating system are you using? How much memory do you have? How complex is your worksheet? Are you doing control?

Have you contacted your DASYLab reseller for more help? They should know your hardware better than I do.
Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab.
0 Kudos
Message 2 of 6
(12,376 Views)
Hi.. Thanks alot for your reply.

The DAQ device i am using is UeiDAQ and DASYLAB Version 9.00.02. The driver is DEMO VERSION 4.51E. The operating system will be Windows XP Windows Version 5.1.

Basically i have tried the sampling rate : block size ratio from 2:1 till 10:1, but nothing seems to work. If i want the DASYLAB to work something like the oscilloscope, with my intermediate points, is there anything that you can recommend? i have tried all those tech support notes, but regarding y/t chart, the display axes is different from what i have input. may this be due to my software then?

Looking forward to your reply. Thanks!
0 Kudos
Message 3 of 6
(12,350 Views)
I'm going to have to suggest that you contact UEI directly. They directly support and maintain their own drivers for DASYLab, and can give you advise on how to best configure them. Use the TimeBase dialog to change the sample rate and block size for each UEI device.

Generally, for an Oscilloscope function, you want the block size to be the size of the refresh rate -- the number of samples displayed at one time, and replaced with the next set. The Y/t Chart can be configured to display multiple blocks as well, using either a static display (wait x blocks, refresh with x blocks), a sweep display (display each block as it it received, filling the scope and starting on the left again when it reaches the right) or a recorder type display (display each block as it is received, display the latest data on the right, removing the oldest block on the left).

The Y-axis settings are configurable - they can be what you require. There are several oscilloscope examples in the Worksheet\Examples folder.
Measurement Computing (MCC) has free technical support. Visit www.mccdaq.com and click on the "Support" tab for all support options, including DASYLab.
0 Kudos
Message 4 of 6
(12,348 Views)
Hi CJ,

Thank you very much for your advises.


best regards,
Jas Tan
0 Kudos
Message 5 of 6
(12,316 Views)

Hi Jas Tan, 

 

I know that you post this question since a long time, but I've now the same problem!!! (And I did'nt find an answer yet...) I need to have a sample rate from 1000 to 10.000Hz. I have one global variable on input to determine the acquisition time (1second, 10second, depending of users...). Then I put the "time base" module and check "measurement time in second". I put here a formula interpreter with : In(0) > Variable global. After this, an "action" module stop the measurement when thereshol value exceed 0 (it become 1 when In(0) > Variable global.

 

When I want to acquire data during 3seconds, Dasylab (due to block size) acquire data during 3.071s (scan rate 1000Hz, auto block size 512). For more precision, I've changed manually the block size to "1" but like you've already noticed : the time on dasylab doesn't match to the real time. It's a problem because accuracy is an important factor in dynamic measurement...

 

Did you find a way to solve your problem?

 

Thanks,

0 Kudos
Message 6 of 6
(9,495 Views)