Show EOL distros: 

Supported Hardware

It is the goal of the ROS-Industrial program to provide ROS interfaces to many different kinds of industrial equipment, including PLCs, Robot Controllers, Servos, Human Machine Interfaces, IO Networks, etc. As these interfaces become available, they will be documented here.

Industrial Robots

The table below summarizes level of support for various robot interfaces. All interfaces make use of commercially available options (although the required options may be available at additional cost). Because each vendor exposes different functional interfaces, the capability of each can differ. This is noted where significant limitations are present. For more detailed information please see the associated stack/package documentation.

Definitions

Position Streaming

Joint positions are streamed to the controller. Move velocity is fixed by the controller. (This method is often the easiest to set up because much of the controller interpolation is maintained)

Trajectory Downloading

A full trajectory of joint positions is downloaded to the controller. The trajectory includes velocity constraints which are adhered to by the controller

Trajectory Streaming

This is very similar to Position Streaming, except that trajectory velocity constraints are adhered to by the controller

Torque Control

Direct torque commands are sent to the controller. This is a real-time interface (not yet supported within ROS)

Arm Nav. Pkg

Robot specific geometry must be defined in an assoicatiated arm navigation package. This information is used for path planning purposes and collision checking. While these are created for each robot model, they must be recreated for entire robot cells (This is not difficult, see this tutorial)>>

Position Streaming

Joint positions are streamed to the controller. Move velocity is fixed by the controller. (This method is often the easiest to set up because much of the controller interpolation is maintained)

Trajectory Downloading

A full trajectory of joint positions is downloaded to the controller. The trajectory includes velocity constraints which are adhered to by the controller

Trajectory Streaming

This is very similar to Position Streaming, except that trajectory velocity constraints are adhered to by the controller

Torque Control

Direct torque commands are sent to the controller. This is a real-time interface (not yet supported within ROS)

MoveIt Pkg

Robot specific geometry must be defined in an associated manipulator package. This information is used for path planning purposes and collision checking. While these are created for each robot model, they must be recreated for entire robot cells (This is not difficult, see this tutorial)

Supported Hardware Table

Vendor

Controller(s)

Position
Streaming

Trajectory
Downloading

Trajectory
Streaming

Torque
Control

Manipulator

Arm Nav.
Pkg

Motoman

DX100

YES 1

NO

NO

NO

SIA10D

YES

SIA20D

YES

Other DX 100
Compatible

NO 2

Adept

CX, CS

YES 3

NO

NO

NO

Viper 650

YES

Vendor

Controller(s)

Position
Streaming

Trajectory
Downloading

Trajectory
Streaming

Torque
Control

Manipulator

Arm Nav.

MoveIt
Pkg

ABB

IRC5

NO

YES

NO

NO

IRB-2400

YES

NO

IRB-5400

YES

NO

Adept

CX, CS

YES 3

NO

NO

NO

Viper 650

YES

NO

Fanuc

R-30iA

YES4

NO

NO

NO

LR Mate 200iC(/5H)

NO

YES 5

M-10iA

YES

YES 5

M-16iB/20

YES

YES 5

M-20iA(/10L)

NO

YES 5

M-430iA/(2F, 2P)

YES

YES 5

Other

NO 6

NO 7

Motoman

DX100

YES 1

NO

NO

NO

SIA10D

YES

NO

SIA20D

YES

NO

Other

NO 6

NO 7

Universal Robot

UR 5

YES 8

NO

NO

NO

UR 5

YES

YES

Vendor

Controller(s)

Position
Streaming

Trajectory
Downloading

Trajectory
Streaming

Torque
Control

Manipulator

Arm Nav.

MoveIt
Pkg

ABB

IRC5

NO

YES

NO

NO

IRB-2400

YES

NO

IRB-5400

YES

NO

Adept

CX, CS

YES 3

NO

NO

NO

Viper 650

YES

NO

Fanuc

R-30iA / R-30iB

YES4

NO

NO

NO

LR Mate 200iC (all)

