用户宏功能是多数数控系统所具备的辅助功能,合理地使用好该功能可以使加工程序得到大大简化。用户宏功能有A类和B类两种,用A类宏功能编译的加工程序,程序主体比较简单,但需记忆较多的宏指令,程序的可读性差,而用B类宏功能编译的程序,则具有较好的可读性,且只需记忆较少的指令代码。本例就使用B类宏功能编程,并通过详细的数学分析来说明用宏指令编程如何建立合理的数学模型。 WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
一、应用实例WWW_P※LCJS_COM-PLC-)技.术_网
如图1所示的零件为一盘片零件的铸造模具,现要求在加工中心上加工15条等分槽(图中仅标注编程所需尺寸)。 WWW_PL※CJS_COM-PLC-技.术_网
该零件决定在带有FANUC 15M数控系统的3000V上加工。该加工中心为3M×1.1M工作台的龙门加工中心。槽锥度14°及槽底圆弧由球头成形铣刀加工保证,不考虑刀具半径补偿(加工坐标如图中所示)。本例只编制最终精加工程序,之前的粗加工则可以通过该程序在Z方向上的抬刀来实现。 WWW_PLCJS_COM-PLC-技.术_网
经过对FANUC15M数控系统功能的分析发现,加工R380圆弧时,由于R380不在某一基准平面,即无法用G17、G18或G19指定加工平面,因此R380圆弧不能直接使用G02或G03指令加工,只能将该圆弧分解为若干段直线段分别计算各端点坐标,再指令刀具按X、Y、Z方向进行直线加工, 用直线逼近圆弧的方法最终形成R380圆弧。 WWW_P※LCJS_COM-PLC-)技.术_网
首先计算出第一条槽各交点座标,并用极座标表示,圆周上各条槽对应点的极半径及Z深度均一致,仅角度有变化。图1中各点位置如下: WWW_PL※CJS_COM-PLC-技.术_网
a点极半径105,Z坐标-50;b点极半径282.417,Z坐标-34.478;c点极半径382,Z坐标-12;R380圆弧的圆心角为15.44°。 WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
在加工时需将极坐标转换为直角坐标,转换时只要将各点极半径分别按偏移角度(程序中参数#2)投影至X、Y轴即可。 WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
在加工R380时应将该圆弧分解成若干直线段,以G01方式来近似加工圆弧根据实际加工要求,圆弧每隔0.5°圆心角确定一点,计算出各点坐标然后以G01连接各点即可加工出R380圆弧(实际加工后圆弧符合图纸要求),如图2所示。 WWW_PLCJS@_COM%-PLC-技.术_网
图2中,b点为R380与直线切点,其极半径已求出;#9为圆弧上待求点圆心角变量。由图可先求得:d点极半径=282.417-380sin5°=249.298,高度Z=-34.478-(380/cos5°-380cos5°)=-37.376,则e点极半径=249.298+380sin(5°+#9),高度Z=-37.376[380/cos5°-380cos(5°+#9)> WWW_PLCJS@_COM%-PLC-技.术_网
同样求出的各点极坐标也需转换成直角坐标才能加工。求出第一点位置后,再使圆心角#9增加0.5°计算下一点位置。R380圆弧加工结束后,再转入下一条槽的加工。本程序需使用二重循环,在每一条槽中先用循环计算并加出圆弧,然后跳出该循环继续加工下一条槽。 WW.W_PLC※JS_C,OM-PL,C-技.术_网
本例中循环采用 P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
WHILE[<条件表达式>>DOm WWW_PLCJS@_COM%-PLC-技.术_网
· P.L.C.技.术.网——可编程控制器技术门户
· WWW.PLCJS.COM——可编程控制器技术门户
ENDm W1WW_P4LCJS_COM-PLC-技.术_网
当条件被满足时,DOm至ENDm间的程序段被执行,当<条件>不被满足时,则执行ENDm之后的程序。 ——可——编——程——控-制-器-技——术——门——户
由以上分析,可画出该宏程序的结构流程图,如图3所示。 W1WW_P4LCJS_COM-PLC-技.术_网
根据程序流程图可编写出零件的加工程序如下: WWW.PLCJS.COM——可编程控制器技术门户
T1 M06 WW.W_PLC※JS_C,OM-PL,C-技.术_网
G0 G90 G54 X0 Y0 WWW_P※LCJS_CO※M-PLC-技-.术_网
G43 H01 Z100.0 M03 S400 WWW_PLCJS@_COM%-PLC-技.术_网
#1=15; W1WW_P4LCJS_COM-PLC-技.术_网
#2=360/#1; WWW_PL※CJS_COM-PLC-技.术_网
WHILE [#2LE360>Do1; WWW_PLCJS_COM-PLC-技.术_网
#3=80.0*COS[#2>; WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
#4=80.0*SIN[#2>; plcjs.技.术_网
#5=105.0*COS[#2>; WWW_PLCJS@_COM%-PLC-技.术_网
#6=105.0*SIN[#2>; P.L.C.技.术.网——可编程控制器技术门户
#7=282.417* COS[#2>; ——可——编——程——控-制-器-技——术——门——户
#8=282.417*SIN[#2>; P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
G0 X#3 Y#4; WW.W_PLC※JS_C,OM-PL,C-技.术_网
G1 Z-50.0 F500; WWW_PLC※JS_COM-PmLC-技.术_网
X#5 Y#6 F100; WWW_P※LCJS_COM-PLC-)技.术_网
X#7 Y#8 Z-34.478; P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
#9=0.5; P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
WHILE [#9LT16>Do2; WW.W_PLCJS_COM-PLC-技.术_网
#10=380.0*SIN[5+#9>; WWcW_PLCJS_COM-PLC-技.术_网
#11=380.0*COS[5+#9>; WWW_PLC※JS_COM-PmLC-技.术_网
#12=(249.298+#10)* COS[#2>; WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
#13=(249.298+#10)*SIN[#2>; WWW.PLCJS.COM——可编程控制器技术门户
#14=-37.376+(380/COS5-#11); WWW_PLCJS@_COM%-PLC-技.术_网
G1 X#12 Y#13 Z#14; WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
#9=#9+0.5; WW.W_PLC※JS_C,OM-PL,C-技.术_网
END2; WWW.PLCJS.COM——可编程控制器技术门户
G0 Z50.0; P.L.C.技.术.网——可编程控制器技术门户
#2=#2+360/#1; WWW_P※LCJS_COM-PLC-)技.术_网
END1; WWW_P※LCJS_CO※M-PLC-技-.术_网
G91 G28 Z0 M05; WWW_P※LCJS_CO※M-PLC-技-.术_网
G91 G28 X0 Y0; WWW_PLCJS_COM-PLC-技.术_网
M30; WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
注:程序中X#3,Y#4点为落刀点位置。 WWW_P※LCJS_COM-PLC-)技.术_网
二、结束语WWcW_PLCJS_COM-PLC-技.术_网
在本例的编程过程中数学计算较繁琐,相比较而言,若使用坐标系旋转的方法编程则可省去R380圆弧的相关计算,使程序更为简洁,但坐标系旋转功能在不同的数控系统中其相应的功能指令不尽相同,因此需针对具体数控系统编写相应的加工程序,而通过本例主要是为了阐述数控宏功能在实际应用时所需遵循的编程原则与思路。另外对程序的分析还不难发现:若零件中均布槽由15条改为18条(或任意条数n),则只需将程序中参数变量#1改为18(或n)即可,而不需再对程序作其它任何改动,这一点相对于一些自动编程软件(如MasterCAM等)则要灵活得多。 WWW_P※LCJS_COM-PLC-)技.术_网
——可——编——程——控-制-器-技——术——门——户
图1 示例零件图 WWW_PL※CJS_COM-PLC-技.术_网
WWW_PL※CJS_COM-PLC-技.术_网
图2 实际加工尺寸 WWW_PLCJ-S_COM-PLC-技.术_网(可-编程控-制器技术-门户)
WWW_P※LCJS_CO※M-PLC-技-.术_网
图3 程序的结构流程图WWW※PLCJS_COM-PL#C-技.术_网(可编※程控※制器技术门户)
WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)