Automotive and Embedded Networks

cancel
Showing results for 
Search instead for 
Did you mean: 

NI VCOM Custom Device for Veristand -- CAN Tx Rates and SysClock Rate setting

Hi All,

 

I'm using the NI-VCOM Custom Device for Veristand to set up a CAN network between an NI realtime controller and two 3rd party ECUs.
I need to send out 10 CAN cyclic CAN frames at different Tx rates (4 frames @1.000 s, 4 frames @ 0.010 s and 2 frames @ 0.005 s).The fast ( 5-10 ms) frames each use VCOM's "Autosignals" to generate a counter and CRC signal.


We currently have two test rigs with this dual ECU setup:

 

On our labo dyno testrig (PXIe-8840) this works fine. The SysClock Rate in the VCOM config is set to 1000 usec, corresponding to the 1kHz loop rate of the Veristand PCL. All CAN frames meet their required Tx/Rx Rates.

 

On our mobile test platform (cRIO-9039), also runnnig Veristand @1kHz PCL however, the transmit rates are not met (too slow). For debugging this, I am using a separate device and the XNET bus monitor tool to monitor CAN traffic. The Rx frames are transmitted by the two 3rd party ECU's at the rates defined in the DBC file.


Setting the SysClock to 1000 usec also causes a lot of jitter on the Tx rates of CAN frames, causing error states in the ECUs (commsfaults).
Setting the SysClock Rate to 10000 usec (default) reduces jitter on the Tx rate, but the 5ms Tx rates are still not met (they are running at 10ms). In addition, the incoming channels that are received every 5ms, only get their values updated every 10ms.

 

My search for documentation on the "SysClock Rate" setting in VCOM didn't produce much results, so maybe someone here can advise...
What does this SysClock setting actually do? How should I determine the rate to use? Is the cRIO not powerful enough?


Systems:
Mobile: NI-cRIO-9039 -- Veristand 2023Q3 -- NI-VCOM 2023
Dyno: NI-PXIe-8840 -- Veristand 2023Q3 -- NI-VCOM 2023
(Veristand PCL @1kHz)

0 Kudos
Message 1 of 2
(138 Views)

If the same configuration works for PXIe-8840 but not cRIO-9039, I believe it is a CPU limitation. PXIe-8840 has 2.7 GHz dual-core processor, as compared to the cRIO-9039's 1.91Hz quad-core.

I recommend first using VeriStand Telemetry custom device to monitor CPU usage. If all four cores are busy, you might have to set decimations to less critical models or custom devices to free up the resources. If some cores are busy but others are not, you can manually assign the core to redistribute the computation power.  

-------------------------------------------------------
Control Lead | Intelline Inc
0 Kudos
Message 2 of 2
(112 Views)