Дипломная работа: Технологическая реализация системы подготовки обработки детали станка с числовым программным управлением
DISPOUT_OP1
G01
G91 X=NAPR*R298 Z=NAPR*R300 F=FGLDV
M17
%_N_PRIPUSK_Op1_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
PRIPUSK_Op1(INT NUM_PR,INT NAPR_PR, REAL FPR)
IF
(NUM_PR==1) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op1
G01
G91 Y=NAPR_PR*R213 F=200
ENDIF
IF
(NUM_PR==2) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op1
G01
G91 Y=NAPR_PR*R219 F=200
ENDIF
IF
(NUM_PR==3) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op1
G01
G91 Y=NAPR_PR*R225 F=200
ENDIF
M17
%_N_OTVOD_Op1_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
OTVOD_Op1(INT NAPR_OTV)
M17
%_N_CYCLOBR_Op1_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
CYCLOBR_Op1(INT N_CYCL,REAL FPR)
EXTERN
GLAV_DVIG_Op1(INT,REAL)
EXTERN
OTVOD_Op1(INT)
DEF
INT I_1,I_2
DEF
REAL STEP1,STEP2
FOR
I_1=1 TO N_CYCL
R309=I_1
IF
R282>0
IF
N_CYCL==2
G01
G91 A=(I_1-1)*(R276-R264)
ENDIF
IF
N_CYCL>2
STEP1=2*(R270-R264)/(N_CYCL-1)
STEP2=2*(R276-R270)/(N_CYCL-1)
I_2=ROUND((N_CYCL-1)/2)
IF
I_1<=I_2
IF
I_1>1
G01
G91 A=STEP1
ENDIF
ENDIF
IF
I_1>I_2
G01
G91 A=STEP2
ENDIF
ENDIF
ENDIF
GLAV_DVIG_Op1(1,FPR)
OTVOD_Op1(1)
GLAV_DVIG_Op1(-1,500)
OTVOD_Op1(-1)
ENDFOR
IF
R282>0
DISPOUT_OP1
G01
G91 A=-(R276-R264) F=R282
ENDIF
M17
%_N_DISPOUT_Op1_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
R306=R306+1
MSG
(" Поз. N "
<<R306<< " Прип.N " <<R307<< " Зуб.N " <<R308<< "Цикл.N " <<R309)
M17
%_N_Op_2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
;=======
Затылок =======
EXTERN
GLAV_DVIG_Op2(INT,REAL)
EXTERN
OTVOD_Op2(INT)
EXTERN
PRIPUSK_Op2(INT,INT)
EXTERN
CYCLOBR_Op2(INT)
EXTERN
VIX_Op2
DEF
REAL X_KOR,Z_KOR,B_KOR,A_KOR,Y_KOR,C_KOR
DEF
REAL NZ_FI[3],FPR[4]
DEF
INT NZ_ACT[3]
DEF
INT I_1,I_2
R306=0
MSG("
")
NACH_UST
Коррекция:
X_KOR=0;
Z_KOR=0;
B_KOR=0;
A_KOR=0;
Y_KOR=0;
C_KOR=0;
Подвод:
DISPOUT_Op2
G01
G91 X= 405.341+X_KOR G09 F=5000
DISPOUT_Op2
G01
G91 Z=-186.986+Z_KOR G09 F=5000
DISPOUT_Op2
G01
G91 B= 1.000+B_KOR G09 F=5000
DISPOUT_Op2
G01
G91 Y=-120.985+Y_KOR G09 F=5000
DISPOUT_Op2
G01
G91 A= 0.000+A_KOR G09 F=5000
DISPOUT_Op2
G01
G91 C= 0.000+C_KOR G09 F=5000
Перемещения
гл. движения:
R298= 86.987;X
R299= -0.026;Y
R300= -1.518;Z
R301= 0.000;A
; ПОЛОЖЕНИЕ
ЗУБЬЕВ
; У Г О Л Акт.зуб
NZ_FI[1]= 0.000
NZ_ACT[1]=1
NZ_FI[2]=
180.000 NZ_ACT[2]=1
; ДОПОЛНИТЕЛЬНЫЕ
СМЕЩЕНИЯ
; Смещение Подача
R203= 421.303 R209=
20 ;A
; П Р И П У С
К И
; 1проход Подача
2проход Подача 3проход Подача
R213=0.000
R231= 20 R219=0.000 R237= 0 R225=0.000 R243= 0 ;Y
FPR[1]=R231
FPR[2]=R237
FPR[3]=R243
; ЦИКЛИЧЕСКАЯ
ОБРАБОТКА
; СТАРТ Экстрем.
ФИНИШ Подача
R262= 0.000 R268=
-0.240 R274= 0.000 R280= 20 ;Y
R264= 0.000 R270=
-25.256 R276= -50.512 R282= 20 ;A
R260=7;Кол-во
циклов обработки
; О Б Р А Б О
Т К А
R306=0
DOPSM_Op2
FOR
I_1=1 TO 3
R307=0
IF
FPR[I_1]>0
PRIPUSK_Op2(I_1,1)
FOR
I_2=1 TO 2
DISPOUT_Op2
G01
G91 A=NZ_FI[I_2] F=5000
IF
NZ_ACT[I_2]==1
R308=I_2
CYCLOBR_Op2(R260,FPR[I_1])
ENDIF
ENDFOR
DISPOUT_Op2
G01
G91 A=360-NZ_FI[2] F=5000
PRIPUSK_Op2(I_1,-1)
ENDIF
ENDFOR
M17
%_N_GLAV_DVIG_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
GLAV_DVIG_Op2(INT NAPR,REAL FGLDV)
DISPOUT_OP2
G01
G91 X=NAPR*R298 Y=NAPR*R299 Z=NAPR*R300 F=FGLDV
M17
%_N_DOPSM_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
DOPSM_Op2
IF
R209>0
DISPOUT_Op2
G01
G91 A=R203 F=R209
ENDIF
M17
%_N_PRIPUSK_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
PRIPUSK_Op2(INT NUM_PR,INT NAPR_PR, REAL FPR)
IF
(NUM_PR==1) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op2
G01
G91 Y=NAPR_PR*R213 F=200
ENDIF
IF
(NUM_PR==2) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op2
G01
G91 Y=NAPR_PR*R219 F=200
ENDIF
IF
(NUM_PR==3) AND (FPR>0)
R307=NUM_PR
DISPOUT_Op2
G01
G91 Y=NAPR_PR*R225 F=200
ENDIF
M17
%_N_OTVOD_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
OTVOD_Op2(INT NAPR_OTV)
M17
%_N_CYCLOBR_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
PROC
CYCLOBR_Op2(INT N_CYCL,REAL FPR)
EXTERN
GLAV_DVIG_Op2(INT,REAL)
EXTERN
OTVOD_Op2(INT)
DEF
INT I_1,I_2
DEF
REAL STEP1,STEP2
FOR
I_1=1 TO N_CYCL
R309=I_1
IF
R280>0
IF
N_CYCL==2
G01
G91 Y=(I_1-1)*(R274-R262)
ENDIF
IF
N_CYCL>2
STEP1=2*(R268-R262)/(N_CYCL-1)
STEP2=2*(R274-R268)/(N_CYCL-1)
I_2=ROUND((N_CYCL-1)/2)
IF
I_1<=I_2
IF
I_1>1
G01
G91 Y=STEP1
ENDIF
ENDIF
IF
I_1>I_2
G01
G91 Y=STEP2
ENDIF
ENDIF
ENDIF
IF
R282>0
IF
N_CYCL==2
G01
G91 A=(I_1-1)*(R276-R264)
ENDIF
IF
N_CYCL>2
STEP1=2*(R270-R264)/(N_CYCL-1)
STEP2=2*(R276-R270)/(N_CYCL-1)
I_2=ROUND((N_CYCL-1)/2)
IF
I_1<=I_2
IF
I_1>1
G01
G91 A=STEP1
ENDIF
ENDIF
IF
I_1>I_2
G01
G91 A=STEP2
ENDIF
ENDIF
ENDIF
GLAV_DVIG_Op2(1,FPR)
OTVOD_Op2(1)
GLAV_DVIG_Op2(-1,500)
OTVOD_Op2(-1)
ENDFOR
IF
R280>0
DISPOUT_OP2
G01
G91 Y=-(R274-R262) F=R280
ENDIF
IF
R282>0
DISPOUT_OP2
G01
G91 A=-(R276-R264) F=R282
ENDIF
M17
%_N_DISPOUT_Op2_SPF
;$PATH=/_N_WKS_DIR/_N_CIP6\Emul\Bdd\9013_WPD
R306=R306+1
MSG
(" Поз. N "
<<R306<< " Прип.N " <<R307<< " Зуб.N " <<R308<< "Цикл.N " <<R309)
M17
|