|
|

楼主 |
发表于 2015-12-31 08:58:24
|
显示全部楼层
来自: 中国台湾
網路文章截錄下來很符合現狀 ~ 有高手解說嗎
]* Q$ y% r8 S8 v: M
% I' @+ z m. d5 j' S; F5 b4 s% u1 K" I& j N" w. k( E
為何在NC 加工時,機器會自己多跑一個大的圓弧,造成工件過切 ? % m; |6 G9 o# U& X6 G
* a P" `" n C- Q
A:# w* L/ E6 _: H, H
' u* p; }- M. w* o& c1.說明在MasterCam 所產生的加工路徑中,若有很小的圓弧,因為CNC機器的誤差設定值較大時,可能會產生以上的現象。; ?% v" h$ p* h1 V
# K+ \* @4 n# d8 r# F# [
( S! X1 p+ Y! C8 [2 b" P# u2. 若反轉NC 成NCI 時,因有效小數位數為三位,若再從此NCI轉為NC時,亦有可能產生以上的現象。 & \# N% V2 ?5 W2 X4 i) T% B
3 W+ D& P: N0 _4 u E: ^8 G' ~2 z方法: & H. Y. U* l- ~5 m& W) t# o& x
% f" N I2 H% D3 Q( k
1. 在PST檔中, 在 rotstrt 變數之下面增加以下三行:
) W$ \+ \: |7 A/ c
! [/ p+ }6 q: x4 ] arcmin : 0.01 c 設定最小圓弧半徑
+ \/ A( o4 ]5 }$ T+ Q8 d$ C' ~, I/ Y: U
arclen : 0 c 圓弧長度值 5 |" Q' |+ F. k2 P H8 |7 P+ ?
" \( x! H; K+ U3 X# {/ ?. N
lenmin : 0.05 c 設定最小圓弧長度值。
' J: R ]5 }! O! ?* z! t5 a( J4 x9 a }: b s
2. 將pcirm # circular interpolation 這個副程式以下的內容全部改為以下的內容:
6 T2 w) }4 [ Z& t5 L( F) ]0 M
" o: V" u# C* f0 X if arcrad <= arcmin, n, "G01", x, y, z, pfr, e
; `0 u8 p) f# Y/ O# ~9 a* i
' f. [7 V3 V$ H* S% ] else, pcirmm z2 S& E. Q' ?' U
+ F) s$ R N2 @ m) {9 N
3. 再增加一個副程式在 pcirm 這個副程式之後: 4 Q* i3 R/ w( v- A7 v
' T" I8 f8 L" _/ l) ]# M# @/ W0 N pcirmm ### add for arc length check 1 r9 S- w# X4 b w3 I0 ~2 m) Z, C2 s
8 [% C" _& a! x% ?+ |" a0 |
absswp = abs( sweep ) # E) i, V/ t/ X- z, z
" p; W& i$ n7 f$ K
arclen = 3.141592 / 180 * arcrad * absswp
9 o* e; Z2 o1 \# j$ u2 U
! ^ G1 R; s+ k if arclen <= lenmin, n, "G01", x, y, z, pfr, e
* d& L" {/ C5 s/ R' L
( s# \# i+ h) G6 U0 q8 _, Y7 t else, n, sgplane, sccomp, pccdia, sgcode, x, y, z, parctyp, pfr, pcan, e
T* F- X* u- }6 G& c* U9 ^2 ?+ h. T+ l. Y/ @
4. 以後只要圓弧的半徑小於 arcmin,貨圓弧弧長小於 lenmin,則此段會以 G01來切削。
4 K7 B2 c' ~' J1 G" | |
|