Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

NSV variables does not update after RT deployment

  

Hardware setup:

  • Windows 10 Laptop running HMI SW in .exe built with LabVIEW 16
  • cRIO-9030 (LV 16 installed) running RT+FPGA built with LabVIEW 16 + RT + FPGA module (both 16)

The SW is pretty standard. The cRIO FPGA acquires the input signal and the RT target does some computation and passes some values to the HMI SW via network shared variables (NSV). The use of HMI is optional for our use case.

Case 1

  • During development I always used the interactive launch of the RT target. The project explorer would connect to the target and everything worked fine. The HMI properly retrieves the value of the NSV.

Case 2

  • During deployment we want for the RT to start up as power goes on. For that we built the project and set it via the project explorer to run at start up. Everything work fine except that some NSV are only updated once.

I tried several built options, updating the cRIO SW, deploying the NSV during the start of windows HMI SW (using the built options in the HMI build specification), but always without success.

Any help would be much appreciated.
Thank you.

0 Kudos
Message 1 of 2
(2,608 Views)

Hi there, this sounds somewhat familiar to issues I have had in the past. Have you got all the required software installed on your Rio? It is worth finding the device in MAX and Add/Remove Software and check for network related software, particularly "Network Variable Engine".

 

The NSV updating only once is interesting, what are these values? Can you verify that it took a new measurement, or could it have been the last measurement that was taken? In the past I have had it where NSV update once (i.e. go from some default indicator value) to the last measurement that was read (it said something was 400deg C, and it definitely wasn't...).

 

Also can you try writing something really basic and deploying that as an executable? Could just be a random number written to an NSV or something. If that works, then you can be sure the software (or lack thereof) isn't the issue. I couldn't get my program to run on startup properly so had to find a less optimal solution, but deploying something small seemed to work, it was when I deployed my whole program with lots of NSV (70+ perhaps) that I couldn't get it started, not sure how many is too many per se.

 

So to summarize:

  • Make sure Network I/O software is installed to target
  • Try writing and deploying a simple program and see if it updates
  • Verify if the single update is a new reading, or the last reading taken

Hope this helps.

 

Edit: Found a couple of links for you to have a look at just in case

 

https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000YIDuCAO&l=en-US

 

http://www.ni.com/white-paper/5715/en/ 

 

http://www.ni.com/tutorial/9900/en/  

0 Kudos
Message 2 of 2
(2,517 Views)