Fanuc robots

This section of the documentation provides an overview of typical operations using a Fanuc robot to prepare a new program in RoboDK and transfer it to the robot. RoboDK supports all Fanuc robot controllers since RJ2, including RJ3, R-30iA and R-30iB. This documentation is based on the R-30iA Fanuc controller.

Transfer a robot program

We must follow these steps to load a program from a USB drive:

1. Plug the USB drive on the teach pendant

2. Select MenuFile

3. Select UtilitiesSet deviceUSB

4. Select DIR

5. Select the TP or LS program file from the USB disk (BALLBARTEST.TP for example)     
This will automatically save the file to the FR memory of the controller

6. Select the program in the FR memory and select LOAD (screen button)

Robots Fanuc - Image 1  Robots Fanuc - Image 2

Start a robot program

Follow these steps to start a robot program on the Fanuc robot controller.

1. Select FCN (teach pendant button)➔Abort all

2. Select SELECT (teach pendant button)

3. Select the program (BALLBARTEST for example)

4. Press and hold the Deadman switch

5. Select RESET. All alarms should disappear.

6. Select and hold the SHIFT button of the teach

7. Select FWD (button on the teach pendant)

Robots Fanuc - Image 3

Retrieve robot joints

Follow these steps on the Fanuc teach pendant to retrieve the robot joints of your real robot.

1. Select POSN (button in the teach pendant) to see the current robot position

2. Select JNT on the screen or select COORD (button in the teach pendant) to select the joins mode.

Robots Fanuc - Image 4  Robots Fanuc - Image 5

Retrieve the Robot Tool (TCP)

Robot tools are stored as registers on Fanuc controllers (UTOOL). These steps allow you to create or modify robot tools (TCP, also known as UTOOL in Fanuc robot programming).

1. Select MENUSetupFrames

2. Select a tool using the arrows or the touch screen and select ENTER.

3. Modify the X,Y,Z,W,P,R values as required.

Robots Fanuc - Image 6  Robots Fanuc - Image 7

Robots Fanuc - Image 8

Setup Fanuc’s FTP Server

Fanuc’s FTP server is enabled on recent Fanuc controllers by default.

You can validate FTP credentials in the menu:

1. Setup➔Host Comm

2. Select FTP

If you see an anonymous username you may be able to connect through FTP without credentials.

Robots Fanuc - Image 9

Robots Fanuc - Image 10 Robots Fanuc - Image 11

RoboDK driver for Fanuc

Robot drivers provide an alternative to Offline Programming (where a program is generated, then, transferred to the robot and executed). With robot drivers, it is possible to run a simulation directly on the robot (Online Programming). More information available in the Robot Drivers section.

A connection between RoboDK and the Fanuc robot can be established to move the robot automatically from a connected PC using RoboDK. This allows using the RoboDK Run on robot option for online programming and debugging. The connection can be established through a standard Ethernet connection (TCP/IP).

Follow these steps to set up the RoboDK driver for Fanuc:

1.Download the Fanuc driver program files and transfer the following robot programs to the robot controller:

a.DRIVERRDK_S3.PC This is the main program that manages the communication through S3 (socket communication port number 3 – S3). Make sure to select the correct version (latest Fanuc robot controllers require using the version under the V9 folder).





Follow these steps on the robot teach pendant to prepare the communication between your Fanuc robot and RoboDK:

1.Select Menu-(Next)-System-[TYPE]-Variables.

a.Select $HOSTS_CFG (holding shift while selecting key down will help you scroll down faster)

b.Select Number 3

c.Set $SERVER_PORT to 2000          

2.Select Menu-Setup

3.Select [TYPE]-Host comm

4.Select [SHOW]-Servers

5.Select “S3”-Enter.

a.Set Protocol Name to SM

b.In Port Name, if multiple ports are available: Set Port to P3 (or the corresponding port).

c.Set Inactivity Timeout to 9999

d.Set Startup state to [CHOICE] START

e.Set Current state to STARTED:       
To do so, select [ACTION]-DEFINE, then [ACTION]-START

6.Start the program DRIVERRDK_S3:

