I am new to robotics and our programming committee isn’t that advanced as we had only one programmer last year and only starting to stock up and expand our school’s resources this year. As usual we have disputes on whether to stick with Labview or use Java. My question is can the cRio compile and run both labview and java? say java for auto and labview for teleoperator? I’m thinking this wouldn’t be possible since it would have to be in the same language to tell cRio when to switch to teleoperator, but if this is possible, please enlighten me.
In short, no this is not possible.
The cRIO’s image is language specific because it has to load different libraries based upon each language, for instance the LabView libraries are different then the C++ libraries. This is why you have to choose a specific language to format your cRIO with when you image it.
However, if you wanted to try it, LabVIEW has something called a Code Interface Node, which allows you to call compiled code.
If you wanted to use compiled code for one of your modes, and LabVIEW for the hardware interface sections, you could.
The difficulty with Java is that it is also interpreted. (though it may be fully compiled for the cRIO, I don’t know)
The Java for cRIO is not compiled. And unless your already know how to program the robot very well in both environments, I would not even try using the CLF node. It is a very advanced capability, and you are far better sticking with one tool until you really know what you are doing.
Greg McKaskle