LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Run myapp.rtexe without LabVIEW ?

Solved!
Go to solution

I would like to distribute my Real Time Target application, myrttapp.rtexe, to other users who do not have LabVIEW installed. I have a Windows side front panel application that communicates with it using shared variables. This is started as a standard myfpapp.exe in Windows. When I have LabVIEW installed on my Windows side PC, I can start myrttapp.rtexe using the Project Explorer > Build Specifications > rt. clk. myrttapp.rtexe > Run as startup. However, the people to whom I will be distributing myrttapp.rtexe, will not have access to the Project Explorer because then don't have LabVIEW installed.

 

Is there any way I can launch myrttapp.rtexe without using Project Explorer or LabVIEW?

 

Thanks in advance,

BenCh01

0 Kudos
Message 1 of 9
(5,371 Views)
In build application, create installer is there. After creating installer files,you can distribute. In this setup.exe is available. You can install it any PC without installing labview.
"Thanks with regards "
by
..........Gireesh..........
0 Kudos
Message 2 of 9
(5,366 Views)

I'm a little confused. Normally a real-time app is deployed to a device that has a real-time OS on it, such as the real-time platforms that NI sells. Are you saying you're trying to run a real-time application in a regular Windows environment? Is this for testing? If you deploy it to a desktop PC you will need to have a real-time license for it. Are you trying to do this: http://zone.ni.com/devzone/cda/epd/p/id/4802?

0 Kudos
Message 3 of 9
(5,355 Views)

is it necesary(a licence) for a realtime?

 

i don't think so. If it is needed then LV7.1 is better but not i FPGA application

 

 

"Thanks with regards "
by
..........Gireesh..........
0 Kudos
Message 4 of 9
(5,344 Views)

Dear Sir,

 

I want to run my real tme application on an NI platform, you are correct, the CompactRIO-9014 controller. I want to be able to launch it with an easily applied procedure. That's why I want to be able to deploy it from Windows. Maybe there is some other procedure I can follow. Thus, I don't want to use Project Explorer, unless I am able to, and also there is no alternative. I am afraid using Project Explorer requires that LabVIEW 8.5 be installed. The other users to whom I will distribute myrttapp.rtexe will not have LabVIEW 8.5.

 

So, (1.), does running Project Explorer require having LabVIEW 8.5 installed? And, (2.), how may I deploy the myrttapp.rtexe, without having LabVIEW 8.5 installed?

 

I want to be able to choose between two real time target applications, so I cannot afford to permanently use Project Explorer > Real Time Target > Build Specifications > Rt. Clk. myrttapp.rtexe > Run as startup. It is my fear that once one real time target application is running, I would be unable to terminate it, and start a second one in its place.

 

Thank you for addressing my problems,

BenCh01

 

0 Kudos
Message 5 of 9
(5,341 Views)

In the past, you could use FTP to pass the file to the RT target (to c:\ni-rt\startup, if memory serves). I assume that you can still do this and you can probably enable the startup flag by editing the INI file on the RT target.

 

I suggest you connect to the RT target to see where the EXE needs to go and whether the INI file has a startup flag to make sure.

 

Once you do that, the users can use an FTP client (there are freely available ones) to pass the files or you can write a Windows EXE which will do this for them (the Internet toolkit has FTP VIs you can use). Note that if the app is running, you'll probably need to stop it somehow first (e.g. by sending it a command over TCP or by the user doing something on the RT target).


___________________
Try to take over the world!
0 Kudos
Message 6 of 9
(5,336 Views)

In LabVIEW 8.5, the Installer option is only available from the Windows side, using Project Explorer > Project > My Computer > Build Specification > New > Installer ... . This builds an EXE file that can be run independently of the LabVIEW development system.

 

However, I need to build an RTEXE file not for the Windows side, but rather for the RT CompactRIO Target. The Installer option is not available. I can build the RTEXE using Project Explorer. I need to run Project Explorer in order to selectively run two different real time target applications, both built and available in Project Explorer. Is it possible to do this, using Project Explorer, if the user does not have the LabVIEW development system installed?

0 Kudos
Message 7 of 9
(5,312 Views)

Tst,

 

Your idea of using FTP VIs to transfer to the real time target CompactRIO an image from a source file on my Windows-side hard disk drive has been implemented in system replication tools, specifically the rtcopy.vi.

 

If the real time target root folder contains a c:\ni-rt.ini file, it should manually be set to have

 

RTTarget.ApplicationPath=c:\ni-rt\startup\startup.rtexe and

RTTarget.LaunchAppAtBoot=True.

 

This manual setting can be done within the HDD image that is transferred to the CompactRIO. It can be combined with the FTP VIs you suggest that I use, or with the rtcopy.vi system replication tool, to accomplish the same thing that is performed when Project Explorer is available with the LabVIEW development system, and a Build Specification > Rt click startup.rtexe > "Run as startup" is done.

 

Is this posting correct, so far?

 

My followup questions: you said I should stop whatever is running on the CompactRIO, over TCP, before downloading the new cRIO image. What VIs are to be used, to do stop what's running on the cRIO? I would like to stop both the program loaded into the CompactRIO-9014 controller and the NI-9103 FPGA. I read somewhere that enabling an rtexe file - does this mean loading the correct c:\ni-rt.ini file? - will override any startup VIs, and only the startup.rtexe will run, the Startup VIs will not. Does that mean that loading the CompactRIO and also the c:\ni-rt.ini file will preempt any Startup VIs previously running?

 

If so, then is it true that I don't have to go through TCP to stop the old cRIO and FPGA apps from running, enabling the rtexe file will preempt the old VI running on the cRIO?

 

Thank you, your experience goes where my mind dares not.

 

BenCh01

0 Kudos
Message 8 of 9
(5,302 Views)
Solution
Accepted by topic author BenCh01

I have no real experience with later versions of the RT module and no experience at all with FPGA, so I can't really answer any of these questions.

 

My suggestion for stopping the program was to have code in the program which waits for a command and then properly stops the program. This command can be sent over TCP, can be set by flipping a DIP switch or by raising a DI, etc. I'm guessing the RT target would not let you replace the rtexe file while it's still running, but that's just a guess.


___________________
Try to take over the world!
0 Kudos
Message 9 of 9
(5,248 Views)