ROS2 humble and docker not working

Hello,
I cannot get to work ROS2 Humble with URSim docker container, all running on Ubuntu 22.
I installed the ROS2 driver as described in the github and created a docker image by pulling the universalrobots/ursim_e-series and build it with:

FROM universalrobots/ursim_cb3

# Install the URCap
COPY externalcontrol-1.0.5.urcap /urcaps/externalcontrol-1.0.5.jar

The container has IP: 172.17.0.2 and host 172.17.0.1. Both are running in an Ubuntu VM in Windows 11.

Launching a test with:

ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur5 robot_ip:=172.17.0.2:50002 launch_rviz:=true

The rviz interface looks good but i’m getting in the console (after initialization phase):

[ur_ros2_control_node-1] [INFO] [1663829527.935316745] [io_and_status_controller]: Waiting for system interface to initialize…

Running the program with URCaps the program stops with connection reset or “An error occurred in the running program, line 2”
ros error

What can be the issue?

Thank you,
Cosmin

What is inside the “Advanced view (script)” part?

Oh, and: You should only provide the IP address to the robot_ip parameter, no port.

I tried both, with or without port specified.
without port I’m getting the same error, as not connected but on console i getting a lot of errors regarding transforms and on rviz the robot remains Panda not UR

Advanced view script:

Also in the settings i have:

It looks as URCap is inactive, even if it shows in the programming tab and i can used it. Is this an issue or just info?

Let’s maybe make it to the top, since there are a lot of things currently confusing me. Panda? cb3 but e-series GUI? urcap installed twice?

To start URSim and the driver, please see the documentation

In a nutshell:

ros2 run ur_robot_driver start_ursim.sh -m ur5

and

ros2 launch ur_robot_driver ur_control.launch.py ur_type:=ur5 robot_ip:=192.168.56.101 launch_rviz:=true

This should get you an rviz window with a ur5 robot.

To control the robot, setuo your robot as described here skipping the urcap installation as it is already installed. As remote IP address use 192.168.56.101 as this is what the startup script configures. Leave the port at 5002.

Now, you should be able to press play on your teach pendant and everything should work.

If anything of this fails, if if you get any error output on any shell, please post that complete output.

Thanks for support!

I’m not working with physical robot, i’m trying to make it work with robot running in docker. I’ve started the docker container with provided script and I’m not seeing any urcap tab to be able to make the simple program and get it running.

On ROS side i have:
ur_ros2_control_node-1] Error: Pipeline producer overflowed!
[ur_ros2_control_node-1] at line 412 in ./include/ur_client_library/comm/pipeline.h

Please provide the full commands and output as otherwise it is really hard to debug what is going wrong.

Clearly their is something that I’m not doing right.

First I’ve downloaded the urcap and programs.
Second I’m starting the Docker image with:
sudo docker run --rm -it -v “${URCAP_STORAGE}”:/urcaps -v “${PROGRAM_STORAGE}”:/ursim/programs -p 5900:5900 -e ROBOT_MODEL=“ur5” universalrobots/ursim_e-series

Output:

Universal Robots simulator for e-Series:5.12.4

IP address of the simulator

 172.17.0.2

Access the robots user interface through this URL:

 http://172.17.0.2:6080/vnc.html?host=172.17.0.2&port=6080

Access the robots user interface with a VNC application on this address:

 172.17.0.2:5900

You can find documentation on how to use this container on dockerhub:

 https://hub.docker.com/r/universalrobots/ursim_e-series

Connecting with VNC to docker I’m not seeing the URCap tab to be able to make the simple program.

Is this ok?

PS
I’m not starting with provided start_ursim.sh (even if is almost the same command) since I do not create a ursim_net

I am well aware, that the steps you took are very similar to what the start_ursim.sh does, but please stick to a known path until we found out what is actually going wrong. Since you also seem to have problems with the start_ursim.sh script, there seems to be an uncaught glitch in the setup somewhere. The less we deviate from known paths, the easier to find that.