04-22-2011 04:23 PM
It looks to me like you're trying to send this item one point at a time, which creates a lot of overhead in communication. Consider sending your data in larger-sized chunks.
04-29-2011 12:31 AM - edited 04-29-2011 12:40 AM
Hi James D;
Thank you very much for your reply. I have already ideveloped VIs with finite-number of samples, and with continuous sampling mode, both are working fine. However, in our application, before we send the signal to DAQ write, we need to convert/process the input SINE signal to another signal by doing a mathematical one-to-one sample or point mapping. Furthermore, we have noticed that the updating rate of the while loop in single-sample mode is much faster than that in continuous samples mode, for instance. This is important in fast tracking controller (e.g., to calculate the error signal at each sample). Thus, we are looking for a one-to-one sample mapping with very fast updating-rate while loop (or time loop). Your advice is highly appreciated.
Thank you very much
Bahadur
04-29-2011 06:22 PM
Hey bahdoor,
The reason that your while loop is executing more quickly when you are not in continuous mode is because the while loop processes more data per iteration in continuous mode. Continuous sampling mode stores the written data into a buffer, which is then read as the loop iterates on the next interrupt. Hardware timing, or the timing loop, would work in the same way by creating a buffer and processing the data in chunks. From what I can tell about your application, it seems like software timing is the best option. There is no buffer, so the loop will iterate as fast as it can. Here is a VI snippet and I have attached the code;
See if that fits your needs. Have a great weekend!