发那科机械手程序.docx
- 格式:docx
- 大小:13.99 KB
- 文档页数:3
1.IF (DO[120]=OFF,JMP LBL[88]// 机械手有没有在等待点附近 //
2.
3.DO[101]=OFF
4.DO[102]=OFF
5.DO[103]=OFF
6.DO[104]=OFF
7.DO[105]=OFF
8. DO[107]=OFF将所有用到的输出点全部关闭
9.DO[109]=OFF
10.DO[110]=OFF
11.DO[111]=OFF
12.DO[112]=OFF
13.DO[108]=OFF
14.
15.
16.IF(DI[111]=OFF AND
DI[112]=OFF JMP LBL[88]// 如果两台磨床门没有打开,跳转到标签88
17.WAIT DI[107]=ON//等待有料盘信号打开 //
18.DO[104]=ON //电机正转,送料 //
19.WAIT DI[108]=ON//等待料盘到位信号打开 //
20.DO[103]=ON // 推料盘气缸推出,将料盘顶住 //
21.DO[104]=OFF // 电机正转停止 //
22.
23.
24.R[1]=0// 计数器清零 //
25.R[2]=0 // 计数器清零 //
26.R[3]=0 // 计数器清零 //
27.(从此处开始,机械手去料盘拿料)
28. LBL[1]// 标签 1//
29.UFRAME_NUM=4// 使用 4 号用户坐标 //
30.UTOOL_NUM=4// 使用 4 号工具坐标 //
31.J P[1]100% FINE
32.J P[2]100%CNT100
33.
34.PR[5,1]=R[1]*60
35.PR[5,2]=R[2]*60
36.PR[5,3]=0
37.PR[5,4]=0
38.PR[5,5]=0
39.PR[5,6]=0
40.
41.PR[4,1]=R[1]*60
42.PR[4,2]=R[2]*60
43.PR[4,3]=0
44.PR[4,4]=0
45.PR[4,5]=0
46.PR[4,6]=0
47.
48.CALL HAND1_OPEN
49.
50.L PR[2] 1000mm/sec FINE offset,PR[4]
51.L PR[2] 1000mm/sec FINE offset,PR[5]
52.
53.CALL HAND1_CLOSE
54.
56.
57.L PR[2] 1000mm/sec FINE offset,PR[4]
58.
59.J P[2] 100% CNT100 OFFSET,PR[5]
60.J P[1] 100% FINE(到此处,机械手去料盘拿料结束)
61.
62.IF DI[101]=OFF AND DI[102]=OFF,JMP LBL[66]// DI[101] 和 DI[102] 同时关闭,说
明夹爪 1 上没有料,跳转到标签66
63.
64.WAIT(DI[109]=ON OR DI[110]=ON)//等待一个允许上下料信号//
65.IF (DI[109]=ON AND DI[102]=ON AND DI[101]=OFF,CALL PART1// 如果一号磨床上下
料信号为 ON 并且一号夹爪上有料,呼叫程序 part1//
66.
67.IF (DI[110]=ON AND DI[102]=ON AND DI[101]=OFF,CALL PART2// 如果二号磨床上下
料信号为 ON 并且一号夹爪上有料,呼叫程序 part2//
68.
69.(从此处开始,机械手把从磨床取下的料放回料盘)
70.UFRAME_NUM=4
71.UTOOL_NUM=4
72.
73.
74.J P[1] 100% FINE
75.J P[4] 100% FINE
76.L PR[3] 1000mm/sec FINE OFFSET,PR[4]
77.L PR[3] 100mm/sec FINE OFFSET,PR[5]
78.
79.CALL HAND2_OPEN
80.
81.WAIT (sec)
82.
83.L PR[3] 1000mm/sec FINE OFFSET,PR[4]
84.J P[4] 100% FINE
85.J P[1] 100% FINE (到此处,机械手放料结束)
86.
87.
88.R[2]=R[2]+1 (Y 方向计数器加 1)
89.R[3]=R[3]+1
90.IF (R[3]=R[5]),JMP LBL[99]
91.IF(R[3] MOD 6=0),JMP LBL[2]
92.JMP LBL[1]
93.LBL[2]
94.R[1]=R[1]+1 ( x 方向计数器加 1)
95.R[2]=0 ( Y 方向计数器清零)
96.
97.JMP LBL[55]
98.LBL[77]
99.UALM[1](用户报警 1)
100.LBL[55]
101.
102.JMP LBL[1]
103.
104.LBL[99]
105.DO103]=OFF // 推料盘气缸缩回 //
106.WAIT sec
107.DO[105]=ON // 电机反转,料盘回起始位 // 108.WAIT DI[107]=ON // 料盘回到起始位 //
109.DO[105]=OFF // 反转关闭 //
110.END
111.
112.LBL[66]
113.DO[82]=PULSE, SEC // 将 DO[82] 打开 3 秒// 114.UALM[3](用户报警 3)
115.
116.JMP LBL[1]
117.
118.END
119.
120. LBL[88]
121.DO[82]=PULSE, SEC
END