Kernel Function Block¶
Kernel Arithmetic
The Compact Motion Control Function Blocks are available in two variants. Function Blocks with the ending REAL use floating point arithmetic which results in a higher precision. These Function Blocks are intended to be used with PM59x PLCs.
Function Blocks with the ending INT use integer arithmetic which uses less calculation time on PLCs without floating point CPUs. There are some restrictions connected with the use of these Function Blocks as shown in the following table. Also the use of some PLCopen Function Blocks will not be supported. Overview
Function Blocks with the prefix CMC always have to be used with others of the same kind. Function Blocks with the ending REAL should not be compined with those with the ending INT.
Topic | CMC_MOTION_KERNEL_INT | CMC_MOTION_KERNEL_REAL |
---|---|---|
Arithmetic | Integer arithmetic for interpolation and control loop. | Real arithmetic for interpolation and control loop. |
Recommended PLC | Recommended to use in PLC with floating-point unit, e.g. PM59x. | |
Jerk | Acceleration and deceleration will be changed in a single step to the required value. | The jerk input of MC_xxx will be used in positioning,
|
How does the parameter for jerk influence the axis movements
Velocity reference with different jerk values
The diagram shows the result with different jerk values and the same velocity and acceleration. The time needed for acceleration with jerk=0 is:
Time1=velocity/acceleration=(20/100)s=0.2s
The additional time with jerk=500 will be:
me2=acceleration/jerk=(100/500)s = 0.2s
So the total time is:
Time=Time1 + Time2=0.2s + 0.2s=0.4s
In the last example with jerk=100, the velocity and acceleration values are not reached.