NO

YES

LR Mate 200iD

NO

YES 5

M-10iA

NO

YES

M-16iB/20

YES

YES

M-20iA(/10L)

NO

YES

M-430iA/(2F, 2P)

YES

YES

M-900iA/260L 5

NO

NO

Other

NO 6

NO 7

Motoman

DX100

YES 1

NO

NO 9

NO

SIA10D/F

YES

NO

SIA20D/F

YES

NO

FS100

NO

NO

YES

NO

MH5F

NO

YES

Other

NO 6

NO 7

Universal Robot

CB2/CB3 10

YES 8

NO

NO

NO

UR 5

NO

YES

UR 10

NO

YES

Vendor

Controller(s)

Position
Streaming

Trajectory
Downloading

Trajectory
Streaming

Torque
Control

IO
Control

Manipulator

MoveIt
Pkg

ABB

IRC5

NO

YES

NO

NO

NO

IRB-2400

YES

IRB-5400

NO

Adept

CX, CS

YES 3

NO

NO

NO

NO

Viper 650

NO

Fanuc

R-30iA / R-30iB

YES4

NO

NO

NO

NO

LR Mate 200iC (all)

YES

LR Mate 200iD

YES 5

M-10iA

YES

M-16iB/20

YES

M-20iA(/10L)

YES

M-430iA/(2F, 2P)

YES

M-900iA/260L 5

NO

Other

NO 7

Motoman

DX100

NO

NO

YES

NO

YES11

SIA10D/F

NO

FS100

NO

NO

YES

NO

YES11

SIA20D/F

YES

DX200

NO

NO

YES

NO

YES11

MH5F

YES

YRC1000

NO

NO

YES

NO

YES11

SDA10F

YES

Other

NO 7

Universal Robot

CB2/CB3 10

YES 8

NO

NO

NO

YES 12

UR 5

YES

UR 10

YES

Grippers

No industrial-specific gripper drivers are provided in the Electric release. Gripper control can be manually implemented using raw EtherCAT I/O as described below.

No industrial-specific gripper drivers are provided in the Fuerte release. Gripper control can be manually implemented using raw EtherCAT I/O as described below.

While most grippers are quite simple and can be addressed using standard IO Networks, some are more complex. Complex grippers, which benefit from ROS grasp planning capability, require hardware specific drivers.

Definitions

Grasp Hand
Posture Action

The object_manipulation_msgs/GraspHandPostureExecutionAction is an action interface that is used by higher level grasp planning software. Grippers that support this interface can be easily integrated into the grasp planning pipeline.

Supported Hardware Table

Vendor

Model(s)

Grasp Hand
Posture Action

Robotiq

S-Model

NO

IO Networks

Networked input/output are commonly found in industrial applications. Support for these specialized networks within ROS-Industrial does not exist. However, outside stacks are available. We recommend the Simple Open EtherCAT Master stack. See implementation notes.

In the Motoman stack, limited support for controlling basic I/O has been implemented. This can be used for general gripper control. However, this custom control message is not compatible with standard industrial Fieldbus protocols. Additional hardware may be required for Fieldbus protocols.

Notes

  1. Limited to <20% speed (1 2 3)

  2. User must generate packages (4)

  3. Limited to <70% speed (5 6 7 8)

  4. Hardcoded/fixed velocity only (9 10 11)

  5. Experimental package, see fanuc_experimental (12 13 14 15 16 17 18 19 20)

  6. User must generate Arm Nav packages (21 22 23 24)

  7. User must generate MoveIt packages (25 26 27 28 29 30)

  8. Full speed motion? (31 32 33)

  9. User must port FS100 motion driver to DX100. Will still be limited to 25-35% speed (34)

  10. Check universal_robot page for Polyscope version compatibility (35 36)

  11. Controller specific implementation may require custom code (37 38 39 40)

  12. Partial / Experimental (41)

Wiki: Industrial/supported_hardware (last edited 2020-10-15 10:20:23 by GvdHoorn)