11-16-2011 03:36 PM - edited 11-16-2011 03:43 PM
Hi, I am wondering if it will be possible to execute a Labview VI independent of a running Teststand Sequence to monitor my instruments. Say for example, I am running a test for a DUT with Teststand but at the same time wanted to monitor some Agilent Power Supplies in the test setup using a Labview, would this be possible? I am thinking I might run into some resource/session management issues between Teststand and Labview both trying to poll the power supply?
I was originally trying to setup some sort of a monitoring using custom UIMessages using ActiveX but realized that it would require insert a ActiveX action to everyplace I would need an update. So invasive into the original teststand sequence and not very "real-time." In addition, using the UIMessages I can only get that to work if I used Labview to control TS, in other words, only through an operator interface, which again, runs into the ability to run the VI and TS separately.
Regards, Mike
11-16-2011 11:49 PM
http://forums.ni.com/t5/NI-TestStand/Passing-parameters-to-VI-in-new-thread/td-p/1735212
Check out the example I provided in the second post.
Cheers,
11-17-2011 03:04 PM
That is somewhat relevant to what I am trying to accomplish. But I am not looking to run this instrument monitor VI from an TS executing, but running along side of it, launching it from LV.
Essentially the scenario would be:
1.) Running TS Sequence, and everything looks good.
2.) Running TS Sequence and there are failures, in addition to just debugging with tracing or watching the variables I now:
a.) Click on this monitor VI that launches and monitor to make sure my instruments are alive and responding.
Basically I HOPE execute this VI at my discresion and it will not be something I execute in TS. (let's just make it easy and say this is what the customer wants)
Hence why I am wondering if there might be a resource/session conflict if the VI is trying to get status from the instruments.
Regards,
Mike
11-17-2011 06:03 PM
So essentially you want a button on your User Interface that, when clicked, executes the monitor VI?
The trick is getting the data back and forth from you sequence to your VI (one piece would have to be the VISA resource sessions).
What you would need to do is in your sequence when you create or open the device then send that to the UI through a UIMessage. In the UI just store it somewhere. Then when the event occurs to open the VI pass that stored VISA resource into the asynchronous VI. That way you would be using the same handle and session as TS and you shouldn't have to worry about killing the handle in TS.
Regards,