CAXA今年推出了制造工程师2008版新品,它是具有卓越工艺性的
数控编程CAM软件,高效易学,为
数控加工行业提供了从造型、设计到加工代码生成、加工仿真、代码校验等一体化的解决方案,是
数控机床真正的“大脑”。CAXA制造工程师2008版新增加的“CAXA编程助手”模块是CAXA为数控机床操作工提供的,用于手工数控编程的小工具。它一方面能让操作工在计算机上方便地进行手工代码编制,同时也能让操作工很直观地看到所编制代码的轨迹。
qh
Ezv~ &pwSd 下面介绍“CAXA编程助手”模块的一些应用案例,本文主要介绍四种含各类循环及变量的代码读入案例。
$iQ>c6 }qfr&Ffh@ 1.单次循环代码读入案例
{#q']YDe` "sLdkd}dj “CAXA编程助手”支持如下带循环语句和变量的代码读入:
T!$7:% D =jD[A>3I %
1@IRx{v$ G90G54G00Z200
OJE<2:K X0Y0
9@AGx<S1 T03G43H03
.4={K)kz|F S800M03
H e]1<tx Z100
.d`+#1Ot( G01 Z100 F50
${'gyD X100 F300
Z&8
7Aj #1=10
H3{x;{.b #3=100
}_XW?^/8 WHILE [#1 LE #3] DO1;
];Whvdnv Z#1
}C>Q Y100
8>x.zO_.c> X-100
U`q[5U" Y-100
;ak3@Uee X100
J<DV7zV Y0
Wu)ATs} #1=#1+10
hZnT`!iFE^ END 1
+C7
1".i- X0
Pg[zRRf< Z20F100
b3b 4'l G0 Z200
Bc}<B:q%b M30
7'FDI`e[ %
2>Kq)Ii 43rM?_72 读入后结果如下:
N>`+{ >`*iM
;a!o$y *lv)9L+0 单次循环代码的读入
c5P52_@ i=_leC)rl 2.循环嵌套代码读入案例
7UHqiA`L $oE 4q6b 如下椭球面加工代码:
^7q=E@[e *pP"u::S %
nzy =0Ox[ G54G90G00X120Y0Z200
&n<jpMB T2 G43H03 M06
5X&<+{bX Z150
(Wr;:3i #20=120
zcJ]US #21=60
r0G#BPgdR #22=70
Af=%5% X0
j>&n5? #1=90
/og}e~q WHILE[#1GE0]DO2
wI>JOV7 #7=#22*SIN[#1]
XBhWj\`(T #8=#20*COS[#1]
&ukNzV}VW #9=#21*COS[#1]
)$q<"t\#P# #2=0
yG&kP:k< WHILE[#2LE360]DO1
{#QFDA #3=#8*COS[#2]
3FUZTX]Q1 #4=#9*SIN[#2]
9?D7"P+ G90G01X#3Y#4Z#7F300
d1e'!y}R5 #2=#2+5
ulfpop*2 END1
wdBytH6r. #1=#1-5
@usQ*k END2
([|5(Omd\ Z200
e"r'z
n M30
v ;MI*!E %
/p\Ymq 3+A 0O%0* 读入后结果:
gZM{]GQ
?^BsR 循环嵌套代码的读入
;YZw{|gsh miS+MK" 3.旋转指令代码读入案例
fH`1dU k`g+ 对G68的支持,代码如下:
vlIdi@V <eN>X:_N %
344,mnAd G54G90
8g>jz
8 T2G43H02
_Fl]zs< G00Z100
-D:J$d
6R< #1=0
H'gPGOd #2=0
P05_\
t #3=120
EVO5+ #4=60
h>mQ; L #7=360
4n3QW%# WHILE[#1LE#7]DO1
)\mklM9Z Z100
W\eB G17X0Y0
@1n0<V/ G68X0Y0R[#1]
:NbD^h)R X#3
f~Kln^ Z0
!YJdi~q
#2=0
XQj`KUO@ WHILE[#2LE#7]DO2
R$6Y\ *L[ #5=#3*COS[#2]
dUO~dV1 #6=#4*SIN[#2]
s #L1:L G01X#5Y#6 F200
U^pe/11)H #2=#2+5
}$qy_Esl END2
u x:,io #1=#1+30
gFDP:I/` Z100
S}Mxm2 X0Y0
D%^EG8i n. G69
NmB0CbB END1
>5^Z'!Z" M30
&OI=rvDmo %
z[t$[Qg -D!F|&$ 读入后图形显示:
Kq{s^G W!tP sPM
7ZZSAI 旋转指令代码的读入
O)9T|,
U @Wx_4LOhf 4.刀具长度及径向补偿变量代码读入案例
d=>5%$:v :hMuxHr 对于常见的轮廓导圆角加工,常使用
刀具长度和径向两个方向的补偿作变量,如下面的代码:
:~T:&;q0 W:5m8aE\ %
y|MW-|0=! O1200
:eIBK N00 T3 M6
#mllVQ N05 G90 G54 G0 X31.894 Y-59.862 S3000 M03
4uNcp0 N10 G43 H0 Z100. M07
hJd#Gc~*M N15 #1=0.0 ;(起始角度);
sXhtn'<v N20 #2=5 ;(角度增量);
a3O_8GU N25 #3=90.0 ;(终止角);
JpuW
!I N30 #4=6 ;(圆角半径);
0A1l"$_| N35 #5=5 ;(球刀半径);
8<]> q N40 #8=0 ;(轮廓线所在的高度Z值);
iicrRGp3 N45 WHILE[#1 LE #3] DO1; (循环直到#1小于等于#3时停止) ;
zb;'}l;+ N50 #6=#8-[[#4+#5]-[#4+#5]*COS[#1]] ; (深度) ;
wh*OD N55 #7=[[#4+#5]*SIN[#1]]-#4; (径向补偿);
(b{
{B$O N60 G10L12P1 R#7; (将径向补偿值#7输入机床中);
2iH,U N65 Z0.
W1:o2 C7 N70 G01Z#6
>Mvt;'c N75 G41 D1 Y-39.862 F1000
{Or|] 0 N80 X-41.788
dvL '>'g N85 G17 G2 X-62.788 Y-18.862 I0. J21.
P%/+?(? N90 G1 Y37.295
8AefgjE N95 G2 X-41.788 Y58.295 I21. J0.
sL\|y38' N100 G1 X31.894
MnX2sX| N105 G2 X43.894 Y46.295 I0. J-12.
S>"dUM N110 G1 Y-27.862
{X"X.`p N115 G2 X31.894 Y-39.862 I-12. J0.
ax3:rl N120 G1 G40 Y-59.862
C&5T;=<jKO N125 G0 Z100.
N`zHe*=[~ N130 X31.894 Y-59.862
*50Ykf N135 #1=[#1+#2];
,$}Q#q N140 END 1;
Zy!\=-dSm N145 M09
5:s]z#8) N150 M05
\DQ; v N155 M30
tXp)o>" %
o<g (%ncr Z2$-},i 用“CAXA编程助手”读入后,直接显示轨迹如下:
-_4! id ~Snw':
-_314j=`/ 8wy"m=>=b} 刀具长度及径向补偿变量代码的读入CAXA制造工程师2008版新增加的“CAXA编程助手”模块是CAXA为数控机床操作工提供的,用于手工数控编程的小工具。它一方面能让操作工在计算机上方便地进行手工代码编制,同时也能让操作工很直观地看到所编制代码的轨迹。本文继续介绍“CAXA编程助手”模块的三种含各类循环及变量的代码读入案例、啄式钻孔模拟和代码与机床单机通信应用案例。
d->b9 t 1&p>
v 一、三种含各类循环及变量的代码读入案例
PkVXn
BFEo:!'F 1.子程序调用支持案例
Zv-6H*zM6 {==Q6BG* b#y}VY)? “CAXA编程助手”支持宏程序的子程序调用,并能按机床模拟调用过程。
DX!$k[ ~cZ1=,P 例如主程序:
J`x9XWYw FCP5EN %
m#S ZI} O4
,%jJ
,G, G90G00Z50.
6XG+YIG6w Z0.0
nut7b G65P9130U80.0V60.0C10.0R12.0D21F130;
,>g
6OU2~6 G90G0Z50.
a%]p*X! X-100.0
5$#<z1M.& Z0.0
,J~1~fg89 G65P9130U60.0V80.0R10.0C8.0D15F90W1;
WI6er;D G90G0Z50.
jG^~{7# M30
# / 4Wcz< %
sV+>(c-$ '+eP%Y[W% 子程序:
C9nNziws P#0_ %
V*TG%V - O9130(SQUARE)
~Ep&:c4:D IF[#21EQ#0]GOTO5
P9'5=e@jB IF[#22EQ#0]GOTO5
awawq9)Y IF[#18EQ#0]GOTO5
l9jcoVo. IF[#7EQ#0]GOTO5
Hv=coS>g: #10=ABS[#[2000+#7]]
h!Q>h7 IF[#18LT#10]GOTO10
F-R`'{ ka IF[#3EQ#0]GOTO1
~q4y'dBy* IF[#3LT#10]GOTO10
ydFY<Mb(o N1 #15=[ROUND[#21/2*1000]]/1000
rvG qUmSUs #16=[ROUND[#22/2*1000]]/1000
XmnqZWB IF[#3GE#15]GOTO15
"s*{0'jo IF[#3GE#16]GOTO15
q{@Wn]!k IF[#18GE#15]GOTO15
Oh^X^*I$@ IF[#18GE#16]GOTO15
[:k'VXL IF[#23EQ#0]GOTO2
IM#+@vv G91G17G01G42X#18Y-[#16-#18]D#7F#9
-@73" w/ G02X-#18Y-#18I-#18
Rsulp#[' G01X-[#15-#3]
tb
i;X=5 G02X-#3Y#3J#3
X-duG*~ G01Y[#22-2*#3]
)CmuC@ Q" G02X#3Y#3I#3
a=J?[qrx G01X[#21-2*#3]
_x
\Ll?, G02X#3Y-#3J-#3
u,pm\ G01Y-[#22-2*#3]
YU"Am ! G02X-#3Y-#3I-#3
'L m
`L<` G01X-[#21-#15-#3]
55I>v3 w G02X-#18Y#18J#18
(r|T&'yK G01G40X#18Y[#16-#18]F[#9*3]
=MXF`k^} GOTO20
i" )_M|
N2 G91G17G01G41X-#18Y-[#16-#18]D#7F#9
ufJFS+? G03X#18Y-#18I#18
xvkof
'Q) G01X[#15-#3]
}iC~B} G03X#3Y#3J#3
01dx}L@hz G01Y[#22-2*#3]
s%:fB( G03X-#3Y#3I-#3
a~%ej.)l G01X-[#21-2*#3]
Y[H_?f=;% G03X-#3Y-#3J-#3
Dux`BKl G01Y-[#22-2*#3]
]`NbNr]K G03X#3Y-#3I#3
f4_\F/ G01X[#21-#15-#3]
A`r9"([-A G03X#18Y#18J#18
j@ "`!uPz G01G40X-#18Y[#16-#18]F[#9*3]
.
9
NS GOTO20
9,Mp/.T" \ N5 #3000=140(ARGUMENT IS NOT ASSIGNED)
*HC8kD a%$ N10 #3000=141(OVERSIZE OFFSET VELUE)
ky#6M?
\ N15 #3000=142(COMMAND DATA ERROR)
~L1O\V
i N20 G#27G#28D#29M99
8 N` $7^^ %
y((_V%F} d5%*^nMpY 只要将主程序和子程序放到一个目录下,用“CAXA编程助手”编程调用主程序,则主、子程序结合后的加工轨迹都能全部显现出来,并且可以进行模拟仿真。
/;0>*ft4 {aL$vgYT1
98]t"ny [ 子程序调用说明示意图2螺旋插补代码读入案例
g IKm G225Nz;Y* 对螺旋插补代码支持如下:
w(U/(C7R So^`L s;S %
)L!R~F
C T2 G43H02 M6
g-^m\>B G90 G54 G0 X0. Y0. S30000 M03
Jv<)/Km` G43 H0 Z100. M07
q+z\Y? Z0
]~zJ7I #1=10
pd1m/: #2=100
)eEvyU
WHILE[#1LE#2]DO1
{|gJC>f@ #3=-[#1]
>(rB[ZJ G1 X49.98 F300
>2:S v1T G17 G3 I-49.98 J0. Z#3 F1500
^zJ.W #1=#1+10
`|w#K28t" END1
"{k
)nr+7U G1X0Y0
8_m9CQ6 i G1 Z6. F4500
t/ 1NTa G0 Z100.
PPPwDsJ M30
wUeOD.;#F %
9/M!S[N9 h %s 读入后图形如下:
T/;hIX:R
<`3(i\-X 螺旋插补代码的读入3比例缩放代码支持案例
qlJOb}$ I [J`G`s! 代码如下:
Zsogx}i- B|=maz:_ %
WS/+Yl #20=70
\ Sby(l #21=30
55LF #22=40
ss{= ::# #23=-50.0
D:E_h #24=-30.0
Q$0%~`t #26=0
]M(f^ #30=4
sri#L+I #27=1
-C}59G8 (增量)
}hitU(5t0 G90G00G54X0Y0Z250
:"^<
aLj T2
4.B*B3 S1000 M03
;cn.s, X#20
ls\E%d #1=1
t)Q@sKT6 #7=#22
!#I/be] #8=#20
U_;J.{n #9=#21
=k=2~
j WHILE[#1LE#30]DO2
/VO@>Hoh #2=0
'?gIcWM #3=#8*#1 - #23*[#1-1]
V8$bPVps G90G00X#3
K=?F3tX^ Z0.0
nj0AO0 G51 X[#23]Y0.0P[#1]
7B\(r~f`t WHILE[#2LE360]DO1
i;zGw.;Q #3=#8*COS[#2]
qetP93N_* #4=#9*SIN[#2]
YIQ]]q8R!L G90G01X#3Y#4F300
K('lH-3wS #2=#2+10
d 4\E END1
y6Epi|8 #1=[#1+#27]
CPNN!%- G50
j~S!!Z] IF[#1 EQ 6] GOTO 50
M|#5gKXd #3=#8*[#1-#27]-#23*[#26*#27]
<GgtP55 X#3
? < O N50 Z150.0
.S'fM]_# #26=#26+1
UX'NJ1f END2
e_k
_ty` M30
$:E}Nj]{& %
if[o?6U4t d<Q+D1 读入后图形如下:
C$td{tM
)cKtc 比例缩放代码的读入
&<V_[Wh" hRa(<Z K 二、换刀模拟及G83啄式钻孔等的模拟
c`i=(D< uWB:"&!^ 利用“CAXA编程助手”的仿真线框仿真功能,可模拟程序的换刀及啄式钻孔,其中啄式钻孔可模拟出钻头上下往复的运动情况。
B+e_Y\Bu *Iwk47J ;a 例如:
Dyk[ug5 wz*A<iU %
B.mbKntK)R T27 M06
zRy5,,i5=[ G90 G55 G0 X0. Y0.
n*m"L|:ff S1500 M03
f;Bfh3 G43.4 H27 Z100.
!jnqA Z G99 G81 X-47.611 Y-12.969 Z-15. R0.5 Q1. F100
.5!sOOs$P X-31.57 Y5.119
=tc`:!$ X-17.918 Y-10.922
\l]pe|0EW X-6.655 Y23.208
+dgo-)kP(_ G80
j[/SXF\= G90 G0 Z40.
mfngbFa1 X0. Y0.
{Bq"$M!Y T26 M06
F!)M<8jL&9 S1000 M03
g|._n G43.4 H26 Z100.
]]uzl0LH Z80. M08
Z6R:
rq G99 G83 X-50.341 Y26.962 Z-13. R15.5 Q1. F100
{yHB2=nI X-3.925 Y49.488
P~\a)Szy X47.611 Y20.137
V%BJNJ G80
Sj0 ucnuHi G90 G0 Z100.
! 2Xr~u7a X0. Y0.
(~G5t(+ M09
2E3?0DL", M30
[W9e>Nsp0 %
K$<`4#i S!jF:Uc 上述代码中,一般CAM模拟只能做简单的G81钻孔动作,但对于G83这样的啄式钻孔则无法模拟,而“CAXA编程助手”则可以做上下往复的真实模拟。
UAx.Qq oEenm\ZI 三、代码与机床的单机通信
2q-:p8 k=T-L “CAXA编程助手”面向操作工级别,因此支持单机RS232通信,可直接在软件内完成“发送代码”、“接收代码”以及传输设置。方便数控操作工在计算机手工编程结束后直接将代码送到机床。
w>6"Sc7oc2 Zk/' \(5 以FANUC Oi 通信为例:
0q[p{_t`
#QTfT&m+G} rL%]S&M9 CAXA编程助手代码传输的快捷性FANUC标准通信
参数设置:
FDF3zzP0 g[EM]q,
abROFI5.L !F+|Y"c FANUC标准通信参数设置按上述设置,在传输通信操作过程中,需要在“CAXA编程助手”中先发送代码,然后在机床端接收代码。如果希望机床端先接收,在“CAXA编程助手”后发送,则需要将在“CAXA编程助手”发送参数中将“发送前等待XON信号”选项去掉(不打钩)。
M<{5pH(K hv$uH7Fz 另外在传输前,需要做一条FANUC传输线(或购买一条FANUC标准传输线),将计算机串口和机床串口连接起来。
;|>q zx ?w]"~ (文章来源:网络转载,作者:李秀)