‎10-07-2013 10:48 AM
Hello,
I'm trying to find out how to simulate cRIO in LabVIEW. I found another thread about this, but I am using the cRIO just as a chassis/DAQ not the FPGA or RTOS, basically just like a cDAQ. I've downloaded and installed NI-RIO, but when I go into MAX to set up a Simulated NI-DAQmx device, I have no option for cRIO, I see cDAQ there. I need to set up with a cRIO-9074 chassis
much thanks!
‎10-07-2013
10:54 AM
- last edited on
‎05-14-2025
10:27 AM
by
Content Cleaner
Hello Monse,
This isn't possible- you can simulate the compiled FPGA on Windows to check your logic as per this knowledgebase:
KnowledgeBase 3W6EFRLX: How to Simulate FPGA Hardware Targets Using the Project Explorer with LabVIEW
https://knowledge.ni.com/KnowledgeArticleDetails?id=kA03q000000YI6yCAG&l=en-US
This is not simulating the chassis, however- are you attempting to spoof the scan engine variables published by the RIO? If that's the case then you'll just want to create a dummy library on either your local or a remote machine. Could you link the thread you are referring to? Do you just need to add the device to a project?
Regards,
‎10-07-2013 11:09 AM
Hi Tom
I haven't worked with cRIO before, and I was assuming that I could treat it like a cDAQ as far as developing without the hardware. In the past I've been able to simulate hardware and could program with or without the DAQ connected. But maybe this isn't possible for the cRIO.
‎10-07-2013 11:37 AM
Hello Monse,
That is correct- a RIO is a completely separate standalone device with its own OS that you can cross-compile code for and deploy to (and then communicate with once running). DAQ devices are tethered and controlled by the DAQmx driver on the local machine and can be simulated via this driver. You can certainly develop code without the physical RIO present- just add the model to a LabVIEW project and add the modules you intend to use to the chassis. All of your variables will be present, you just won't be able to deploy the hardware configuration or interface with the RIO. Most RT code can be run on Windows (to validate logic, if not timing), and the FPGA can be simulated, so you should be able to get pretty far without a physical controller.
How do you intend to use the RIO? What aspect of the hardware do you need to simulate for code development? It sounds as though your end goal is to access Scan Engine variables without deploying any RT code or configuring the FPGA at all, is that correct? If this is the case, then all you would need to do to simulate these channels would be to deploy equivalent Network-Published Shared Variables for testing and then re-link the deployed libraries once you have the hardware.
I hope that's helpful- if you could specify what in particular you are trying to achieve at this time (end result and what you are trying to achieve via simulation right now) as well as why you chose this hardware platform, I and others on the forum may be able to offer more specific advice.
Regards,
‎10-07-2013 12:32 PM
What do you mean " just add the model to a LabVIEW project and add the modules you intend to use to the chassis" how can I do this?
‎10-07-2013 12:34 PM
I don't have the option to add targets and devices from my poject, I've only downloaded and installed the NI-RIO software, I"m guessing I'm missing some more software to give me this option?
‎10-07-2013 12:53 PM
Hi Monse,
You'll also need the LabVIEW RT module for the version of LabVIEW you're using.
Regards,
‎10-07-2013 05:02 PM
I installed that, but it seems like this doesn't work on 64bit LV, just on 32bit
‎10-07-2013
05:21 PM
- last edited on
‎05-14-2025
10:28 AM
by
Content Cleaner
Hello Monse,
That is also correct- the LabVIEW Real-Time module is 32-bit only. Refer to https://www.ni.com/en/support/documentation/compatibility/09/national-instruments-product-compatibil... for toolkits and modules supported in 64-bit. LabVIEW 32-bit and 64-bit can be installed in parallel, but you will need to reinstall the RIO drivers after installing LabVIEW 32-bit.
‎10-07-2013 06:35 PM
Unless I am misunderstanding your post, I disagree that it is not possible. I recently wrote code for a system with a large number of cRIO chassis with associated FPGA code. I have two projects that are identical, all with the same subVIs etc., but with two differences: 1) in one project the FPGAs are set to be physical, and in the other project the FPGAs are set to be simulated, and 2) the main cRIO code is in a remote chassis for one and in My Computer for the other. When I open the latter project, and go to my main cRIO code, the FPGA reference looks a little different, but works in the same way. The only issue I have found is that the FPGA simulation engine that NI uses appears to not be re-entrant, since I see a huge slowdown when simulataneously simulating more than a few cRIOs this way. Hence, I've had to work-around the FPGA simulation with additional software. End result is software that can run on either Windows, Linux, or RT, and can select running of the actual FPGA code or my work-around. Can do many dozens at the same time. Sorry, can't post code because it is proprietary.