Коды G96 и G97 на ЧПУ: скорость резания и обороты (Fanuc, LinuxCNC)
· ~9 мин чтения
Кратко: G97 - постоянные обороты шпинделя,
Sв об/мин (G97 S800 M3= 800 об/мин). G96 - постоянная скорость резания,Sв м/мин (G96 S150 M3= 150 м/мин), обороты стойка меняет сама по диаметру. С G96 всегда задают предел оборотов:Dв LinuxCNC,G50 S…илиG92 S…на Fanuc. Резьбу режут только в G97.
Обороты шпинделя на токарном станке с ЧПУ задаются одним из двух режимов:
G97 - постоянные обороты, S в об/мин, или G96 - постоянная
скорость резания, S в м/мин, а обороты стойка пересчитывает сама по
текущему диаметру. Ниже разберём, чем они отличаются, когда какой выбирать,
как не разогнать шпиндель до опасных оборотов и как это выглядит в
LinuxCNC и на Fanuc. В конце - коротко про коды СОЖ M7, M8, M9.
Содержание
- Обороты и скорость резания: формула
- G97 - постоянные обороты
- G96 - постоянная скорость резания
- Предел оборотов: D в LinuxCNC и G50 на Fanuc
- G96 и подача: G94 или G95
- Пример: торцовка с G96 в LinuxCNC
- G96 и G97 на Fanuc: пример программы
- Типичные ошибки
- СОЖ: M7, M8, M9
- Как это сделано в Turn G-code
Обороты и скорость резания: формула
Скорость резания Vc - это скорость, с которой поверхность заготовки проходит мимо режущей кромки, в метрах в минуту. Именно её дают производители пластин в каталогах: например, 150-250 м/мин для конструкционной стали твёрдым сплавом. Обороты шпинделя n связаны с ней через диаметр D в точке резания:
n = 1000 × Vc / (π × D) n - об/мин, Vc - м/мин, D - мм
Что это значит на практике, видно по таблице для Vc = 150 м/мин:
| Диаметр, мм | Обороты для 150 м/мин |
|---|---|
| 100 | 477 об/мин |
| 50 | 955 об/мин |
| 20 | 2387 об/мин |
| 10 | 4775 об/мин |
| 5 | 9549 об/мин |
| 0 (ось) | бесконечность |
При одних и тех же оборотах скорость резания на диаметре 100 мм в 10 раз выше, чем на диаметре 10 мм. Отсюда и два режима.
Посчитать обороты под свой диаметр, подачу в мм/мин и сразу получить строки G96/G97 можно в калькуляторе оборотов и скорости резания.
G97 - постоянные обороты
G97 S800 M3 (800 об/мин, шпиндель по часовой)
Шпиндель держит заданные обороты, что бы ни делал резец. Это режим по умолчанию, и он обязателен в нескольких случаях:
- Резьба. G33, G76 (в LinuxCNC) и G32 (на Fanuc) синхронизируют подачу с оборотами шпинделя. Если обороты меняются между проходами, витки не совпадут. Резьбу режут только в G97; подробнее - в статье о нарезании резьбы G33 и G76.
- Сверление, зенковка, центровка по оси. Диаметр в точке резания - это диаметр сверла, а X = 0. В G96 стойка ушла бы на предел оборотов.
- Небольшая разница диаметров. Если деталь точится с Ø25 до Ø20, выигрыша от G96 почти нет, а G97 проще проверять.
- Станок без регулируемого шпинделя (ременная передача, ступенчатая коробка): стойка просто не может менять обороты на ходу.
G96 - постоянная скорость резания
G96 D2000 S150 M3 (150 м/мин, не выше 2000 об/мин)
Стойка непрерывно пересчитывает обороты по текущему положению резца по X: чем ближе к оси, тем быстрее шпиндель. Скорость резания и условия работы пластины остаются одинаковыми по всему проходу. Где это заметно:
- Торцовка. Без G96 к центру торца скорость падает почти до нуля, поверхность у оси получается рваной, а на периферии пластина может перегреваться. С G96 чистота одинаковая по всему торцу.
- Отрезка. Похожая картина: по мере врезания диаметр уменьшается, и постоянная скорость помогает держать стабильное резание до самого предела оборотов.
- Конусы и сферы, особенно с большой разницей диаметров.
- Чистовые проходы на ступенчатых валах: одинаковая шероховатость на разных ступенях.
- Стойкость пластины. Пластина работает в своём диапазоне скоростей, а не попеременно то слишком медленно, то слишком быстро.
Условие для G96: X = 0 должен быть точно на оси шпинделя. Стойка считает обороты по фактическому расстоянию резца от оси, и если вылет инструмента по X задан неверно, неверными будут и обороты.
Предел оборотов: D в LinuxCNC и G50 на Fanuc
По формуле при подходе к оси обороты растут до бесконечности. На практике шпиндель разгонится до своего максимума, а с ним и патрон с заготовкой. Для тяжёлой или плохо зажатой заготовки, патрона с ограничением по оборотам или длинной детали без поддержки это опасно. Поэтому G96 всегда пишут с пределом оборотов:
| LinuxCNC | Fanuc | |
|---|---|---|
| Предел оборотов | Адрес D в той же строке |
Отдельная команда G50 S… (система A) или G92 S… (системы B и C) |
| Запись | G96 D2000 S150 M3 |
G50 S2000 затем G96 S150 M3 |
Предел выбирают по самому слабому месту: допустимым оборотам патрона, балансировке заготовки, вылету детали, возможностям шпинделя.
G96 и подача: G94 или G95
С G96 почти всегда используют G95 - подачу на оборот (F в мм/об).
Тогда толщина стружки остаётся постоянной: обороты растут, а подача в
мм/мин растёт вместе с ними.
Если оставить G94 (F в мм/мин), то при росте оборотов у оси подача
на оборот, наоборот, падает, и резец начинает скоблить вместо того, чтобы
резать. Для G96 это плохое сочетание.
Пример: торцовка с G96 в LinuxCNC
Короткая программа торцовки заготовки Ø50 с постоянной скоростью резания. Это пример для пояснения, а не вывод Turn G-code:
G21 G18 G7 G90 G95 (мм, плоскость XZ, X - диаметр, подача мм/об)
G54
T1 M6
G96 D2500 S150 M3 (150 м/мин, не выше 2500 об/мин)
M8 (СОЖ)
G0 X52 Z2
G0 Z0
G1 X-0.4 F0.15 (торец к оси, 0.15 мм/об)
G0 Z2
M9 (СОЖ выкл.)
G97 S500 (выходим из G96 до остановки шпинделя)
M5
M30
Что здесь важно:
- предел
D2500стоит прямо в строке G96; - подача
F0.15- на оборот (G95); - перед остановкой шпинделя и перед любой резьбой стоит
G97 S…: программа явно переводится на постоянные обороты.
G96 и G97 на Fanuc: пример программы
На Fanuc сами коды G96 и G97 работают так же, как в LinuxCNC. Отличия в окружении:
- Предел оборотов - отдельной строкой. В системе G-кодов A (на
токарных Fanuc она самая распространённая) это
G50 S…, в системах B и C -G92 S…. Какая система стоит на станке, задаётся параметром стойки, смотрите руководство к своему станку. - G50 / G92 - это ещё и установка системы координат. Пишите в этой
строке только
S, безXиZ, иначе стойка заодно сдвинет ноль детали. - Подача на оборот в системе A -
G99(в системах B и C -G95), подача в минуту -G98(G94). - Десятичная точка. На многих Fanuc
X52без точки читается как 0.052 мм, поэтому координаты пишутX52..
Та же торцовка Ø50, что и выше, но для Fanuc в системе A:
O0001
G21 G40 G99 (мм, без коррекции на радиус, подача мм/об)
T0101 (инструмент 1, коррекция 1)
G50 S2500 (предел 2500 об/мин; в системе B/C - G92 S2500)
G96 S150 M3 (150 м/мин)
G0 X52. Z2. M8
G0 Z0.
G1 X-0.8 F0.15 (торец к оси, 0.15 мм/об)
G0 Z2.
G97 S500 (обратно на постоянные обороты)
M9
M5
M30
А резьба на Fanuc, как и в LinuxCNC, начинается с перехода на G97 с явными оборотами, например:
G97 S600 M3 (постоянные 600 об/мин)
G76 ... (резьбовой цикл)
Если программа писалась для LinuxCNC, а запускать её нужно на Fanuc,
проверьте именно эти места: D в строке G96 Fanuc не поймёт, предел
нужно вынести в G50/G92.
Типичные ошибки
- G96 без предела оборотов. Первый проход к оси, и шпиндель на максимуме. Самая опасная ошибка из списка.
- Резьба в режиме G96. Забыли
G97после торцовки, и следующий проход резьбы идёт с меняющимися оборотами. Витки не совпадут, деталь в брак. - Сверление в G96. Сверло стоит на X = 0, и стойка уходит на предел оборотов.
- G96 с G94. У оси подача на оборот падает, пластина трёт вместо того, чтобы резать.
- Неверный вылет по X. Ось шпинделя не совпадает с X = 0, и обороты рассчитываются неправильно.
- Единицы. При
G21значениеSв G96 - в м/мин, приG20- в футах в минуту.S150в дюймовой программе - это совсем другая скорость.
СОЖ: M7, M8, M9
| Код | Что делает |
|---|---|
| M7 | Включить СОЖ туманом (mist) |
| M8 | Включить СОЖ поливом (flood) |
| M9 | Выключить СОЖ |
На многих станках к LinuxCNC подключён только один насос, и он может быть повешен как на M8, так и на M7. Какой код что включает, смотрите в конфигурации своего станка (HAL). Обычно СОЖ включают после запуска шпинделя и выключают перед его остановкой, как в примере выше. Полная таблица G- и M-кодов - в справочнике G- и M-кодов LinuxCNC.
Как это сделано в Turn G-code
Turn G-code выводит обороты в режиме G97: в каждой форме цикла есть поле оборотов, и в программе появляется строка вида (реальный фрагмент программы торцовки):
G21 G18 G90 G8 G40 G80 G94
G54
G97 S200 M3
Так программа понятна любой стойке, а резьбовые циклы гарантированно идут
на постоянных оборотах. Режим G96 программа сейчас не выводит. Если для
торцовки или отрезки вам нужна постоянная скорость
резания, строку G97 S… можно заменить вручную на G96 D… S… и
проверить программу в превью LinuxCNC перед запуском.
M-коды СОЖ в программе настраиваются: по умолчанию M8/M9, но в окне «Коды СОЖ» можно прописать свои коды включения и выключения - под вашу стойку. Настройка действует сразу на все 12 циклов.
Попробуйте сами: скачайте Turn G-code - 15 дней бесплатно, без ключа.
