ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

As per the fanuc_driver wiki page, the current version of the driver has only been tested on R-30iA and R-30iB controllers. Whether the driver works will depend on the version of the Karel runtime that you have on your controller. It would be nice if you could tell us:

  • which specific R-J3 controller you have: R-J3, R-J3iB/C
  • the version of Karel
  • whether you have the User Socket Messaging (R648) option installed

As per the fanuc_driver wiki page, the current version of the driver has only been tested on R-30iA and R-30iB controllers. Whether the driver works will depend on the version of the Karel runtime that you have on your controller. It would be nice if you could tell us:

  • which specific R-J3 controller you have: R-J3, R-J3iB/C
  • the version of Karel
  • whether you have the User Socket Messaging (R648) option installed

Edit: based on your updated question, I don't think it is possible to use the ROS-Industrial driver on your controller. After some investigation, V5.20-3 (which corresponds to V5.2043) doesn't seem to have the required networking support in Karel (MSG_CONNECT, MSG_DISCO).

I can see two options:

  1. upgrade the core software to at least V5.30-1: as far as I can tell, that is the first version that has the MSG_CONNECT and MSG_DISCO Karel routines. With some minor other tweaks, all other parts of the driver compile under this version.
  2. rewrite the driver to use the serial ports present on the controller: the R-J3 should have a number of serial ports which could be uses for this. However, as far as I can tell, they only support up to 9600 baud, which would equate to about 1KB/s. While the simple_message protocol is not overly verbose, state reporting (joint states, etc) at 40Hz results in about 4KB/s, so using the serial ports would require lowering the update rate significantly. Depending on intended use, sending trajectory messages uses very little bandwidth, and should easily be possible over serial.

All in all, updating the controller would be the best option (least amount of work). Using serial is possible, but would require some changes.

Also: even though everything compiles, I cannot guarantee that the driver will work immediately: I have no means to simulate a controller that old, so tests on real hardware would be required.

As per the fanuc_driver wiki page, the current version of the driver has only been tested on R-30iA and R-30iB controllers. Whether the driver works will depend on the version of the Karel runtime that you have on your controller. It would be nice if you could tell us:

  • which specific R-J3 controller you have: R-J3, R-J3iB/C
  • the version of Karel
  • whether you have the User Socket Messaging (R648) option installed

Edit: based on your updated question, I don't think it is possible to use the ROS-Industrial driver on your controller. After some investigation, V5.20-3 (which corresponds to V5.2043) doesn't seem to have the required networking support in Karel (MSG_CONNECT, MSG_DISCO).

I can see two options:

  1. upgrade the core software to at least V5.30-1: as far as I can tell, that is the first version that has the MSG_CONNECT and MSG_DISCO Karel routines. With some minor other tweaks, all other parts of the driver compile under this version.
  2. rewrite the driver to use the serial ports present on the controller: the R-J3 should have a number of serial ports which could be uses for this. However, as far as I can tell, they only support up to 9600 baud, which would equate to about 1KB/s. 1KB/s.

    While the simple_message protocol is not overly verbose, state reporting (joint states, etc) at 40Hz results in about 4KB/s, so using the serial ports would require lowering the update rate significantly. Depending on intended use, sending trajectory messages uses very little bandwidth, and should easily be possible over serial.

    The industrial_robot_client nodes would also have to be extended to support serial communication.

All in all, updating the controller would be the best option (least amount of work). Using serial is possible, but would require some changes.serious effort.

Also: even though everything compiles, I cannot guarantee that the driver will work immediately: I have no means to simulate a controller that old, so tests on real hardware would be required.

As per the fanuc_driver wiki page, the current version of the driver has only been tested on R-30iA and R-30iB controllers. Whether the driver works will depend on the version of the Karel runtime that you have on your controller. It would be nice if you could tell us:

  • which specific R-J3 controller you have: R-J3, R-J3iB/C
  • the version of Karel
  • whether you have the User Socket Messaging (R648) option installed

Edit: based on your updated question, I don't think it is possible to use the ROS-Industrial driver on your controller. controller (edit: with the current system software). After some investigation, V5.20-3 (which corresponds to V5.2043) doesn't seem to have the required networking support in Karel (MSG_CONNECT, MSG_DISCO).

I can see two options:

  1. upgrade the core software to at least V5.30-1: as far as I can tell, that is the first version that has the MSG_CONNECT and MSG_DISCO Karel routines. With some minor other tweaks, all other parts of the driver compile under this version.
  2. rewrite the driver to use the serial ports present on the controller: the R-J3 should have a number of serial ports which could be uses for this. However, as far as I can tell, they only support up to 9600 baud, which would equate to about 1KB/s.

    While the simple_message protocol is not overly verbose, state reporting (joint states, etc) at 40Hz results in about 4KB/s, so using the serial ports would require lowering the update rate significantly. Depending on intended use, sending trajectory messages uses very little bandwidth, and should easily be possible over serial.

    The industrial_robot_client nodes would also have to be extended to support serial communication.

All in all, updating the controller would be the best option (least amount of work). Using serial is possible, but would require some serious effort.

Also: even though everything compiles, I cannot guarantee that the driver will work immediately: I have no means to simulate a controller that old, so tests on real hardware would be required.