LabWindows/CVI

cancel
Showing results for 
Search instead for 
Did you mean: 

Running a porgram with Network variables will not run properly on another comp

Hi,

 

I have a few troubleshooting steps that may help. First is to check the version of the CVI RTE on each computer via the .dll, this can be done through the instructions in the second part of this link.

 

Also you may want to test if the Buffered CNV example works properly on this computer.

 

I wanted to ask about your motivation for using a CNVSubscriber with PostDeferredCallback vs. a CNVBufferedSubscriber. Are you using this method based on a particular preference or requirement? Is there any reason you would prefer this to run in the main UI thread?

Evan See
National Instruments
0 Kudos
Message 11 of 16
(1,336 Views)

Another suggestion you can try is to track the number of times the CNV function is called and how many times the post deferred callback is processed. This way we can see if there is build up of PostDeferred Callbacks needing processing causing the queue to fill. Also, ProcessSystemEvents isn't called from the UI thread where the PostDeferred Callbacks are located, then there will be no change. Since the Callback exists in the NVC thread, calling ProcessSystemEvents in the Callback will not clear the PostDeferred Callbacks.

Evan See
National Instruments
0 Kudos
Message 12 of 16
(1,329 Views)

Hi Evan

I will try the CNVBufferedSubcriber function in a async timer to remove it from the Main UI.

How do you monitoring "Another suggestion you can try is to track the number of times the CNV function is called and how many times the post deferred callback is processed. This way we can see if there is build up of PostDeferred Callbacks needing processing causing the queue to fill"

do you do this with the NI I/O?

0 Kudos
Message 13 of 16
(1,320 Views)

The simplest way would be to use the Execution Profiler as long as you have CVI Full Development System or Higher. The Call Tree View allows you to see the count for function calls. If you do not have the FDS, then you would need to code a count that is executed at the same time as the CNV Function.

Evan See
National Instruments
0 Kudos
Message 14 of 16
(1,305 Views)

Hi Evan

This is what I did,

a) I changed the reader for the buffered writer to an async reader in a acyn timer reading at 10ms, since the writer was writing at 25ms, to readout all of the buffer and did a check for new data in the loop. (this seems to have helped most of all).

 

I am unable to test on same the computer that had the problem due to other testing that came up.

I had to switch computers and install cvi on another computer. When I ran the program on the newly installed cvi it seems to work with no problem.

 

B) I also updated the labview run time engine.

 for now the program seems to be running fine

 

general question if this data is being transmitted on one CVI programs numerical value on the UIR at 25ms as in our case. Is it better to link (bind) the numerical value UIR on the other CVI program using datasocket? If so a little explanation or a white paper link would help

 

Many Thanks

0 Kudos
Message 15 of 16
(1,288 Views)

It depends on the application, however for your application DataSocket may be better as it is targeted for live data transfer.

 

What Is DataSocket, and When Would I Want to Use It?

http://digital.ni.com/public.nsf/allkb/B75E63D35FA1442986256723000141AA

Evan See
National Instruments
0 Kudos
Message 16 of 16
(1,278 Views)