Achieving Maximum Sample Rate for Multiple NI Scan Engine Channels on a cRIO or C Series Card

Updated Oct 24, 2023

Reported In

Hardware

  • NI-9205
  • CompactRIO Controller

Issue Details

I added 16 analog input channels using a NI-9205 on my cRIO, within a timing loop that's synchronized to the NI Scan Engine.
When I set the Scan Period to 1ms, I found that every iteration of the loop finishes late.
How can I improve the update performance/sample rate of the NI Scan Engine channels?

Solution

According to the article NI Scan Engine Performance Benchmarks, the maximum achievable sample rate for 16 channels on the 9205 module is 1KHz. 

To achieve this make sure that the NI Scan Engine Scan Period under the Real-Time CompactRIO Properties is set to 1ms as shown below.  


On the block diagram make sure that the timing loop is synchronized to the Scan Engine and the error terminals are connected between channels to predefine the scan sequence as shown in the diagram below.


Wiring the error terminals helps the VI determine the channel update sequence and therefore it does not use up too much memory every loop cycle.