Проверил неоднократно, работает как надо. Работает с обычным щупом на замыкание пина.
Перед началом использования внимательно прочтите комментарии в скрипте и отредактируйте под себя. Выставляем шпиндель щуп примерно над центром заготовки.
Буду сильно признателен советам по оптимизации.
Код: Выделить всё
(Начало, найти заготовку)
G64 (Для оптимизации скорости перемещения, не обязательно, применять с осторожностью, лучше убрать эту строку если не уверены)
G90
G91
G38.2 Z-20 F100 (Находим заготовку по Z, движение в сторону заготовки)
G92 Z0 (Обнуление Z)
G1 Z10 F400 (Подпрыг на 10мм)
G90
(/Начало)
(Определяем центр по X)
G1 X-11 F400 (Движение за заготовку на 11мм, выставляем свой X в зависимости от размеров заготовки)
G1 Z0 (Спуск, насколько опустить шпиндель относительно верхушки заготовки, выставить по необходимости)
G91
G38.2 X11 F100 (Замер, движение в сторону заготовки)
G92 X0 (обнуление)
G1 X-1 F100(Отойти на 1мм)
G38.2 X2 F50(Еще раз проверить медленно и записать в ячейку #5061)
(G4 P1) (Пауза 1сек если нужна)
G1 X-1 F100(Отойти)
G90
G1 Z10 F400 (Подпрыг)
G1 X17 F400 (Движение за заготовку с текущего положения на 17мм, выставляем свой X в зависимости от размеров заготовки)
Z0 (Спуск, насколько опустить шпиндель относительно верхушки заготовки, выставить по необходимости)
G91
G38.2 X-17 F100 (Замер, движение в сторону заготовки)
G1 X1 ((Отойти на 1мм)
G38.2 X-2 F50 (Еще раз проверить)
(G4 P1) (Пауза 1сек если нужна)
G92 X[#5061/2] (Вычислить центр)
G1 X1 F100 (Отойти)
G90
G1 Z10 F400 (Подпрыг на 10мм)
G1 X0 F400 (Приехать в центр)
(/Определяем центр по X)
(Определяем центр по Y, настройки все теже.)
G1 Y-11 F400
G1 Z0
G91
G38.2 Y11 F100
G92 Y0
G1 Y-1 F100
G38.2 Y2 F50
(G4 P1)
G1 Y-1 F100
G90
G1 Z10 F400
G1 Y17 F400
Z0
G91
G38.2 Y-17 F100
G1 Y1
G38.2 Y-2 F50
(G4 P1)
G92 Y[#5062/2]
G1 Y1 F100
G90
G1 Z10 F400
G1 Y0 F400
(/Определяем центр по Y)
(Выставляем Z)
G38.2 Z-11 F100 (Замер, движение в сторону заготовки)
(G4 P1) (пауза)
G1 Z80 F400 (Подпрыг)
G4 P1 (пауза)
G92 Z0 (обнуление)
G54 X0 Y0 Z0 (обнуление)
G0
(/Выставляем Z)
G64 P0.03 Q0.03 (Возвращаем свои значения G64, если удаляли первую строку с G64, эту тоже удаляем или выставляем ваши значения для P и Q)