Перейти к содержанию

G68 в системе ЧПУ Fanuc

Fanuc
29 5 197 1
  • G68 — это команда в системе Fanuc, которая поворачивает рабочую систему координат на заданный угол вокруг указанной точки.

    После этого все движения (линии, дуги, циклы) выполняются в новом, повернутом направлении, как будто вы повернули саму деталь на столе.

    Команда отменяется командой G69.

    Формат:

    G68 X_ Y_ R_ ;
    
    • X, Y — точка, вокруг которой будет поворот (центр вращения).
    • R — угол поворота в градусах:
      • R30 — поворот на 30° против часовой стрелки.
      • R-45 — поворот на 45° по часовой стрелке.

    Зачем это нужно?

    Представим:
    Вы написали программу для обработки прямоугольного паза.
    Теперь нужно сделать такой же паз, но под углом 30°.

    Без G68: придётся пересчитать все координаты с помощью тригонометрии.
    С G68: просто добавьте поворот — и тот же самый код паза выполнится под нужным углом!


    Простой пример: поворот на 30 градусов

    G54 G90 G17     ; Настройка: ноль, абсолютные координаты, XY-плоскость
    M3 S1000        ; Включить шпиндель
    
    ; Обычный прямоугольный паз
    G0 X20 Y10 Z5
    G1 Z-3 F100
    G1 X80 Y10       ; Движение по прямой
    G1 X80 Y30
    G1 X20 Y30
    G1 X20 Y10
    G0 Z10
    
    ; Поворот системы координат на 30° вокруг точки (50, 50)
    G68 X50 Y50 R30
    
    ; Тот же самый паз — но теперь он будет под углом!
    G0 X20 Y10 Z5
    G1 Z-3 F100
    G1 X80 Y10
    G1 X80 Y30
    G1 X20 Y30
    G1 X20 Y10
    G0 Z10
    
    ; Отмена поворота
    G69
    
    M5              ; Останов шпинделя
    M30             ; Конец программы
    

    📌 Что происходит?

    • Первый паз — обычный, горизонтальный.
    • Второй паз — такой же код, но автоматически повернут на 30° вокруг точки (50,50).
    • Никаких новых расчётов — просто повторили те же строки.

    Ещё проще: сверление отверстий по кругу

    Допустим, нужно просверлить 3 отверстия, каждое на 120° друг от друга.

    G54 G90 G17
    M3 S800
    
    ; Первое отверстие (на 0°)
    G81 X60 Y0 Z-15 R3 F150
    
    ; Повернули систему на 120° — теперь X60 Y0 будет в новом положении
    G68 X0 Y0 R120
    G81 X60 Y0 Z-15 R3 F150
    G69
    
    ; Ещё раз — на 240°
    G68 X0 Y0 R240
    G81 X60 Y0 Z-15 R3 F150
    G69
    
    G80 M5
    M30
    

    📌 Теперь три отверстия равномерно расположены по окружности радиусом 60 мм.


    Важные моменты

    • G68 действует только в текущей плоскости (обычно G17 — XY).
    • Всегда отменяйте поворот командой G69, иначе следующие операции могут пойти не так.
    • Центр поворота (X, Y) указывается в абсолютных координатах.
    • Не работает в G53 (машина в абсолютных координатах станка).

    Советы

    • Используйте G68, если делаете одинаковые элементы под разными углами.
    • Отлично сочетается с шаблонами и повторяющимися контурами.
    • Для сложных деталей — комбинируйте с параметрическим программированием (переменные, циклы).

    G68 — это как “повернуть чертёж” в программе.
    Вы пишете контур один раз — а потом просто говорите станку: “Сделай это же, но повернутое на 45°”.

    Это экономит время, уменьшает ошибки и делает программирование ЧПУ проще и умнее.

  • Автор, а G68 работает только в плоскости XY? У меня нужно повернуть обработку вокруг оси X на 90 градусов — такое возможно или нет?

  • Колян, для этого нужно сменить плоскость на G18 (XZ) или G19 (YZ) перед использованием G68. Но осторожно — не все станки поддерживают поворот в этих плоскостях. Лучше проверь руководство к своему ЧПУ.

  • У меня на Fanuc 0i-MF работает в XZ! Но пришлось отдельно указывать плоскость вращения. Кстати, народ, а есть ли ограничение на угол? Можно ли сделать R450 (больше 360)?

  • У меня на Fanuc 0i-MF работает в XZ! Но пришлось отдельно указывать плоскость вращения. Кстати, народ, а есть ли ограничение на угол? Можно ли сделать R450 (больше 360)?

    @Teriot можно хоть R1000 — система просто возьмет остаток от деления на 360. R450 = R90. Но лучше так не делать — запутаешься. Да и смысла нет в этом.

  • А если нужно сделать несколько поворотов подряд? Например, сначала на 30, потом ещё на 15 относительно нового положения?

  • Повороты не накапливаются же. G68 всегда использует исходную систему координат. Для последовательных поворотов нужно каждый раз отменять G69 и задавать новый угол относительно нуля.

  • Тут вопрос появился, подскажите — как поворот влияет на коррекцию инструмента? Длина и радиус ведь тоже поворачиваются?

  • Коррекция инструмента применяется после преобразований координат. То есть G68 не влияет на компенсацию радиуса и длины. Инструмент движется в повёрнутой системе, но с учётом своих реальных размеров.

  • А если центр поворота не указать? Например, просто G68 R30 — что будет? Было бы не плохо с разных сторон это рассмотреть.

  • На большинстве систем центр поворота примет текущее положение инструмента! Это опасно — можно случайно повернуть вокруг не той точки. Всегда явно указывай X Y Z.

  • Кстати, о безопасности. Я как-то забыл отменить G69 после паузы — следующий инструмент поехал не туда. Теперь всегда в начале программы пишу G69 для очистки.

  • Ребят, а как G68 взаимодействует с циклами (G81, G83)? Можно ли внутри цикла использовать поворот? И какие есть вариации в целом?

  • Ребят, а как G68 взаимодействует с циклами (G81, G83)? Можно ли внутри цикла использовать поворот? И какие есть вариации в целом?

    @Колян да! Но осторожно — отмена цикла G80 не отменяет G68. Нужно сначала отменить цикл, потом поворот. Сначала должен быть анализ.

  • А ещё лучше использовать поворот до цикла, а отменять после. Я так делаю координатные сетки под разными углами. Это работает лучше всего.

  • Мужики, а если нужно повернуть не вокруг точки, а вокруг текущего положения инструмента? Есть короткая запись? А то я начал путаться.

  • Ну да, можно использовать системные переменные #5061 (текущий X), #5062 (Y) и т.д. Но это уже макропрограммирование. Для простоты лучше явно указывать координаты.

  • А как быть с коррекцией на размер инструмента? Допустим, я повернул систему, а потом поменял инструмент — нужно ли заново применять поворот?

  • Колян, нет! G68 действует на всю систему координат, независимо от инструмента. Но если сменилась плоскость тут нужно переинициализировать поворот.

  • А есть ли разница между G68 и G69 в разных версиях Fanuc? У нас старый 21i — иногда глючит. И лично я пока причину четкую не понимаю.