以3轴立式加工中心附加一个旋转轴为例,旋转轴为X轴,程序中应该有A角度字样。
O555(主程序WPC SHIFT Main-Prog )
G90
G65P666 X_Y_Z_ A_ B_ C_ (G5x-->>G5x)
G90
M30
解释:
G65P666X_Y_Z_ A_ B_ C_
1. X_Y_Z_ 为需要偏移的量,如果A轴旋转后程序原点相同,则 X0.Y0.Z0.
2. A:为A轴旋转的角度。
3. B:为原始坐标,从G54到G59中的任何一个。
4. C:为原始坐标旋转后的坐标所在位置。
例如:G65P666 X0.Y0.Z0.A90.B54.C55., G54旋转90度后得到G55。
O666(子程序 WPC SHIFT Sub-Prog )
#11=(-123.321) (Y CENTER OF A AXIS 旋转中心的Z坐标,测量或从供应商得到此坐标值)
#12=(-321.123) (Z CENTER OF A AXIS 旋转中心的X坐标,测量或从供应商得到此坐标值)
#14=#[5201+[#2-53]*20+1] (Y:2nd axis of G5x origin)
#15=#[5201+[#2-53]*20+2] (Z:3rd axis of G5x origin)
#13=#[5201+[#2-53]*20+0] (X:1st axis of G5x origin)
#10=#[5201+[#2-53]*20+3] (A:4th axis of G5x origin)
#13=#13+#24 (旋转后的X)
#17=#14-#11+#25
#18=#15-#12+#26
#19=#11+#17*COS[-#1]-#18*SIN[-#1] (旋转后的Y)
#20=#12+#17*SIN[-#1]+#18*COS[-#1] (旋转后的Z)
G90G10L2P[#3-53]X#13Y#19Z#20B[#10+#1]
M99
怎样确认计算的对错呢?如下图,在NX中,旋转再标出坐标值,与计算所得值进行比较即可确认。
应用举例。
程序:
……
G54
(加工部分)
……
A旋转90度,加工侧面凹槽。
G55,与G54位置相同,只是编程时坐标旋转了
程序:
……
G65P666 X0. Y0. Z0. A90. B54. C55.
G55
(加工部分)
……
A旋转90度,加工侧面凹槽, 但是程序零点与G54不一样,与G54比较,有偏移。
程序:
……
G65P666 X3.42 Y45. Z-10.49 A90. B54. C56.
G56
(加工部分)
……
X3.42 Y45. Z-10.49是怎样来的呢?
理解(重点):
旋转前原始程序零点G54,为了编程方便,加工侧面时程序零点与G54不同, 为G56,
在旋转前,G54与G56 位置的不同, 偏移了:X3.14, Y45., Z-10.9, 注意,偏移量有正负,正负与机床轴向一致。
总结:
1. 设定一次(G54)即可,
2. 旋转后程序零点没变,偏移量为0,G65P666 X0. Y0. Z0…….
3. 旋转后程序零点变了,偏移量不为0,G65P666 X_ Y_ Z_…….
4. 在第一个工件旁边还有一个工件,只是X有位移,G65P666 X_ Y0. Z0.…….