本文使用中断方式实现,多任务要订购ABB功能包
- Profinet总线组变量配置
注:映射为16位和32位均可用
- 声明数据
VAR num CurrentExAxisPos;!外轴位置
VAR robtarget pCurrentPos;!实时位置
var intnum TrapNum;!中断号
- 初始化开中断
IDelete TrapNum;!中断号
CONNECT TrapNum WITH iTrapCurPos;!连接中断号和中断程序
ITimer 1,TrapNum;!中断间隔1s
- 建立中断程序
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;!16位or32位均可实现
ENDTRAP
- 主程序
- 初始化程序