No version for distro humble showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro jazzy showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro kilted showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro rolling showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro galactic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro iron showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro melodic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange

No version for distro noetic showing github. Known supported distros are highlighted in the buttons above.

Package Summary

Version 0.0.0
License BSD-3-Clause
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description
Checkout URI https://github.com/superdiodo/ur_ros_rtde.git
VCS Type git
VCS Version main
Last Updated 2026-04-02
Dev Status UNKNOWN
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

ur_ros_rtde tutorials

Maintainers

  • Alessio Saccuti

Authors

No additional authors.

Tutorials for ur_ros_rtde

The proposed software is composed of three ROS2 nodes:

Examples below demonstrate how to use these nodes and plugins to interact with the robot. This package includes several ready-to-run examples; most can be executed directly from a terminal.
Alternatively, similar examples are provided as scripts using the helper headers in ur_ros_rtde_simple_clients.
Note that these scripts require the ur_ros_rtde_tutorials package to be compiled before execution.

Example A: Retrieve robot state

To retrieve the robot state RobotStateReceiver must be used.

  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
  2. Launch robot_state_receiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    

At this point, the robot state can be accessed using topics and services.

  1. Print joint states:
    # type in a new terminal
    ros2 topic echo /joint_states
    

Example B: Visualize the robot in RViz

RobotStateReceiver does not require any URDF of the robot, but URDF files are required to visualize the robot in tools like RViz. If a ROS2 description package of a UR robot is already available, skip to step 2 and use that package instead of simple_ur10e_description.

  1. In simple_ur10e_description generate UR10e URDF file from xacro files.
    # generate ur10e urdf
    cd ~/your_path/simple_ur10e_description/urdf
    sh generate_urdf.sh ur10e.xacro ur10e.urdf

    # build again the package to make the urdf visible
    cd <ros_workspace_path>
    colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release --packages-up-to simple_ur10e_description
    
  1. Configure robot_state_receiver.launch.py:
    • set ip address with robot_ip
    • set robot_description_package = "simple_ur10e_description"
    • set urdf_file_name = "urdf/ur10e.urdf"
    • set launch_rviz = True

When setting launch_rviz to True a robot state publisher node is started which will publish TF for each robot link based on the joint states.

  1. Launch RobotStateReceiver:
    # type in a new terminal
    ros2 launch ur_ros_rtde robot_state_receiver.launch.py
    
The first time RViz will be empty. To show the robot: 
1. Add a robot model: `Displays\Add\RobotModel`
2. Set `world` in `Fixed Frame`
3. Set `/robot_description` in `RobotModel\Description Topic`
4. Click on `File\Save config` to save the actual configuration of RViz

Example C: move the robot by using the available action servers

In ur_ros_rtde commands are defined as plugins and exposed as action servers. To make available these action servers the CommandServer must be started:

  1. Configure command_server.launch.py setting ip address with robot_ip

  2. Launch CommandServer:

    # type in a new terminal
    ros2 launch ur_ros_rtde command_server.launch.py
    
  1. List the available commands (more info at ur_ros_rtde):
    # type in a new terminal
    ros2 action list
    

The file command_server.launch.py can also be used to define a blacklist of plugins which must not be loaded. By default, the plugins implemented in ur_ros_rtde_gripper_commands are disabled, since they rely on the presence of specific hardware.

The action servers initialized by the command server can be used to interact with the robot by sending goals to them. A goal can be sent to an action server by using the terminal or by script, in this example we both cover them.

  • Execute a waypoint-based trajectory: In trajectory_execution there is an example in which a trajectory is sent to the robot. The robot (oriented towards Y-axis) will move as shown in the animated image.

File truncated at 100 lines see the full file

CHANGELOG
No CHANGELOG found.

Dependant Packages

No known dependants.

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged ur_ros_rtde_tutorials at Robotics Stack Exchange