Cimatron的后置处理技术(修改)

合集下载

五轴龙门摆头机床cimatron后置处理的研究

五轴龙门摆头机床cimatron后置处理的研究

第3卷第2期2010年6月上海电气技术J O U R N A I。

0F S H A N G H A l E I。

E C TR I C T EC H N O I。

0G Y文章编号:1674—540X(2010)02—017一05V01.3N o.2 Jun.20l o五轴龙门摆头机床C i m at r on后置处理的研究周吉,尹冠群,杨家荣(上海电气集团股份有限公司中央研究院,上海200070)摘要:五轴数控机床是加5-复杂零件的现代化设备,多样化的结构是其发展的必然趋势。

由于五轴数控加工编程复杂、易出错,后置处理文件的正确性尤为重要。

介绍了C i m a t r on两种后置处理软件G PP和I M SPO ST的功能特点,针对Q L M305龙门五轴摆头机床C i m at r on后置处理深入研究,并给出关键参数的测量、计算和设置的分析案例。

关键词:五轴;C i m at r on;后置处理中图分类号:T G659;T G519.54文献标识码:AB as ed on t he Pr opel l erC i m at r on E—pr ocess i ng T e chnol ogy R e sea r c hZ H O U J i,yJ N G uanqun,Y A N G J i ar ong(Shanghai E l ect r i c G r oup C o.,Lt d.C ent r al A cade m e,Shangh ai200070,C hi na)A bs t r a ct:5一axi s C N C pr ocess i ng c om pl ex c om ponent s m ode r n equi pm ent,di ver s i fi ed s t r uc t u r e i s t he i ne vi t abl e t r end of i ts de vel opm e nt.B ec aus e5-a xi s nc pr ogr am m i ng com pl e x and er r or—pr one,pos t pr oces s i ng t he c orr e c t nes s of t he doc um e nt i s par t i cul ar l y i m por t ant.T he pap er i nt r oduces t w o pos t pr oces s i ngC i m at r on G PP s of t w ar eI M SPO ST and t he f eat ur es Q LM305f or fi ve-a xi s m a chi ne se t head l ongm e n C i m at r on pos t pr oces s i ng t h or ou gh r es ear ch,and gi ves t he ke y par am et er m eas ur e m ent,c al c ul at i on and anal ysi s of t he se t.K ey w or ds:5一axi s;C i m at r on;pos t pr oces s i ng无论是哪种C A M软件,其主要用途都是要生成在机床上加工零件的刀具轨迹(简称刀轨)。

MasterCAM 后置处理设置方法详细说明

MasterCAM 后置处理设置方法详细说明

MasterCAM X版本后置处理及其修改方法详细说明mastercam系统配置的是适应单一类型控制系统的通用后置处理,用户根据数控机床和数控系统的具体情况,可以对其数据库进行修改和编译,定制出适应某一数控机床的专用后置处理程序。

mastercam系统默认发那科后置处理文件的扩展名为pst,称为pst文件。

(一般该文件在共享文档\shared mcamx5\MILL\Posts\MPFAN.pst)根据本人多年使用经验,初次安装后后处理有以下几点要修改。

(1)默认后处理去掉第四轴A0的输出用记事本或任意文本编辑器打开MPFAN.pst,然后搜索Rotary Axis Settings,找到rot_on_x:1#SET_BY_MD Default Rotary Axis Orientation#0=Off,1=About X,2=About Y,3=About Z改成rot_on_x:0#SET_BY_MD Default Rotary Axis Orientation#0=Off,1=About X,2=About Y,3=About Z就可以关闭四轴,没有A0输出。

