11-26-2013 02:50 PM - edited 11-26-2013 02:54 PM
Okay I have decided I am going to attempt to figure this out. This project template was recomended in an eirler post http://forums.ni.com/t5/LabVIEW/Help-with-freeze-up/m-p/2636739#M788003
So bear with me here as I ask a bunch of questions that I probably would already know if I had any formal Lab View training.
Lets start with the Acquisition loop I inserted the VI for my instrument but now I have a bad wire leading to the Notifier(?) and Enqueue Vi's. My instrument Vi outputs a numeric array these require some sort of cluster input. I tried making a cluster constant and using bundle but this type of cluster does not bundle or unbundle?
11-26-2013 03:02 PM
If you turn on context help (Ctrl-h) and hover over the notifier wire, it will tell you what type of data it expects.
Or disconnect the "notification" input, right click and "create constant".
11-26-2013 03:19 PM - edited 11-26-2013 03:20 PM
@Todd_Lesher wrote:
If you turn on context help (Ctrl-h) and hover over the notifier wire, it will tell you what type of data it expects.
Or disconnect the "notification" input, right click and "create constant".
Oh, thanks. I see it contains Array (1D array of) dosen't say what of, and a Waveform (Waveform DBL)
So my instrument VI outputs an numeric array of measurments, how to I turn that into something that works with this Notifier?
11-26-2013 03:24 PM
Hi RTSLVU,
That's a 1D-Array of Waveform(DBL)- note that "Waveform" is inset rather than inline with "Array".
If you're planning on working exclusively with arrays of DBL, you'll probably want to change the data type used to initialize the queue and notifier rather than converting the numeric array to a waveform.
Regards,
11-26-2013 03:36 PM
Don't be afraid to go up to the main vi and change the notifier's datatype to match your vi's output
11-26-2013 03:41 PM
@0utlaw wrote:
Hi RTSLVU,
That's a 1D-Array of Waveform(DBL)- note that "Waveform" is inset rather than inline with "Array".
If you're planning on working exclusively with arrays of DBL, you'll probably want to change the data type used to initialize the queue and notifier rather than converting the numeric array to a waveform.
Regards,
I opened the constatns that initilze the Queue and Notifier and they contain a time stamp, a numeric array, a numeric constant, and a variant.
But it changes to just a waveform in the Accuision vi
11-26-2013 03:50 PM - last edited on 01-03-2024 02:50 PM by migration-bot
Hi RTSLVU,
A Waveform is actually a cluster containing those data types you listed- initial time, delta t, values, and a waveform variant that can store various attributes such as channel names- note the cluster (pink) border within the array. These documents have more information on using waveforms:
KnowledgeBase: Using the Waveform Data Type in LabVIEW
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000P8qkSAC&l=en-US
LabVIEW Help: Accessing Waveform Attributes
https://www.ni.com/docs/en-US/bundle/labview-api-ref/page/functions/get-waveform-attribute.html
Hope that helps!
11-26-2013 04:04 PM - edited 11-26-2013 04:13 PM
@JÞB wrote:
Don't be afraid to go up to the main vi and change the notifier's datatype to match your vi's output
Okay I see now I need to manually replace the Data Notifier and Data Queue input constant with one containing just the data type I need in every single VI.
Curse them for not making this a typedef!
11-26-2013 04:24 PM - edited 11-26-2013 04:25 PM
Nope damnit that won't work either it is still broken in the Acquire.vi.
I am going to have to figure out how to make the origonal waveform cluster work.
11-26-2013 04:41 PM
Hey, If it was easy we wouldn't earn all the money they pay us to learn this stuff.
I'm pleased to see you working through it though!