LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Setting up a LabWindows/CVI Application to share data with labview

I have a Labwindows/CVI application that is performing some tasks and displaying some data, I would like to have Labview application, running on the same machine, receive the data from the Labview app. Is this possible.
0 Kudos
Message 1 of 4
(3,291 Views)
It all depends on the type of data, rate of transfer required etc.

For example, you could set up an ActiveX server to communicate directly to a VI from within CVI. This would be similar to that of calling a CVI Function (but you would be calling a LabView VI using ActiveX), passing paramters like a function call.

Or, you could set up a TCP / UDP Link between the two applications and pass data that way.

It all depends on what type of data you are exchanging really.

Let us know a bit more info, and I'll try and offer some more info.

Regards

Chris
0 Kudos
Message 2 of 4
(3,291 Views)
Sorry I have a mistake in my question I want to pass data from the CVI application to the Labview application. The data is aquired (3 Channels) from various sources, Serial, DAQ, GPIB. I know that I could eaisly aquire them directly in labview, but the CVI is a complicated control system, that also requires the information (Unless its possible to communicate to the hardware from two seperate applications). The rate that I need to aquire the data in Labview is about 1/sec.
0 Kudos
Message 3 of 4
(3,291 Views)
I believe that you can have two applications accessing the device(s) at the same time, so rather than pass the information from CVI to LabView, you could have a second application that obtains the information itself, but this has a host of problems (settings in one, affecting operation in another etc).

If within the CVI enviroment you have access to the data, you could create a structure containing all of the data you want to pass to labView, and then create a call to your 'input' VI passing all of the data into that VI where other VI's can then access and work on that data.

You could easily create flag in the CVI application that indicates when valid data exists, have another thread in CVI detect that flag and then call your LV VI. A flag in the LV
VI gets set when valid data is received and then the rest of your LV application acts on that data.

A good approach would be to have a thread within CVI manage the collection of the data, and then have the main CVI and LV applications access that same data.

Just keep firing more info back about what exactly you are doing, and I'll keep posting back...

Chris
0 Kudos
Message 4 of 4
(3,291 Views)