![]() |
APIs, concepts, guides, and more
|
RMP API performance, ease of use, & requirement comparison.
API Name | Language | Supported Platform | Real-Time Capable |
---|---|---|---|
RapidCode | C++ | Windows | ❌ |
RapidCode | C++ | Linux | ✅ |
RapidCodeRT | C++ | INtime RTOS | ✅ |
RapidCode.NET | C#, VB.NET | Windows, Linux | ❌ |
RapidCodePython | Python | Windows, Linux | ❌ |
C++ generally delivers the best raw speed, making it ideal for performance-critical motion control. RapidCode.NET (C# or VB.NET) and RapidCode Python are thinner wrappers over the C++ library, offering simpler development at the cost of a small performance penalty.
In all platforms, RapidCode communicates over shared memory with the RMP firmware, ensuring extremely fast API calls. Even in C#, which is wrapped over the C++ API, reading values typically takes around 300 nanoseconds, only marginally slower than C++ calls, which may be a few nanoseconds faster in practice.
On an RTOS (e.g., Linux real-time threads, INtime), synchronization mechanisms introduce overhead but enable deterministic execution. Hence, while real-time threads may run slower, they ensure consistent timing.
Most deterministic to least:
Variation | Requirements |
---|---|
C++ (Windows) | Visual Studio or another C++ IDE, correct configuration of headers and libraries. |
C++ (Linux RT) | Linux environment with real-time support, proper toolchain configuration, setting up real-time threads (e.g., PREEMPT_RT kernel). |
C++ (INtime) | Same as above but requires the INtime SDK and multi-node INtime runtime installation. |
.NET (C# / VB) | Visual Studio or .NET-compatible IDE, simpler setup on Windows or Linux, fewer low-level configurations needed. |
Python | Python 3.x installed on Windows or Linux |
Easiest to most complex: