В этой статье блога опытный инженер-механик делится советами и методиками освоения команд токарного станка с ЧПУ Fanuc. Узнайте, как оптимизировать свои навыки программирования ЧПУ, повысить производительность и вывести свои проекты по обработке на новый уровень.
G00▲: Быстрое позиционирование точек
G00 X__Z__
G01: Линейная интерполяция
G01 X__Z__F__
G01: Команда "Фаска" или "Филе
G01 X(U) Z(W) C
G01 X(U) Z(W) R
Значения X (U) и Z (W) представляют собой координаты гипотетической точки пересечения смежных линий AD и DE в системе координат заготовки, где X и Z - абсолютные значения координат, а U и W - инкрементные значения координат. Значение C означает расстояние относительно начальной точки фаски. Значение R обозначает радиус дуги галтели.
G02: Интерполяция дуги по часовой стрелке
G02X__Z__R__F__
G02X__Z__ I__K__ F__
R представляет собой радиус дуги. Если центральный угол дуги находится в диапазоне от 0° до 180°, R принимает положительное значение; при центральном угле от 180° до 360° R принимает отрицательное значение. I и K обозначают приращение координат центра дуги относительно осей X и Z от начальной точки дуги, то есть координаты центра вычитаются из координат начальной точки (I представлено значением радиуса). Если I и K равны нулю, их можно не указывать.
G03: Интерполяция дуги против часовой стрелки
G03 X__Z__R__F__
G03X__Z__ I__K__ F__
Идентичен G02.
G04: Пауза
G04 X1.5; или G04 P1500; P без десятичной точки.
G07.1 (G107): Цилиндрическая интерполяция
G07.1IPr (вступление в силу); G07.1IP0 (аннулирование);
G10▲: Программируемый вход данных
G10 P __X__ Z__R__ Q__
G11: Отмена входа программируемых данных
G12.1 (G112): Инструкция по полярным координатам
G13.1▲: Отмена полярных координат
G17: Выбор плоскости XY
G18▲: Выбор плоскости XZ
G19: Выбор плоскости YZ
G20: дюймовый вход
G21: Миллиметровый вход
G22: Включить обнаружение сохраненного штриха
G23: Отключение обнаружения сохраненного удара
G27: Проверка возврата опорной точки
G27 X(U) Z(W)
Инструмент проверяется на возврат в заданные координаты X, Z, как указано в программе, с помощью команды G00. Если возврат точен, загорается индикатор. Однако несоответствия приводят к появлению системных аварийных сигналов на станке.
G28: Автоматический возврат к контрольной точке
G28 X(U) Z(W); X и Z - точки, пройденные в процессе возврата.
G29: Возврат к контрольной точке
G29 X(U) Z(W)
От опорной точки, проходящей через среднюю точку в указанные положения X и Z, средняя точка - это точка, обозначенная G28, поэтому эта команда может появиться только после G28.
G30: Возврат к заданному значению
G30 P2/P3/P4 X Z
P2, P3, P4 представляют собой 2-ю, 3-ю и 4-ю опорные точки соответственно, а X и Z - промежуточные точки.
Значение: Инструмент проходит через промежуточные точки, чтобы достичь положения 2-й, 3-й и 4-й опорных точек.
G31: Функция перехода
G32: резьба с равным шагом
G32X(U)_Z(W)_F_Q_
G32 Z(W) F; (Цилиндрическая резьба)
G32 X(U) F; (резьба на торцевой поверхности)
G32 X(U) Z(W) F; (Коническая резьба)
Примечание:
1. При программировании сегменты врезания и вырезания должны быть включены в программу точения резьбы.
2. При обработке конической резьбы, когда угол α меньше или равен 45 градусам, ведение резьбы задается в направлении оси Z; когда угол α больше 45 градусов и меньше или равен 90 градусам, ведение резьбы задается в направлении оси X.
3. Q представляет собой начальный угол нити без десятичной точки, единица измерения - 0,001°.
G34: резьба с переменным шагом
G34 X(U) Z(W) F K ; (Коническая нить)
K представляет собой инкремент (положительное значение) или декремент (отрицательное значение) шага на оборот, остальное аналогично G32.
G36: автоматический Компенсация инструмента X
G36 X
G37: Автоматическая компенсация инструмента Z
G37 Z
G40: Отмена компенсации радиуса наконечника
G41: Левое смещение для радиуса кончика инструмента
G41(G42)G01(G00) X Z F
G40 G01(G00) X Z F
Для переднего держателя инструмента внешний круг - G42 с номером позиции 3, а расточное отверстие - G41 с номером позиции 2. На следующем рисунке показан номер позиции для переднего держателя инструмента, при этом позиции 2 и 3, а также 1 и 4 для заднего держателя инструмента поменялись местами, а остальные позиции остались прежними.
G42: Правое смещение для радиуса наконечника инструмента
G50: Настройка системы координат или ограничение максимальной скорости
G50 X Z или G50 S
G50.3: Предварительная настройка системы координат заготовки
G50.2: Отмена поворота многоугольника
G51: Поворот полигона
G52: Местная система координат
G52 X20 Z20: Значения X\Z представляют собой положение начала локальной системы координат в исходной системе координат заготовки.
Если G52 X0 Z0: это отменяет локальную систему координат, восстанавливая исходное начало системы координат.
G53: Выбор системы координат станка
Снимите выделение с системы координат заготовки и выберите систему координат станка.
(G90) G53 X_ Y_ Z_: он действителен в абсолютной команде (G90), но недействителен в инкрементной команде (G91).
Примечание:
(1) Смещение диаметра инструмента, смещение длины инструмента и смещение положения инструмента должны быть отменены до назначения команды G53. В противном случае станок будет перемещаться в соответствии с назначенными значениями смещения.
(2) Перед выполнением команды G53, вручную или с помощью команды G28, верните станок в исходное положение. Это необходимо потому, что система координат станка должна быть настроена перед подачей команды G53.
G54▲: Выбор системы координат заготовки 1
G54; По умолчанию питание включено.
G55-59: Выбор систем координат заготовки 2-6
G65: Немодальный вызов макропрограммы
В классе A используется система FANUC 0TD, а в классе B - система FANUC 0I.
Локальные переменные - #1-#33, общие переменные - #100-#149, #500-#549, системные переменные - #1000 и выше.
Макропрограммы заканчиваются на M99 и могут быть вызваны с помощью M98 или "G65 P(номер программы)L(счетчик)".
Формат программ класса A следующий: G65 H(a)P(b)Q(c)R(d), где a - код H, b - переменная результата, а c, d - две операционные переменные.
Команда работы макропрограммы класса B.
Задание | #i=#j | Функция пола | #i=FUP[#j] |
Дополнение | #i=#j+#k | Натуральный логарифм | #i=LN[#j] |
Вычитание | #i=#j-#k | Экспоненциальная функция | #i=EXP[#j] |
Умножение | #i=#j*#k | Или | #iOR#j |
Подразделение | #i=#j/#k | Эксклюзивный или | #iXOR#j |
Синус | #i=SIN[#j] | И | #iAND#j |
Обратный синус | #i=ASIN[#j] | Преобразование BCD в BIN | #i=BIN[#j] |
Косинус | #i=CON[#j] | Преобразование BIN в BCD | #i=BCD[#j] |
Обратный косинус | #i=ACON[#j] | Равняется | EQ |
Тангента | #i=TAN[#j] | Не равно | NE |
Обратный тангенс | #i=ATAN[#j]/[#k] | Больше, чем | GT |
Квадратный корень | #i=SQRT[#j] | Больше или равно | GE |
Абсолютная величина | #i=ABS[#j] | Меньше, чем | LT |
Округление | #i=ROUND[#j] | Меньше или равно | LE |
Потолок | #i=FIX[#j] |
Управляющая команда: GOTO n - безусловный переход
IF [выражение условия] GOTO n - оператор условного перехода
WHILE [выражение условия] DO m (m=1, 2, 3...) - команда цикла
...
END m;
G66: Модальный вызов макропрограммы
G67: Отмена модального вызова макропрограммы
G70: Токарный станок для токарной обработки внутренних и внешних цилиндрических поверхностей с фиксированным циклом
Формат программирования: G70 P(ns) Q(nf)
Где:
Примечания:
(1) Команда G70 не может использоваться самостоятельно; она должна сочетаться с командами G71, G72, G73 для завершения фиксированного цикла точной обработки, т.е. после черновой обработки заготовки командами G71, G72, G73 команда G70 используется для задания фиксированного цикла точной обработки, удаляя припуск, оставленный черновой обработкой.
(2) В этом случае команды F, S, T в программных сегментах G71, G72, G73 недействительны; действуют только команды F, S, T в программных сегментах ns~nf. Если команды F, S, T в сегментах программы ns~nf не указаны, действуют F, S, T цикла чернового точения.
G71: Токарный станок с фиксированным циклом для токарной обработки внутренних и внешних цилиндрических поверхностей
Формат программирования: G71U (△d) R(e);
G71 P(ns) Q(nf) U (△u) W(△w) F S T ;
Где:
(1) Когда вышеуказанная инструкция используется для обработки внутреннего контура заготовки, △u должно быть отрицательным значением.
(2) При использовании G71 для черновой обработки эффективны только функции F, S, T, включенные в программный сегмент G71. Функции F, S, T, включенные в программный сегмент ns~nf, неэффективны для цикла черновой обработки, даже если они указаны. Компенсация инструмента может быть выполнена, а компенсация радиуса вершины инструмента может быть запрограммирована перед G70, обычно включается в движение, приближающееся к начальной точке. Например: G42G00X55Z2; G70P10Q20; G40G00X100Z50;
(3) Эта инструкция применима, когда происходит монотонное увеличение или уменьшение координаты Z, а координата X также изменяется монотонно. Программный сегмент Ns должен продвигаться вдоль оси X, а значения Z не должны появляться.
G72: Черновая токарная обработка торцов Композит с фиксированным циклом
Формат программирования: G72W (△d) R(e);
G72 P(ns) Q(nf) U (△u) W(△w) F S T ;
2. d: Величина обратного резания в направлении Z, без знака; остальные параметры такие же, как у G71. Сегмент программы Ns должен подаваться в направлении Z и не может содержать значение X. Если описанная выше команда используется для обработки внутреннего контура заготовки, △u должно быть отрицательным значением.
Пример: Как показано на рисунке, список программ имеет следующий вид:
G73: Цикл дублирования контуров
Формат программирования: G73 U(△i) W(△k) R (d);
G73 P(ns) Q(nf) U (△u) W(△w) F S T ;
d: Представляет собой количество циклов чернового точения (количество слоев);
△i: При черновом точении общий припуск, снимаемый по оси X (величина отвода инструмента) и по направлению, значение радиуса. То есть: необработанный размер минус наименьший размер заготовки, деленный на 2. Отверстие - отрицательное значение.
△k: При черновом точении общий припуск, снимаемый по оси Z (величина отвода инструмента) и в направлении; △k обычно равен нулю. Остальное аналогично команде G71.
G74: Цикл обработки торцевых канавок / Бурение Цикл
G75: Радиальный Нарезка канавок Цикл
Формат программирования: G75R (e);
G75 X (U) Z (W) P (Δi) Q (Δk) R (d)F;
Примечание:
1. Окончательная глубина и окончательное смещение в направлении Z рассчитываются самой системой.
2. Δi, Δk - минимальные единицы программирования, например, P1500 означает глубину реза 1,5 мм.
G76: Цикл резьбонарезной смеси
G76 P(m)(r) (α) Q(△d min) R(d)
G76 X(U) Z(W) R(i) P(k) Q(△d) F(L)
G90: Цилиндрическая/коническая поверхность Одиночный фиксированный цикл
G90 X(U) Z(W) R F;
R обозначает половину разницы между координатой X в начальной точке и координатой X в конечной точке конического среза поверхности. Она может быть отрицательной, где отрицательная величина означает правильный конус, а положительная - перевернутый конус. Без R - это цилиндрическая резка. Скорость резания: G00 - G01 - G01 - G00.
G92: Цикл нарезания резьбы
G92 X(U) Z(W) F R;
R = (X начальная точка - X конечная точка) / 2. R является немодальным и должен быть включен в каждое предложение.
G94: Цикл резки торцевой поверхности
Формат команды: G94 X(U) Z(W) F;
Формат команд для резки конических торцов: G94 X(U) Z(W) K F
Где X, Z - абсолютные значения координат конечной точки сегмента реза;
U, W представляют собой величину приращения координат конечной точки сегмента резания относительно начальной точки цикла; F - скорость подачи. K представляет собой разницу в значениях координат Z между начальной и конечной точками сегмента резания (обычно отрицательное значение), т.е. K=Z начальная точка - Z конечная точка.
G96: Выполнение с постоянной линейной скоростью
M3S300; Начальная скорость
G50S1000; Максимальное ограничение скорости 1000
G96S100; скорость вращения шпинделя 100 м/мин
…
G97▲: Отмена постоянной линейной скорости, прекращение скорости.
G97 S300; Отмена постоянной линейной скорости, скорость 300 об/мин
G98: Подача в минуту
Единицы измерения: мм/мин Пример: G98 G01 X20 F200
G99▲: Подача на оборот
Единица измерения: мм/об Пример: G99 G01 X20 F0.2;
M00: Все действия прекращаются.
M01: Остановка выбора программы
Необходимо нажать: Выберите клавишу остановки, чтобы она начала действовать, эквивалентно M00;
M02: Завершение программы
Курсор не возвращается.
M03/M04: Шпиндель вперед (по часовой стрелке) / назад (против часовой стрелки)
M03 S300;
M05: Стопор шпинделя
M08/09: Включение/выключение охлаждающей жидкости
M30: Завершение программы
Курсор возвращается к началу программы.
M98: Вызов подпрограммы
Формат программирования: M98 PxxxxL ;
или M98 Pxxxxxxxx ;
M99: Возврат к основной программе
В этом случае четыре цифры, следующие за адресом P после вызова, представляют собой номер подпрограммы, а вызов, следующий за адресом L, - время вызова. Если время вызова равно 1, его можно опустить, а допустимое количество повторных вызовов - до 999. Когда восемь цифр следуют за адресом P, первые четыре представляют собой время вызова, а последние четыре - номер подпрограммы. Если время вызова равно 1, его можно опустить.
Если M99 P100; представляет собой возврат в сегмент основной программы N100, то если подпрограмма выполняет M99 L2, это означает, что подпрограмма вынуждена выполняться дважды, независимо от того, сколько раз запрашивает основная программа.
T××××: Команда инструмента
В T0101 первые две цифры обозначают номер инструмента, а последние две цифры - номер компенсации инструмента.