国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee
ELEOK
標題:
Fanuc機器人常用程序代碼片段
[打印本頁]
作者:
xiaolong
時間:
2022-3-10 18:13
標題:
Fanuc機器人常用程序代碼片段
從原點去維修點程序代碼
1: OVERRIDE=20%
2: UTOOL_NUM=1 //工具坐標系
3: UFRAME_NUM=0 //用戶坐標系
4:J PR[1:Home_pos.] 20% FINE //關節位置PR[1:Home_pos.] 即原點
5:J P[1] 20% FINE //關節位置P[1]
6:J P[2] 20% FINE //關節位置P[2]
7:J P[3] 20% FINE //關節位置P[3]
8:
9: PAUSE //暫停
10:J P[3] 20% FINE //關節位置P[3]
11:J P[2] 20% FINE //關節位置P[2]
12:J P[1] 20% FINE //關節位置P[1]
13:J PR[1:Home_pos.] 20% FINE //關節位置PR[1:Home_pos.] 即原點
[End] //結束
復制代碼
復位交訊信號程序代碼
1: DO[6:QuPianZhong]=OFF //關閉輸出信號"QuPianZhong"
2: DO[7:QuPianWanChen]=OFF //關閉輸出信號"QuPianWanChen"
3: DO[8:ZiDongSiMoQU]=OFF //關閉輸出信號"ZiDongSiMoQU"
4: DO[9:ZiDongSiMoDaoWei]=OFF //關閉輸出信號"ZiDongSiMoDaoWei"
5: DO[10:ZiDongSiMoQingXieDaoWei]=
: OFF //關閉輸出信號"ZiDongSiMoQingXieDaoWei"
6: DO[11:ShouDongSiMoQU]=OFF //關閉輸出信號"ShouDongSiMoQU"
7: DO[12:ShouDongSiMoDaoWei]=OFF //關閉輸出信號"ShouDongSiMoDaoWei"
8: DO[13:KaHeZhong_R]=OFF //關閉輸出信號"KaHeZhong_R"
9: DO[14:KaHeWanChen_R]=OFF //關閉輸出信號"KaHeWanChen_R"
10: DO[15:PaiZhaoShiBai_R]=OFF //關閉輸出信號"PaiZhaoShiBai_R"
11: DO[17:Sifu_DaKai]=OFF //關閉輸出信號"Sifu_DaKai"
12: DO[18:Sifu_ZheQi]=OFF //關閉輸出信號"Sifu_ZheQi"
[End] //結束
復制代碼
機器人治具程序代碼
1: WAIT DI[18:Sifu_ZheQi]=ON //等待輸入信號[18:Sifu_ZheQi]變成ON
2: DO[17:Sifu_DaKai]=ON //輸出信號[17:Sifu_DaKai]變成OFF
3: WAIT DI[17:Sifu_DaKai]=ON //等待輸入信號[17:Sifu_DaKai]變成ON
: TIMEOUT,LBL[1] //時間到跳轉到標簽LBL[1]
4: END //結束
5:
6: LBL[1] //標簽[1]
7: UALM[2] //
8: ABROT //
[End]
復制代碼
卡合程序代碼
1: UTOOL_NUM=1 //工具坐標系
2: UFRAME_NUM=0 //用戶坐標系
3: WAIT DI[11:YunXuPaiZhao_R]=ON //等待輸入信號"允許拍照"變成ON
4: DO[13:KaHeZhong_R]=ON //輸出信號"卡合中"變成ON
5:J P[1] 100% CNT100 //關節位置P[1]
6:L P[2] 2000mm/sec FINE //直線位置P[2]
7:
8:
9:
10: LBL[1] //標簽LBL[1]
11: UTOOL_NUM=8 //工具坐標系
12: UFRAME_NUM=8 //用戶坐標系
13: R[21:V_no.]=R[21:V_no.]+1 //信號21累加計算
14: IF R[21:V_no.]>=10,JMP LBL[99] //如果21信號大于等于10次,程序跳轉到標簽LBL[99]
15: VISION RUN_FIND //調用視覺程序 'A02_HD580K3U01_S0_PM'
: 'A02_HD580K3U01_S0_PM'
16: VISION GET_OFFSET //計算偏移量
: 'A02_HD580K3U01_S0_PM' VR[1]
: JMP LBL[1] //跳轉到標簽LBL[1]
17: R[21:V_no.]=0 //信號21計數變成0
18:
19: LBL[2] //標簽LBL[2]
20: UTOOL_NUM=8 //工具坐標系
21: UFRAME_NUM=8 //用戶坐標系
22:
23:
24:L P[4] 1500mm/sec CNT80 //直線位置P[4]
25:L P[3] 800mm/sec FINE //直線位置P[3] (此位置為平面產品拋片位置)
: VOFFSET,VR[1] //計算偏移量
: Offset,PR[2:VIS_oft.]
26: WAIT .30(sec) //等待0.3秒
27: CALL VOID_FP_PM //調用平面放片程序"VOID_FP_PM"
28:
29:
30: UTOOL_NUM=1 //工具坐標系
31: UFRAME_NUM=0 //用戶坐標系
32:L P[2] 1000mm/sec CNT50 //直線位置P[2]
33:J P[1] 100% CNT80 //直線位置P[1]
34: DO[14:KaHeWanChen_R]= //輸出卡合完成信號"[14:KaHeWanChen_R]"并暫停2秒
: PULSE,2.0sec
35: DO[13:KaHeZhong_R]=OFF //關閉輸出信號卡合中"[13:KaHeZhong_R]"
36: END //結束
37:
38: LBL[99] //標簽LBL[99]
39: R[21:V_no.]=0 //信號21計數變成0
40: DO[15:PaiZhaoShiBai_R]= //輸出拍照失敗信號"[15:PaiZhaoShiBai_R]"并暫停2秒
: PLUSE,2.0sec
41:
42: LBL[3] //標簽LBL[3]
43: IF DI[12:ZaiPaiZhao_R]=ON, //如果重新拍照信號"DI[12:ZaiPaiZhao_R]"變成ON
: JMP LBL[1] //跳轉到標簽LBL[1]
44: IF DI[13:qiangzhifangpian_R]=ON, //如果強制放片信號"DI[13:qiangzhifangpian_R]"變成ON
: JMP LBL[2] //跳轉到標簽LBL[2]
45: JMP LBL[3] //跳轉到標簽LBL[3]
46:
End //結束
復制代碼
偏移量程序代碼
1: PR[2,1:VIS_oft.]=R[11:VIS_X]/10 //機器人X/Y方向及角度偏移量計算
:
2: PR[2,2:VIS_oft.]=R[12:VIS_Y]/10
:
3: PR[2,3:VIS_oft.]=0
4: PR[2,4:VIS_oft.]=0
5: PR[2,5:VIS_oft.]=0
6: PR[2,6:VIS_oft.]=R[13:VIS_R]/
: 1000
[End]
復制代碼
平面放片程序代碼
1: DO[25:Xi_zj]=OFF //輸出信號"[25:Xi_zj]"(吸真空中間)變成OFF
2: DO[26:Xi_lb]=OFF //輸出信號"[26:Xi_lb]"(吸真空兩邊)變成OFF
3: DO[27:Xi_PCB]=OFF //輸出信號"[27:Xi_PCB]"(吸真空PCB)變成OFF
4: DO[28:Po_ZJ]=ON //輸出信號"[28:Po_ZJ]"(破真空中間)變成ON
5: DO[29:Po_lb]=ON //輸出信號"[29:Po_lb]"(破真空兩邊)變成ON
6: DO[30:Po_pcb]=ON //輸出信號"[30:Po_pcb]"(破真空PCB)變成ON
7:
8: WAIT DI[25:ZJ1]=OFF AND //等待輸入信號"[25:ZJ1]""[26:ZJ2]""[27:LB]""[28:PCB]""[31:ZJ3]"變成OFF
: DI[26:ZJ2]=OFF AND DI[27:LB]=OFF
: AND DI[28:PCB]=OFF AND
: DI[31:ZJ3]=OFF
9: WAIT .20(sec) //等待0.2秒
10: DO[28:Po_ZJ]=OFF //輸出信號"[28:Po_ZJ]"(破真空中間)變成OFF
11: DO[29:Po_lb]=OFF //輸出信號"[29:Po_lb]"(破真空兩邊)變成OFF
12: DO[30:Po_pcb]=OFF //輸出信號"[30:Po_pcb]"(破真空PCB)變成OFF
13: WAIT .50(sec) //等待0.5秒
14: END //結束
15:
16: LBL[1] //標簽 LBL[1]
17: UAALM[6]
18: ABORT
[End]
復制代碼
曲面放片程序代碼
1:
2: DO[27:Xi_PCB]=OFF //輸出信號"[27:Xi_PCB]"(吸真空PCB)變成OFF
3: DO[25:Xi_zj]=OFF //輸出信號"[25:Xi_zj]"(吸真空中間)變成OFF
4: DO[28:Po_ZJ]=ON //輸出信號"[30:Po_pcb]"(破真空中間)變成ON
5: DO[30:Po_pcb]=ON //輸出信號"[30:Po_pcb]"(破真空PCB)變成ON
6:
7: WAIT DI[25:ZJ1]=OFF AND //等待輸入信號"[25:ZJ1]""[26:ZJ2]""[28:PCB]""[31:ZJ3]"變成OFF
: DI[26:ZJ2]=OFF AND DI[28:PCB]=
: OFF AND DI[31:ZJ3]=OFF
8: WAIT .30(sec) //等待0.3秒
9: DO[28:Po_ZJ]=OFF //輸出信號"[28:Po_ZJ]"(破真空中間)變成OFF
10: DO[30:Po_pcb]=OFF //輸出信號"[30:Po_pcb]"(破真空PCB)變成OFF
11:
12: DO[18:Sifu_ZheQi]=ON //輸出信號"[18:Sifu_ZheQi]"(伺服折起)變成ON
13: WAIT DI[18:Sifu_ZheQi]=ON //等待輸入信號"[18:Sifu_ZheQi]"(伺服折起)變成ON
14: DO[18:Sifu_ZheQi]=OFF //輸出信號"[18:Sifu_ZheQi]"(伺服折起)變成OFF
15: CALL VOID_FP_PM //調用平面放片程序"VOID_FP_PM "
16:
17:
18:
19: END //結束
復制代碼
取片程序代碼
1: UTOOL_NUM=1 //工具坐標系
2: UFRAME_NUM=0 //用戶坐標系
3:
4: DO[6:QuPianZhong]=ON //輸出信號"[6:QuPianZhong]"(取片中)變成ON
5: DO[31:Dingchu]=OFF //輸出信號"[31:Dingchu]"(撕膜點氣缸頂出)變成OFF
6: DO[32:SuoHui]=ON //輸出信號"[32:SuoHui]"(伺服縮回)變成ON
7: DO[18:Sifu_ZheQi]=OFF //輸出信號"[18:Sifu_ZheQi]"(伺服折起)變成OFF
8: DO[17:Sifu_DaKai]=ON //輸出信號"[17:Sifu_DaKai]"(伺服打開)變成ON
9: WAIT DI[30:HuiDaiWei]=ON AND //等待輸入信號"[30:HuiDaiWei]""[17:Sifu_DaKai]"變成ON
: DI[17:Sifu_DaKai]=ON
10: DO[17:Sifu_DaKai]=OFF //輸出信號"[17:Sifu_DaKai]"(伺服打開)變成OFF
11:
12:J P[1] 100% CNT80 //關節位置P[1]
13:J P[4] 100% CNT80 //關節位置P[4]
14:
15:L P[3] 2000mm/sec CNT30 //直線位置P[3]
: Tool_Offset,PR[18:QP_oft1]
16:
17:L P[3] 2000mm/sec FINE //直線位置P[3]
18:
19: CALL VOID_XIPIAN //調用吸片程序"VOID_XIPIAN "
20:L P[3] 100mm/sec CNT100 //直線位置P[3]
: Tool_Offset,PR[19:QP_oft2]
21:L P[3] 300mm/sec CNT50 //直線位置P[3]
: Tool_Offset,PR[20:QP_oft3]
22:J P[2] 100% CNT100 //關節位置P[2]
23:J PR[1:Home_pos.] 100% CNT50 //關節位置PR[1:Home_pos.] 即原點
24: DO[7:QuPianWanChen]=PLUSE,2.0sec //輸出信號"[7:QuPianWanChen]"(取片完成)并暫停2秒
25: DO[6:QuPianZhong]=OFF //輸出信號"[6:QuPianZhong]"(取片中)變成OFF
[End] //結束
復制代碼
人工撕膜程序代碼
1: UTOOL_NUM=1 //工具坐標系
2: UFRAME_NUM=0 //用戶坐標系
3: DO[11:ShouDongSiMoQU]=ON //輸出信號"[11:ShouDongSiMoQU]"(手動撕膜去)變成ON
4:J P[1] 100% CNT100 //關節位置P[1]
5:J P[2] 100% CNT100 //關節位置P[2]
6:J P[3] 100% CNT100 //關節位置P[3]
7:L P[5] 2500mm/sec CNT100 //直線位置P[5]
8:L P[4] 1500mm/sec FINE //直線位置P[4]
9: DO[12:ShouDongSiMoDaiWei]=ON //輸出信號"[12:ShouDongSiMoDaiWei]"(手動撕膜到位)變成ON
10: WAIT DI[10:ShouDongSiMoWanChen]= //等待輸入信號"[10:ShouDongSiMoWanChen]"(手動撕膜完成)變成ON
: ON
11: DO[12:ShouDongSiMoDaiWei]=OFF //輸出"[12:ShouDongSiMoDaiWei]"(手動撕膜完成)變成OFF
12:L P[5] 1500mm/sec CNT100 ACC80 //直線位置P[5]
13:L P[3] 2500mm/sec CNT50 //直線位置P[3]
14: DO[11:ShouDongSiMoQU]=OFF //輸出信號"[11:ShouDongSiMoQU]"(手動撕膜去)變成OFF
15:J P[2] 100% CNT100 //關節位置P[2]
16:J P[1] 100% CNT100 //關節位置P[1]
[End] //結束
復制代碼
吸片程序代碼
1: DO[28:Po_ZJ]=OFF //輸出信號"[28:Po_ZJ]"(破真空中間)變成OFF
2: DO[29:Po_lb]=OFF //輸出信號"[29:Po_lb]"(破真空兩邊)變成OFF
3: DO[30:Po_pcb]=OFF //輸出信號"[30:Po_pcb]"(破真空PCB)變成OFF
4: DO[25:Xi_zj]=ON //輸出信號"[25:Xi_zj]"(吸真空中間)變成ON
5: D0[26:Xi_lb]=ON //輸出信號"[26:Xi_lb]"(吸真空兩邊)變成ON
6: DO[27:Xi_PCB]=ON //輸出信號"[27:Xi_PCB]"(吸真空PCB)變成ON
7:
8: WAIT DI[25:ZJ1]=ON AND DI[27:LB] //等待輸入信號"[25:ZJ1]""[27:LB]""[28:PCB]""[26:ZJ2]""[31:ZJ3]"變成ON
: =ON AND DI[28:PCB]=ON AND
: DI[26:ZJ2]==ON AND DI[31:ZJ3]=ON
:
9: WAIT .30(sec) //等待0.3秒
10: END //結束
11:
12: LBL[1]
13: UALM[3]
14: ABROT
[End]
復制代碼
主程序代碼
1: DO[28:Po_ZJ]=OFF //輸出信號"[28:Po_ZJ]"(破真空中間)變成OFF
2: DO[29:Po_lb]=OFF //輸出信號"[29:Po_lb]"(破真空兩邊)變成OFF
3: DO[30:Po_pcb]=OFF //輸出信號"[30:Po_pcb]"(破真空PCB)變成OFF
4: DO[25:Xi_zj]=ON //輸出信號"[25:Xi_zj]"(吸真空中間)變成ON
5: D0[26:Xi_lb]=ON //輸出信號"[26:Xi_lb]"(吸真空兩邊)變成ON
6: DO[27:Xi_PCB]=ON //輸出信號"[27:Xi_PCB]"(吸真空PCB)變成ON
7:
8: WAIT DI[25:ZJ1]=ON AND DI[27:LB] //等待輸入信號"[25:ZJ1]""[27:LB]""[28:PCB]""[26:ZJ2]""[31:ZJ3]"變成ON
: =ON AND DI[28:PCB]=ON AND
: DI[26:ZJ2]==ON AND DI[31:ZJ3]=ON
:
9: WAIT .30(sec) //等待0.3秒
10: END //結束
11:
12: LBL[1]
13: UALM[3]
14: ABROT
[End]
復制代碼
自動撕膜程序代碼
1: UTOOL_NUM=1 //工具坐標系
2: UFRAME_NUM=0 //用戶坐標系
3:
4: DO[8:ZiDongSiMoQU]=ON //輸出信號"[8:ZiDongSiMoQU]"(自動撕膜去)變成ON
5: DO[32:Suohui]=OFF //輸出信號"[32:Suohui]"(氣缸縮回)變成OFF
6:J P[1] 100% CNT100 TA 0.00sec, //關節位置P[1]
: DO[31:Dingchu]=ON //輸出信號"[31:Dingchu]"(氣缸頂出)變成ON
7:J P[2] 100% CNT100 //關節位置P[2]
8:L P[4] 800mm/sec FINE //直線位置P[4]
9: WAIT .10(sec) //等待0.1秒
10: WAIT DI[29:DingDaoWei]=ON //等待輸入信號[29:DingDaoWei](頂到位)變成ON
11: DO[9:ZiDongSiMoWei]= //輸出信號"[9:ZiDongSiMoWei]"(自動撕膜位)脈沖動作并等待2秒
: PLUSE,2.0sec
12: WAIT DI[5:ZiDongSiMoQingXie]=ON //等待輸入信號"[5:ZiDongSiMoQingXie]"(自動撕膜傾斜)變成ON
:
13:L P[5] 400mm/sec FINE //直線位置P[5]
14: DO[10:ZiDongSiMoQingXieDaoWei]= //輸出信號"[10:ZiDongSiMoQingXieDaoWei]"(自動撕膜傾斜到位)變成ON
: ON
15: DO[31:Dingchu]=OFF //輸出信號"[31:Dingchu]"(氣缸頂出)變成OFF
16: DO[32:Suohui]=ON //輸出信號"[32:Suohui]"(氣缸縮回)變成ON
17:
18: WAIT DI[6:ZiDongSiMoWanChen]=ON //等待輸入信號"[6:ZiDongSiMoWanChen]""[7:ZiDongSiMoShiBai]"變成ON
: OR DI[7:ZiDongSiMoShiBai]=ON
19: DO[10:ZiDongSiMoQingXieDaoWei]= //輸出信號"[10:ZiDongSiMoQingXieDaoWei]"變成OFF
: OFF
20:
21: IF DI[6:ZiDongSiMoWanChen]=ON //如果輸入信號"[6:ZiDongSiMoWanChen]"(自動撕膜完成)變成ON
: JMP LBL[1] //跳轉到標簽LBL[1]
22: IF DI[7:ZiDongSiMoShiBai]=ON, //如果輸入信號"[7:ZiDongSiMoShiBai]"(自動撕膜失敗)變成ON
: JMP LBL[2] //跳轉到標簽LBL[2]
23: UALM[1]
24:
25: LBL[1] //標簽 LBL[1]
26:J P[10] 100% CNT100 //關節位置P[10]
27:J P[1] 100% CNT100 //關節位置P[1]
28: DO[8:ZiDongSiMoQu]=OFF //輸出信號"[8:ZiDongSiMoQu]"變成OFF
29: END //結束
30:
31: LBL[2] //標簽 LBL[2]
32:J P[10] 100% CNT100 //關節位置 P[10]
33:J P[1] 100% CNT100 //關節位置 P[1]
34: DO[8:ZiDongSiMoQU]=OFF //輸出信號"[8:ZiDongSiMoQU]"(自動撕膜去)變成OFF
35: CALL R_MANUAL //調用人工撕膜程序"R_MANUAL"
[End] //結束
復制代碼
歡迎光臨 ELEOK (http://m.afoofa.cn/)
Powered by Discuz! X5.0