Information about Fanuc RRS Interface
The following information is specific to the RJ3 5.XX server.
The RRS sample rate is manipulator-type dependent and is set, by default, to the native sample rate reported by the Fanuc RCS module. This default behavior can be overridden by either one of the following:
- Specifying a negative value for "Robot Number" during RRS connection where the magnitude of this number is treated as the factor to scale the native RCS interpolation period (e.g. Robot Number = -4 results in the RCS sample rate to get set to 4 * 8 msec = 32 msec).
- Setting the "_rrs1_sample_period : TIME" RRS device attribute to the desired sample rate (which must be an integral multiple of the native RCS interpolation period).
Computing speed/motion time for joint moves
if Motion Profile MOTION_BASIS parameter is set to TIME then Use the Motion Profile TIME value as the Motion Time else Use TCP_LINEAR_SPEED [%] (or "TCP_LINEAR_SPEED * 100 / Max TCP Linear Speed") as the TCP Speed
Computing speed/motion time for linear moves
if Motion Profile MOTION_BASIS parameter is set to TIME then Use the Motion Profile TIME value as the Motion Time else if Motion Profile TCP_LINEAR_SPEED parameter is 100% and TCP_ANGULAR_SPEED is < 100% then Use TCP_ANGULAR_SPEED (or “TCP_ANGULAR_SPEED [%] * Max TCP Angular 1 Speed / 100”) as the TCP Orientation Speed else Use TCP_LINEAR_SPEED (or “TCP_LINEAR_SPEED [%] * Max TCP Linear Speed / 100”) as the TCP Speed
Device's controller type set to "FANUC RJ" (RJ Karel)
The Fanuc RRS interface uses the following logic to convert the ACCURACY_VALUE parameter into Fanuc point accuracy parameters. Note that currently the FLYBY_MODE is ignored and only ACCURACY_TYPE = SPEED is supported.
if FLYBY_MODE == OFF or ACCURACY_VALUE == 0% then Set FANUC termination type to FINE else { if 0% < ACCURACY_VALUE <= 10% then Set FANUC termination type to COARSE else if 10% < ACCURACY_VALUE <= 15% then Set FANUC termination type to NOSETTLE else if 15% < ACCURACY_VALUE < 100% then Set FANUC termination type to VARDECEL Linearly map ACCURACY_VALUE in the 15% to 100% range to VARDECEL range of 99 to 1,respectively else (i.e. ACCURACY_VALUE == 100%) Set FANUC termination type to NODECEL }
Device's controller type set to "FANUC RJ TPE"
if ACCURACY_TYPE == Distance then if FLYBY_MODE == OFF then Set FANUC termination type to FINE else if Fanuc Accupath is enabled then Set FANUC termination type to CORNER_DISTANCE (or CORNER_REGION for v7 and up RCS) else Set FANUC termination type to NODECEL else (i.e. ACCURACY_TYPE == Speed) { if FLYBY_MODE == OFF then Set FANUC termination type to FINE else if ACCURACY_VALUE < 1% then Set FANUC termination type to NOSETTLE else if ACCURACY_VALUE > 99% then Set FANUC termination type to NODECEL else Set FANUC termination type to VARDECEL Linearly map $ROUNDING in the 1% to 99% range to VARDECEL range of 99 to 1, respectively }
In order for the robot the reach the last target in a process, the process must terminate with three consecutive move activities to the last target with ACCURACY_VALUE set to zero.
The ACCEL_VALUE parameter always controls the Joint Acceleration Percent value sent to the RCS. This is intended to simulate the Fanuc ACC motion option.
The Fanuc RRS interface determines which three axes to send turn numbers for in the target configuration string by interrogating the value of the $SCR_GRP[1].$TURN_AXIS[1],[2],[3] Fanuc RJ3 RCS variables. This is done immediately after RRS initialization for the device. If, for any reason, this information cannot be obtained, by default the RRS interface will send turn numbers for axes 4, 5, and 6 to the Fanuc RCS module.
The Fanuc RJ3 RCS allows users to create, use, and manipulate temporary and permanent RCS working directories based on options specified/selected in the second RRS Connect dialog's Relative Robot Path and Manipulator Type fields as follows:
Relative Robot Path | Manipulator Type | Resulting Action |
---|---|---|
<name> | V5.20 | Use existing files in the Virtual Robots/<name> directory to initialize RCS instance. |
<name>/N | V5.20,M16i | Create a new permanent RCS data directory named Virtual Robots/<name> based on the V5.20,M16i order files and use it to initialize RCS instance. |
<name>/R | V5.20,M6i | Replace data files in existing RCS data directory named Virtual Robots/<name> with new V5.20, M6i data files. |
<one or more spaces> OR * (single asterisk character) | V5.20,P120 | Create a temporary RCS data directory Virtual Robots/Temp Robots and populate it with V5.20,P120 data files. |
When specifying an RRS debug file, enter only an RRS debug filename with no directories. The RRS debug file will be generated under the Fanuc RJ3 RCS module's Virtual Robots directory under the selected named robot directory or under Virtual Robots/Temp Robots depending on what was specified in the Relative Robot Directory field in the second RRS Connect dialog box.
Also note that, starting with the V5.20(B) RJ3 RCS module, Fanuc RCS module's interpretation of the "Debug Option" parameter has changed as follows:
Debug Option = 0 -> No debugging Debug Option = 1 -> Generate formatted input/output RRS log file Debug Option = 2 -> Generate FANUC carfr RRS script file Debug Option = 3 through 7 -> Not used
All V5 commands that invoke inverse kinematics (e.g., Jog) will use RRS-based inverse kinematics if FANUC_RJ3__5.XX RRS is enabled for the device.