a.Select the Select button from the teach pendant.

b.Scroll down towards the DRIVERRDK_S3 program

c.Select Enter (button from the teach pendant)

d.Select Shift-Reset and Shift-Forward to start the program   
You should see the RUNNING message on the teach pendant. If the program failed to run it is likely that you don’t have a robot option (PC Interface or User Socket Messaging) or you did not take the correct version of the PC program.

Robots Fanuc - Image 12

7.In RoboDK, provide the IP of the robot and select Connect to connect to the robot.


Program Compilation (LS vs. TP)

This section explains the difference between Fanuc LS and TP program files and how to automatically compile programs for Fanuc robots using RoboDK.

A binary file is required to run robot programs on Fanuc robots (TP, also known as TPP). Programs for Fanuc robots generated by offline programming software (such as RoboDK) are in LS format (ASCII, text-readable and not compiled). There are two options to convert LS robot programs to TP programs:

1.Have the ASCII Upload software option on the robot. This option might be available on the robot already. The best way to check if this option is available is to provide an LS file to the robot and it should be automatically converted to a TP file. For example, place the file on the FR disk and select LOAD on the teach pendant.

2.Compile the program using the WinOLPC tools from Roboguide. In this case, the same computer where RoboDK is installed can compile the LS program automatically using the “maketp.exe” compiler tool from Fanuc. This command requires a « robot.ini » file. This file can be generated with the setrobot.exe utility from WinOLPC if Roboguide was installed and a work station was saved on the computer (“Work Cell”).

With RoboDK it is possible to obtain TP programs automatically right after an LS program is generated. RoboDK manages the WinOLPC tools automatically to be able to compile LS ASCII programs into TP binary programs.

These are the steps that RoboDK follows right after an LS program is generated (using the default post processor):

1.The following screen appears by default after generating an LS program. It is possible to select the robot from a Roboguide “Work Cell” or just not to compile the program. If “No” is selected, the last “robot.ini” file will be used. If the “robot.ini” file does not exist, RoboDK will automatically run “setrobot.exe” to generate the “robot.ini” file.

Robots Fanuc - Image 13

2.The executable maketp.exe is used to generate the TP program.

3.If the TP file or the robot.ini file can’t be generated, a Robot not set message such as the following will appear.

Robots Fanuc - Image 14

If this message is displayed it is likely that the read/write access is limited for the default WinOLPC folder. It could also be that Roboguide has not properly been installed or that a “Work Cell” was never generated in Roboguide.

One way of solving the access rights issues is to manually execute the setrobot.exe as administrator:

1. Open windows explorer and navigate to the WinOLPC installation folder:

C:\Program Files (x86)\FANUC\WinOLPC\bin

2. Right click Run as administrator

3. Select the robot Work Cell (a Roboguide WorkCell is required)

Robots Fanuc - Image 15

Alternatively, the contents on the following folder can be copied from the default folder:

C:\Program Files (x86)\FANUC\WinOLPC\bin

to the folder:


Other post processors might behave differently, compiling the program directly if Fanuc WinOLPC tools are available on the computer. To select a different post processor, for example, to support Fanuc RJ3 controllers:

1. Right click the robot

2. Select Select Post Processor

3. Select Fanuc RJ3

4. Regenerate the program (F6)

Robots Fanuc - Image 16

As shown in the following image. This allows generating the robot.ini file in the same folder where the executable maketp.exe remains. This file is required to compile the programs. It is also important to save the Roboguide Work Cell on a folder readable by all users that must compile programs.

Robots Fanuc - Image 17

Once the files have been placed on the right folder, it is possible to test the compilation by selecting Set Fanuc Robot, as shown in the following image (menu: ToolsOptionsProgram).

Robots Fanuc - Image 18

It is possible to define in this window what registers will be used by the default post processor to generate Fanuc robot programs.

Alternatively, custom post processors can be used to better customize all these operations. Two custom post processor are provided with the default RoboDK package for Fanuc robots (called Fanuc_R30iA and Fanuc_RJ3).

RoboDK post processors for Fanuc robots support using 6 axis robots synchronized with external axes such as turntables or linear rails.