application cycle time

Tuomas 5 years ago in Master modules / MD4 updated by Ulrik Zakariasson (Software development) 5 years ago 4
Why MD4 have a bigger application cycle time (min 25ms) compared to MD3 (min 10ms), even MD4 have more powerful processor than MD3 have?

We need as small cycle time as possible (10ms is maximum, 1 - 5ms would be ideal)

Our speed sensors give 1000 pulses (top speed) in one second (1 pulses in 1 ms). When software cycle time is too big the reaction time for the sensor signals is too slow and we don't get our system accurate enough.
That is the biggest problem with IQAN, the reaction time is too slow.

Is there any way to change MD4 / MD3 cycle time smaller?

Best Regards,
Thank you
BR, Tuomas
Satisfaction mark by Tuomas 5 years ago
You are right, the MD4 has got a more powerful processor than the MD3. The reason that we limited the MD4 cycle time to 25 ms as the lowest value was that we saw the cycle utilization (percentage of cycle time used for calculating the application) was fluctuating more than for the other master modules. 
To be sure that also the MD4 would have good real time performance and consistently complete calculating the application every cycle, we put some extra margin on the minimum cycle time.

The graph below is an illustration of this. This exampel is from one MD3 and one MD4 application with as similar applications as possible (the wheel loader example), set to 25 ms and combined in a multi-master system.

The larger fluctations on the MD4 comes when navigating between display pages. Still, in this example the cycle utilization of the MD4 stays below that of the MD3 with an equivalent application the whole time.
We are looking at wheter we could decrease the minimum cycle time of the MD4.

For the specific application example, I am thinking that there could possibly be another factor that limits the reaction time in your system. 
Are you brining in the frequency as a FIN channel, or are you reading the signal via the PCNT channel?
When using the PCNT channel, you get the accumulated pulses every cycle.
When using FIN, the frequency is calculated based on the pulses accumulated with a 50 ms cycle and a moving average filter with time depth 10. This means it averages out the frequency based on the pulses the last 500 ms.
You can get a faster update on the frequency signal by using the PCNT channel, attached is an example: l Pulse count to frequency.ida3

You could also split up the application and use e.g. an MC2 for the faster control loop.
Thank you from your answer.

We are using PCNT channel and still problem with accuracy, we have to use speed limits and slopes to slow down the speed. Otherwise the measurement give wrong value because sensor signals are faster than application cycle time.

How about if application cycle time would be choose able from 1 ms ->
and in cases where applications are too big for a small cycle time, then software would give a warning in check project window?

We don't have many display pages and our applications are quite small, so in our case we probably could use smaller cycle time?

Using MC2 with MD3 and MD4 would be also solution but, the system is then more complicate and valuable.

BR, Tuomas

The minimum cycle time for MD4 applications has been decreased to 10 ms in IQANdesign 3.16. Planned for release in a couple of weeks.