找回密码
 注册会员

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 253|回复: 0

PowerMILL后处理

[复制链接]
发表于 2011-6-18 09:25:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转磨削论坛

您需要 登录 才可以下载或查看,没有账号?注册会员

×
对于后处理格式,一般的用户有三个层次的需求:
& }' I" p+ h! E一、powermill自带的后处理中有适合自己机床要求的,不过要修改、增删些代码。
  c0 f8 V% l/ i  o二、没有适合的,需要改写后处理。6 r6 U, y9 f% w
三、机床的代码格式完全与普通G代码格式不同,需建全新的后处理。
& f" C5 S- B# N+ E. ]本文只针对1、2种需求来进行讲解,至于第三种则是高级篇的范畴了(哈哈,其实我也不知道,还没做过呢)7 t( i/ N' F" }# B" ^4 S; {
现在开始准备工作:+ P  s+ W$ F! \" h
1、以不同的控制器试着处理几个G代码文件出来,然后和自己机床的代码进行比较,选一个最接近自己的。6 T$ n# \% i% Y8 d' [+ x
2、打开ductpost\dp-index.html,准备有问题就看帮助。* D: U- R/ f" o  N$ A# G( B
3、运行:ductpost -w [控制器类型] > [控制器类型].opt ,从而生成OPT文件,这个选最接近你机床的控制器。如:ductpost -w hurco > hurco.opt 。 这时就可以用文本编辑器来打开这个opt文件了:
4 U+ g! K6 C3 j( J% h1、程序头、程序尾的改写:
4 c" d3 n- I; D4 u0 `7 k这个在以下的定义里面:
1 @# b1 b) F; S  B. _5 |define block tape start
7 d3 W. E3 {; w- G' ]********************
6 ~5 G0 A% ]& c, T1 kend define" B/ o" V2 R( [) {: C
define block tape end3 z: H! g' h+ N
*******************
; g1 m* Y; z9 xend define
, ~" E' _7 o6 f9 h% u你可以根据自己的需要添加,如:
4 `5 n3 W! W5 I' ]define block tape start( e2 B$ R) h# b9 n% X' _) ~
"%"+ M9 C8 g; q1 B3 x$ v. @
N ; "G17G90G80G40G49"
9 `! y2 L! M9 F' }( ^end define
3 V- e+ s3 I! S# \+ x: H& K4 o( ]define block tape end6 u- a! a0 |2 j" w0 r! {9 X: X
N ; "M05"" |7 m, F+ t! Y. }. F6 Q
N ; "M30"
  |# y; s8 d8 z( r  tend define
  q  S) g0 Q0 g+ W$ \/ ~/ b不过注意这种引号方法优点是简单明了,但控制器只是把它当字符处理,而不能以模态存在,具体可参见其它说明。
6 z  \9 Z9 j: \* {) Y2、是否需要N行号?8 B; Y9 N6 B( N5 M( G! v
%
5 w- a3 N7 G* q- u* _+ X- o7 T$ I:0001
/ O3 d6 Z9 {2 WN10G28G91X0Y0Z0
! t7 k" t+ f2 S! x+ V! O* F0 p5 KN30T1M6
* o/ M5 b3 v* Z  Z% Z# l* f$ DN40G0G90X-25.Y-40.S800 M3
4 _4 g5 {1 ~1 \! {  p" N如这上面的N10、N30、N40,另外行号的起始、增量、最大都可以定义。如果不想要行号,可修改为以下值:0 a6 R6 ^2 }/ j) T) T4 |# L' Y8 s9 u
define format ( N )
) A; _( s8 q6 p# f  q3 V1 e7 R, c* Unot permanent8 Z1 R' J. N# w, A. {' p$ m8 g
end define4 O# p) |# n0 r( i
3、是否需要Message?# p$ I% K6 g* l9 y3 R1 i
N60( MSG, Toolpath Name: ET): i; I. H' q2 z: u' B4 A
N70( MSG, xyzxyz_cut_1 ET). }4 \( y) o: l9 b+ w
N80( MSG, Output: ET)
& v$ J8 m( i3 H- I; F8 i2 @- a. p0 }N90( MSG, UNITS: MILLIMETRES ET)
2 V& S* p( k- l# s9 _" tN100( MSG, TOOL COORDINATES: TIP ET)
# E6 `4 G: _( H: a+ O/ YN110( MSG, LOAD TOOL ET)
( S6 ]; T% `. m6 T% R$ `# `上面的信息,可修改为你需要的,具体参见帮助。也可选择不输出,如:; R3 k& J( \1 O, ~$ \% C& }
message output = false
* @3 i; e6 k$ G- V: U4、圆弧的输出格式:
( p1 w% g. o& f* E/ X这个需要讲一下,输出R的就不讲了,专讲I、J、K的输出。大致有三大类:* b1 l  j; l- y: E3 [1 e+ N3 M5 W
a、I、J输出为圆心的绝对坐标值。
1 Q7 h0 J7 m( _b、I、J输出为相对坐标值,具体值为:圆心坐标值-圆弧始点坐标(常用)- R# `0 `9 j& L5 C
c、I、J输出为相对坐标值,具体值为:圆弧始点坐标-圆心坐标值7 s9 D1 F6 f& N$ q- z$ L
所以这个就要看你机床格式来具体设置了,修改以下值为你所需:8 B! y2 C- g6 x0 T& s6 n( k
incremental centre = true (相对,反之false绝对)4 I$ M$ h5 C1 c" e0 ?
相对有两种,所以:
$ N* o" Q: q' kscale factor = 1 或 -16 Z+ f9 s# N! Z7 x. ]5 B
另外有些机床不能输出360度的圆弧,这时需要将其分为几段输出:
: g! L# v( n0 y$ U9 Dfull circle = false
" f: K" _- [5 S9 m- d5、换刀的格式:3 p3 |, K7 r% q# V  V5 p5 `% G/ [
如:
5 E* b& K6 f% {! L5 B0 i7 ?+ g% Odefine block tool change first! b! s0 M( x4 x6 Q$ m
N ; OP ; change tool ; T ToolNum
8 @  |/ H3 U  i- L" H2 b  cN ; "G48"3 {- P" M. O: A1 {6 [, Q8 K
N ; G1 0 ; Z FromZ" T2 s) ?4 ]' t8 g3 t$ D
end define. a; u8 H, L, l& S" `
里面可自己添加你的机床换刀时所需的代码,如打开刀具长度补偿。! z1 w+ ^  R  o4 e
6、快速运动、直线运动、圆弧运动的代码:
" T  |  f' a2 T参见:
' ?7 s' D! [2 @, j! M* f/ m: k0 Tdefine block move circle
  P) u, ^# \4 u5 `% ]5 YN ; G1 ; G2 ; G3 ; X ; Y ; Z ; I ; J ; K ; F ; D
' C* N- K1 W  |+ H6 y( R/ m* ]end define
9 ?; M7 y5 m; _+ s; {( @* d+ tdefine block move linear" @& G5 Q. ?! K/ X
N ; G1 ; G2 ; G3 ; G5 ; G6 ; X ; Y ; Z ; ; T ; S ;
: D/ }4 S% q) HM1 ; M28 H9 T! d  ^. p) x8 ?
end define
: a( _' m# h% z% a5 `3 K% |6 udefine block move rapid
: w) M/ f- q. X. ]* mN ; G1 ; G2 ; G3 ; G5 ; G6 ; X ; Y ; Z ; T ; S ;
( S/ T9 @1 E/ T3 q: s$ DM1 ; M2
8 l7 g( y/ g- o) Y, Yend define
/ q# T* C4 {# N0 x) O你也可在帮助文件的指引下,修改上面的代码,如:不想要每次输出G17之类,可以删掉G3。。。当然修改前要了解清楚该代码是做什么的,另外注意备份,随时恢复。
+ G* q/ S7 \& B+ N: L7、多轴:
6 c4 z1 X% |  A; x- h& Dpowermill这点做的非常好,如4轴的几种方式、5轴的几种方式都有代码可参考。如:在X轴加一个圆盘A,只需添加、修改以下几行:
* e7 D3 v" t0 u& rFourth rotary table axis :- ( A. rotating about X. )( f1 |& F  X; [, |" }
define format ( A )) _( l8 C7 q( M, E$ V3 o; O" G
decimal point = true; x. S5 L9 a6 A/ ~( x. [0 n
decimal places = 3
/ h% C  V5 T! v& m8 A3 aend define
; a6 Q0 k# C7 E# ]word order = ( + A )5 Q3 b! Q: y( y  u
define keys% }2 N9 P/ ]3 k; _; G7 |9 a
azimuth axis not used7 e" @; j  u0 }% e
elevation axis = A
2 y1 ^2 ~( J. @5 m* Rend define
: Y; c' @- B7 z  Vspindle elevation rotation = false ## Default+ [  J3 s6 ]- T* {7 ~. L) n2 {
elevation units = degrees# P! E! l  G9 H/ X  [
elevation axis direction = positive* ]' R, t+ ^. r: i' _5 ^& D
azimuth axis parameters = ( 0. 0. 0. 0. 0. 0. )
# n5 m% P1 X+ televation axis parameters = ( 0. 0. 0. 1. 0. 0. )
& X% _' Q% H- T( [" `( Ddefine block move rapid. ?" i8 n  T4 p: G/ A8 @
N ; G1 ; G2 ; G3 ; G6 ; X ; Y ; Z ; A ; H ; M1 ; M2
8 y$ E+ l8 {' Q& s% x% _6 Bend define
( j/ l9 o& q& @. X! P' B$ S$ wdefine block move linear
: h, v) q$ a8 i# P5 t) y9 r4 xN ; G1 ; G2 ; X ; Y ; Z ; A ; F ; M1 ; M2
1 m; V  h( X- Hend define1 A& J  l" Y0 W  ~4 l0 p
文章关键词:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

中国磨床技术论坛
论 坛 声 明 郑重声明:本论坛属技术交流,非盈利性论坛。本论坛言论纯属发表者个人意见,与“中国磨削技术论坛”立场无关。 涉及政治言论一律删除,请所有会员注意.论坛资源由会员从网上收集整理所得,版权属于原作者. 论坛所有资源是进行学习和科研测试之用,请在下载后24小时删除, 本站出于学习和科研的目的进行交流和讨论,如有侵犯原作者的版权, 请来信告知,我们将立即做出整改,并给予相应的答复,谢谢合作!

中国磨削网

QQ|Archiver|手机版|小黑屋|磨削技术网 ( 苏ICP备12056899号-1 )

GMT+8, 2024-12-23 20:29 , Processed in 0.119006 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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