宏程序调用G65 螺旋铣孔演示
宏程序调用(G65)不同于子程序调用( M98),
如下所述。·用G65,可以指定自变量(数据传送到宏程序)。
M98 没有该功能。
·当M98 程序段包含另一个NC 指令(例如,G01 X100.0 M98 Pp)时,在指令执行之后调用子程序。相反,G65 无条件地调用宏程序。
·用G65,改变局部变量的级别。用M98,不改变局部变量的级别。
非模态调用(G65)当指定G65 时,以地址P 指定的用户宏程序被调用。数据(自变量)能传递到用户宏程序体中。
说明调用·在G65 之后,用地址P 指定用户宏程序的程序号。
·当要求重复时,在地址L 后指定从1 到9999 的重复次数。省略L 值时,认为L 等于1。
·使用自变量指定,其值被赋值到相应的局部变量。自变量指定可用两种形式的自变量指定。自变量指定Ⅰ使用除了G,L,O,N 和P以外的字母,每个字母指定一次。自变量指定Ⅱ使用A,B,C 和Ii,Ji和Ki(i 为1~10)。根据使用的字母,自动决定自变量指定的类型。
·地址G,L,N,Ο和P 不能在自变量中使用。
·不需要指定的地址可以省略,对应于省略地址的局部变量为空。
·地址不需要按字母顺序指定。但应符合字地址的格式。I,J 和K 需要按字母顺序指定。
例:B_A_D_…J_K_正确B_A_D_…J_I_不正确自变量指定Ⅱ自变量指定Ⅱ使用A,B 和C 各1 次,I,J,K 各10 次。自变量指定Ⅱ用于传递诸如三维坐标值。32
示例程序(螺旋铣孔)
1、P 宏程序编号
2、X 孔X坐标(#24)
3、Y 孔Y坐标(#25)
4、Z 孔深度 (#26)
5、D 孔直径(#7)
6、T 刀具直径(#20)
7、R 铣孔安全平面(#18)
8、Q 铣孔轴向每次递增量(#17)
9、U 退刀高度(必须大于等于2,否则程序报警)(#21
10、S 转速(#19)
11、F 进给(#7}
%
0001;
G65 P110 X-120. Y60. Z-80. D28. T10. R0.5 Q1. U10. S9000 F1500.
G65 P110 X20. Y10. Z-30. D16. T10. R0.5 Q1. U10. S9000 F1500.
G65 P110 X150. Y-40. Z-30. D15. T10. R0.5 Q1. U10. S9000 F1500.
G65 P110 X-30. Y-40. Z-40. D22 T10. R0.5 Q1. U10. S9000 F1500.
%
%
O110
#31=FIX[#26/#17]
#32=#26-#31*#17
#33=[#7-#20]/2.
G90G00 X[#24] Y[#25] M03 S[#19]
G91 X[#33]
G90 Z[#18+#17]
G01 Z[#18] F[#9]
WHILE [#18 GT #26] DO1
#18=#18-#17
G02 I-#33 J0. Z[#18] F[#9]
IF [[#18+#32] EQ #26] GOTO100
END1
N100
IF [#32NE0.] GOTO110
IF [#32EQ0.] GOTO120
N110
G02 I-[#33] J0. Z[#26] F[#9]
N120
G02 I-[#33] J0. F[#9]
G04 P0.2
G02 I-[#33] J0. F[#9/2.]
G03 X[#24] Y[#25] I-[#33/2.] F[#9*2.]
G00 Z[#21]
M99
资料整理不易,如对您有帮助,请分享到您朋友圈,让更多跟您一样爱学习的朋友一起学习成长
问答社区 发起问答 报警查询 技术文章 维修服务 资料下载 加交流群 申请 VIP
本文转载来自【公众号:数控e家】,仅供大家学习交流,如侵权请联系站长删文。