[Documentation] [TitleIndex] [WordIndex


This package enables specific ROS nodes to communicate with Fanuc industrial robot controllers, using the protocol defined in the simple_message package. Only joint position streaming is supported (packet type: JOINT_TRAJ_PT), with the controller currently overriding commanded velocity with a constant one (see fanuc/issues/1). Trajectory downloading, velocity or force control are not yet supported. See the relevant sections of the Industrial Robot Driver Specification and the HardwareCompatibility page for more information.

On the robot controller side, two KAREL programs implement the joint state proxy and the trajectory relay, transmitting joint states and receiving joint position set points respectively. These programs should work on most Fanuc controller cabinets, provided they support a relatively recent version of Karel (system V7.20 and up). The driver is manipulator agnostic, and is expected to work with all Fanuc manipulators that can be controlled by R-30iA and R-30iB cabinets (older controllers will require changes to the driver, but can be made to work. Please contact the maintainer if you are interested).


In order to be able to run the KAREL programs in this package on the Fanuc controller, the following options need to be present (in addition to basic networking and TCP/IP support):

While not strictly necessary, the use of the Fanuc Roboguide environment is recommended, as it can be used for simulation as well as configuration of the actual controller hardware.

The KAREL option (R632) may not always be necessary. Contact the maintainer if you're interested in using this package on a controller without that option (see the Package Summary above for contact details).

Hardware compatibility

The current implementation has been tested on R-30iA controllers with M-10iA (and ARC Mate 100iC), M-16iB/20, M-20iA/10L, M-430iA/2F, R-2000iA/165F and LR Mate 200iC/5L manipulators.

In addition, the driver has been used with simulated work cells (Roboguide v7 and v8) running M-20iA, M-430iA/2P, M-900iA/600, LR Mate 200iC (all variants), LR Mate 200iD (with R-30iB), and an R-2000iB/175L.

For more information and comparisons with other ROS-Industrial drivers, see the HardwareCompatibility page.


Use the links on the Tutorials page for access to the tutorials. These explain how to install and set up the KAREL programs on the controller, as well as how to use them in conjunction with the ROS nodes in this package.


See the Troubleshooting page for a listing of common errors and possible solutions.


The following list contains links to binaries of the KAREL and TP programs that are to be installed on the controller. Refer to the Tutorials for more information.

2019-06-15 12:40