Get Started with ROS and ROS 2 Connectivity Interface
The Robotics System Toolbox Support Package for Universal Robots UR Series Manipulators enables connectivity and control of physical cobots from
Universal Robots or simulated cobots in Gazebo and URSim using
Universal_Robots_ROS_Driver
and
universal_robot
ROS packages from Universal Robots.
If the intended end goal of your application involves standalone manipulation of the Universal Robot cobot only, control and connectivity workflow using the teach pendant and Polyscope software is an ideal solution. However, in majority of the robotics use-cases, the environment consists of multiple robots and sensors, and the standalone manipulation is not common. In such scenarios, ROS is widely used due to inherent advantages of hardware abstraction, device drivers, libraries, visualizers, message-passing, package management, and so on.
The support package consists of user friendly setup screens to install and
configure ROS, Gazebo and URSim simulators. In addition, it also consists of
urROSNode
object and urROS2Node
object, and associated functions to read various robot states, control the
robot in task or joint space, follow predefined trajectories in task or
joint space and record the robot motion.
For more information on how to use the urROSNode
object,
refer to the Getting Started with Connecting and Controlling a UR5e Cobot from Universal Robots
example.
For more information on how to use the urROS2Node
object,
refer to the Getting Started with Connecting and Controlling a UR5e Cobot from Universal Robots using ROS 2
example.
The urROSNode
object and urROS2Node
object have functions to control individual joint angles and Cartesian pose
of the robot. More advanced functions demonstrate how to use Robotics System Toolbox features to compute joint angles required to track a smooth
trajectory in 3D space and command the robot to track the pre-computed
trajectory.
Functions
urROS2Node | Connection to simulated cobot or physical cobot from Universal Robots over ROS 2 (Since R2024a) |
urROSNode | Connection to simulated cobot or physical cobot from Universal Robots over ROS (Since R2024a) |
universalrobot | (Not recommended) Connection to simulated cobot or physical cobot from Universal Robots (Since R2022a) |
getJointConfiguration | Get current joint configuration from the robot (Since R2022a) |
getCartesianPose | Get current end-effector pose from the robot (Since R2022a) |
getEndEffectorVelocity | Get current end-effector velocities from the robot (Since R2022a) |
getJointVelocity | Get current joint velocities from the robot (Since R2022a) |
getMotionStatus | Get current motion status of the robot (Since R2022a) |
followTrajectory | Command robot to move along the desired joint space waypoints (Since R2022a) |
followWaypoints | Command robot to move along the desired task space waypoints (Since R2022a) |
sendCartesianPose | Command robot to move to desired Cartesian pose (Since R2022a) |
sendCartesianPoseAndWait | Command robot to move to desired Cartesian pose and wait for the motion to complete (Since R2022a) |
sendJointConfiguration | Command robot to move to desired joint configuration (Since R2022a) |
sendJointConfigurationAndWait | Command robot to move to joint configuration and wait for the motion to complete (Since R2022a) |
recordRobotState | Log the key robot state parameters during motion of robot (Since R2022a) |
executePrimaryURScriptCommand | Execute primary URScript command to control cobot over ROS interface (Since R2023a) |
executeSecondaryURScriptCommand | Execute secondary URScript command over ROS interface (Since R2023a) |
handBackControl | Get the control back from the External Control program node in the UR program tree (Since R2023a) |
Topics
- Select Simulator for Universal Robots
Select URSim or Gazebo
- ROS Interface for Universal Robots
Use ROS interface for complex applications with Universal Robots
- Launch and Set Up URSim
Launch and load the program in URSim
- Control ROS Enabled End-Effector Using MATLAB
Use ROS drivers along with end-effectors for Universal Robots
- Installation of ROS Drivers for Intel RealSense Devices
Install ROS drivers for RGBD camera for bin picking examples.
Troubleshooting
Troubleshoot issues when simulating Universal Robots cobots using URSim or Gazebo