10-04-2006 02:01 PM
10-04-2006 02:22 PM - edited 10-04-2006 02:22 PM
"I was wondering if anyone has advice on how this can be done?"
Yes we do!
Unforntunately, I do not know which of those advices to offer without doing a LOT of guessing.
If you post the VI (and its sub-VI's) in a reply to this thread, we will be able to take a look at your code and offer the appropriate advice.
Ben
PS If you are new to this forum, you can attached your VI using the "attachment" box located below the "Submit Post" button.
Message Edited by Ben on 10-04-2006 02:24 PM
10-05-2006 08:14 AM - edited 10-05-2006 08:14 AM
Message Edité par TiTou le 10-05-2006 03:14 PM
We have two ears and one mouth so that we can listen twice as much as we speak.
Epictetus
10-05-2006 10:19 AM
10-05-2006 11:01 AM
Sorry, I don't have and DAQ drivers installed, so I cannot test. I'm just looking at your code and a few things stick out.
Good luck! I'm sure others have more comments. 🙂
10-05-2006 12:26 PM - edited 10-05-2006 12:26 PM
Thanks for the help. I'm new to labview so I'm going to ask some questions about it.
1. Don't you want some kind of synchronization between signal generation and acquisition? At the moment, it is undefined which one starts first.
How can I synchronize which starts first? Do I have to put in "Wait" loops? I did notice that my 6143 was starting first before my signal was being sent out.
2. It might help to use low-level DAQ. How often do the inputs change?
I might be confusing low-level DAQ vi's with the Top-Level. I started with the Express Vi for the cards and noticed it was taking up ~2MB of memory. I went to the pallete and pulled up the AO an AI vi's (start, stop, write, etc...) and ran it. It still took up ~2MB so I ditched them. Was I using the right vi's? DAQmx?
3. For large datasets, and if speed is important, you should work with simple datatypes. All these dynamic data conversions are very expensive.
When I wire it up, it automatically converts it. How do I go about stopping this?
4. It seems silly to keep a loop running without any defined pacing. What determines your loop rate?
Not sure what you mean by determining loop rate. Right now, we just want this to run continously and save without time gaps. Later were just going to run this for 10sec once saving has begun.
5. Write to a plain binary file. All that spreadsheet formatting is very (very!) expensive for large datasets. In any case, you should open the file outside the loop (or whenever the filename, etc. changes), then keep the file open for subsequent write operations. Use the "append?" button to either write at the beginning or end of the file (tweak code as needed). Your high-level file function opens and closes the file with each iteration!
I tried this before, but when trying to read it back, it didn't give me the same vaules that I should be getting. I'll try this again.
Thanks,
Travis
Message Edited by guilio_2000 on 10-05-2006 12:27 PM