[Documentation] [TitleIndex] [WordIndex

Installation

The C-API driver is (currently) only compatible with CB2 controllers running a 1.x version of Polyscope. It cannot be used on CB3 or newer controllers.

UR Control Box

ROS-enabled UR master machine

Starting the Controller Drivers

[ System design/ROS Industrial workshop slides ] You might want to begin by using the test binary on the robot to test communication, then use the actual controller once you feel you have the hang of it.

Managing the controllers

You can load/start/stop/unload controllers using the controller_manager utility rosrun controller_manager controller_manager help. You can also find a GUI interface for managing controllers in rqt. See the ros_control page for more information.

Control Modes

There are multiple ways of actuating the joints provided in the UR C API, but only one can be activated at a time. Right now there are 2 interfaces supported, the velocity (prefix: vel_) and position/velocity/acceleration (prefix: pva) interfaces. Every controller which uses that particular interface should be prefixed accordingly.

In addition, there are *_enable_mode controllers. To run a controller like pva_forward_ctrl, pva_enable_mode must also be started. To switch to, say vel_trajectory_ctrl, you must first stop pva_enable_mode (and optionally pva_forward_ctrl), then start both vel_enable_mode and vel_trajectory_ctrl to enable the trajectory controller. This feature keeps two interfaces from running simultaneously.

Test Code

You can find test code for two controllers in ur_controllers/test. Be careful, as this code will move the robots. However, they assume that the appropriate controllers are already running.


2023-10-28 13:09