KPA Motion Control is a library set used in software development for position control devices. KPA Motion Control is specially designed for the automation industry, medicine, and other application fields, where it is necessary to control the moving parts of machines or robots, e.g. numerical control (CNC) machines. It conforms to the PLCopen specification and does not rely on a specific drive model or vendor, offering a standard motion interface which can be used across various systems. Remote usage of product capabilities is provided by the KPA Motion Proxy Development Kit (MoPDK). The MoPDK allows to control drives using a non-real-time OS on the client side, as the motion control performed in a real-time OS on the server side.

System compatibility

KPA Motion Control is implemented as a library with a “C” interface and is not bounded to any specific CPU architecture. Moreover, the architecture includes operating system abstraction layer (OSAL) which enables adaptation to any operating environment. KPA Motion Control already supports Windows, Linux, INtime and QNX. Other operating systems can be supported on the request.

3D-axis, synchronized axis, and single-axis motion control

KPA Motion Control provides the possibility to create custom applications for managing portal systems and 3D-axis motion with complex trajectories.

Online generation of the time-optimal trajectory

Internal algorithms of KPA Motion Control generate time-optimal trajectories at each motion cycle.

The time optimal algorithm transforms an arbitrary current state of motion into the desired target state of motion, taking into account motion constraints. The resulting trajectories are time optimal and synchronized in such a way that all selected degrees of freedom (DOF) simultaneously reach their target state of motion.

The online generation of the time-optimal trajectory allows to increase the efficiency of the tasks.

Jerk-limited motion

KPA Motion Control helps to reduce equipment wear, acoustic noise, and loads amplitude in motion. Position time-dependencies has continuous first- and second-ordered derivatives over the complete path.

Operating System Abstraction Layer

KPA Motion Control is compatible with various systems due to developed Operating System Abstraction Layer (OSAL).

OSAL provides an application programming interface (API) to allow KPA Motion Control to take advantage of an Operating System (OS) to run either in OS environment or without one. It is designed to take care of the underlying differences between the OS interfaces.

Any KPA Motion Control component that depends on OSAL does not include any specific implementation of the OSAL interface. The implementation is built as a static library and should be linked with a user application. Thereby, the implementation of OSAL API is exclusively resolved on application compile time.

KPA Motion Control allows the introduction of a custom OSAL implementation and the use of KPA Motion Control capabilities within user’s specific environment.

Bus Abstraction Layer

Bus Abstraction Layer (BUSAL) allows interacting with drivers based on various profiles, such as CiA402/DS402, SERCOS. BUSAL is a modular KPA Motion Control component. It introduces an open interface for communication with physical or virtual drives. The BUSAL allows treating moving parts of machines as axes. It consists of several built-in modules. The user can implement own modules to handle any real or virtual equipment as drives.

Available for various CPUs

KPA Motion Control offers multi-thread processing for multi-core CPUs and is also optimized for low-end CPUs.

Native EtherCAT bus support

EtherCAT bus support is provided by a comprehensive own-developed master driver.

Meets industry standards

koenig-pa GmbH is a voting member of PLCopen Group – an independent worldwide organization providing efficiency in industrial automation based on the needs of users. KPA Motion Control supports PLCopen Control specifications with additional extensions.

Integration with KPA Automation softPLC

KPA Motion Control is integrated to KPA Automation softPLC that allows to assign driver control logic by the means of graphic interface without writing code.

Motion Configuration Utility

KPA Motion Control is complemented with Motion Configuration Utility – a plug-in of KPA EtherCAT Studio. KPA EtherCAT Studio allows to configure motion application by the means of Motion Configuration Utility which generates INI file with corresponding settings.

  KPA Motion Control Flyer

  KPA Motion Development Kit


KPA Motion Control is delivered as an archive, which includes documentation, header files, libraries and examples.

KPA Motion Control

Ready to try our KPA Motion Control?

Request a free trial

Get more information if you have any questions

    By entering your email address you agree that we will answer your request via email.

    This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.