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.

LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

decrease loop execution rate to 10ms

Solved!
Go to solution

Hello All,

 

It seems that I cannot set my loop execution rate, using the “millisecond multiple”, to a value of 10 ms. I can see this because the time scale on my chart is not right any more when displaying a temperature signal. i.e. according to the time scale on the chart 5s had passed but in reality  already 15s passed. The multiplier property for the chart is set to 0.01, which should be right for a sampling rate of 10ms.

In the loop I acquire temperatures with the NI 9213 TC module, in a CRIO-9114 chassis, with a CRIO 9022 Real-Time controller; the VI runs actually on my laptop though, not on the real time controller.  I would have thought this might have to do with the Scan Engine Properties, set on the real time controller, but the Scan Period is 1ms and the Network Publishing Rate is 10ms. Why is it not possible to set the Network Publishing Rate below this value? Is that the reason why it does not work?   

In general, when I want to send a signal and be accurate to 100ms can I still do this when my VI runs on my laptop or does it need to run on the real time controller then?

 

Thanks

 

Patrick

0 Kudos
Message 1 of 4
(2,474 Views)
Solution
Accepted by topic author pat777

Hi

 

you do not send a sample LV program. And I do not know the hardware involved.

But 10 ms real time over a network seem rather ambitious. Windows is not a real time system (I assume you use a windows laptop?)

So try to buffer as many values on your target and send only blocks over the net.

Nobody on the laptop will monitor 10 ms events.

 

Good luck

Gabi 

7.1 -- 2013
CLA
Message 2 of 4
(2,469 Views)

Hi Patrick,

 

With Regards to the Network Publishing Rate, the maximum rate is 10ms. This is set by default. This link should show you why it cannot be increased any more. At 10ms the CPU usage is already being pushed rather high. If the rate was increased then there is a very good chance that the CPU Usage would overload.  

 

In order to try and reduce the slight offset of timing in your system I would recommend running the VI on a real-time controller. From here you can then transmit the results over a network into your (windows) laptop. This is a very efficient method. Network Streams in LabVIEW 2010 are good for this. 

 

I hope this helps.

 

Thanks for posting on the NI forums!

Kind Regards

Michael
NIUK Application Engineer
Message 3 of 4
(2,440 Views)

Thanks for your answer, finally I got to use our real time controller 🙂

 

Cheers Patrick

0 Kudos
Message 4 of 4
(2,429 Views)