平床身的车床,用LCYC95车内孔是底孔是45,第一刀总是从中心开始,轮廓子程序最小的位置直径是45,第一刀从中心开始车,退刀时X轴往正方向退到45的位置,再退Z轴,第二刀开始动作是正常了,但起始位置还是中心。请教大家是什么问题?
车外圆时正常,车端面时也不正常,第一刀总是以Z0开始,如果有正的尺寸就会一刀切过去。
循环文件传下来一步步对照,有几个位置看不懂,要请教了。%_N_LCYC95_SPF
;$PATH=/_N_CST_DIR
;V02.03.01 24.03.99 Sca Abspanen_fuer_802S
R281=2 R255=1 R256=1 R220=R105 R250=0 R257=-1
R261=R110 R262=R110 R265=R106*R281 R266=R106 R275=0 R258=R108 R278=0 R279=0 _BTA="L"
N10 _AHE=0 _RFC=0 _KT[0,0]=REP(0)
IF R105<1 GOTOF _FEHL1 IF R105>12 GOTOF _FEHL1 IF R105<5 GOTOF _MA1
R220=R220-4 R256=2
IF R105<9 GOTOF _MA1
R220=R220-4 R256=3
_MA1:IF R220==1 GOTOF _MA2
_BTA="P" R250=1
IF R220==2 GOTOF _MA2
_BTA="G" R250=0 R257=1 R261=-R261 R265=-R265
IF R220==3 GOTOF _MA2
_BTA="N" R275=1 R257=1 R250=1 R261=-R261 R265=-R265 R262=-R262 R266=-R266
N21 _MA2:CONTPRON(_KT,_BTA,_AHE)
N22 CALL _CNAME
N23 EXECUTE(_RFC)
N25 IF _RFC==1 GOTOF _FEHL4 IF _AHE>0 GOTOF _FEHL3
IF R250==1 GOTOF _MA30 IF R257==1 GOTOF _MA30
R280=_KT[0,1] R220=1
_WIKT:IF _KT[r220,8]==0 GOTOF _MY30 IF _KT[R220,8]<90 GOTOF _FEHL3
_MY30:R220=R220+1
IF R220<=R280 GOTOB _WIKT
_MA30: R260=_KT[0,5] R220=R280 R259=_KT[R220,6] R221=_KT[0,5]-_KT[R220,5]
IF R250==0 GOTOF _MA3
R259=_KT[0,6] R221=_KT[0,6]-_KT[R220,6] R260=_KT[R220,5]
_MA3:IF R221>0 GOTOF _MA4 IF R250==1 GOTOF _MA31
R262=-R262 R266=-R266
GOTOF _MA4
_MA31:R261=-R261 R265=-R265
_MA4:R259=R259+R261+R265/(2-R250) R260=R260+R262+R266 R268=_KT[R220,6]+R265/(1+R250) R269=_KT[R220,5]+R266
IF R256<>2 GOTOF _MY21
N100 G0 G90 G60 X=R259*R281 Z=R260
_MY21:IF R256==2 GOTOF _SL1
IF R108==0 GOTOF _FEHL2
R223=R280 R220=_KT[R280,6-R250] R221=ABS(_KT[0,6-R250]-R220)
N700 R222=R221/R258 R254=TRUNC(R222)
IF R222==R254 GOTOF _MY1
R254=R254+1
N701 _MY1:R258=R221/R254 R251=R223 R267=R251 R264=R[262-R250]/ABS(R[262-R250]) R270=R251 R221=R258*2+R110
R271=R[265+R250] R272=(1-R250)*R266 R263=R[259+R250]
N703 R[279-R250]=TAN(ABS(R109))*ABS(R221)*R[262-R250]/ABS(R[262-R250])*(1+R250)
IF R250==1 GOTOF _AFPLAN
N100 G0 G90 G60 X=R259*R281 Z=R260+R279
GOTOF _SCHRUPP
N100 _AFPLAN:G0 G90 G60 X=(R259+R278)*R281 Z=R260
_SCHRUPP:IF R255<>1 GOTOF _SCH1
R263=R263-R[265+R250]/(2-R250)-R[261+R250]
_SCH1:R263=R263+(R257*R258) R[252+R250]=R263+R[265+R250]
_MA41:IF _KT[R251,6-R250]<>_KT[R251,4-R250] GOTOF _MA42
R251=R251-1 R270=R270-1
GOTOB _MA41
_MA42:R220=ABS(R[259+R250]-_KT[R251,6-R250]) R221=ABS(R[259+R250]-R263) R222=ABS(R[259+R250]-_KT[R251,4-R250])
IF R220<>R221 GOTOF _MA5
R[253-R250]=_KT[R270,5+R250] R273=R251+1
GOTOF _SPFAHR
_MA5:IF R222>R221 GOTOF _SPRECH
_SPSUCH:R251=R251-1 R270=R270-1
GOTOB _MA41
_SPRECH:R224=_KT[R270,2]
R273=R251
IF R224==2 GOTOF _SPKREIS IF R224==12 GOTOF _SPKREIS IF R224==3 GOTOF _SPKREIS IF R224==13 GOTOF _SPKREIS
R224=ABS(_KT[R270,6]-_KT[R270,4]) R225=ABS(_KT[R270,5]-_KT[R270,3]) R226=ABS(_KT[R270,6-R250]-R263)
IF R[225-R250]<>0 GOTOF _MAY6
R[253-R250]=_KT[R270,5+R250]
GOTOF _SPFAHR
N704 _MAY6:R227=R226/R[224+R250]*R[225-R250] R[253-R250]=_KT[R270,5+R250]+R227*R264
GOTOF _SPFAHR
_SPKREIS:R220=R270
R276=_KT[R270,10] R277=_KT[R270,9] R221=_KT[R270,6]-R276 R221=R221*R221 R222=_KT[R270,5]-R277 R228=R222*R222+R221
N802 R223=R263-R[276+R250] R229=R223*R223 R230=SQRT(ABS(R228-R229)) R222=_KT[R270,5+R250]-_KT[R270,9+R250] R231=-1
R228=R222*R222+R221 R223=R263-R[R251+3]
IF R250==0 GOTOF _MA66 IF R257==-1 GOTOF _MA66 IF R222>0 GOTOF _MA6
R231=1
GOTOF _MA6
_MA66:IF R222>=0 GOTOF _MA6
R231=1
N710 _MA6:R[253-R250]=(_KT[R270,9+R250]-R230*R231)
_SPFAHR:IF R250<>0 GOTOF _ZUPLAN
R253=R253+R266
N110 G1 F=R111 G90 X=R263*R281+R265 Z=R260
N113 G1 G90 Z=R253
GOTOF _NACHZ1
_ZUPLAN:R252=R252+R265/R281
N110 G1 F=R111 G90 X=R259*R281 Z=R263+R266
N113 G1 G90 X=R252*R281
_NACHZ1:IF R273<>R267 GOTOF _NZ10
R274=(_KT[R273,10]-_KT[R273,6]) R275=(_KT[R273,9]-_KT[R273,5]) R274=SQRT(R274*R274+R275*R275)
R221=R268*R281-R265 R222=R269
IF R250==0 GOTOF _NZ1
R221=R268*R281
_NZ1:IF _KT[R273,2]==2 GOTOF _NZ2 IF _KT[R273,2]==3 GOTOF _NZ3 IF _KT[R273,2]==12 GOTOF _NZ2 IF _KT[R273,2]==13 GOTOF _NZ3
N115 G1 G90 X=R221 Z=R222
GOTOF _NZEND
N115 _NZ2:G2 G90 X=R221 Z=R222 CR=R274
GOTOF _NZEND
N115 _NZ3:G3 G90 X=R221 Z=R222 CR=R274
GOTOF _NZEND
_NZ10:R274=(_KT[R273,10]-_KT[R273,6]) R275=(_KT[R273,9]-_KT[R273,5]) R274=SQRT(R274*R274+R275*R275)
R221=_KT[R273,6]*R281+R265 R222=_KT[R273,5]+R266
_NZ11:IF _KT[R273,2]==2 GOTOF _NZ12 IF _KT[R273,2]==3 GOTOF _NZ13 IF _KT[R273,2]==12 GOTOF _NZ12
IF _KT[R273,2]==13 GOTOF _NZ13
N117 G1 G90 X=R221 Z=R222
GOTOF _NZNEXT
N117 _NZ12: G2 G90 X=R221 Z=R222 CR=R274
GOTOF _NZNEXT
N117 _NZ13:G3 G90 X=R221 Z=R222 CR=R274
_NZNEXT:R273=R273+1
GOTOB _NACHZ1
N119 _NZEND:G0 G91 X=R261*R281 Z=R262
IF R250<>0 GOTOF _RZPLAN
N120 G0 G90 Z=R260+R279
GOTOF _SPE
N120 _RZPLAN:G0 G90 X=(R259+R278)*R281
_SPE:R267=R251 R268=R252 R269=R253 R255=R255+1
IF R255<=R254 GOTOB _SCHRUPP
IF R250==1 GOTOF _RZPL IF R256==3 GOTOF _SL1
N180 G0 G90 X=R259*R281
M17
_RZPL:IF R256==3 GOTOF _SL1
N180 G0 G90 Z=R260
M17
N300 _SL1:G0 G90 X=_KT[0,6]*R281+R261*R281+R265 Z=_KT[0,5]+R262+R266
_SCHLICHT:R222=42 R221=R[260-R250]-_KT[0,3+R250] R221=R221/ABS(R221)
IF R250==1 GOTOF _SL2 IF R221*R257>0 GOTOF _EING42
GOTOF _EING41
_SL2: IF R221*R257<0 GOTOF _EING42
N310 _EING41:G1 G41 G64 F=R112 X=_KT[0,6]*R281 Z=_KT[0,5]
GOTOF _SL3
N310 _EING42:G1 G42 G64 F=R112 X=_KT[0,6]*R281 Z=_KT[0,5]
N320 _SL3:CALL _CNAME
N330 GOTOF _ESL
_ESL:IF R250==1 GOTOF _RZSLP
N350 G0 G90 X=R259*R281
N360 G40 Z=R260
M17
N350 _RZSLP:G0 G90 Z=R260
N360 G40 X=R259*R281
M17
_FEHL1:STOPRE
SETAL(61002)
M17
_FEHL2:STOPRE
SETAL(61610)
M17
_FEHL3:STOPRE
SETAL(61605)
M17
_FEHL4:STOPRE
SETAL(61606)
M17