Skip to main content

SoftMotion with Multicore Processors

By distributing the motion tasks over multiple processor cores, more axes or axis groups can be actuated by SoftMotion. As a result, computation-intensive tasks, such as CNC path preprocessing or robotics path planning for CP movements, can be swapped out to another processor core. Then there is more time for other tasks in the bus task. The fact that the computing power of the single-core controller is insufficient is demonstrated in the case of robotics by the unexplainable decrease in path speed.

System requirements

  • SM V4.5.1.0 or higher

  • Compiler V3.5.12.0 or higher

  • Multicore-compatible runtime system

Application

  • Robotics and CNC: Set the planning and bus tasks to different processor cores

  • When using different bus systems, set the individual bus tasks to different processor cores

When using multiple tasks and multiple processor cores, take note of the following:

  • The function blocks in the CNC planning task are permitted to get a new rising edge at the Execute input only in specific states of the interpolator (iStatus output). This also applies to single-core:

    • IPO_UNKNOWN

    • IPO_WAIT

    • IPO_FINISHED

    • IPO_INIT (for the first start only, not for restart)

  • The bus tasks of interdependent axes (axis group, cam, and CNC kinematics) have to run on the same processor core.