Вот собственно программа. После ее выполнения робот останавливается и стоит. Цель : оператор подходит и жмет на отдельно выведенную кнопку подключенную к входу и робот начинает выполнять программу снова. В этой программе как видите есть переходы на другие программы, а в них еще десяток подпрограмм, но в итоге он вернется обратно в эту программу и должен после нажатия на кнопку начать все с начала выполнять программу palete.
DEF palete( )
DECL POS PICKPOS [3,3]
DECL POS PREPOS [3,3]
DECL INT ROW,COL
DECL REAL DX,DY,DZ
DX=-80.0
DY=80.0
DZ=-136.0
FOR ROW= 1 TO 3
FOR COL= 1 TO 3
PICKPOS[ROW,COL] =XSTARTPOS
PICKPOS[ROW,COL].X=PICKPOS[ROW,COL].X+ (ROW-1)*DX
PICKPOS[ROW,COL].Y=PICKPOS[ROW,COL].Y+ (COL-1)*DY
ENDFOR
ENDFOR
FOR ROW= 1 TO 3
FOR COL= 1 TO 3
PREPOS[ROW,COL]=PICKPOS[ROW,COL]
PREPOS[ROW,COL].Z=PREPOS[ROW,COL].Z-DZ
ENDFOR
ENDFOR
;PALLETE
FOR ROW = 1 TO 3
FOR COL = 1 TO 3
PAL1_0()
$BASE=BASE_DATA[1]
$TOOL=TOOL_DATA[2]
SPTP PREPOS [ROW,COL]
SLIN PICKPOS[ROW,COL]
WAIT SEC 5
SLIN PREPOS [ROW,COL]
PAL_1_1()
kol6_chern()
kol6_chisto()
;DEPALLETE
;FOR ROW = 1 TO 3
;FOR COL = 1 TO 3
pal_1()
$BASE=BASE_DATA[1]
$TOOL=TOOL_DATA[2]
SPTP PREPOS[ROW,COL]
SLIN PICKPOS[ROW,COL]
WAIT SEC 6
SLIN PREPOS[ROW,COL]
PAL_1_1()
ENDFOR
ENDFOR
END
|