UGNX数控车床后处理技术研究

2018-02-05 03:32刘镝时
制造技术与机床 2018年1期
关键词:数控系统后处理对话框

刘镝时

(上海电机学院, 上海201306)

后处理技术将计算机自动编程生成的刀具轨迹文件转换为数控机床控制器可接受的刀具路径,并控制指挥刀具的移动或其他行为,因为不同类型的数控机床结构不同,控制系统不同,不同的数控系统的指令格式是不一样的,所以不同的数控机床和系统要有相应的后置处理文件。

车床工件使用手工编程,利用数控系统自带的复合型固定循环功能,可以提高编程效率。但手工编程毕竟效率较低,且容易出错。

使用计算机软件编程,效率高,不容易出错,但采用软件自带后置处理文件生成的程序,往往和数控机床不匹配,有些地方需要手工修改才能在机床上运行。如果能设计合理的后置处理文件,则效果更好。

本文通过Siemens NX11 CAM软件和Fanuc 0i数控系统车床,以图1工件为例,就数控编程和后置处理进行讨论研究。

1 通用格式编程

在Siemens NX11软件中,新建装配文件,装入图1工件,为方便CAM中设置,要注意装配的方向,将工件回转轴和NX11 CAD的WCS坐标系的X轴共线。

进入加工模块,创建55°外圆车刀,刀具号指定为1,指定部件,指定毛坯,在创建几何体对话框中,选择避让并确定,在避让对话框中,制定出发点和回零点,如图2所示。

创建工序,选择外径粗车,选择已创建的刀具和避让,确定后在外径粗车对话框中,设置相应的参数,生成后在对话框中单击确定,产生的刀具轨迹如图3所示。

在工序导航器中右击外圆粗车加工工序,单击后处理,在后处理对话框中选择NX自带的“LATHE_2_AXIS_TOOL_TIP”后处理器,注意将单位设置成公制,如图4所示。确定后输出数控代码如下:

%

N0010 G94 G90 G20

N0020 G50 X0.0 Z0.0

:0030 T01 H00 M06

N0040 G97 S1140 M03

N0050 G94 G00 X16.75 Z3.4

N0060 G92 S3000

N0070 G96 S120 M03

N0080 G95 G01 Z3.F.27

N0090 Z-18.F.18

N0100 X18.7657 F.3

N0110 X20.Z-19.2343

N0120 G94 G00 X20.2828 Z-18.9515

N0130 Z3.4

N0140 X13.5

N0150 G95 G01 Z3.F.27

N0160 Z-18.F.2827

N0170 X16.75

N0180 G94 G00 X17.0328 Z-17.7172

N0190 Z3.4

N0200 X10.25

N0210 G95 G01 Z3.F.2147

N0220 Z-18.

N0230 X13.5

N0240 G94 G00 X13.7828 Z-17.7172

N0250 Z3.4

N0260 X7.

N0270 G95 G01 Z3.F.1466

N0280 Z-15.4

N0290 G02 X9.6 Z-18.I2.6 K0.0

N0300 G01 X10.25 F.2011

N0310 G94 G00 X10.5328 Z-17.7172

N0320 Z.2828

N0330 X4.1138

N0340 G95 G01 X3.8309 Z0.0 F.1333

N0350 X6.4105 Z-4.4679

N0360 G03 X7.Z-6.6679 I-3.8105 K-2.2 F.1343

N0370 G94 G00 X7.2828 Z-6.3851

N0380 X26.

N0390 Z8.

N0400 M02

%

我们注意到使用NX自带后处理器生成的数控代码,并不能直接在Fanuc 0i数控车床上使用,需要对代码进行手工修改。并且生成的程序只使用了数控通用格式,没有利用Fanuc 0i数控系统提供的车循环功能,导致程序较长,不利于阅读和修改。

2 复合循环编程

如果要NX11 CAM输出固定循环,在编程时需要进行设置。以Fanuc 0i数控系统G71外轮廓粗车循环为例,首先在CAM中创建外径粗车工序,工序名称“ROUGH_TURN_OD”,打开外径粗车对话框,在机床控制项中,将运动输出改为“机床加工周期”,将子程序名称改成和工序名称不相同的名称,这里改为“1_ROUGH”,如图5所示,生成后保存部件。

其次,要新建后处理文件。

打开后处理构造器,新建文件,后处理输出单位设置为毫米,机床设定为车,控制器设定为库,并从库中选择Fanuc,如图6所示,保存后处理文件,这里文件名为“new_post”,生成3个后处理文件,分别是“new_post.pui”、“new_post.pui.tcl”、“new_post.def”。

