ABB robots

ABB robots

RoboDK supports all ABB robots that are programmed in RAPID language, including PRG and MOD files (IRC5, S4 and S4C robot controllers). This documentation is based on the IRC5 ABB robot controller.

The following sections demonstrate typical operations using an ABB robot teach pendant to prepare a new program in RoboDK and transfer it to the robot.

Transfer a robot program

Follow these steps to load a program module (MOD file) from a USB disk:

1.    Select ABBProgram editor

2.    Select Modules, on top of the screen

3.    Select File➔Load module (it is not important the program pointer / PP is lost)

4.    Select the MOD file from the USB disk

5.    Select OK

Start a robot program

Follow these steps to start a specific robot program in the ABB robot controller:

1.    Change the controller switch to manual mode. The “Manual” message at the top menu bar should be displayed.

2.    Select: ABBProgram editorDebugPP to routine

3.    Select the program generated by RoboDK. main_RoboDK is the default name.

4.    Hold the “dead man” switch from the teach pendant. The message “Motors On” as the status of the robot should be visible as well as the orange robot light should be on.

5.    Select the play button on the teach pendant to start the program

Robots ABB - Image 1

Retrieving the TCP

The following steps allow creating or modifying robot tools (TCP, also known as tooldata in ABB robot programming):

1.    Select ABBProgram datatooldata (double click)

2.    It is possible to create or modify existing tool variables

3.    Once the tool has been defined the X,Y,Z values of the TCP can be retrieved

 Robots ABB - Image 2Robots ABB - Image 3


Transfer programs through FTP

Programs can be easily transferred through FTP from RoboDK for ABB robots:

1.    Right click the robot in RoboDK

2.    Select Connect to robot…

3.    Enter the IP of the robot

4.    Enter the remote FTP path.   
The complete path can be retrieved from the teach pendant or using FileZilla FTP Client.

5.    Enter the FTP credentials (anonymous by default)

Once a RoboDK program is ready to be sent to the robot:

1.    Right click a program in RoboDK

2.    Select Send program to robot (Ctrl+F6)    
This will generate the program and attempt to transfer it to the robot controller. A window will pop up showing if the FTP transfer was successful or not.

Robots ABB - Image 4 Robots ABB - Image 5

When programs are transferred through FTP on the fly they need to be loaded using RAPID programming on the robot side. The following example will run the main_RoboDK program from a module called MOD_Pick_and_place:

MODULE RoboDK_FTP_Run_Program

    ! Enter the path to a folder with write access rights. Example:

    CONST string PATH_ROBODK := "/hd0a/robot-serial-num/HOME/RoboDK";


    PERS string ftp_program_loaded := ";


    PROC Main()




    PROC FTP_Run_Program()

        var num module_id := -1;

        WHILE module_id <= 0 DO


            TPReadNum module_id, "Enter the program to run. For example: to run Prog2 in Module Prog2.mod type 2.";





    PROC FTP_Run_Program_ID(num module_id)

        VAR string path_module := "";

        VAR string mod_to_unload;

        IF module_id <= 0 THEN




        path_module := PATH_ROBODK + "/Prog" + NumToStr(module_id, 0) + ".mod";

        IF StrLen(ftp_program_loaded) > 0 THEN

            mod_to_unload := ftp_program_loaded;

            ftp_program_loaded := "";

            UnLoad mod_to_unload; 



        Load path_module;

        ftp_program_loaded := path_module;


        TPWrite "Starting program: " + path_module;

        ! call the main program from the module sent and loaded

        ! %"main_RoboDK"%;

        ! call the numbered program (it should have the same effect)



        TPWrite "Program completed";




Tip: Download the module to run programs sent through FTP here.


RoboDK driver for ABB

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 ABB 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).

Important: This option requires the ABB software option Socket Messaging.

Follow these steps to set up the RoboDK driver for ABB robots:

1.    Establish an Ethernet connection between the computer and the robot.

2.    Transfer the RoboDK_Driver.mod and RoboDK_COM.mod files to the robot (USB disk, FileZilla FTP transfer or RobotStudio can be used). They should be used as the main task.

3.    Follow these steps on the ABB teach pendant to load the program from the teach pendant:

a.    Select ABBProgram Editor

b.    Select Tasks and Programs (at the top)

c.     Select Show Modules (at the bottom)

d.    Select FileLoad Module… (select YES to lose the program pointer)

e.    Select the RoboDK_COM.mod file, then select OK.

f.      Select the RoboDK_Driver.mod file, then select OK.

4.    Run the Main program (you will find the Main program in RoboDK_Driver.mod).

Note: The IP of the robot may have to be updated on line 10 of the RoboDK_COM.mod file:

CONST string server_ip := "";

The default communication port for the provided program is 2000 but it can also be changed.