(2)去掉程序开头的注释输出用记事本或任意文本编辑器打开MPFAN.pst,然后搜索"%",找到"%",e$sav_spc=spaces$spaces$=0中间略掉spaces$=sav_spc改成"%",e$sav_spc=spaces$spaces$=0*progno$,sopen_prn,sprogname$,sclose_prn,e$#sopen_prn,"PROGRAM NAME-",sprogname$,sclose_prn,e$#sopen_prn,"DATE=DD-MM-YY-",date$,"TIME=HH:MM-",time$, sclose_prn,e$#Date and time output Ex.12-02-0515:52#sopen_prn,"DATE-",month$,"-",day$,"-",year$,sclose_prn,e$#Date output as month,day,year-Ex.02-12-05#sopen_prn,"DATE-",*smonth,"",day$,"",*year2,sclose_prn, e$#Date output as month,day,year-Ex.Feb.122005#sopen_prn,"TIME-",time$,sclose_prn,e$#24hour time output-Ex.15:52#sopen_prn,"TIME-",ptime sclose_prn,e$#12hour time output 3:52PMspathnc$=ucase(spathnc$)smcname$=ucase(smcname$)stck_matl$=ucase(stck_matl$)snamenc$=ucase(snamenc$)#sopen_prn,"MCX FILE-",*smcpath$,*smcname$,*smcext$, sclose_prn,e$#sopen_prn,"NC FILE-",*spathnc$,*snamenc$,*sextnc$, sclose_prn,e$#sopen_prn,"MATERIAL-",*stck_matl$,sclose_prn,e$spaces$=sav_spc在不需要的前面加#,就可以去掉注释的输出。

Cimatron的GPP后处理修改

Cimatron的GPP后处理修改

Cimatron的GPP后处理修改CIMATRON的GPP后处理的构造及编辑方法!CIMATRON的GPP后处理是编译语言,它比UG的TCL语言及IMSPOST的解释语言的后处理要快,这是自然的事。

GPP后处理器由三个文件组成:*.def是机床类型文件;*.dex是编译过的事件处理文件(人难以识别);*.exf是未编译的事件处理文件(是给人看的);在这里*符号必须是同一文件名,后处理编辑组要是编辑*.def和*.exf这两个文件。

先讲*.exf这个文件,它由以下3部分组成:1程序头2操作3程序尾其中操作包括:直线运动操作,圆弧运动操作及钻孔运动操作组成。

再大多数情况下可根据不同的机床对现有的GPP后处理中的*.def和*.exf这两个文件消做修饰就可以使用,但别忘了GPP后处理器只使用*.def和*.dex这两个文件,将*.exf文件编译成*.dex。

程序头部主要起到初始化的作用以下为典型的程序头部1。

参数定义部分*.....标注说明* DEMO 3 axes Post Processor for FANUC* CIMATRON90 VER 9.0* Last update : 23-FEB-1998.....*.....类型变量定义********************************************************FORMAT (SEQUENCING) Seq SubSeq CNTRL_NUM NURBS_DEG count first deg ;.....FORMAT (USER_2) FlagSub FlagSeq FlagSpin;.....*......软件中的菜单提示INTERACTION (USER_1) "MAIN-PROGRAM-NUMBER" MainNum = 100 ;.....*.....模态变量定义NON_MODAL ALL_VAR;MODAL X_CURPOS Y_CURPOS Z_CURPOS ;.....2。

Cimatron 后置处理技术

Cimatron 后置处理技术