第三,回到NXCAM中,选中刚才的粗车工序,单击后处理指令,在对话框中单击“浏览以后查找后处理器”,找到刚才保存的后处理文件“new_post”,确定后输出数控代码如下:

%

N0010 G94 G90 G21

N0020 (ROUGH_TURN_OD)

N0030 G50 X0.0 Z0.0

N0040 T01 H00 M06

N0050 G92 S3000

N0060 G96 S120 M03

N0070 G71 U4.R1.(ROUGH TURN CYCLE)

N0080 G71 P0090 Q0100 U0.0 W0.0 F.3 S120

N0090 (CONTOUR TURN START)

G01 X3.946 Z-.2

X6.411 Z-4.468

G03 X7.Z-6.668 I-3.811 K-2.2

G01 Z-15.4

G02 X9.6 Z-18.I2.6 K0.0

G01 X18.766

X19.883 Z-19.117

N0100 (CONTOUR TURN END)

N0110 G94 G00 X26.Z-6.385

N0120 Z8.

N0130 M02

%

和之前相比,使用了G71功能,生成的数控代码已相对简洁,但有些地方还需要手工修改,若输出不需要手工修改的程序,需要对后处理文件进一步定制。

接下来针对Fanuc 0i数控系统车床,设计定制后处理文件。

第一行数控代码中“G94、G90、G21”这几种功能的参数一般为数控机床默认设置,不需要在数控代码中输出,可适用更多的数控系统。在后处理构造器中,将“G94、G90、G21”这块直接拖入垃圾桶,另外将程序运动指令中G94和G速度指令删除,如图7、8所示。

3 定制后处理文件

如果不习惯G50设定工件坐标系的方式,可输出G54-G59坐标系,将“G50 X Z”这块拖入垃圾桶,添加新块,在新块中添加“G-MCS Fixture Offset”文字块,如图 9所示,在NXCAM中,坐标系的装夹偏置设定为1,输出的G代码为G54,装夹偏置设定为2时,输出G55,以此类推。如果不输出设定坐标系的指令,通常机床默认为G54坐标系。

更改换刀指令,单击“T H01M06”块,将H01和M06拖入垃圾桶,如图 10所示。

输出的刀具代码为两位数的T01,如果要更改成1号刀1号刀补T0101,2号刀2号刀补T0202这种四位数的刀号和刀补方式,可以这样设置:右击T文字块,更改单元为“T-用户定义表达式”,再编辑,改为4位数,最大值改为9999,将表达式“$mom_tool_number”改为“$mom_tool_number*100+ $mom_tool_number”。如图11、12所示。

Fanuc 0i车削加工中有两种粗车加工循环,类型I和类型II。上述输出的含G71这种格式的在类型I的数控车床上不能运行,会报警。类型I要求G71下第一个程序段必须是只含X轴的运动指令,这就需要更改后处理文件。

首先去除(CONTOUR TURN END)注释语句。

打开后处理“new_post.tcl”文件,搜寻“proc PB_CMD_turn_cycle_contour_start”命令块,在“lappend dpp_contour_list $o_buffer”前加上注释标记“#”,可去除(CONTOUR TURN START)注释。再搜寻“proc PB_CMD_turn_cycle_contour_end”命令块,在“lappend dpp_contour_list $o_buffer”前加上注释标记“#”,可去除(CONTOUR TURN END)注释。修改后保存文件。修改部分程序如下:

#=============================================================

procPB_CMD_turn_cycle_contour_start { } {

#=============================================================

# This command is to detect the rough turning cycle type, calculate the cycle parameters

# and create a list to store the contourdatas and start tag and end tag.

#

……

# Store the start tag

seto_buffer [MOM_do_template turn_cycle_start_tag CREATE]

#lappend dpp_contour_list $o_buffer

}

#=============================================================

