LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

different (correct) behavior when replacing a shared variable IO node with programmatic access

Solved!
Go to solution

I'm working with the following system:

LV2010 running in Windows 7 and a cRIO-9073

 

My FPGA and RT code is built and deployed.  I have a pair of network-published variables hosted and deployed on the cRIO.  I wrote a simple application for my PC to log the network variables to disk.  The vi running on my PC uses variable nodes that were dragged in from the project window and are configured as 'absolute'.  When I execute this logging vi it tells me that the variables are part of a RT startup app and the system needs to be rebooted.  This makes no sense to me -- they are hosted and already deployed on the cRIO.

 

When I right click on both variable nodes and replace them with 'programmatic access' (and do NOTHING ELSE), I can execute this VI without any trouble.  There' obviously a bug here or I'm not using the shared variable IO node correctly.  Any ideas?

Thanks!

Ethan

0 Kudos
Message 1 of 5
(2,554 Views)

Hi estem,

 

when you built your test application did you include the shared variables in the build?

 

Are the variables binded to the varibles on your RT target?

 

i ususally make a copy of the RT shared variable library  and rename it to host shared variable library; saving on host PC

 

On the PC vi build  I include the copied  Host shared library.

 

Xseadog

 

 

Message 2 of 5
(2,532 Views)

xseadog, thanks for responding.

 

>> when you built your test application did you include the shared variables in the build?

 

I tried including the shared variables in my RT build but this didn't make any difference.  I cannot include them in my PC build.

 

>> Are the variables binded to the varibles on your RT target?

 

No.  As far as I can tell, this requires generating a duplicate variable library on my PC and then binding these variables, one at a time, to the RT-hosted variables.  While I'm guessing this would work it is definitely more cumbersome than using programmatic access, especially as the number of shared variables in the project inevitably grows.

 

From NI:

'Binding a shared variable to an existing shared variable in the active project allows you to view the values separately. For example, you might bind a shared variable to a shared variable that exists in another folder or project library within the active project to create a simplified view of the data.'

 

I don't want a simplified view of the data -- I want the RT-deployed variables and their associated read/write nodes to work properly.  Is binding two variable libraries the only way to get this behavior without using programmatic access?

 

Ethan

0 Kudos
Message 3 of 5
(2,513 Views)
Solution
Accepted by topic author EthanStern

In your project, right click on My Computer and Select 'Disable Autodeploy Variables'

Message 4 of 5
(2,496 Views)

THANK YOU.

 

I did this by right clicking on my RT target since that's where the variables are hosted but doing so immediately and completely solved my problem.

 

Ethan

0 Kudos
Message 5 of 5
(2,492 Views)