Макрос #100-#110 для вылета инструмента Fanuc 0i-TF: забудь ручной подсчет
-
Коллеги, задолбался я смотреть, как технологи на Fanuc 0i-TF каждый раз вручную в Excel или на бумажке считает вылет инструмента. Загрузил деталь в КАМ-систему, постпроц выплюнул G-код без параметров #100-#110, а на стойке сидишь с микрометром, корректируешь Z под расточку или фрезеровку — полчаса ушло, плюс риск влететь фрезой в патрон или заготовку. В итоге серия из 50 деталей растягивается на час лишний, брак лезет, а мастер ругается.
Хуже того, дефолтные посты из SprutCAM или Mastercam игнорят системные переменные #100-#199. Вылет не параметризуется, подачи жестко забиты — стойка тупит на каждой операции, особенно при смене инструмента с разным вылетом. Деньги сливаем на простоях, а конкуренты уже на автоматике рубят профит. Пора это фиксить моим макросом.
Логика работы
Макрос O1000 подхватывает #100 как вылет инструмента из таблицы (измеренный или из T-наборов), #101 — Z-глубину, #102 — R-уровень для расточки, #110 — радиус заготовки. Чек на ноль в IF[#100 EQ 0] GOTO99 спасает от аварии, если переменная не задана. Движение: G0 на безопасную Z[#2+10], потом Z#2 с подачей #150, X на #110 + [#1/2] для центровки. Корректировка под расточку автоматом — никаких ручных правок. Локальные #1-#33 не сбрасываются, глобальные #500-#999 держат значения между вызовами.
Код / Настройка
Вот готовый параметрический макрос для Fanuc 0i-TF. Копируй в память стойки как O1000, вызывай M98 P1000 перед каждой расточкой/фрезой.
% (ПАРАМЕТРИЧЕСКИЙ МАКРОС ВЫЛЕТА ИНСТРУМЕНТА FANUC 0i-TF) O1000; G90 G54 G17 G49 G80 G40; IF[#100 EQ 0] GOTO99; (ЧЕК НА НОЛЬ - АВАРИЯ OFF) #1 = #100; (ВЫЛЕТ ИЗ ТАБЛИЦЫ/ПОСТА) #2 = #101; (Z-ГЛУБИНА) #3 = #102; (R-УРОВЕНЬ) #4 = #110; (РАДИУС ЗАГОТОВКИ) G0 Z[#2+10]; (БЕЗОПАСНАЯ ПОЗИЦИЯ) G1 Z#2 F#150; (ПОДАЧА ПО Z) G1 X[#4 + [#1/2]] F#151; (ЦЕНТРОВКА + ВЫЛЕТ/2) G4 P#105; (ПАУЗА ДЛЯ РАСТОЧКИ) G0 Z50; N99; M99; %Построчный разбор:
O1000;: Запуск макроса, обнуляем модалы.IF[#100 EQ 0] GOTO99;: Если вылет не задан — прыгаем в конец, M99 без движения.#1 = #100;: Локальная копия вылета (не затирается).G0 Z[#2+10];: Подъем на 10мм выше глубины — страховка от столкновений.G1 X[#4 + [#1/2]] F#151;: Центровка по радиусу + половина вылета для расточки.G4 P#105;: Дополнительная пауза из #105 для ручной расточки или замера.
Настройка: Включи макро-режим (параметр 7100=1), задай #100-#110 в программе или через MDI перед вызовом.
Где можно отстрелить ногу
На старых Fanuc 0i-TF с параметром 3401=0 (без макро B) этот IF не сработает — стойка аварию кинет. Проверь параметр 1320.4=1 для системных переменных. Если постпроц не выдает #100 из CAM — фигня полная, сначала допили пост (в SprutCAM в шаблоне добавь OUTPUT “#100 = TOOL_LEN;”). И не забудь безопасную Z — на длинных вылетах >200мм сгибает инструмент.
Сухой остаток
Этот макрос сэкономит тебе 20-30мин на каждой серии, минимизирует брак от ручных ошибок подсчета вылета. Внедрил на своем 0i-TF — расточка нержи по 100 деталей/смена без простоев. А главное, стойка теперь самоконтролируется: задал параметры — и поехало. Берите в работу, дорабатывайте под свою геометрию. А как вы корректируете вылет на Fanuc — вручную или тоже макросами?
Здравствуйте! Похоже, вас заинтересовал этот пост, но у вас ещё нет аккаунта.
Надоело каждый раз пролистывать одни и те же посты? Зарегистрировав аккаунт, вы всегда будете возвращаться на ту же страницу, где были раньше, и сможете выбирать, получать ли уведомления о новых ответах (по электронной почте или в виде push-уведомлений). Вы также сможете сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост мог бы стать ещё лучше 💗
Зарегистрироваться Войти© 2022 - 2026 InvestSteel, Inc. Все права защищены.