0
$\begingroup$

Rosanswers logo

I have script that controls UR5e using haptic device, it works perfectly connected directly using ethernet, but it doesn't work when i use 2 5G routers (arround 70ms ping). When i launch ur5e_bringup it gives me that error:

[ERROR] [1621327595.576990704]: Could not get fresh data package from robot
[ERROR] [1621327596.989480803]: Can't accept new commands. Controller is not running.

Im using scaled_pos_traj_controller and it stopped shortly after launching the bringup.

ROS Melodic and Ubuntu 18 using UR ROS Drivers


Originally posted by Trelis98 on ROS Answers with karma: 3 on 2021-05-18

Post score: 0

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

I have script that controls UR5e using haptic device, it works perfectly connected directly using ethernet, but it doesn't work when i use 2 5G routers (arround 70ms ping).

The driver uses multiple connections to the robot controller, some of which are relatively high bandwidth (both RTDE and the "real-time" data broadcasts on tcp://:30003). Missed packets (due to noise on your link fi, or because of (temporarily) dropped connections) will interfere with the driver's correct functioning.

Additionally, the ros_control approach used by the current implementation is not very well suited for lossy connections. For e-Series controllers, a stable connection capable of supporting the 500 Hz control rate is essentially required. The 70 ms latency you quote is already multiple control periods of additional latency (on-top of the latency already present in the UR controller itself), which will further degrade control performance.

Overall, I would not recommend attempting to control an (industrial) robot controller in real-time over anything but a wired ethernet connection.

(note: this is not really specific to ur_robot_driver: I'm not aware of any real-time capable control interface for industrial robots which is suitable for use with a wireless connection)


Edit: seeing as 5G is mentioned: it may be possible to configure a dedicated connection with sufficient QoS parameters (at the "5G level", so not at the ROS topic level), but that would be out-of-scope of the driver. You'd have to look into getting that setup for your system.

I'd still personally be hesitant to use such a setup, but it may offer a way out.


Edit 2: your question reminded me of an open PR over at ros2/design which discusses mapping ROS 2 topic-level QoS to "unique network flows" for networks such as 5G infrastructures. See ros2/design#304.

While you're not using ROS 2, the authors of that design document may be interested in your use-case, and they may even be able to suggest approaches which could make whatever it is you're doing work.


Originally posted by gvdhoorn with karma: 86574 on 2021-05-18

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.