From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.
We appreciate your patience as we improve our online experience.
05-03-2022 06:13 PM
We have a somewhat large control system running through a compact DAQ chassis connected to a windows machine. We are interested in moving this system to a cRIO but only if the work of migrating is easy enough to do.
If the entire LabVIEW program will need to be re-written or if there are a ton of heavy modifications to make it work it would not be worth the effort to migrate. I understand we would need a LabVIEW RT module license but generally is that all that is required?
Solved! Go to Solution.
05-03-2022 09:15 PM
I seriously doubt it. The LabVIEW Development System (that you use to create LabVIEW Programs, including support for Displays, Files, large (32-bit or 64-bit) memory models, and support for a wide variety of Hardware (including cRIOs, Real-Time OSes, Cameras, Displays, keyboards, mice, human interaction) has a very different environment from that expected by a Real-Time OS, where the watchword is "small, fast, and deterministic".
Bob Schor
05-04-2022 11:06 AM - edited 05-04-2022 11:07 AM
Sorry, I'm not 100% sure what you are saying when you say you doubt it. So just to be clear, you are saying you doubt migration of a LabVIEW program from (Windows 10) cDAQ to cRIO would be simple?
05-04-2022 11:15 AM
@JohnDoe159 wrote:
Sorry, I'm not 100% sure what you are saying when you say you doubt it. So just to be clear, you are saying you doubt migration of a LabVIEW program from (Windows 10) cDAQ to cRIO would be simple?
It would depend on how your system is currently implemented. The basic core LabVIEW runs on both systems just fine. The areas where you really run into trouble would be if your business logic (the data collection, calculations, analysis) and your UI are tihgtly coupled. The code that will be running on the cRIO should not have any UI aspects in it. If your current code is structured well it should be fairly straightforward to migrate the necessary parts to your cRIO and leave the UI aspect on the Windows machine. You will need some mechanism for transferring data but if the system is well architected that should already be in place.
Now if your code is one big mess of everything together in a few VIs and you have mixed your UI elements with your core data collection and analysis you may have a harder time migrating.
05-04-2022 03:13 PM
@JohnDoe159 wrote:
We have a somewhat large control system running through a compact DAQ chassis connected to a windows machine. We are interested in moving this system to a cRIO but only if the work of migrating is easy enough to do.
If the entire LabVIEW program will need to be re-written or if there are a ton of heavy modifications to make it work it would not be worth the effort to migrate. I understand we would need a LabVIEW RT module license but generally is that all that is required?
Hello again, John.
I apologize for mis-understanding the question you posed, above. I thought you wanted all of the code to be migrated to a cRIO (perhaps I was misled by your noting, in your title, the phrase "Standard (Non Real Time) LabVIEW VIs", which I interpreted to include the User Interface parts, as well).
One of the nicest things about RT Systems, especially those like cRIOs, is that they allow you to have three processors working "co-operatively" on a single problem, with all three processors working independently, truly asynchronously (no "sharing" of CPU times) and "in parallel":
I'm currently working on such an application. The User Interface provides the Front Panel by which the User configures the Instrument, sets up its parameters (through interaction with standard Front Panel controls), and initiates Test Sequences. The "settings" are transferred (using Network Streams over TCP/IP) to a RIO that uses "standard LabVIEW" (I'm using a QMH-like Framework here). The test equipment involves generating precisely-timed Pulse Trains (we use DIO lines for On/Off timing of the Pulses, and D/A Converters for Pulse Amplitudes), with A/D measurements of various points at various times relative to the Pulse Trains. We built a special-purpose Test Chamber that uses a number of SPI-based chips to do (some of the) A/D, D/A, and DIO, as we are running multiple channels (currently 16) at once (they all run at the same time, but their output pulse amplitudes are individualized on a per-channel basis). The FPGA handles the generation of the DIO Timing Signals, as well as providing for individual and "in-parallel" communication with multiple SPI chips across 16 channels.
Bob Schor