07-13-2024 05:06 AM
Hello,
I just finished the LabVIEW real time course and I'm interested in understanding better what is the scan engine. I have always used a simple DAQmx configurator block when performing acquisitions on cdaq and even crio (for supported modules of course). Why would I choose to use the scan engine that looks very similar to the DAQmx driver, but not as intuitive?
Hope the question makes sense
Thanks
07-13-2024 01:06 PM
Before the release of cRIO-904x/905x, you can't choose between Scan Engine and DAQmx.
cDAQs only support DAQmx.
cRIOs other than 904x/905x only support Scan Engine or FPGA mode. Scan Engine was the only option for easy configuration without re-compiling the FPGA VI.
With the introduction of DAQmx to cRIO-904x/905x, there is no need to consider Scan Engine. DAQmx offers more flexibility and better performance than Scan Engine.
07-13-2024 01:46 PM
Is the op the same as in this thread? https://forums.ni.com/t5/LabVIEW/Ni-scan-engine-vs-DAQmx/m-p/4383839#M1290118
07-15-2024 04:56 AM
Hello,
I just finished the LabVIEW real time course and I'm interested in understanding better what is the scan engine. I have always used a simple DAQmx configurator block when performing acquisitions on cdaq and even crio (for supported modules of course). Why would I choose to use the scan engine that looks very similar to the DAQmx driver, but not as intuitive?
Hope the question makes sense
Thanks
07-15-2024 09:16 AM
@dacca wrote:
Why would I choose to use the scan engine that looks very similar to the DAQmx driver, but not as intuitive?
The interfaces are nowhere close to the same. The Scan Engine uses special variables to get single values while DAQmx has a full API where you can get waveforms or single values or an array of values. DAQmx also defines the data rate and whatever other settings on the block diagram while the Scan Engine has to be defined by a special properties window in from the project.
My personal preference is to define all of this directly in the FPGA where I can add additional logic for limit checking, control, etc. I then use a DMA FIFO to pass the data to the RT who then does whatever with it (locally save it, additional processing, pass on to the Windows system, etc.).
If I did not need that additional logic in the FPGA, I would use the DAQmx interface.
07-15-2024 04:26 PM
I don't think I've used the scan engine since I've had the ability to use DAQmx on a cRIO.
The one area I could see it fitting well would be any time you think you need to do hardware timed single point I/O in DAQmx.