通过

通过FTP可以将机器人程序从RoboDK下载至ABB机器人:

1.RoboDK中右键点击ABB机器人

2.选择Connect to robot…

3.输入机器人的IP地址

4.输入远程FTP路径 
该路径可以在示教器上或者通过FileZilla FTP客户端获得。

5.输入FTP验证信息(默认为anonymous匿名)

当准备好RoboDK中的仿真程序后:

1.RoboDK中右键点击该程序

2.选择Send program to robot (Ctrl+F6)   
该操作将生成机器人程序并尝试将其传送给机器人控制器。弹出窗将显示该FTP是否成功。

Robots ABB - 图片 4Robots ABB - 图片 5

当程序通过FTP实时传输时,机器人控制器将通过RAPID编程方式加载它。以下的范例将尝试从MOD_Pick_and_place模块(module)中运行main_RoboDK程序:

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()

    FTP_Run_Program;

ENDPROC

PROC FTP_Run_Program()

    var num module_id := -1;

    WHILE module_id <= 0 DO

        TPErase;

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

    ENDWHILE

    FTP_Run_Program_ID(module_id);

ENDPROC

PROC FTP_Run_Program_ID(num module_id)

    VAR string path_module := "";

    VAR string mod_to_unload;

    IF module_id <= 0 THEN

        RETURN;

    ENDIF       

   

    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; 

    ENDIF       

 

    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)

    %"Prog"+NumToStr(module_id,0)%;

   

    TPWrite "Program completed";

ENDPROC

ENDMODULE