Cimatron 后置处理技术* DEMO 3 axes Post Processor for FANUC *表示为注释文本,将不起作用* CIMATRON90 VER 9.0* Last update : 23-FEB-1998********************************************************* define private variables: *定义后置处理中需要用到的变量类型,通常不修改FORMAT (SEQUENCING) Seq SubSeq CNTRL_NUM NURBS_DEG count first deg ;FORMAT (TOOL) CutterComp FirstTool LastTool ;FORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter ; FORMAT (COORDINATES) Zinit Clear Depth CNTRL_X CNTRL_Y CNTRL_Z KNOT_ ;FORMAT (COORDINATES) Xhome Yhome Zhome ;FORMAT (COORDINATES) XfirstOrigin YfirstOrigin ZfirstOrigin ;FORMAT (USER_1) CurrSubNum ;FORMAT (coordinates) ORIGOLDI ORIGOLDJ ORIGOLDK ;* define private flags:FORMAT (USER_2) FlagSub FlagSeq FlagSpin;FORMAT (USER_2) FirstOriginChange FlagError Flagrotmac ;* define private constants:FORMAT (USER_2) YES NO ;* change the format of existing variables:FORMAT (USER_1) SUB_NUMBER ;******************************************************** INTERACTION (USER_1) "MAIN-PROGRAM-NUMBER" MainNum = 100 ;INTERACTION (TOOL) "DIACOMP=TOOL+<xx>" DiaComp = 50 ;INTERACTION (USER_1) "TOOL-CHANGE-PROGRAM" ChangeTool = 8000 ;INTERACTION (CHARACTER) "SEQUENCING<Y/N>" NumYN = "N" ;INTERACTION (SEQUENCING) "SEQUENC-START" SeqStart = 10 ;INTERACTION (SEQUENCING) "SEQUENC-INCR." SeqIncr = 10 ;INTERACTION (CHARACTER) "SUBROUTINES<Y/N>" Sub = "Y" ;INTERACTION (USER_1) "SUB-PROGRAM-NUMBER" StartSubNum = 1000 ;* INTERACTION 为交互内容,可以输入,即在后置处理对话框中出现的内容可以试着将里面的文字变为中文********************************************************NON_MODAL ALL_V AR; * MODAL定义变量是否为模态,像X_CURPOS这种坐标位置当然是随时都在变化的MODAL X_CURPOS Y_CURPOS Z_CURPOS ;MODAL LIN_MOV CIRC_MOV MCH_FEED SPIN_SPEED SPIN_DIR MCH_COOL MCH_DWELL;MODAL CUTCOM_ON CUTCOM_OFF ;MODAL CYC_DEPTH CYC_PECK CYC_DWELL CYC_RETR CYC_CLEAR Depth Clear NURBS_MOV;IDENTICAL X_CURPOS X_ENDPT ;IDENTICAL Y_CURPOS Y_ENDPT ;*每输出一行程序之前,调用一个新的值,即保持侦测状态******* *************************************************NEW_LINE_IS $ ; * $ 为换行指令,这一段内容制定程序是如何换行的IF_SET (FlagSeq _EQ_ NO) $使用IF….ELSE 语句判断,OUTPUT表示输出OUTPUT \J ;ELSEIF_SET (FlagSub _EQ_ NO)OUTPUT \J "N" Seq ;Seq = Seq + SeqIncr ;ELSEOUTPUT \J "N" SubSeq ;SubSeq = SubSeq + SeqIncr ;END_IF ;END_IF ;******************************************************** BEGINNING OF TAPE: 程序头的指定YES = 1 ;NO = 0 ;Seq = SeqStart ;FlagSeq = NO ;FlagSub = NO ;IF_SET (NumYN _EQ_ "y") FlagSeq = YES ; END_IF ;IF_SET (NumYN _EQ_ "Y") FlagSeq = YES ; END_IF ;IF_SET (Sub _EQ_ "y") Sub = "Y" ; END_IF ;IF_SET (Sub _EQ_ "Y")SET_OFF NO_SUBROUT ;ELSESET_ON NO_SUBROUT ;END_IF ;*----Unit matrix (MUST be input in this order !!!) 指定XYZ轴的方向,绝对不能改ROT_MAT1 = 1.0 ; ROT_MAT2 = 0.0 ; ROT_MAT3 = 0.0 ;ROT_MAT4 = 0.0 ; ROT_MAT5 = 1.0 ; ROT_MAT6 = 0.0 ;ROT_MAT7 = 0.0 ; ROT_MAT8 = 0.0 ; ROT_MAT9 = 1.0 ;*-----shift all data according to the MCHINE ZERO indicated by the* user in the POSTPR interaction 如果指定为对刀点相对于编程原点偏移,设置坐标值如何转换TRANS_MATX = 0 - X_MACH ;TRANS_MATY = 0 - Y_MACH ;TRANS_MATZ = 0 - Z_MACH ;*-----shift the HOME according to the MCHINE ZERO indicated by the* user in the POSTPR interactionXhome = X_HOME - X_MACH ;Yhome = Y_HOME - Y_MACH ;Zhome = Z_HOME - Z_MACH ;*-----tool location is HOME 刀具原点Xold = X_HOME ;Yold = Y_HOME ;Zold = Z_HOME ;*-----For 1st ORIGIN CHANGEFirstOriginChange = YES ;MCH_FEED = 9999 ;*-----outputIF_SET (FlagSeq _EQ_ YES ) 换行后输出子程序号OUTPUT "%" \J "O" MainNum ;ELSEOUTPUT " %" \J " O" MainNum ;END_IF ;*--For the first origin changeORIGOLDI=0 ; ORIGOLDJ=0 ; ORIGOLDK=1 ;flagrotmac = no ;BEGINNING OF PROC: 程序开始段KEEP PROC_NAME ;SET_ON MCH_COOL ;FlagSub = NO ;SubSeq = SeqStart ;END OF TAPE: 使用完一把刀具后IF_SET (FirstTool _NE_ LastTool)OUTPUT $ " T" NEXT_TOOL " M98 P" ChangeTool;END_IF ;OUTPUT $ " M30 " ;END OF FILE: 程序结束符IF_SET (FlagSeq _EQ_ YES )OUTPUT \J "%" ;ELSEOUTPUT \J " %" ;END_IF ;********************************************************FEED:KEEP MCH_FEED ; 如果F值没有改变,则此行程序不输出F。

