犀利民 犀利民
关注数: 8 粉丝数: 105 发帖数: 444 关注贴吧数: 3
自己编了个半自动分中程式,分享给你们,法兰克和三菱通用 自己编了个半自动分中程式,分享给你们 O1 #100=54(55....59) #101=...(工件X长度) #102=..(工件Y长度) #103=20(分中棒安全靠近距离) #104=800(机床Y向形程) #511=150(移动时分中棒到工件平面安全距离) M3 S600 M0(暂停后,手动移动到X负方向碰数点碰数,碰好数不要动,按程序启动) G0 G91 Z#511 #500=#5021 G0 X[#101+#103] Z-#511 M0(暂停后,手动移动到X正方向碰数点碰数,碰好数不要动,按程序启动) G0 G91 Z#511 #501=#5021 #503=ABS[#501-#500]/2 G0 G91 X-#503 M0(这里暂停只是为了确认机床已经移动结束,暂停后直接启动) GOTO20 N10 M0(这里暂停只是为了确认机床已经录入数值,暂停后直接启动) #512=#104-ABS[#5022] IF[#512LT[#102/2+#103]]GOTO10(这两行是个检测,防止移动时Y负方向超程,如果在这里死循环,可以手动把主轴往Y正方向移动一点,不要太多,防止分中棒撞工件Y负方向上,然后继续启动,直到自动继续下一行) G0 G91 Y-[#102/2+#103] Z-[#511-#103](这里为防止撞刀,Z轴深度留有余地) M0(暂停后,手动移动到Y负方向碰数点碰数,碰好数不要动,按程序启动) G0 G91 Z#511 #504=#5022 G0 G91 Y[#102+#103] Z-#511 M0(暂停后,手动移动到Y正方向碰数点碰数,碰好数不要动,按程序启动) G0 G91 Z#511 #505=#5022 #506=ABS[#505-#504]/2 G0 G91 Y-#506 M0(这里暂停只是为了确认机床已经移动结束,暂停后直接启动) GOTO30 N20 IF [ #100 EQ 54 ] THEN #5221 = #5021 IF [ #100 EQ 55 ] THEN #5241 = #5021 IF [ #100 EQ 56 ] THEN #5261 = #5021 IF [ #100 EQ 57 ] THEN #5281 = #5021 IF [ #100 EQ 58 ] THEN #5301 = #5021 IF [ #100 EQ 59 ] THEN #5321 = #5021 GOTO10 N30 IF [ #100 EQ 54 ] THEN #5222 = #5022 IF [ #100 EQ 55 ] THEN #5242 = #5022 IF [ #100 EQ 56 ] THEN #5262 = #5022 IF [ #100 EQ 57 ] THEN #5282 = #5022 IF [ #100 EQ 58 ] THEN #5302 = #5022 IF [ #100 EQ 59 ] THEN #5322 = #5022 #507=#503*2 #508=#506*2 M5 G91 G28 Z0. M30 碰完数可以点开变量查看#507和#508是工件X和Y的实际尺寸。
1 下一页