Search code examples
pythonapireal-timecanoe

CANoe API for realtime requirement


I'm looking for a fitting API to send CAN signals via CANoe. I'm pretty familiar with python and found a usable API with the pywin32 package. A Requirement of my project is to guarantee real-time (in this case <20ms) communication. I'm not an expert when it comes to details like latency etc., but as far as I know, python isn't the fastest. Are there any other APIs that secure the real-time requirement or are my concerns unfounded using a python script works fine?


Solution

  • Real-Time is a very broad buzz word, the question is what is your acceptable response time on all events you want to react on.

    E.g. dSPACE has adapted Python to be somewhat real-time capable, so you can run it synchronous with your plant model even at 1ms rate, with very limited code in there.

    I am not sure whether there exists e.g. an integration, which allows to write measurement or ECU/ simulation nodes, these are the ones which are theoretically real-time capable in CANoe, in Python or more precise IronPython in this case.

    However, this would then be a standard Python not optimized for that and thus probably have issues.

    Last, if you really need it fast, you would have to use a Vector hardware, which allows CANoe to offload its runtime/ kernel to the interface processor.

    Only the very high end stuff would allow you to install e.g. IronPython, despite they usually run some embedded Windows version.