I am experiencing an error with any Delta RMC call that seems to all go back to “WriteFLoats.vi” in LabVIEW. LabVIEW claims that the refnum used here cannot be called, I get the flowing message, “The refnum class that is being passed into this node is not fully defined. This is because the refnum is defined using external files, and one or more of these files are missing.”
I have installed the RMC drivers from the LAbVIEW tools->instrumentation…drivers, Delta Computer Systems search.I searched for the “WriteFFile” as indicated by the Refnum and I could not find it. Coincidentally, I’m not even trying to use RMCLink, I’ll be communicating over modbus, but it won’t let me build the code without it.
Any help is appreciated.
Do you have the NI Modbus library installed? You can download it here:
Put the contents of the “86” folder into your Program Files/National Instruments/LabVIEW [version]/ folder
If you are using an RMC75E, I would strongly recommend using the dcsRMC75E version of the driver as it is completely dependency free.
I am using the RMC151E and I do have modbus installed. The modbus side claims it compiles, it’s the RMCLink side that says it has issues.
Here’s an example of what I see. If I look at the RMC Initialize block, LabVIEW says it is broken. Asking it to build, it says the break is in the Comm INIT block. Clicking the Comm INIT block asks me to select dcsCOMM_RMCLink.lvclass:init.VI or dcsCOMM_Modbus.lvclass:Init.vi.
Modbus.lvclass:init.vi says it works fine. RMCLink.lvclass:init.vi says that it’s broken. Probing the error it says all the refnums at the invoke nodes are broken.
This continues for all refnums at Invoke nodes for everything associated to RMCLink.
Let me know if I can provide any further information.
A solutions has been found. The Delta RMC library for LabVIEW contains both the RMClink support and the Modbus support. It loads both of these no matter what. My target, a CompactRIO, runs real-time Linux and does not support RMCLink. Since I am not using RMCLink, I recompiled the Delta RMC project without the class “dcsCOMM_RMCLink.lvclass”.
An additional word of caution to anyone using newer versions of LabVIEW, the instrument library for RMC was last compiled with version 8.6. You may need to replace your refnums and invoke nodes with new instances of themselves. I would also recommend doing a mass compile on the RMC project itself to update it to your version of LabVIEW (I’m running LabVIEW 2013 and it caused no problems).