Show EOL distros: 

The Industrial Robot Driver specification does not apply to this release. Please see a later release version for more details.

This page provides a detailed description of how different robot platforms comply with the Industrial Robot Driver specification. It is intended for developers and systems integrators needing to evaluate specific functional capabilities. More general compatibility information can be found here.

ROS Interface

Section

Type

Name

Robots

Motoman
dx100

Adept
CX/CS

1.3.1

param

robot_ip_address

N1

N2

1.3.2

pub topic

feedback_states

Y3

Y3

1.3.2

pub topic

joint_states

Y3

Y3

1.3.3

sub topic

joint_path_command

Y4

Y4

  1. Uses command-line argument instead.
  2. Hardcoded in source code.
  3. Simple Message only supports actual position feedback.

  4. Performs fixed-speed motion set on robot controller. Ignores ROS velocities/timestamps.

Robot/Client Behavior

Section

Condition

Expected Behavior

Robots

Motoman
dx100

Adept
CX/CS

1.2.1

ROS node launched

auto-connect to robot

Y

Y

1.2.1

robot power-on

ROS comms software auto-runs

Y

N

1.2.2

comms loss

ROS node tries repeated reconnects to robot

Y

N

1.2.2

comms loss

ROS node stops publishing position messages

Y

Y

1.2.2

comms loss

robot stops motion and turns off drive power

N

?

1.2.2

comms loss

robot waits for new connection

Y

N

1.2.2

general

topics/services should not be published/advertised if unsupported

Y

Y

1.3.3

trajectory overflow

trajectory ignored and error logged

Y

Y

1.3.3

trajectory received

robot automatically starts motion

Y

Y

1.3.3

trajectory completed

motion stops, drive power stays on

Y

?

1.3.3

trajectory interrupted

cancel current motion, begin new trajectory

?

N

This page provides a detailed description of how different robot platforms comply with the Industrial Robot Driver specification. It is intended for developers and systems integrators needing to evaluate specific functional capabilities. More general compatibility information can be found here.

ROS Interface

Section

Type

Name

Robots

Simulator

Industrial
Robot
Client

Motoman
dx100

Adept
CX/CS

ABB
IRC5

Fanuc
R-30iA

Universal
Robots
UR5

1.3.1

param

robot_ip_address

N/A

Y

N1

N2

Y

Y

N1

1.3.2

pub topic

feedback_states

Y5

Y3

Y3

Y3

Y3

Y3

N

1.3.2

pub topic

joint_states

Y5

Y3

Y3

Y3

Y3

Y3

Y6

1.3.2

pub topic

robot_status

N

Y

Y7

N

N

N

N

1.3.3

sub topic

joint_path_command

Y8

Y

Y4

Y4

Y9

Y4

N10

1.3.3

service

stop_motion

N

Y

N

N

Y

Y

N

1.3.3

service

joint_path_command

N

Y

N

N

Y

Y

N

  1. Uses command-line argument instead.
  2. Hardcoded in source code.
  3. Simple Message only supports actual position feedback.

  4. Performs fixed-speed motion set on robot controller. Ignores ROS velocities/timestamps.

  5. Actual position feedback only.

  6. Actual position/velocity feedback only.

  7. Only responds with motion state.
  8. Assumes stepwise motion, from point-to-point, using time_from_start. Does not interpolate between trajectory points using velocities or accel.
  9. Velocities calculated from time_from_start, assuming continuous motion. Ignores trajectory velocity/accel values.
  10. Provides control_msgs/FollowJointTrajectoryAction directly.

Robot/Client Behavior

Section

Condition

Expected Behavior

Robots

Simulator

Industrial
Robot
Client

Motoman
dx100

Adept
CX/CS

ABB
IRC5

Fanuc
R-30iA

Universal
Robots
UR5

1.2.1

ROS node launched

auto-connect to robot

N/A

Y

Y

Y

Y

Y

Y

1.2.1

robot power-on

ROS comms software auto-runs

N/A

N/A

Y

N

Y

N

Y1

1.2.2

comms loss

ROS node tries repeated reconnects to robot

N/A

Y

Y

N

Y?

Y

?

1.2.2

comms loss

ROS node stops publishing position messages

N/A

Y

Y

Y

Y

Y

?

1.2.2

comms loss

ROS node publishes "disconnected" state messages

N/A

N

N

N

N

N

N

1.2.2

comms loss

robot stops motion and turns off drive power

N/A

N/A

N

?

N?

N8

?

1.2.2

comms loss

robot waits for new connection

N/A

N/A

Y

N

Y

Y9

Y

1.2.2

general

topics/services should not be published/advertised if unsupported

Y

N6

Y

Y

Y

Y

Y

1.3.3

trajectory overflow

trajectory ignored and error logged

N/A

N/A

Y

Y

N2

N/A3

N/A3

1.3.3

trajectory received

robot automatically starts motion

Y

N/A

Y

Y

Y

Y

Y

1.3.3

trajectory completed

motion stops, drive power stays on

Y

N/A

Y

?

Y

Y

Y

1.3.3

trajectory interrupted

cancel current motion, begin new trajectory

N4

Y7

?

N

Y

Y

?

1.3.3

trajectory overlap

points with out-of-order (or in-the-past) time_from_start should be ignored

N5

N5

N5

N5

N5

N5