CimatronE后处理修改

CimatronE后处理修改

【讨论】E 版后处理
我学CIMTRON 没多长时间. 以前用MASTERCAM ,现在我想用CIMTRON但后处理不知如何改?
我的MASTERCAM后处理如下
%
(PROGRAM NAME - Y11H1)
(DATE=DD-MM-YY - 10-12-03 TIME=HH:MM - 09:51)
G54G17G40G49G80G90G01F3000G90
(E3/8 TOOL - 1 DIA. OFF. - 1 LEN. - 1 DIA. - 9.525)
G01G90X32.939Y52.525S4000M3
M5
G91G28Z0.
M30
%
简单地说一下。

1.打开imspost.exe(你可以在自己的计算机上查找一下,应该可以找到的)
[ Last edited by 西坡居士on 2004-1-3 at 02:00 PM ] 本贴包含图片附件:
2,打开有关于你自己加工中心所需要的后处理。

如我的是FANUC0M的本贴包含图片附件:
3,更改相关的参数,如程序头与尾,圆弧输出方式,如我用的是R,也可以是以I,J,K来表示。

这取决于你的加工中心控制系统。

更改好后保存。

本贴包含图片附件:
4.后处理选择ims,如果是E4.2的话要注意生成的程序会有刀长补正的问题,Z值相差100。

00。

不过E
5.0的倒解决了。

不过E4.2的也无关系,还有我呢。

本贴包含图片附件:
程序如下,当然只能做一些比较简单的改动,不过,也够用了。

本贴包含图片附件:。

MASTERCAM后处理的设置及参数修改.docx

MASTERCAM后处理的设置及参数修改.docx

MASTERCAM后处理的设置及参数修改.docxMASTERCAM后处理的设置和参数修改后置处理文件简称后处理文件,MASTERCAM后置处理文件是一种可以由用户以回答问题的形式自行修改的文件,其扩展名为 .PST。

安装MASTERCAM时系统会自动安装默认的后处理为MPFAN.PST在.应用Mastercam 软件的自动编程功能之前,必须先对这个文件进行编辑,才能在执行后处理程序时产生符合某种控制器需要和使用者习惯的NC程序,如果没有全部更正,则可能造成事故 . MASTERCAM提供了不同系列的后处理文件,它们在内容上略有不同,但其格式及主体部分是相似的,一般都包括以下部分:1)注释部分。

对后处理文件及其设定方法作一般性介绍. 此部分内容一般都不用更改 .以下是截取的部分注释:( 注释前都带#号, 系统在执行代码处理时是不会读取前面带#号的语句的 .)#Post Name : MPFAN#Product : MILL#Machine Name : GENERIC FANUC#Control Name : GENERIC FANUC#Description : GENERIC FANUC MILL POST#Associated Post : NONE#Mill/Turn : NO#4-axis/Axis subs. : YES#5-axis : NO#Subprograms : YES#Executable : MP v9.0##WARNING:THIS POSTIS GENERICANDIS INTENDEDFOR MODIFICATION TO#THE MACHINE TOOL REQUIREMENTSAND PERSONALPREFERENCE.2)系统程序规划部分( Debugging and Factory SetProgram Switches )。

此部分是 MASTERCAM版本的后处理系统规划,每个版本都大同小异 , 一般不需更改 . 以下截取的是 9.0 版的 ) m_one : -1 #Define constantzero : 0 #Define constantone : 1 #Define constanttwo : 2 #Define constantthree : 3 #Define constantfour : 4 #Define constantfive : 5 #Define constant---fastmode : yes #Enable Quick Post Processing, (set to no for debug)bug1 : 2 #0=No display,1=Generic list box, 2=Editorbug2 : 40 #Append postline labels, non-zerois column position?bug3 : 0 #Append whatline no. to each NC line?bug4 : 1 #Append NCI line no. to each NC line?whatno : yes #Do not perform whatline branches?(leave as yes)get_1004 : 1 #Find gcode 1004 with getnextop?rpd_typ_v7 : 0 #Use Version 7 style contour flags/processing?strtool_v7 : 2 #Use Version 7+ toolname?tlchng_aft : 2 #Delay call to toolchange until movelinecant_tlchng : 1 #Ignore cantext entry on move with tlchng_aftnewglobal : 1 #Error checking for global variablesgetnextop : 0 #Build the next variable table3)常规后处理设定部分(General Output Settings )。

