前言
发那科机器人可以通过判断变量的状态,在后台中运行,实时的通过DO信号来输出不同的状态。从而PLC或者上位机通过状态来监控机器人状态,或者用来作为报警条件。
一.TP程序的创建
1.在示教器面板“SELECT”中创建普通TP程序
2.在详细中将“组掩码”全部修改为*(修改为*是因为后台程序中禁止出现运动指令,以防会报错)
二.程序编写
1.此代码展示是通过TP示教器编写完成后,转成.ls格式导出(如果使用此源码可以自己创建.kl文件编译完成后再将.TP文件加载示教器中)
1: --ch:机器人单步状态 ;
2: IF ($SSR.$SINGLESTEP=1) THEN ;
3: DO[400:ON :step]=ON ;
4: ELSE ;
5: DO[400:ON :step]=OFF ;
6: ENDIF ;
7: --ch:后台程序启用输出 ;
8: IF ($MIX_BG[5].$STATUS=2) THEN ;
9: DO[401:OFF:BG]=ON ;
10: ELSE ;
11: DO[401:OFF:BG]=OFF ;
12: ENDIF ;
13: ;
14: ;
15: --ch:远程\本地设置状态输出 ;
16: IF ($OPWORK.$UOP_DISABLE=1) THEN ;
17: DO[402:ON :远程模式输出]=ON ;
18: ELSE ;
19: DO[402:ON :远程模式输出]=OFF ;
20: ENDIF ;
21: --ch:UOP信号自动分配启用输出 ;
22: IF ($REMOTE_CFG.$REMOTE_TYPE=1) THEN ;
23: DO[404:ON :UOP自动分配是否启用]=ON ;
24: ELSE ;
25: DO[404:ON :UOP自动分配是否启用]=OFF ;
26: ENDIF ;
27: ;
28: --ch:机器人旋钮钥匙自动模式 ;
29: IF ($MSKKEY=3) THEN ;
30: DO[407:OFF:AUTO]=ON ;
31: ELSE ;
32: DO[407:OFF:AUTO]=OFF ;
33: ENDIF ;
34: ;
35: --ch:机器人旋钮钥匙T1模式 ;
36: IF ($MSKKEY=1) THEN ;
37: DO[408:OFF:T1]=ON ;
38: ELSE ;
39: DO[408:OFF:T1]=OFF ;
40: ENDIF ;
41: ;
42: --ch:机器人旋钮钥匙T2模式 ;
43: IF ($MSKKEY=2) THEN ;
44: DO[409:ON :T2]=ON ;
45: ELSE ;
46: DO[409:ON :T2]=OFF ;
47: ENDIF ;
2.目前只是展示通过变量来输出DO状态就不一一列举所有的状态功能展示,用户可以根据自己需求增加信号
三.在后台启用该程序
在“菜单”--“设置”--“后台逻辑”--“选择”所需程序名称--选择“运行”该程序,该程序即设置完成