From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Dynamic VI calls in Real-Time targets using only "Paths"

Hi,

 
I have few subVIs which has to be called dynamically using "paths" in main RT target VI.  
 
I can do this in executable without any issues.  I use "Always Include" to add those dynamically called subVIs in executable configuration and hence those subVIs exist in RT target and runs smoothly.
 
But, when I try to run the RT file from development mode, then those dynamically called subVIs are not running because they are not deploying while running from development environment.  Is there a way to run the RT VI from LabVIEW development environment with proper deployments of dynamically called subVIs (using only paths)?  Please note that, I neither want to use the subVI directly in the RT VI nor to use the static references.
 
Thanks,
Ajay.
--
Ajay MV


0 Kudos
Message 1 of 4
(3,343 Views)

first, I'm not quite sure and have not tested the two suggestions below so I'm shooting from the hip.

 

a) can you manually palce a copy of the dynamic vi's onto the target via ftp? -for testing purposes, I would probably put them in a \debug\ folder on the root of the RT target, then in your code that calls the VI's dynamically, I would either temporarily or semi-permanently (using conditional disable or similar) change the path to point to the VI's in your \debug\ folder.

 

b)... I thought I had a bee someplace?

QFang
-------------
CLD LabVIEW 7.1 to 2016
0 Kudos
Message 2 of 4
(3,337 Views)

FTP is possible and I can use this link http://digital.ni.com/public.nsf/allkb/C242CF9F0512DF6186257434000DBCBA

 

I'm sorry, I missed one of my other requirement:  

 

Either, I should be able to run the main RT VI in development mode and that RT VI should deploy those subVIs dynamically and run.

Or, I should be able to create a single VI in PC which can deploy all those subVIs and run the RT VI as well.

 

Difficult point is that, when I use the FTP technique from RT, RT couldn't make the connection with PC to get the subVI in memory.

When I use FPT technique in PC, then dynamic running of RT main VI causes some error.

 

So, I'm looking for some help if anyone has already one this kind of dynamic deployment and running of RT main VI from PC.

--
Ajay MV


0 Kudos
Message 3 of 4
(3,331 Views)

I assume you are using LabVIEW Project.  When I've done this, I've used a Static VI Reference to "force" the VI in question to deploy to the Target, and have use a Property node to get its name (not its path) and used that to get the run-time reference.  [Why, you might say, do I need another reference if I already have a Static VI Reference?  Well, I'm trying to run this asynchronously using Start Asynchronous Call, which requires the "Type" of the VI, which I can get by making the Static VI Reference "strict", but then I can't wire that into the Asynch node but need to Get VI Reference, which needs a VI Name or Path, which I get from the Property Node.  Sorry for doing this backwards ...].

 

BS

Message 4 of 4
(3,293 Views)