|

楼主 |
发表于 2015-12-31 08:58:24
|
显示全部楼层
来自: 中国台湾
網路文章截錄下來很符合現狀 ~ 有高手解說嗎- s% v" r2 N5 W% I
! y: T' B ?: P0 H% j/ C! g$ V
" y, r Q5 W# q
為何在NC 加工時,機器會自己多跑一個大的圓弧,造成工件過切 ?
" d5 Q4 x. U- |6 B1 D4 I/ k
: _ A/ N( {& m6 h7 Z. q- eA:; o( I/ j* b2 `2 r& c' ^
6 d( ~3 c# u# i, a( k
1.說明在MasterCam 所產生的加工路徑中,若有很小的圓弧,因為CNC機器的誤差設定值較大時,可能會產生以上的現象。
/ a- M+ A# O3 W/ S) e( D
# O' f- X: ?1 I$ z2 K( ~$ C9 j2 ]! h
2. 若反轉NC 成NCI 時,因有效小數位數為三位,若再從此NCI轉為NC時,亦有可能產生以上的現象。 $ E" t0 E9 z" w
0 u) } z; W% Q) `
方法: 2 w2 K7 w& M7 T' ]! S8 z/ N
8 ~3 r6 B6 y9 x0 B8 i: v3 Q1. 在PST檔中, 在 rotstrt 變數之下面增加以下三行:
, O N4 s) F3 @" z6 N% I* D$ v" b4 k
arcmin : 0.01 c 設定最小圓弧半徑
7 m! j+ S4 C( g, \' q' J& u6 S. f# z" L; @, B
arclen : 0 c 圓弧長度值
& v) m) ^0 p+ N6 g5 Y+ G' }7 s Y# j0 @0 Q
lenmin : 0.05 c 設定最小圓弧長度值。
& `1 f( V/ j5 B& d/ U2 Y$ v2 C$ l6 B5 N6 Z0 y7 x0 a
2. 將pcirm # circular interpolation 這個副程式以下的內容全部改為以下的內容:
, q% j. _4 ~- M
8 h/ {# o, m, k- Z! ]0 D. w* L if arcrad <= arcmin, n, "G01", x, y, z, pfr, e
9 J1 k# n1 c8 h9 U- q
% k7 E- p: T r5 i$ ] else, pcirmm
8 Y! L$ s* Y! ~$ ^& N! L+ ^. i
* P; r2 h( D& G n2 d3. 再增加一個副程式在 pcirm 這個副程式之後: ! ^* l0 R2 G. b/ Y4 P. ]; _
; e) ^' Q; n2 [7 g* C) m0 ?
pcirmm ### add for arc length check
& y: w5 W% e! W( N2 P* ]
/ V# A* d, F9 l. T absswp = abs( sweep )
+ s+ y( A) L+ x2 ?
k# P0 }( \; q+ w- A$ F. m5 W arclen = 3.141592 / 180 * arcrad * absswp
3 x( j- F5 O6 K' P* X
- ^; i) W6 R. I8 j4 h' N if arclen <= lenmin, n, "G01", x, y, z, pfr, e 5 [# t" E8 x% v9 N* Q, o( M) l
" s% B2 ~* @/ Y! A
else, n, sgplane, sccomp, pccdia, sgcode, x, y, z, parctyp, pfr, pcan, e ) a% g( Y9 ?0 N: E3 X, G( J
; E" U+ h+ m- ?9 c+ e' s: a4. 以後只要圓弧的半徑小於 arcmin,貨圓弧弧長小於 lenmin,則此段會以 G01來切削。( @! H& n+ K8 g8 z
|
|