06-26-2015 04:53 AM
Hello
I now have a labview controller model including 18 sub vis, and I am trying to run this controller model on VxWorks RTOS through custom device.
1. When I tried to run a simple controller model (ex, a controller with 3~4 sub vis) on VxWorks RTOS, I just put the simple controller model into <custom device name> RT Driver.vi, and then the build and deployment were successful.
2. So, I did it with my labview controller model in the same way above, but I couldn't even build my labview controller model. I don't know why, but the process of build stops at initialization stage. I think this problem appears when more than 3~4 sub vis are added under custom device project.
Any ways to use a labview controller model instead of just putting a model into <custom device name> RT Driver.vi ?
Solved! Go to Solution.
06-29-2015 08:39 AM
That is strange... Normally you should be able to use as many VIs as your computer can handle. Let me understand what you are trying to do:
You are using the custom device template and are bulding a source code distribution, to get the VIs that comprise your custom device. This fails without error message, right? Have you tried building on another machine?
06-29-2015 11:38 PM
That is strange... Normally you should be able to use as many VIs as your computer can handle. Let me understand what you are trying to do:
You are using the custom device template and are bulding a source code distribution, to get the VIs that comprise your custom device. This fails without error message, right? Have you tried building on another machine?
Hello
No, I have not yet tried to build on another machine.
Yes, I built a custom device using the custom device template tool, and then put my controller model written in labview into <custom device> RT Driver VI.
Let me explain what I have done briefly. If I did something wrong, please tell me.
1. Built a simple controller( including 3~4 sub VIs) in LabVIEW using the Control and Simulation Loop.
2. Built a Custom Device project using the Custom Device Template Tool. Execution mode is set to Asynchronous.
3. I put a controller into <custom device name> RT Driver VI.vi. As seen below, local variables were added to use a labview controller in the Timed Loop.
(however, i didn't add manually labview controller VIs under the custom device project folder.
4. Then, built the custom device project for windows os, and checked the deployment. It was successful.
5. After that, I compiled VxWorks engine into RT Driver VI, and tested whether or not the custom device could run on VxWorks RTOS. It also was successful.
6. I thougt the custom device project was ok, so tried to change a simple labview controller into my labview controller.
After changing models, I could not even start to build. The build stoped at initilization stage so that I should shut down the program in the Task Manager of Windows. (here, a simple controller and my controller have the same inputs and outputs)
7. After 6 above, I added *.lvlprj under the custom device project after converting sub VIs into the project library, but it also had the same error abvoe.
8. At this time, I deleted the controller in <custom device name> RT Driver VI, and started to build directly the same controller model in <custom device name> RT Driver VI. However, aftering adding 3~4 sub VIs, I got the following message. Whenever I opened the custom device project, this message came out so that I had to click the button Save.
Did I do something wrong?
Thank you in advance.
06-30-2015 02:04 AM
It seems like I found what I was missing.
After checking 'Synchronize Loop to Timing Source' in the tab Timing Parameters of Configuration Simulation Parameter, the build was done successfuly anyway.
06-30-2015 03:55 AM
Good, thanks for reporting back.
07-02-2015 01:48 AM
Now I manage to build my labivew model, I saw the light of compactRIO blinked, which measn the connection is ok through CAN Bus.
But it is still weird and not possible to build my model at once. Besides, cannot build again the custom devcie built successfully just before after adding two gain functions simply.
Anyway, the workaround to my problem is as below.
For example, my cruise controller written in labview consists of 3 main sub simulation systems.
Each main sub system includes several sub systems.
First, build the model after adding one of 3 main subsystems. (In this case, I never had errors in building labview models)
Second, if the first step is ok, add one of the other 2 main sub systems into the custom device, and then build again.
Third, adding the rest sub system into the custom device, and build the entire model again and deploy to the target.
With three steps above, I can always build custom devices successfully.