12-27-2018 05:34 PM - edited 12-27-2018 05:37 PM
For starters, please bear with me. I'm extremely new to using LabView and its wiring. All I have learned so far has been self-taught by being thrown into a position at my current work given no one else could help the 2 other people here. I refrained as long as I could before resulting to pestering people on the forums who've been doing it for years, but there's only so much I could find on the internet for a program I've discovered that can do virtually anything. Consider this my intro lol.
Our Equipment (Probably Irrelevant).
Compact DAQ Chassis
NI 9209 Module
NI 9211 Module
What our VI Does.
Constantly displays temperatures and pressures during testing.
We just figured out how to keep LabView running without recording unnecessary data using the Case Structure (elementary I know lol).
What I want to do.
Record data for a specified length of time - and not ending LabView once done.
Less Important but maybe worthwhile Idea.
After data has been recorded for said time, start recording on a separate/identifiable file to note back on data if needed. (Possibly deals with the 'End Late?' if I understand correctly)
What I currently have the VI Doing.
LabView up and running, performing 'infinite' loops/iterations so we can see the current readings.
A Time Case that starts recording data for a specified time at the press of a button. But then completely stops the VI once completed.
Current VI Diagram
A quick, simple test VI I've been playing with.
I know this post is probably excessive but I'd rather be safe than sorry and provide as much details as I can.
Is there a simpler way? Am I going about it in a more necessary complicated way?
Any kind of help, suggestions, tips, tricks would be greatly appreciated.
Thanks again,
12-27-2018 07:34 PM
I would recommend to start with a few simple tutorials, the help, and the shipping examples and design templates. Have a look at a simple state machine.
Currently, your timed loop cannot start until the first loop has completed, at which time it will always operate on the dynamic data of the last iteration of the first loop. Seems quite pointless. 😉
12-28-2018 03:29 AM
I'll suggest you a 3 loop system for high acquisition rate of a 2 loop system for slower and not time critical application.
lets start with the 2 loop
Event structure in a while loop that manage what the user see and what the user want to do. (this loop will be producer for the second loop.
the second loop is acquiring at regular intervals you data and save it into the file at the rate you need and the filtering you wish.
for the 3 loop structure, you just remove the save and filtering from the second loop and put it in the third loop.
The data exchange can be done trough a functional variable (array that you add or remove data from) between the 2nd and 3th loop.
It is possible to have more efficient than that, but if you can start to understand those basic concept, you will do a lot in LabVIEW already.
Benoit
12-28-2018 04:24 PM
Thanks man! I'lll give that a go and play with it and see what I can come up with.