CimatronE9.0后置处理修改英文翻译1

CimatronE9.0后置处理修改英文翻译1

Cimatron后置处理技术* DEMO 3 axes Post Processor for FANUC *表示为注释文本,将不起作用* CIMATRON90 VER 9.0* Last update : 23-FEB-1998********************************************************* define private variables: *定义后置处理中需要用到的变量类型,通常不修改FORMAT (SEQUENCING) Seq SubSeq CNTRL_NUM NURBS_DEG count first deg ;FORMAT (TOOL) CutterComp FirstTool LastTool ;FORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter ; FORMAT (COORDINATES) Zinit Clear Depth CNTRL_X CNTRL_Y CNTRL_Z KNOT_ ;FORMAT (COORDINATES) Xhome Yhome Zhome ;FORMAT (COORDINATES) XfirstOrigin YfirstOrigin ZfirstOrigin ;FORMAT (USER_1) CurrSubNum ;FORMAT (coordinates) ORIGOLDI ORIGOLDJ ORIGOLDK ;* define private flags:FORMAT (USER_2)FORMAT (USER_2)* define private constants:FORMAT (USER_2) YES NO ;* change the format of existing variables:FORMAT (USER_1) SUB_NUMBER ;******************************************************** INTERACTION (USER_1) "MAIN-PROGRAM-NUMBER" MainNum = 100 ;INTERACTION (TOOL) "DIACOMP=TOOL+<xx>" DiaComp= 50 ;INTERACTION (USER_1) "TOOL-CHANGE-PROGRAM" ChangeTool = 8000 ;INTERACTION (CHARACTER) "SEQUENCING<Y/N>" NumYN = "N" ;INTERACTION (SEQUENCING) "SEQUENC-START" SeqStart = 10 ;INTERACTION (SEQUENCING) "SEQUENC-INCR." SeqIncr= 10 ;INTERACTION (CHARACTER) "SUBROUTINES<Y/N>" Sub = "Y" ;INTERACTION (USER_1) "SUB-PROGRAM-NUMBER" StartSubNum = 1000 ;* INTERACTION为交互内容,可以输入,即在后置处理对话框中出现的内容可以试着将里面的文字变为中文********************************************************NON_MODAL ALL_V AR; * MODAL定义变量是否为模态,像X_CURPOS这种坐标位置当然是随时都在变化的MODAL X_CURPOS Y_CURPOS Z_CURPOS ;MODAL LIN_MOV CIRC_MOV MCH_FEED SPIN_SPEED SPIN_DIR MCH_COOL MCH_DWELL;MODAL CUTCOM_ON CUTCOM_OFF ;MODAL CYC_DEPTH CYC_PECK CYC_DWELL CYC_RETRCYC_CLEAR Depth Clear NURBS_MOV;IDENTICAL X_CURPOS X_ENDPT ;IDENTICAL Y_CURPOS Y_ENDPT ;*每输出一行程序之前,调用一个新的值,即保持侦测状态******* *************************************************NEW_LINE_IS $ ; * $为换行指令,这一段内容制定程序是如何换行的IF_SET (FlagSeq _EQ_ NO)输出OUTPUT \J ;ELSEIF_SET (FlagSub _EQ_ NO)OUTPUT \J "N" Seq ;Seq = Seq + SeqIncr ;ELSEOUTPUT \J "N" SubSeq ;SubSeq = SubSeq + SeqIncr ;END_IF ;END_IF ;******************************************************** BEGINNING OF TAPE:YES = 1 ;NO = 0 ;Seq = SeqStart ;FlagSeq = NO ;FlagSub = NO ;IF_SET (NumYN _EQ_ "y") FlagSeq = YES ; END_IF ;IF_SET (NumYN _EQ_ "Y") FlagSeq = YES ; END_IF ;IF_SET (SubIF_SET (Sub _EQ_ "Y")SET_OFF NO_SUBROUT ;ELSESET_ON NO_SUBROUT ;END_IF ;*----Unit matrix (MUST be input in this order !!!)指定XYZ轴的方向,绝对不能改ROT_MAT1 = 1.0 ; ROT_MAT2 = 0.0 ; ROT_MAT3 = 0.0 ;ROT_MAT4 = 0.0 ; ROT_MAT5 = 1.0 ; ROT_MAT6 = 0.0 ;ROT_MAT7 = 0.0 ; ROT_MAT8 = 0.0 ; ROT_MAT9 = 1.0 ;*-----shift all data according to the MCHINE ZERO indicated by the* user in the POSTPR interaction如果指定为对刀点相对于编程原点偏移,设置坐标值如何转换TRANS_MATX = 0 - X_MACH ;TRANS_MATY = 0 - Y_MACH ;TRANS_MATZ = 0 - Z_MACH ;*-----shift the HOME according to the MCHINE ZERO indicated by the* user in the POSTPR interactionXhome = X_HOME - X_MACH ;Yhome = Y_HOME - Y_MACH ;Zhome = Z_HOME - Z_MACH ;*-----tool location is HOME刀具原点Xold = X_HOME ;Yold = Y_HOME ;Zold = Z_HOME ;*-----For 1st ORIGIN CHANGEFirstOriginChange = YES ;MCH_FEED*-----outputIF_SET (FlagSeq _EQ_ YES )换行后输出子程序号OUTPUT "%" \J "O" MainNum ;ELSEOUTPUT " %" \J " O" MainNum ;END_IF ;*--For the first origin changeORIGOLDI=0 ; ORIGOLDJ=0 ; ORIGOLDK=1 ;flagrotmac = no ;BEGINNING OF PROC:KEEP PROC_NAME ;SET_ON MCH_COOL ;FlagSub = NO ;SubSeq = SeqStart ;END OF TAPE:使用完一把刀具后IF_SET (FirstTool _NE_ LastTool)OUTPUT $ " T" NEXT_TOOL " M98 P" ChangeTool;END_IF ;OUTPUT $ " M30 " ;END OF FILE:程序结束符IF_SET (FlagSeq _EQ_ YES )OUTPUT \J "%" ;ELSEOUTPUT \J " %" ;END_IF ;********************************************************FEED:KEEP MCH_FEED ;如果F值没有改变,则此行程序不输出F。

Mastercam後处理(简体字)

Mastercam後处理(简体字)

Mastercam後处理(简体字)Mastercam后置处理文件及其设定方法详细说明Mastercam系统后置处理文件的扩展名为PST,称为PST文件,它定义了切削加工参数、NC程序格式、辅助工艺指令,设置了接口功能参数等,其结构由八个部分组成:1.注解程序每一列前有“#”符号表示该列为不影响程序执行的文字注解。

如:# mi2-Absolute, or Incremental positioning0=absolute1=incremental表示mi2定义编程时数值给定方式,若mi=0为绝对值编程,mi=1为增量值编程。

在这一部分里,定义了数控系统编程的所有准备功能G代码格式和辅助功能M代码格式。

2.程序纠错程序中可以插入文字提示来帮助纠错,并显示在屏幕上。

如:# Error messages (错误信息)psuberror # Arc output not allowed"ERROR-WRONG AXIS USED IN AXIS SUBSTITUTION", e如果展开图形卷成旋转轴时,轴替换出错,则在程序中会出现上面引号中的错误提示。

3.定义变量的数据类型、使用格式和常量赋值如规定G代码和M代码是不带小数点的两位整数,多轴加工中心的旋转轴的地址代码是A、B和C,圆弧长度允许误差为0.002,系统允许误差为0.00005,进给速度最大值为10m/min等。

4.定义问题可以根据机床加工需要,插入一个问题给后置处理程序执行。

如定义NC程序的目录,定义启动和退出后置处理程序时的C-Hook程序名。

5.字符串列表字符串起始字母为s,可以依照数值选取字符串,字符串可以由两个或更多的字符来组成。

字符串sg17,表示指定XY加工平面,NC程序中出现的是G17,scc1表示刀具半径左补偿,NC程序中出现的是G41,字符串sccomp 代表刀具半径补偿建立或取消。

6.自定义单节可以让使用者将一个或多个NC码作有组织的排列。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Cimatron的后置处理技术研究摘要:本文分析Cimatron中一般后处理程序器的组成结构,利用Cimatron提供的后置处理工具(GPP 和IMSPOST)来修改后置处理文件,并讨论如何将一般的后置处理器修改成适合于特定数控系统要求的后置处理器的思路与方法。

关键词:自动编程刀位文件后置处理数控NC代码Study on the Post Processing of CimatronThe 36th Research Institute of CETC(314001) Yu honghua,Lv qiang,Chen wei fengAbstract: This paper analyses the structure of general post processors in Cimatron, modifies a post processing file by using post processing tools (GPP and IMSPOST )supplied by Cimatron , and discusses the ways and methods of how to modify a normal post processing file to a specified post processing file for special NC system.Key Words: automatic programming; tool-location files; post processing; NC; NC Code1.前言数控机床是按数控程序进行加工的。

在应用CAM软件生成数控程序时,首先要产生刀位文件,然后再通过后处理文件,将刀位文件编译成数控程序,这一点与手工编程是不同的。

刀位文件是反映刀具运动轨迹的文件,它是CAM软件按照编程员的加工工艺,在假定工件固定不动,而刀具运动的情况下,由软件自动计算产生的。

之所以要这样做,是因为不同的数控机床采用的控制系统的指令是不同的,CAM软件的供应商,为使软件能够通用化,就先产生刀位文件,然后再根据具体的控制系统,用后置处理工具,产生专用的后处理文件,并通过它将刀位文件编译成数控程序。

不同的CAM软件,后置处理工具也不尽相同,本文主要介绍了Cimatron(IT和E)软件的两种后置处理工具的使用方法,并给出了定制Heidenhain控制系统专用后置处理文件的实例。

2.Cimatron两种后置处理工具GPP和IMSPOST的功能特点GPP(General Post Processor)是Cimatron公司自己开发的后置处理工具,通过对demo.def, demo.exf 模板后处理文件作适当的修改,可以生成符合用户需要的后处理文件,主要特点是修改完成后使用方便,该方法目前主要用在3轴以下机床的后处理。

IMSPOST是IMS公司为广大用户提供的基于宏汇编的后处理程序编辑器,可支持各种CAD/CAM软件生成的刀位文件的后置处理,并提供了多种后置处理文件库,可支持更广泛的数控机床。

同时也提供了非常丰富的定制功能,可生成任意形式的后置处理文件,从而可更好地提供支持高速加工、多轴加工的后置处理。

所有用户需要的后处理程序都可以通过执行IMSPOST后生成。

在大多数情况下,用户只需在IMSPOST 软件的对话窗口和菜单项中编辑和定义宏参数,不必进行任何宏程序的编制就可以得到为自己机床定制的后处理文件。

3.使用GPP和IMSPOST定制Heidenhain专用后置处理文件的实例3.1用GPP定制Heidenhain数控系统后处理文件图 1 Cimatron中与Nc有关的软件工具界面GPP在后置处理中主要起作用的文件的后缀名为*.def、*.dex和*.exf,如demo.def、 demo.dex和demo.exf。

demo.def文件主要用于数控系统的相关定义,如主轴开启、停止、冷却液开、关等对应的控制指令等,可用图1所示的DFPost软件工具打开进行修改,内容比较易懂,修改也不多,修改成满足Heidenhain和机床系统要求即可,可以改名为hnc.def。

用编辑程序如记事本,打开demo.exf文件,根据需要修改后,然后改名为hnc.exf,用图1中的Dfexf 编译后生成hnc.dex即可,如何修改hnc.exf文件,是本文要介绍的一个主要内容,先介绍几个GPP系统变量如当前刀具名称CURR_TOOL,刀具直径DIAMETER_,当前X坐标值X_CURPOS,圆弧中心的X坐标值X_CENTER等。

下面为demo.exf文件部分内容的说明:* DEMO 3 axes Post Processor for FANUC *号后面对程序的说明********************************************************* define private variables:FORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter ; FORMAT为变量类型********************************************************INTERACTION (USER_1) "MAIN-PROGRAM-NUMBER" MainNum = 100 ; INTERACTION为交互内容,可以输入。

********************************************************NON_MODAL ALL_VAR; NON_MODAL 为非模态MODAL X_CURPOS Y_CURPOS Z_CURPOS ; MODAL 为模态********************************************************NEW_LINE_IS $ ;IF_SET (FlagSeq _EQ_ NO) IF_SET为判断语句OUTPUT \J ; OUTPUT为输出内容********************************************************LINEAR MOTION: 直线运动代码转换OUTPUT $ ;IF_SET (LIN_MOV) OUTPUT " " LIN_MOV ; END_IF ;IF_SET (CUTCOM_ON) OUTPUT " " CUTCOM_ON " D" CutterComp ; END_IF ;IF_SET (CUTCOM_OFF) OUTPUT " " CUTCOM_OFF ; END_IF ;IF_SET (X_CURPOS) OUTPUT " X" X_CURPOS ; END_IF ;如果我们要在NC程序中加输出刀具半径说明的话,我们可以定义一个FORMAT (COORDINATES)变量TOOLR,然后在TOOL CHANGE:的地方加上TOOLR=0.5*DIAMETER_; DIAMETER_为系统变量OUTPUT $ "TOOL DEF " CURR_TOOL " L+0" " R" TOOLR;如果我们要在NC程序中输出符合Heidenhain数控系统的圆弧,可以在CIRCULAR MOTION:中改为:SET_ON X_CENTER Y_CENTER;OUTPUT $ "CC" ; CC为Heidenhain中的圆弧中心符号OUTPUT " X" X_CENTER ;OUTPUT " Y" Y_CENTER ;END_IF ;FlagWC = YES ;OUTPUT $ ;IF_SET (CIRC_MOV) OUTPUT "C"将修改和编译后的hnc.def、hnc.dex两个文件,放到Cimatron安装目录\var\post中,在生成输出数控程序时,就会出现hnc后置处理文件的选项,选择该文件就会生成Heidenhain控制系统的数控程序。

下面为用该后处理生产的NC代码,其它系统也可以按需要修改,一般修改OUTPUT后面的部分即可。

0 BEGIN PGM NCNAME MM1 BLK FORM 0.1 Z X+0 Y+0 Z-502 BLK FORM 0.2 X+70 Y+160 Z+03 TOOL DEF 1 L+0 R3.4 TOOL CALL 1 Z S10005 M66 M037 M098 L X-5 Y+76.59 Z+50 F 50009 L Z+1 F 5000………13 CC X+0 Y+125.24114 C X-2.121 Y+127.362 DR-15 L X+22.879 Y+152.362……38 CYCL DEF 1.4 DWELL39 CYCL DEF 1.5 F 35040 L X+10 Y+20 F 500041 L Z+3 F 500042 CYCL CALL43 L X+40 F 5000 M99……47 M305000 END PGM NCNAME MM3.2用IMSPOST定制Heidenhain数控系统后处理利用IMSPOST后处理可以非常方便地对相应的数控系统进行设置,IMSPOST提供了如Funuc、Siemens、Heidenhain和Mazak等数控系统的后处理程序,提供了宏程序功能,能处理绝大多数其他CAM软件的刀位文件。

定制Heidenhain数控系统后处理,可以新建一个库文件,也可以在已有的库文件上进行修改。

根据我们使用的机床类型,选择了对Heidenhain407.lib库文件进行修改。

打开Heidenhain407.lib文件,将End of program的代码设为M30,如图2所示,同样地,再将DRILL CYCLES中的Depth Format设为inverted图 2 Heidenhain数控系统后处理功能设置sign(+/-)。

然后在主菜单上选择USER⇒MULTI HOME,输入G54,将加工坐标系的原点由机床原点改为工件原点,保存后形成新的后处理文件。

在IMSPOST中不但可以定制后处理文件,也能用定制后的后处理文件把刀位文件转换成数控程序。

如我们首先在Cimatron中将刀具轨迹生成apt文件(需要把apt.def、apt.dex两个文件放到Cimatron安装目录\var\post中),然后在IMSPOST主菜单中选择execute⇒post process,在图3所示的弹出窗口的Input栏中选择要转换apt文件,默认Output栏中的文件名,在Input type栏中选择CIMATRON类型,然后点击Go,窗口就会显示转换进度。

相关文档
最新文档