Real-Time Measurement and Control

cancel
Showing results for 
Search instead for 
Did you mean: 

Running real-time and FPGA at boot.

Hi All,

 

I am running the NI 9401 cRIO with Labview 2011. I have an application that stores data at the FPGA level via DMA and then transmits this data to my host PC via the real-time OS. So I have three main VIs, titled simply as PC_Main, RT_Main, and FPGA_Main. The FPGA has a build specification and under RIO Device Setup, I have "Autoload VI on device powerup" selected. I do believe the FPGA is running at boot up.

 

FPGA.PNG

 

Now my issue is getting the RT to run at boot. I have created a build specification called RPDT that uses RT_Main as a startup VI.

startup.PNG

 

I build this and then choose "set as startup"

set.png

 

But I must be missing a step, because when I run my PC_Main VI, nothing happens. I should see data being collected. Everything works when I run RT_Main.vi as an opened VI, but I can't get it to run at boot. What am I missing here?

 

Also, related to this, what does my state of RPDT mean with respect to being able to run PC_Main.vi? I mean that do I always have to be connected through the project by right-clicking and "connect"? My end-game is to make PC_Main an exectuable and then everything runs at launch of this VI. 

 

Please let me know if there is any other information I can provide. Also, I've already referenced:

http://forums.ni.com/t5/Real-Time-Measurement-and/Run-code-on-host-PC-RT-target-and-FPGA/m-p/1058339...

 

I followed this, but I am having an on the host side with the open application reference blocks, and strict VI reference. When I actually did get it to run, I still was unable to collect any data, as if the RT VI was never executing.

 

Thanks,

Scott

0 Kudos
Message 1 of 4
(6,062 Views)

Just to be sure - after you set the build specification as "Set as startup" you are first deploying it and then restarting (software reset or power cycle) the cRIO ?

0 Kudos
Message 2 of 4
(6,056 Views)

Thanks for the reply.

 

Yes, I deploy then restart. When I deploy RT_Main, it says deployment is successful. However, after a chassis reboot, when I try to deploy PC_Main, I get this:

Capture.PNG

 

I don't understand why this conflict is happening...

 

Thanks for the support.

 

0 Kudos
Message 3 of 4
(6,036 Views)

The conflict means that you have an executable already running in the target calling that VI. If you then re-deploy, it will have to close and reopen again the application. As far as that, it seems it is running. Could you try to add a heartbeat code in the RT Main VI to make sure the application is in fact running? 

 

I've seen cases where the RT executable won't run because a particular object in the front panel or function is not supported as an executable. For example, a type definition in an RT executable. This article details some other steps we can try to get the application running for these cases. 

 

 

0 Kudos
Message 4 of 4
(6,023 Views)