青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 4991|回复: 3

[分享] Cimatron软件的后置处理程序及应用

[复制链接]
发表于 2009-7-18 10:34 | 显示全部楼层 |阅读模式
一、前言
: l& r- Q% ~7 R9 ^: X1 X$ I
6 k" \& [3 D3 t% h0 ]+ i数控机床是按数控程序进行加工的。在应用CAM软件生成数控程序时,首先要产生刀位文件,然后再通过后处理文件,将刀位文件编译成数控程序,这一点与手工编程是不同的。刀位文件是反映刀具运动轨迹的文件,它是CAM软件按照编程员的加工工艺,在假定工件固定不动,而刀具运动的情况下,由软件自动计算产生的。之所以要这样做,是因为不同的数控机床采用的控制系统的指令是不同的,CAM软件的供应商,为使软件能够通用化,就先产生刀位文件,然后再根据具体的控制系统,用后置处理工具,产生专用的后处理文件,并通过它将刀位文件编译成数控程序。不同的CAM软件,后置处理工具也不尽相同,本文将主要介绍Cimatron软件的两种后置处理工具的使用方法,并给出了定制Heidenhain控制系统专用后置处理文件的实例。
" Q+ h! M! G. q; `+ A7 a  O( U7 c2 h; _0 n- _% b- R
二、Cimatron两种后置处理工具GPP和IMSPOST的功能特点
) O% \3 g3 P. s- g8 L& i+ H5 J; A' t, e4 y2 c2 E1 z
GPP(General Post Processor)是Cimatron公司自己开发的后置处理工具,通过对demo.def和demo.exf模板后处理文件作适当的修改,可以生成符合用户需要的后处理文件,主要特点是修改完成后使用方便,该方法目前主要用在3轴以下机床的后处理。 " g3 t' x) o! k) o3 n
/ A3 g& }1 i  Z
IMSPOST是IMS公司为广大用户提供的基于宏汇编的后处理程序编辑器,可支持各种CAD/CAM软件生成的刀位文件的后置处理,并提供了多种后置处理文件库,可支持更广泛的数控机床。同时它也提供了非常丰富的定制功能,可生成任意形式的后置处理文件,从而可更好地提供支持高速加工、多轴加工的后置处理。所有用户需要的后处理程序都可以通过执行IMSPOST后生成。在大多数情况下,用户只需在IMSPOST软件的对话窗口和菜单项中编辑和定义宏参数,不必进行任何宏程序的编制就可以得到为自己机床定制的后处理文件。
; E, B# t1 f- S1 W; r9 F, l- ]7 e
- ?2 N( u7 [9 C) g2 Y4 ~三、使用GPP和IMSPOST定制Heidenhain专用后置处理文件的实例 ! k- X& S' Y/ ~  B" ]4 n
+ K5 z3 O9 u3 ^. F  p! z8 |0 C
1. 用GPP定制Heidenhain数控系统后处理文件
8 l2 _: f$ T; @7 H1 D- Q3 S- c0 |. J8 n* t, j8 A
GPP在后置处理中主要起作用的文件的后缀名为*.def、*.dex和*.exf,如demo.def、 demo.dex和demo.exf等。Demo.def文件主要用于数控系统的相关定义,如主轴开起、停止、冷却液开、关等对应的控制指令等,可用图1所示的DFPost软件工具打开进行修改,内容比较易懂,修改也不多,修改成满足Heidenhain和机床系统要求即可,可以改名为hnc.def。 # L' O' ~# c' b

3 P6 q" [; |. G! O1 x0 a图1 Cimatron中与Nc有关的软件工具界面[/ALIGN]用记事本打开demo.exf文件,根据需要修改后,然后改名为hnc.exf,用图1中的Dfexf编译后生成hnc.dex即可,如何修改hnc.exf文件,是本文要介绍的一个主要内容。我们先来介绍几个GPP系统变量,如当前刀具名称CURR_TOOL、刀具直径DIAMETER_、当前X坐标值X_CURPOS、圆弧中心的X坐标值X_CENTER等。下面是demo.exf文件部分内容的说明。
) F9 b- A4 x) Q6 A5 _. C: M, c1 B: e; f* b# ~! {" ~8 {
* DEMO 3 axes Post Processor for FANUC;*号后面是对程序的说明
) w6 L/ q- k- D- o& |6 E9 E********************************************************
5 o- E! {& @, [3 _' E$ k3 K+ j% ?7 b* define private variables:
2 R; {* C- O1 M- LFORMAT (COORDINATES) Xold Yold Zold DXcenter DYcenter DZcenter; FORMAT为变量类型
, o3 l4 n, ]# f  F7 ^& e8 ]********************************************************
. w* }0 q- Q" r: _INTERACTION (USER_1) "MAIN-PROGRAM-NUMBER" MainNum = 100; INTERACTION为交互内容,可以输入 * j; p0 U, b2 q
********************************************************
" U1 ?: K8 @( w5 M! K( t' M0 FNON_MODAL ALL_VAR;NON_MODAL为非模态 ! o* R0 z' c+ J4 S& H5 r
MODAL X_CURPOS Y_CURPOS Z_CURPOS; MODAL 为模态 ( W: A" T5 l- D# R
******************************************************** + @6 S1 ?% r- L# Y1 v9 M
NEW_LINE_IS $ ; % Z( d4 h% ?; i% r0 F, f' c
IF_SET (FlagSeq _EQ_ NO);IF_SET为判断语句
5 {/ d. v8 L. J, a8 zOUTPUT \J;OUTPUT为输出内容
- i9 F5 f! k* n( L5 _$ ^% c9 ?( a+ g******************************************************** + p: S3 I8 l$ j9 h8 D, z
LINEAR MOTION;直线运动代码转换
) t8 h" H& C% i, M' l6 a  uOUTPUT $ ;
5 \) Q+ y* r  e+ `, w% @7 eIF_SET (LIN_MOV)OUTPUT " " LIN_MOV; END_IF ;
3 y+ |& [/ Y! z/ D5 Q1 O- I! FIF_SET (CUTCOM_ON) OUTPUT " " CUTCOM_ON " D" CutterComp ; END_IF ;
2 F, V$ t% |- \. ]# mIF_SET (CUTCOM_OFF) OUTPUT " " CUTCOM_OFF ; END_IF ; - ^$ s" H3 c  H* t
IF_SET (X_CURPOS) OUTPUT " X" X_CURPOS ; END_IF ;
  Q: r, I2 a! B) @9 m
; q$ Q& \8 r  L' [/ L(如果我们要在NC程序中加输出刀具半径说明的话,可以定义一个FORMAT (COORDINATES)变量TOOLR,然后在TOOL CHANGE:的地方加上即可。)
; s# Q( O& }7 x
* x; W  y6 e" {' p) ?/ f; |TOOLR=0.5*DIAMETER_; DIAMETER_为系统变量
$ W8 _' z. p) p( ^- z& n* l# xOUTPUT $ "TOOL DEF " CURR_TOOL " L+0" " R" TOOLR;
4 i" ^! I7 o$ [: ^6 h$ D: z: S% P1 F2 c3 r0 v  |0 E
(如果我们要在NC程序中输出符合Heidenhain数控系统的圆弧,可以在CIRCULAR MOTION:中改为:SET_ON X_CENTER Y_CENTER;) $ `$ e. ?; u' ~. z" _9 v7 r

# j8 J. @% a( ?; H# E0 \OUTPUT $ "CC"; CC为Heidenhain中的圆弧中心符号
9 B" d! v- \; ~' B  j1 bOUTPUT " X" X_CENTER ;
" |" I1 d5 F, b5 |5 x6 v$ \. }OUTPUT " Y" Y_CENTER ; 7 E# n/ `: x& ?5 @! N
END_IF ;
4 }! p& U5 @$ dFlagWC = YES ;
2 V4 w' a* ]- ~9 D! p8 GOUTPUT $ ; 1 E, F& V; X6 @
IF_SET (CIRC_MOV) OUTPUT "C"
5 H* t6 S  x% D9 m5 \  S3 R& X- {1 D+ |6 H2 g& ~5 W
将修改和编译后的hnc.def和hnc.dex两个文件,放到Cimatron安装目录\var\post中,在生成输出数控程序时,就会出现hnc后置处理文件的选项,选择该文件就会生成Heidenhain控制系统的数控程序。
6 D" D. z% @) o$ m4 u' ^. U# F# x# Y+ z
下面是用该后处理生产的NC代码,其他系统也可以按需要修改,一般修改OUTPUT后面的部分即可。
: o4 \4 R8 V1 }0 M9 g! I2 M' z0 J' o3 E: }* A& I8 ^. R
0 BEGIN PGM NCNAME MM
$ F: ~$ k7 m& V0 L, o1 BLK FORM 0.1 Z X+0 Y+0 Z-50 0 b! ?% I2 i1 E+ v0 k, T% Q3 K
2 BLK FORM 0.2 X+70 Y+160 Z+0 % Y3 Z, I, h" p: F3 O) e1 W% Z! K
3 TOOL DEF 1 L+0 R3.
, n% N; e( X4 f* X9 Z) ?) r7 P4 TOOL CALL 1 Z S1000
  q3 s  c3 H0 K6 J' ~3 R! Y5 M6
) i, T& `: H# o* X% M; f; a/ d6 M03
$ f0 Y- h# u! a3 H  L- q7 M09
" j: ~6 O4 R, e5 b% A4 ~/ j8 L X-5 Y+76.59 Z+50 F 5000
0 b% f& y& ~! u; s2 [  B9 L Z+1 F 5000
. y( ?: ?) }; H7 e# P5 L. V9 j; f3 f. `6 [6 h5 @% ^9 C& Z4 T
13 CC X+0 Y+125.241
4 n* Y7 k, P4 m7 N  W5 c14 C X-2.121 Y+127.362 DR- * `+ b4 ]5 d; H7 W& W6 e" ?
15 L X+22.879 Y+152.362 6 t5 P. \( g. v! f5 C
6 Z0 q: X  O9 t+ e' |3 J4 H
38 CYCL DEF 1.4 DWELL 3 D/ s1 Q8 U  q! K; ?, X1 v
39 CYCL DEF 1.5 F 350
# F, l6 B  j& u2 p+ `8 p# `/ c40 L X+10 Y+20 F 5000 5 d5 O$ j% j: o5 r* Y* u! g+ g
41 L Z+3 F 5000 - w. E" n( V+ m% b" T, k; }2 g* ?9 S
42 CYCL CALL
& r  s" ]+ c7 o: @4 j: ^% j43 L X+40 F 5000 M99
% M, q7 F8 `$ F6 p" O
- r% h- ~0 L* }: h$ ?47 M30 & V, s( K. z3 n! k& T$ {
5000 END PGM NCNAME MM , |( Z/ R8 G+ Q" n, f

. U+ W: ~4 B3 S5 x7 s( a# g) ~2. 用IMSPOST定制Heidenhain数控系统后处理
: {) C" }8 c) W3 F  S& o6 g
9 v% k% ?; X, T利用IMSPOST后处理可以非常方便地对相应的数控系统进行设置,IMSPOST提供了如Funuc、Siemens、Heidenhain和Mazak等数控系统的后处理程序,提供了宏程序功能,能处理绝大多数其他CAM软件的刀位文件。 1 K. ]  ^6 U+ Q: Q

1 ]/ p: X( f* Z$ l, R定制Heidenhain数控系统后处理,可以新建一个库文件,也可以在已有的库文件上进行修改。根据我们使用的机床类型,选择了对Heidenhain407.lib库文件进行修改。打开Heidenhain407.lib文件,将End of program的代码设为M30,如图2所示。同样地,再将DRILL CYCLES中的Depth Format设为inverted sign(+/-)。然后在主菜单上选择USER→MULTI HOME,输入G54,将加工坐标系的原点由机床原点改为工件原点,保存后形成新的后处理文件。 - i" O7 D1 G. F: L

9 V4 _: R% W  [  C2 @. D7 {( ^: h% ~3 M
图2 Heidenhain数控系统后处理功能设置[/ALIGN]在IMSPOST中不但可以定制后处理文件,也能用定制后的后处理文件把刀位文件转换成数控程序。例如,我们首先在Cimatron中将刀具轨迹生成apt文件(需要把apt.def、apt.dex两个文件放到Cimatron安装目录\var\post中),然后在IMSPOST主菜单中选择Execute→Post process,在图3所示的弹出窗口的Input栏中选择要转换apt文件,默认Output栏中的文件名,在Input type栏中选择CIMATRON类型,然后点击Go,窗口就会显示转换进度。利用这个软件工具,还可以转换如CATIA、DELCAM、EUCLID、PTC、ug等其他CAM软件产生的刀位文件,注意需要在Input type栏中选择对应的类型。 1 A: A2 W4 D$ Q8 Q# _) m2 Q+ k

6 n: e2 E) ^$ @+ g3 V" t  V# \, }* o  s/ p; Z/ o
图 3 刀位文件转换成数控程序的窗口[/ALIGN]虽然IMSPOST是IMS公司的通用后处理软件,但Cimatron软件与它有较好的集成,在Cimatron中输出数控程序时可以直接进入到IMSPOST环境中,而不需要先生产一个刀位文件,再进行转换,限于篇幅关系,本文不再展开论述。 ' n/ K. j$ a5 r8 r3 {1 j: n; @
' N* P0 ]: p7 l
利用IMSPOST的宏功能可以开发出用户需要的其他要求,如要求增加输出刀具信息,我们可以用主菜单General→Macro operation选项建立一新的宏,如图4所示,添加内容后点Apply。 6 z4 t4 }  f- y' i

2 j" v0 ]" L. q* Z9 U: l+ o: h6 h
5 {, [: Q/ @6 ]0 s! R* P5 x8 ~& Z4 `图 4 IMSPOST宏功能定义窗口[/ALIGN]其中CLDATAN.1 为apt文件中TOOLINF/"DR2"、2、4.0、0.0、30.0、15.0的"DR2",CALL SEQNO/ON为输出序号等。利用该宏可以输出如下NC代码:
7 C7 S5 @  g" J8 t7 V; j/ ?) B( Y' \4 a! x3 ^9 w6 |4 I3 z
2 {8 K8 y' u9 U3 i2 l1 e/ V3 g: e" N
; DRILL
8 B" J, X+ `- q# I2 Q% g# t3 ];(TOOL_NAME IS DR2 TOOL_DIA IS 4.0000);利用宏产生的注释 * V: `9 p, Y: r4 S
20 TOOL CALL 2 Z S1000
; U- d- O+ i: M; J- A$ Q21 L X+20. Y+9.862 F5000 M06
! K  e; k5 T; A( n/ ~  a8 D22 CYCL DEF 1.0 PECKING 8 d7 z+ l5 A; F$ X" j! h
5 u( C# T/ I+ @2 Y! i
/ ^, a& n% K- i* {
四、结束语   @; `. t$ g8 Y" ^. s
, U" b* e- W. X
Cimatron软件为用户提供了功能强大的通用CAD/CAM系统,但目前用户对其后置处理程序的使用比较陌生,用户在使用软件时由于不了解情况,没有对后处理文件进行适当修改,导致不能生成符合要求的NC程序,在进行手工修改时,如果没有全部更正,很可能造成事故。用本文介绍的两种方法生成的NC数控加工程序,经实际操作使用验证,完全符合要求,希望对有关人员有所启
发表于 2013-1-26 21:02 | 显示全部楼层
版主你好!这是针对cimatron it的吧,E的没用过。各个数控系统相应的有很多lib文件,请问根据什么选择相应的lib文件呢?
回复 支持 反对

使用道具 举报

发表于 2013-4-16 20:19 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
回复 支持 反对

使用道具 举报

发表于 2013-12-16 17:27 | 显示全部楼层
看不懂        
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2025-7-1 00:51 , Processed in 0.214844 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表