I’m currently looking at two communication methods to externally control a UR5e.
Sending URscipt commands from the PC and receive data, both via the real-time interface(port 30003).
Use the RTDE interface(port 30004) for communication with the external device(PC).
I feel that the second option is a more elegant solution to externally control the robot however, I have trouble understanding the fundamental difference between the rtde interface and the rt interface(30003).
In the REAL-TIME DATA EXCHANGE (RTDE) GUIDE (https://www.universal-robots.com/articles/ur/real-time-data-exchange-rtde-guide/ ): “The Real-Time Data Exchange (RTDE) interface provides a way to synchronize external applications with the UR controller over a standard TCP/IP connection, without breaking any real-time properties of the UR controller.”
My guess is that with the rtde interface the external application is real-time synchronized, as in the case of the rt(30003) the external application is not rt synchronized. However, I am not sure whether this is the fundamental difference. Could anyone explain the main difference between these two options?