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”
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
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.