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

1. We found out that it is possible to update the joint and cartesian position values by updating corresponding registers from an external PC. Is updating registers enough to generate motion or will we need to create a KAREL script that will communicate with the external PC? What is the control loop frequency?

You don't tell us anything about what your requirements and constraints are, but if you're just looking to move the robot or an EEF around, then yes, you could write a TP program that would continuously move to a PR[] and it will try to "track" any updates to that PR. Note however that it will be very difficult to control the velocity with which the robot will do this. It will also be difficult to control the trajectory tracking in general: you'll need to configure the motion as 100% velocity and CNT100 (which basically means that the controller is free to do whatever it needs/wants wrt accurately following a commanded motion and associated velocities).

As to reachable control frequency: that depends on a nr of factors and I can't put any nrs to that.

2. Is it possible to send joint or cartesian velocities from an external PC?

No. I know of no publicly available velocity control interface for Fanuc controllers.

3. Will purchasing the robotic arm and its control box be sufficient to control the robot via TCP/IP? Is there any particular hardware/software (eg. PCDK) combination that we need to request from FANUC?

If you're asking in the context of ROS (and fanuc_driver_exp or the older fanuc_driver): you'll need to make sure you have R648 (or User Socket Messaging) on the controller.

If you're asking in general: you could also use a fieldbus to transfer register data. It would be more involved, but certainly possible.

4. Will the collaborative features of the robot (eg. collision detection) be active when we are controlling the robot using the fanuc package?

They will always be active, as both fanuc_driver as well as fanuc_driver_exp are simple, user-level programs. They do not change anything wrt how the controller operates, nor do they deactivate or circumvent any (safety) functionality of the controller.

Whether the collaborative features can be used meaningfully when controlling the robot externally I can't say. That would depend on the application and how you configure things. There is currently no integration between any collaborative aspects of Fanuc robots and ROS though.

5. Is there any documentation that you can share with us which can give us a better understanding of how FANUC's software works?

Unfortunately Fanuc is not very open nor are they willing to share documentation, unless you buy one of their robots. It would not be my place to send you any documentation.

I would recommend you reach out to your local branch office and mention to them you are interested in buying one of their robots. They may be willing to provide you with the information you are after.