Custom port: 50002 (Default - as guide, linked above, instructs)
Host name: tht-stationary02
PC (Ubuntu 20.04)
IP-address: 192.160.0.100
Subnet mask: 255.255.255.0
Firewall disabled (tht@tht-stationary02:~$ sudo ufw status verbose → Status: inactive)
I’m able to run the controllers from my computer, getting the right robot position when RViz launching, but not able to play the robot program (External Control)…?
I am having a similar issue while using ur_rtde library for external control of the robot (UR3e). I have the external control urcap uploaded on the teach pendant and it is in remote control mode. But the external control script doesn’t start automatically. I checked and the external control urcap is active (settings > system > urcaps). Am I supposed to manually start the script on the teach pendant? But that can’t be done since RTDE requires the robot to be in remote control mode.
Depends on the version of PolyScope you have on your controller. With PolyScope 5.x, you can just select “Remote Control” instead of “Local”, and RTDE should work. I tested this with our UR5e running PolyScope 5.11 and ur-rtde 1.6.2, and it works fine.
If you want to use the ur-rtde library with PolyScope X—well, that’s another story. With versions < X.11, there was no “Remote Control” option; with the update to X.11, this option came back. I tested the library only using “Remote Control”, and it works if you want to read something from the robot (e.g., joint angles) or work with I/Os. If you want to control the robot, the library doesn’t work—probably because you need to turn on the robot, which you cannot do from Remote Control because you’re in Automatic mode.
You should be able to run the program from the Dashboard Server (by the way, this is how it’s done in the ROS1 ur_robot_driver), but in PolyScope X the Dashboard Server is no longer available and has been replaced by the Robot API based on a RESTful API (this is also why the ROS1 driver doesn’t work with PolyScope X). I didn’t have the energy or will to implement that. The solution is to use the External Control URcapx.
With External Control, you need to install the URcapx, set the correct IP address of the computer, and run your Python code. In your script, you need to initialize rtde_control correctly: (1) set your RTDE frequency and (2) set the flag to FLAG_USE_EXT_UR_CAP.