ABB机器人发送实时位置给PLC

ABB机器人发送实时位置给PLC

本文使用中断方式实现,多任务要订购ABB功能包

  1. Profinet总线组变量配置

ABB机器人发送实时位置给PLC

注:映射为16位和32位均可用

  1. 声明数据

    VAR num CurrentExAxisPos;!外轴位置

    VAR robtarget pCurrentPos;!实时位置

    var intnum TrapNum;!中断号

 

  1. 初始化开中断

ABB机器人发送实时位置给PLC

        IDelete TrapNum;!中断号

        CONNECT TrapNum WITH iTrapCurPos;!连接中断号和中断程序

        ITimer 1,TrapNum;!中断间隔1s

  1. 建立中断程序

ABB机器人发送实时位置给PLC

    TRAP iTrapCurPos!中断程序

        VAR num tempValue;

        !interrupt programp get CurrentPos

        pCurrentPos:=CRobT(\Tool:=tool0 \WObj:=wobj132Rob1);

        CurrentExAxisPos:=pCurrentPos.extax.eax_a;!看robtarget定义,根据需要选轴位置

        tempValue:=Trunc(CurrentExAxisPos);!取整数部分,负值没试

        SetGO PN_QW0_ExAxisPosRob1,tempValue;16or32位均可实现

ENDTRAP

  1. 主程序

ABB机器人发送实时位置给PLC

  1. 初始化程序

ABB机器人发送实时位置给PLC