procPB_CMD_turn_cycle_contour_end { } {

#=============================================================

# This command is to output the contour data and adjust the sequence number.

#

# 05-30-2013levi - Initial version

……

# Store the end tag in the list

seto_buffer [MOM_do_template turn_cycle_end_tag CREATE]

# lappend dpp_contour_list $o_buffer

接下来把G71下面第一个运动语句的X和Z坐标代码分成两行输出。

在后处理“new_post.tcl”文件中,搜寻“proc PB_CMD_turn_cycle_contour_end”命令块,利用if语句找到G71下第一个语句,用string first定位含Z坐标的位置,string rang输出不含Z指令的数控代码,换行后输出只含Z坐标的代码,程序流程图如图13所示。更改部分程序如下:

……

# Output the contour NC codes

if {$mom_sys_cycle_seq_num_on==0} {

for {set i 0} {$i<$dpp_contour_list_length} {incr i} {

if {$i==0 || $i==$dpp_contour_list_length-1} {

MOM_set_seq_on

}

if {$i==0} {

set line [lindex $dpp_contour_list $i]

setmy_number [string first Z $line]

setX_line [string rang $line 0 [expr $my_number-1]]

setZ_line [string rang $line $my_number end ]

MOM_output_literal $X_line

MOM_set_seq_off

MOM_output_literal $Z_line

} else {

set line [lindex $dpp_contour_list $i]

MOM_output_literal $line

}

}

} else {

foreach line $dpp_contour_list {

MOM_output_literal $line

}

}

# Restoreoutputing sequence number

……

保存后处理文件后,在NXCAM中输出数控代码如下:

%

N0010 G54

N0020 (ROUGH_TURN_OD)

N0030 T0101

N0040 G92 S3000

N0050 G96 S120 M03

N0060 G71 U4.R1.(ROUGH TURN CYCLE)

N0070 G71 P0080 Q0090 U0.0 W0.0 F.3 S120

N0080 G01 X3.946

Z-.2

X6.411 Z-4.468

G03 X7.Z-6.668 I-3.811 K-2.2

G01 Z-15.4

G02 X9.6 Z-18.I2.6 K0.0

G01 X18.766

N0090 X19.883 Z-19.117

N0100 G00 G90 X26.Z-6.385

N0110 Z8.

N0120 M02

%

4 结语

NXCAM刀路设计规划完成后,利用NXCAM自带的车床后处理文件生成的数控代码,在Fanuc 0i数控系统车床上不能直接使用,需要手工修改数控代码,效率较低,并且容易出错。

针对Fanuc 0i数控系统的G71车削循环格式,通过定制设计后处理文件,使得输出的数控代码不需要手工修改,直接在数控车床上运行,保证数控代码的准确性,提高了编程的效率。

[1]李粉霞.基于UG的车铣复合数控机床变轴车削后处理开发[J].制造技术与机床,2016(1):144-147.

[2]王晓军,任衍涛,王金磊.UGNX软件的FANUC系统车铣复合加工后处理器研制[J].机械科学与技术,2016,35(4):580-583.

[3]夏爱宏,戈迎喜.基于NX 的复合机床后处理器开发与应用[J].机械设计与制造,2010(8):69-70.

[4]秦录芳,孙涛,时四强,等.基于UG的整体叶轮数控加工仿真研究[J].组合机床与自动化加工技术,2015(11):98-102.

[5]张磊.UG NX6 后处理技术培训教程[M].北京:清华大学出版社,2009.

[6]JohnK.Ousterhout, Ken Jones.Tcl/Tk入门经典[M].2版.北京:清华大学出版社,2010.

[7]李立军,孙伟.基于UGNX6.0的海德汉双转台五轴后处理研究[J].机床与液压,2014,42(10):122-125.

[8]鲁淑叶.UGNX8.0华中数控车床后处理器研究[J].现代制造工程,2016(10):51-54.

[9]高淼,范有雄,焦红卫.基于UG.CAM的轴类零件车削加工的研究与应用[J].机械工程师,2014(10):140-143.

[10]郭世帅.基于UGNX的DTM数控车后处理程序的开发应用[J].湖北工业大学学报,2015(4):108-111.

[11]张炜.基于UG的后处理编程研究[J].机械工程师,2015(8):45-47.

[12]张明艳,刘艳勤.基于UG的轴类零件数控编程技术研究与应用[J].自动化与仪器仪表,2015(12):73-74.

[13]何晶昌,申龙,程虎,等.基于UG自动编程的数控车削加工[J].机械制造与自动化,2010,39(4):43-46.

[14]孙丽丽.G71指令在数控车削加工中的应用[J].天津科技,2015,42(2):46-47.

[15]宋飞,俞香平.G71指令在陀螺加工中的应用[J].福建质量管理,2015(12):197.

猜你喜欢
数控系统后处理对话框
车身接附点动刚度后处理方法对比
果树防冻措施及冻后处理
正常恢复虚拟机
Bootlace Worms’Secret etc.
What Is Beauty?
乏燃料后处理的大厂梦
基于FANUC 32i A数控系统的外部测量设计
西门子840D sl数控系统在SC125大型车铣镗床技术改造中的应用
基于FANUC Oi mate TD数控系统的手动功能开发
数控系统中GUI软件平台设计和实现