?

  1. Required software downloaded "on-the-fly" to robot by UR5 ROS node.
  2. Error logged. Trajectory truncated at max-size and executed anyway (not ignored).
  3. Trajectory streamed to robot. No overflow possible.
  4. Simulator is single-threaded. Will block new trajectories (buffered in ROS) until previous trajectory is completed, then execute new trajectories in the order received.
  5. Moves through all trajectory points, in the order received.
  6. Topic publishers are always created. No topic messages are published if robot doesn't provide required simple_message broadcast.
  7. Streaming trajectory only. Reaction is robot-specific for robots using downloaded trajectories.
  8. Motion is stopped, drives remain powered.
  9. Socket time-outs may interfere, see ros-industrial/fanuc/issues/19.

This page provides a detailed description of how different robot platforms comply with the Industrial Robot Driver specification. It is intended for developers and systems integrators needing to evaluate specific functional capabilities. More general compatibility information can be found here.

ROS Interface

Section

Type

Name

Robots

Simulator

Industrial
Robot
Client

Motoman
dx100

Adept
CX/CS

ABB
IRC5

Fanuc
R-30iA
R-30iB

Universal
Robots
UR5/UR10

1.3.1

param

robot_ip_address

N/A

Y

N1

N2

Y

Y

N1

1.3.2

pub topic

feedback_states

Y5

Y3

Y3

Y3

Y3

Y3

N

1.3.2

pub topic

joint_states

Y5

Y3

Y3

Y3

Y3

Y3

Y6

1.3.2

pub topic

robot_status

Y

Y

Y7

N

N

Y

N

1.3.3

sub topic

joint_path_command

Y8

Y

Y4

Y4

Y9

Y4

N10

1.3.3

service

stop_motion

N

Y

N

N

Y

Y

N

1.3.3

service

joint_path_command

N

Y

N

N

Y

Y

N

  1. Uses command-line argument instead.
  2. Hardcoded in source code.
  3. Simple Message only supports actual position feedback.

  4. Performs fixed-speed motion set on robot controller. Ignores ROS velocities/timestamps.

  5. Actual position feedback only.

  6. Actual position/velocity feedback only.

  7. Only responds with motion state.
  8. Assumes stepwise motion, from point-to-point, using time_from_start. Does not interpolate between trajectory points using velocities or accel.
  9. Velocities calculated from time_from_start, assuming continuous motion. Ignores trajectory velocity/accel values.
  10. Provides control_msgs/FollowJointTrajectoryAction directly.

Robot/Client Behavior

Section

Condition

Expected Behavior

Robots

Simulator

Industrial
Robot
Client

Motoman
dx100

Adept
CX/CS

ABB
IRC5

Fanuc
R-30iA
R-30iB

Universal
Robots
UR5/UR10

1.2.1

ROS node launched

auto-connect to robot

N/A

Y

Y

Y

Y

Y

Y

1.2.1

robot power-on

ROS comms software auto-runs

N/A

N/A

Y

N

Y

N

Y1

1.2.2

comms loss

ROS node tries repeated reconnects to robot

N/A

Y

Y

N

Y?

Y

?

1.2.2

comms loss

ROS node stops publishing position messages

N/A

Y

Y

Y

Y

Y

?

1.2.2

comms loss

ROS node publishes "disconnected" state messages

N/A

N

N

N

N

N

N

1.2.2

comms loss

robot stops motion and turns off drive power

N/A

N/A

N

?

N?

N8

?

1.2.2

comms loss

robot waits for new connection

N/A

N/A

Y

N

Y

Y9

Y

1.2.2

general

topics/services should not be published/advertised if unsupported

Y

N6

Y

Y

Y

Y

Y

1.3.3

trajectory overflow

trajectory ignored and error logged

N/A

N/A

Y

Y

N2

N/A3

N/A3

1.3.3

trajectory received

robot automatically starts motion

Y

N/A

Y

Y

Y

Y

Y

1.3.3

trajectory completed

motion stops, drive power stays on

Y

N/A

Y

?

Y

Y

Y

1.3.3

trajectory interrupted

cancel current motion, begin new trajectory

N4

Y7

?

N

Y

Y

?

1.3.3

trajectory overlap

points with out-of-order (or in-the-past) time_from_start should be ignored

N5

N5

N5

N5

N5

N5

?

  1. Required software downloaded on-the-fly to robot by the Universal Robot ROS driver node.
  2. Error logged. Trajectory truncated at max-size and executed anyway (not ignored).
  3. Trajectory streamed to robot. No overflow possible.
  4. Simulator is single-threaded. Will block new trajectories (buffered in ROS) until previous trajectory is completed, then execute new trajectories in the order received.
  5. Moves through all trajectory points, in the order received.
  6. Topic publishers are always created. No topic messages are published if robot doesn't provide required simple_message broadcast.
  7. Streaming trajectory only. Reaction is robot-specific for robots using downloaded trajectories.
  8. Motion is stopped, drives remain powered.
  9. Socket time-outs may interfere, see ros-industrial/fanuc/issues/19.

There is no Indigo specific version of the Hardware Compatibility page of ROS-Industrial yet. Please refer to the Hydro page.

There is no Jade specific version of the Hardware Compatibility page of ROS-Industrial yet. Please refer to the Hydro page.

Wiki: Industrial/Industrial_Robot_Driver_Spec/HardwareCompatibility (last edited 2015-03-11 15:01:02 by GvdHoorn)