Learn more about the other challenges of automation, the future requirements and take a look at the control technology of the future in our whitepaper.
SDK: App development is that simple
The everyday life of a developer has changed. Software for machine automation is becoming increasingly complex, and the developer’s tasks often go beyond pure programming. With ctrlX AUTOMATION and the associated Software Development Kit (SDK), Bosch Rexroth makes the specific development and provision of apps extremely simple. For one, users have the option of integrating their own software and know-how into the ctrlX AUTOMATION ecosystem. In addition, the automation platform is open for apps from third-party providers and the user can employ existing apps from Bosch Rexroth.
Today, innovative automation solutions are often no longer created within company boundaries, but rather from collaborative work with customers, partners and end users. The strengths, experiences and requirements of all parties involved are bundled and result in the best possible overall solution. This principle is what Bosch Rexroth stands for with ctrlX AUTOMATION.
The ecosystem surrounding the automation platform makes it possible to develop and offer additional functionalities outside the core functions. This leads to new fields of application for the platform and offers customers a greater choice of functions or the possibility of implementing tailor-made solutions for their requirements. For partners, the integration of their applications into the ecosystem results in important multiplier effects. The functional range of ctrlX AUTOMATION and the community create an almost unlimited field of possibilities.
Software Development Kit as the developer’s right hand
The Software Development Kit serves as a connecting element. It can be easily downloaded from the AppZone of the ctrlX AUTOMATION Community or, in future, from the GitHub development platform. Among other things, the SDK enables the development of apps for the Linux-based controller ctrlX CORE. Existing code can easily be integrated as an app, both for real-time and non-real-time applications. Numerous programming languages such as C++, Python, C# etc. are supported. The selection of high-level languages is constantly being expanded and the scope for action here is almost unlimited. Via the ctrlX Data Layer, the apps can receive automation data and share information with other apps.
This allows individual solutions to be implemented quickly and easily. The SDK includes the necessary tools, libraries, documentation, a description of the REST API that can be used to connect to new software projects, and code samples. A detailed manual supports the setup of the development environment.
The documentation shows, for example, how to integrate your own apps into the system and use all available security mechanisms. It contains examples of license and user management, among other things. This allows developers to benefit from the highest security standards that the automation platform brings to the table.
Extension points for ctrlX CORE
With the Software Development Kit, the open control platform ctrlX CORE can be freely and flexibly expanded with new functions. There are currently various extension points for this:
A: Customer application
B: Bundle for the automation snap
C: PLC library (the PLC app is required for this)
The foundation is the real-time capable operating system Linux. Extension A includes all possibilities for the development of a special customer application. This is a separate application that does not run in a real-time context, but still communicates with the ctrlX Data Layer.
The extension possibilities in area B refer to apps that run in a real-time context. This means you extend the controller with your own functionality that requires real-time capability. For example, if a user wants to develop their own motion app, they can use extension point B to extend the automation core snap and create their own application, but still operate the fieldbus.
Extension point C can be used to develop PLC libraries that are implemented externally in high-level language. This means that they can also be called cyclically from the PLC runtime environment.
All in all, the SDK provides developers with almost unlimited possibilities to develop and deploy applications according to their individual needs.
Do you already know our ctrlX developR - series? In Episode #5 Johannes explains everything about the SDK.
If you have any questions or require further information regarding ctrlX AUTOMATION, please contact us:
Game Changer Software