Программирование в относительных координатах выполняет инструкция

Подготовительные (основные) команды

Коды Описание

G00-G03 Позиционирование инструмента

G17-G19 Переключение рабочих плоскостей (XY, ZX, YZ)

G20-G21 Не стандартизовано

G40-G44 Компенсация размера различных частей инструмента (длина, диаметр)

G53-G59 Переключение систем координат

G80-G85 Циклы сверления, растачивания, нарезания резьбы

G90-G91 Переключение систем координат (абсолютная, относительная)

Таблица основных команд

Команда Описание Пример

G00 Ускоренное перемещение инструмента (холостой ход) G0 X0 Y0 Z100

G01 Линейная интерполяция G01 X0 Y0 Z100 F200

G02 Круговая интерполяция по часовой стрелке G02 X15 Y15 R5 F200

G03 Круговая интерполяция против часовой стрелки G03 X15 Y15 R5 F200

G04 Задержка выполнения программы, способ задания величины задержки зависит от реализации системы управления G04

G15 Отмена полярной системы координат G15 X15 Y22.5; G15;

G16 Полярная система координат (X радиус Y угол) G16 X15 Y22.5

G17 Выбор рабочей плоскости X-Y

G18 Выбор рабочей плоскости X-Z

G19 Выбор рабочей плоскости Y-Z

G40 Отмена компенсации радиуса инструмента G1 G40 X0 Y0 F200

G41 Компенсировать радиус инструмента слева от траектории G41 X15 Y15 D1 F100

G42 Компенсировать радиус инструмента справа от траектории G42 X15 Y15 D1 F100

G43 Компенсировать длину инструмента положительно G43 X15 Y15 Z100 H1 S1000 M3

G44 Компенсировать длину инструмента отрицательно G44 X15 Y15 Z4 H1 S1000 M3

G49 Отмена компенсации длины инструмента G49 Z100

G53 Отключить смещение начала системы координат станка G53 G0 X0 Y0 Z0

G54-G59 Переключиться на заданную оператором систему координат G54 G0 X0 Y0 Z100

G70 Программировать в inch M70

G71 Программировать в мм M71

G73 Вращать M73

G75 Фрезеровка четырехугольной камеры по часовой стрелке, против движения M75

G76 Фрезеровка четырехугольной камеры против часовой стрелке, по движению M75

G77 Фрезеровка круглой камеры против часовой стрелке, по движению M77

G78 Фрезеровка круглой камеры по часовой стрелке, против движения M78

G80 Отмена циклов сверления, растачивания, нарезания резьбы метчиком и т. д. G80

G81 Цикл сверления G81 X0 Y0 Z-10 R3 F100

G82 Цикл сверления с задержкой G82 X0 Y0 Z-10 R3 P100 F100

G83 Цикл прерывистого сверления (с полным выводом сверла) G83 X0 Y0 Z-10 R3 Q8 F100

G84 Цикл нарезания резьбы G95 G84 M29 X0 Y0 Z-10 R3 F1.411

G90 Задание абсолютных координат опорных точек траектории G90 G1 X0.5 Y0.5 F10

G91 Задание координат инкрементально последней введённой опорной точки G91 G1 X4 Y5 F100

G94 F (подача) — в формате мм/мин. G94 G80 Z100

G95 F (подача) — в формате мм/об. G95 G84 X0 Y0 Z-10 R3 F1.411

максимум 4 команды в кадре

Таблица технологических кодов

Технологические команды языка начинаются с буквы М. Включают такие действия, как:

Сменить инструмент

Включить/выключить шпиндель

Включить/выключить охлаждение

Работа с подпрограммами

Вспомогательные (технологические) команды

Код Описание Пример

M00 Приостановить работу станка до нажатия кнопки «старт» на пульте управления, так называемый «безусловный технологический останов» G0 X0 Y0 Z100 M0

M01 Приостановить работу станка до нажатия кнопки «старт», если включён режим подтверждения останова G0 X0 Y0 Z100 M1

M02 Конец программы, без сброса модальных функций M02

M03 Начать вращение шпинделя по часовой стрелке M3 S2000

M04 Начать вращение шпинделя против часовой стрелки M4 S2000

M05 Остановить вращение шпинделя M5

M06 Сменить инструмент T15 M6

M07 Включить дополнительное охлаждение M3 S2000 M7

M08 Включить основное охлаждение. Иногда использование более одного M-кода в одной строке (как в примере) недопустимо, для этого используются M13 и M14 M3 S2000 M8

M09 Выключить охлаждение G0 X0 Y0 Z100 M5 M9

M13 Включить охлаждение и вращение шпинделя по часовой стрелке S2000 M13

M14 Включить охлаждение и вращение шпинделя против часовой стрелки S2000 M14

M17 Конец подпрограммы M17

M25 Замена инструмента вручную M25

M97 Запуск подпрограммы, находящейся в той же программе (где P — номер кадра, в случае примера переход осуществится к строке N25), действует не везде, предположительно — только на станках HAAS M97 P25

M98 Запуск подпрограммы, находящейся отдельно от основной программы (где P — номер подпрограммы, в случае примера переход осуществится к программе O1015) M98 P1015

M99 Конец подпрограммы M99

M30 Конец программы, со сбросом модальных функций M30

не больше одного кода в кадре

Параметры команд

Параметры команд задаются буквами латинского алфавита

Код Описание Пример

X Координата точки траектории по оси X G0 X100 Y0 Z0

Y Координата точки траектории по оси Y G0 X0 Y100 Z0

Z Координата точки траектории по оси Z G0 X0 Y0 Z100

P Параметр команды G04 P101

F Скорость рабочей подачи G1 G91 X10 F100

S Скорость вращения шпинделя S3000 M3

R Параметр стандартного цикла или радиус дуги (расширение стандарта) G81 R1 0 R2 −10 F50 или G1 G91 X12.5 R12.5

H Параметр коррекции выбранного инструмента G1 G41 D1 X10. F150.

P Число вызовов подпрограммы L82 P10

I,J,K Параметры дуги при круговой интерполяции G03 X10 Y10 I0 J0 F10

L Вызов подпрограммы с данной меткой L12

При программировании обработки деталей на станках с ЧПУ в соответствии со стандартом DIN 66025 (ISO 6983), известном ранее как ISO 7bit, используются следующие операторы:

  • N — номер кадра;
  • G — подготовительные функции;
  • Х, Y, Z, А, В, С — информация о перемещениях по осям;
  • М — дополнительные функции;
  • S — функции шпинделя;
  • T — функции инструмента;
  • F — функции подачи;
  • D — номер коррекции инструмента;
  • Н — вспомогательные функции (блоки данных коррекции инструмента в режиме DIN-ISO). При наличии действительного номера D актуального инструмента он индицируется дополнительно.

Для большей наглядности структуры кадра операторы в кадре должны быть расположены в следующей последовательности: N, G, X, Y, Z, А, В, С, F, S, T, D, M, H.

Управляющая программа состоит из n-го числа кадров, воспроизводимых непрерывно или с заданными паузами (при высокоскоростной обработке деталей из высокопрочных алюминиевых сплавов даже кратковременная остановка инструмента между смежными кадрами недопустима из-за опасности перегрева или проплавления обработанной поверхности за счет трения). Кроме того, возможен пропуск отдельных кадров и коррекция размеров путем подключения подготовительных функций. Это обеспечивает разработку управляющих программ для типовых технологических процессов.

Кадры управляющей программы состоят из следующих компонентов:

  • команды (операторы) по DIN 66025;
  • элементы высокоуровневого языка программирования ЧПУ;
  • идентификаторы (определенные имена) для:
    • системных переменных;
    • определенных пользователем переменных;
    • подпрограмм;
    • кодовых слов;
    • меток перехода;
    • макросов;
  • операторы сравнения;
  • логические операторы;
  • функции вычисления;
  • управляющие структуры.

Так как набора команд по DIN 66025 недостаточно для программирования сложных процессов обработки на современных многоцелевых станках, он был дополнен элементами высокоуровневого языка программирования ЧПУ.

В отличие от команд по DIN 66025 команды высокоуровневого языка программирования ЧПУ состоят из нескольких букв адреса, к примеру:

  • OVR — для коррекции скорости (процентовка);
  • SPOS — для позиционирования шпинделя.

Структура программы имеет следующий вид: «%» (только для программ, разработанных на ПЭВМ), заголовок программы «О» или «:» с последующим номером программ, содержащим не более четырех цифр. Каждая строка в программе является кадром.

Каждый кадр программы имеет структуру:

  • N — порядковый номер кадра (не более четырех знаков, нумерация ведется через 5 или 10 для возможности при отработке программы введения дополнительных кадров);
  • подготовительная функция G;
  • координаты Х, Y, Z, A, C, В;
  • дополнительная функция М;
  • функция шпинделя S;
  • функция инструмента Т;
  • функция подачи F;
  • D — номер коррекции инструмента;
  • H — блоки данных коррекции инструмента в режиме DIN-ISO. Команды действуют либо модально, либо покадрово.

Модально действующие команды сохраняют свою значимость во всех последующих кадрах с запрограммированным значением до тех пор, пока по тому же адресу не будет запрограммировано новое значение, отменяющее действующую прежде команду.

Действующие покадрово команды сохраняют свою значимость только в том кадре, в котором они программируются.

Каждый кадр заканчивается символом LF, запись символа LF не требуется, он автоматически создается при переключении строки. Программа заканчивается командами М2, М30 или М99. Кадр может состоять максимально из 512 символов (включая комментарий и символ конца кадра LF).

Подготовительные функции G обеспечивают все действия станка.

Х, Y, Z — линейные координатные оси станка, координата Z всегда параллельна оси шпинделя станка или перпендикулярна плоскости закрепления детали для станков с двухповоротной фрезерной головкой; А, С, В — угловые координаты вращения относительно линейных координатных осей. Если станок имеет больше двух шпинделей, а также инструментальных головок, то появляются дополнительные координатные оси Х’, Y’, Z’, А’, С’, В’ и т. д.

Следует отметить, что подготовительные функции позволяют переходить к системе координат детали, что в ряде случаев позволяет отказаться от применения специальных приспособлений.

Дополнительные функции М отвечают за включение, выключение шпинделя, насосных станций для подачи СОЖ, направление вращения шпинделя, конец программы.

Функция шпинделя S задает частоту вращения шпинделя.

Функция инструмента Т задает номер инструмента или инструментальной наладки.

Функция подачи F задает значение подачи.

Система координат рабочего пространства станка и направления положительных перемещений

Рис. 1. Система координат рабочего пространства станка и направления положительных перемещений

Система координат станка и направления положительных перемещений приведены на рисунке 1.

Управляющие программы могут быть составлены в системе координат станка, в этом случае применяемая станочная оснастка должна быть согласована с координатной сеткой стола станка. Согласование выполняется тем, что опорная плита приспособления имеет центрирующий палец и шпонку. Палец совмещается с втулкой, запрессованной в центре стола станка, а шпонка — с классным пазом. Таким образом, рабочее пространство станка в плоскости ХY совмещается с системой координат приспособления. В системе координат приспособления выполнены базовые поверхности, например плоскость и два пальца (цилиндрический и срезанный). Следовательно, погрешности базирования имеют место как при установке приспособления, так и при установке детали.

При интенсивной эксплуатации в условиях многономенклатурного производства, т. е. при частой смене приспособлений необходимо выполнять перепроверку не только оснастки, но и направляющих базовых поверхностей стола станка, а именно центрирующую втулку и классный паз.

С учетом этого целесообразно обработку выполнять в системе координат детали. Приспособление ориентируется только по одной оси, а привязка к системе координат детали выполняется измерительными датчиками. В этом случае кроме исключения погрешности базирования снижаются требования к срокам перепроверки оснастки, более того, появляется возможность шире применять нормализованные приспособления или наладки из них без привязки к системе координат станка.

Подготовительные функции G, дополнительные функции М приведены в таблицах 1, 2.

Так, на фрезерных станках смена инструмента выполняется в следующей последовательности: с помощью команды Т выбирается инструмент, а его смена происходит только по команде M6.

Для револьверных головок токарных станков для смены инструмента достаточно команды Т.

Функция шпинделя S задает частоту вращения шпинделя, функция инструмента Т задает номер инструментальной наладки или инструмента, функция подачи F задает значение подачи.

Таблица 1. Подготовительные функции G

Инструкция Описание
G00 Линейная интерполяция при ускоренном перемещении
G01 Линейная интерполяция при скорости подачи
G02 Круговая интерполяция по часовой стрелке
G03 Круговая интерполяция против часовой стрелки
G04 Выдержка времени
G05 Круговая интерполяция с выходом на круговую траекторию по касательной
G06 Снижение допустимого уровня ускорения
G07 Отмена снижения допустимого уровня ускорения
G0S Управление скоростью подачи в точках перегиба
G09 Отмена управления скоростью подачи в точках перегиба
G10 Ускоренное перемещение в полярных координатах
G11 Линейная интерполяция в полярных координатах
G12 Круговая интерполяция по часовой стрелке в полярных координатах
G13 Круговая интерполяция против часовой стрелки в полярных координатах
G14 Программирование величины коэффициента усиления по скорости следящего привода
G15 Отмена G14
G16 Программирование без указания плоскости
G17 Выбор плоскости УХ
G1S Выбор плоскости ZX
G19 Выбор плоскости УZ
G20 Задание полюса и плоскости координат при программировании в полярных координатах
G21 Программирование классификации осей
G22 Активизация таблиц
G23 Программирование условного перехода
G24 Программирование безусловного перехода
G32 Нарезание резьбы в режиме линейной интерполяции без компенсирующего патрона
G34 Скругление угла для двух соседних прямолинейных участков (с допустимым отклонением под адресом Е)
G35 Выключение сглаживания угла
G36 Выключение запрограммированного при скруглении угла отклонения, которое становится равным машинному параметру
G37 Программирование точки для зеркального отображения или поворота координат
G38 Активизация зеркального отображения, поворота координат, масштабирования
G39 Отмена зеркального отображения, поворота координат, масштабирования
G40 Отмена эквидистантной коррекции
G41 Эквидистантная коррекция слева по направлению подачи
G42 Эквидистантная коррекция справа по направлению подачи
G53 Отмена смещения нуля
G54-G59 Инициация смещения нуля
G60 Смещение координатной системы программы
G61 Точное позиционирование при движении со скоростью подачи
G62 Отмена точного позиционирования
G63 Включение 100% от запрограммированного значения скорости
G64 Привязывание скорости подачи к точке контакта фрезы и детали
G65 Привязывание скорости подачи к центру фрезы
G66 Активизация значения скорости заданной потенциометром
G67 Отмена смещения координатной системы программы
G68 Вариант сопряжения отрезков эквидистант по дуге
G69 Вариант сопряжения отрезков эквидистант по траектории пересечения эквидистант
G70 Программирование в дюймах
G71 Отмена программирования в дюймах
G73 Линейная интерполяция с точным позиционированием
G74 Выход в начало координат
G75 Работа с датчиком касания
G76 Перемещение в точку с абсолютными координатами в системе координат станка
G78 Активизация сверлильной оси
G79 Деактивация одной сверлильной оси или всех сразу
G80 Отмена вызова стандартных циклов
G81, G82 Стандартный цикл сверления
G83 Стандартный цикл глубокого сверления
G84 Цикл нарезания резьбы с компенсирующим патроном
G85, G86 Стандартный цикл рассверливания
G90 Программирование в абсолютных координатах
G91 Программирование в относительных координатах
G92 Установка значений координат
G93 Программирование времени отработки кадра
G94 Программирование подачи в мм/мин
G95 Программирование подачи в мм/об
G97 Программирование скорости резания
G105 Установка нуля для линейных бесконечных осей
G108 Управление подачей в точках перегиба с учетом Look Ahead
G112 Деактивация опережающего управления скоростью
G113 Активация опережающего управления торможением
G114 Активация опережающего управления скоростью
G115 Деактивация опережающего управления скоростью
G138 Включение компенсации положения заготовки
G139 Выключение компенсации положения заготовки
G145-845 Активизация внешней коррекции со стороны программируемого контролера
G146 Выключение внешней коррекции инструмента
G147, G847 Вторичная компенсационная группа коррекций инструмента; коррекции соотнесены с осями
G148 Отмена дополнительной компенсации инструмента
G153 Отмена первого аддитивного смещения нуля
G154-159 Индикация первого аддитивного смещения нуля
G160-360 Внешнее смещение нуля
G161 Точное позиционирование при ускоренном перемещении
G162 Отмена точного позиционирования при ускоренном перемещении
G163 Точное позиционирование при ускоренном перемещении и перемещение со скоростью подачи
G164 Первая опция точного позиционирования
G165 Вторая опция точного позиционирования
G166 Третья опция точного позиционирования
G167 Отмена внешнего смещения нуля
G168 Смещение координатной системы управляющей программы
G169 Отмена всех смещений координатной системы
G184 Цикл нарезания резьбы без компенсирующего патрона
G189 Программирование в абсолютных координатах для бесконечных осей
G190 Программирование в абсолютных координатах «слово за словом»
G191 Программирование в относительных координатах «слово за словом»
G192 Установка нижнего предела частоты вращения в управляющей программе
G194 Программирование скорости (подачи, частоты вращения) с адаптацией ускорения
G200 Линейная интерполяция на ускоренном перемещении без торможения до V = 0
G202 Винтовая интерполяция по часовой стрелке
G203 Винтовая интерполяция против часовой стрелки
G206 Активизация и сохранение в памяти максимальных значений ускорений
G228 Переходы от кадра к кадру без торможения
G253 Отмена второго аддитивного смещения нуля
G254-259 Инициация второго аддитивного смещения нуля
G268 Аддитивное смещение координатной системы управляющей программы
G269 Отмена аддитивного смещения координатной системы управляющей программы
G292 Установка верхнего предела частоты вращения в управляющей программе
G301 Включение осциллирующего движения
G350 Установка параметров осциллирующего движения
G408 Формирование гладкого ускорения при движении от точки к точке
G500 Обнаружение возможных коллизий при опережающем просмотре кадров
G543 Включение управления коллизиями при опережающем просмотре кадров
G544 Выключение управления коллизиями при опережающем просмотре кадров
G575 Переключение кадров высокоскоростным внешним сигналом
G580 Расформирование координатных осей
G581 Формирование координатных осей
G608 Формирование гладкого ускорения при движении от точки к точке для каждой оси в отдельности

Примечание. Для каждой системы управления некоторые значения подготовительных функций могут иметь разные значения в зависимости от изготовителя станка. Следует отметить, что для расширения технологических возможностей оборудования у изготовителей систем ЧПУ имеет место тенденция увеличения подготовительных функций.

Таблица 2. Дополнительные функции М

Инструкция Описание
МО Остановка программы
М1 Остановка по требованию
М2 Конец программы
М3 Включение вращения шпинделя по часовой стрелке
М4 Включение вращения шпинделя против часовой стрелки
М5 Остановка шпинделя
М2=3 Инструмент с механическим приводом включен по часовой стрелке
М2=4 Инструмент с механическим приводом включен против часовой стрелки
М2=5 Инструмент с механическим приводом выключен
М6 Автоматическая смена инструмента
М7 Включение обдува воздухом
МS Включение подачи СОЖ
М9 Выключение охлаждения
М1О Отключение обдува воздухом
М11 Зажим инструмента
М12 Разжим инструмента
М13 Включение вращения шпинделя по часовой стрелке совместно с включением СОЖ
М14 Включение вращения шпинделя против часовой стрелке совместно с включением СОЖ
М15 Включение СОЖ для смыва стружки
М17 Конец подпрограммы
М19 Ориентация шпинделя
М21 Включение зеркального отображения программы вдоль оси Х
М22 Включение зеркального отображения программы вдоль оси У
М23 Отключение зеркального отображения программы
М29 Включение режима жесткого резьбонарезания
М3О Конец программы с возможностью одновременного выключения питания станка
М52 Перемещение магазина на позицию вправо
М53 Перемещение магазина на позицию влево
М7О Инициализация магазина
М71 Опускание активного кармана магазина
М72 Поворот манипулятора на 60°
М73 Разжим инструмента
М74 Поворот манипулятора на 120°
М75 Зажим инструмента
М76 Поворот манипулятора на 180°
М77 Поднятие активного кармана магазина
М98 Вызов подпрограммы
М99 Возврат в основную программу

Примечакие. Для разных систем управления и типов станков дополнительные функции могут иметь другие значения, например активировать перемещение задней бабки, функции загрузочного устройства, люнета и т. д.

При создании программы ЧПУ само программирование, т. е. преобразование отдельных рабочих переходов в язык ЧПУ, часто является лишь небольшой частью работы по программированию.

Перед программированием необходимо осуществить планирование и подготовку рабочих переходов. Чем точнее будет спланировано начало и структура программы ЧПУ, тем быстрее и проще будет осуществляться само программирование и тем более наглядной и менее подверженной ошибкам будет готовая программа ЧПУ.

Преимущество наглядных программ особо проявляется тогда, когда позднее необходимо вносить изменения.

Так как не каждая программа имеет такую же структуру, то не имеет смысла работать по типовому шаблону. Однако для большинства случаев целесообразно придерживаться следующей последовательности.

1. Подготовка чертежа детали заключается:

  • а) в определении нулевой точки детали;
  • б) в нанесении системы координат;
  • в) в вычислении возможно отсутствующих координат.

2. Определение процесса обработки:

  • а) Когда будут использоваться, какие инструменты и для обработки каких контуров?
  • б) В какой последовательности будут изготовляться отдельные элементы детали?
  • в) Какие отдельные элементы повторяются (возможно, в повернутом виде) и должны быть сохранены в подпрограмме?
  • г) Имеются ли в других программах обработки деталей или подпрограммах контуры деталей, которые могут быть повторно использованы для актуальной детали?
  • д) Где целесообразны или необходимы смещения нулевой точки, вращение, отражение, масштабирование (концепция фрейма)?

3. Создание технологической карты. Определить поочередно все процессы обработки станка, к примеру:

  • а) движения ускоренным ходом для позиционирования;
  • б) смена инструмента;
  • в) определение плоскости обработки;
  • г) свободный ход для дополнительного измерения;
  • д) включение/выключение шпинделя, СОЖ;
  • е) вызов данных инструмента;
  • ж) подача;
  • з) коррекция траектории;
  • и) подвод к контуру;
  • к) отвод от контура и т. д.

4. Перевод переходов на язык программирования: запись каждого перехода как кадра ЧПУ (или кадров ЧПУ).

5. Соединение всех отдельных переходов в операцию, как правило, в одной программе. Иногда, особенно при обработке крупногабаритных деталей в программу, могут быть выделены переходы черновой, получистовой и чистовой обработки. Это имело место при ограниченном объеме памяти, характерном для устаревших систем ЧПУ. Для современных систем программного управления объем памяти практически не ограничивает технологические возможности станков.

В современных системах программного управления широко применяются стандартные циклы обработки. Их использование значительно сокращает затраты времени на программирование.

Некоторые постоянные цикла для систем управления, используемые в программном обеспечении WIN NC SINUMERIK, приведены ниже:

  • CYCLE81 — сверление, центрование;
  • CYCLE82 — сверление, зенкерование;
  • CYCLE83 — сверление глубоких отверстий спиральными сверлами;
  • CYCLE84 — нарезание внутренней резьбы без компенсирующего патрона;
  • CYCLE840 — нарезание внутренней резьбы с компенсирующим патроном для метчика;
  • CYCLE85 — растачивание 1;
  • CYCLE86 — растачивание 2;
  • CYCLE87 — растачивание 3;
  • CYCLE88 — растачивание 4;
  • CYCLE89 — растачивание 5;
  • CYCLE93 — проточка;
  • CYCLE94 — внутренняя выточка;
  • CYCLE95 — цикл снятия припуска;
  • CYCLE96 — резьбовая выточка;
  • CYCLE97 — цикл нарезания резьбы.

Следует отметить, что системы программного управления высокого уровня являются открытыми, что позволяет расширить библиотеку стандартных циклов обработки типовых поверхностей характерных для производства данного типа продукции и тем самым сократить сроки подготовки производства.

Текущее положение между системами автоматизированного проектирования технологических процессов, управляющих программ и ЧПУ разных изготовителей

Рис. 2. Текущее положение между системами автоматизированного проектирования технологических процессов, управляющих программ и ЧПУ разных изготовителей

Применение CAM систем привело к необходимости для каждой системы программного управления разрабатывать постпроцессоры, без которых оборудование не понимает программы без их перевода в машинные коды (рис. 2).

Программирование современных систем ЧПУ выполняется в соответствии со стандартом ISO 6983 (DIN 66025), которому уже более 50 лет и который, как считают программисты, якобы тормозит развитие ЧПУ-технологий. Термин «ЧПУ-технологии», по мнению автора, не правомерен, обработка деталей на станках с ЧПУ подчиняется всем закономерностям технологии машиностроения и обработки металлов резанием или других методов формообразования.

Нарушение закономерностей технологических наук приводит:

  • к повышенному короблению деталей;
  • к снижению точности линейных размеров;
  • к росту трудоемкости обработки деталей и т. д.

Основным отличием для многоцелевых станков является предельно выраженная концентрация операций, не только характерная для данного вида оборудования, но и реализуемая приводным инструментом и специальной шпиндельной оснасткой, а также методы обеспечения точности с использованием станочных измерительных систем. Стандарт поддерживает простые команды для элементарных перемещений и логических операций. В настоящее время для решения сложных геометрических и логических задач в системах программного управления кроме машинных кодов в соответствии с DIN 66025 (ISO 7bit) применяют языки программирования высокого уровня. Управляющие программы в стандарте ISO 6983 содержат незначительное количество информации, полученной на уровне CAD-CAM систем. Однако более серьезным недостатком, как считают разработчики систем программного управления, является невозможность двустороннего обмена информацией с этими системами, что означает, что любые изменения в управляющей программе не могут быть отображены в восходящем информационном потоке к системам CAD-CAM. Необходимо отметить, что это целесообразно не для всех отраслей промышленности. Так, например, сглаживание плавного сопряжений теоретических контуров сплайнами допустимо, а сопряжение двух поверхностей требует анализа возможных методов их формообразования, для ряда конструкционных материалов могут иметь место технологические ограничения, например, минимально допустимые радиусы сопряжения конструктивных элементов деталей из высокопрочных алюминиевых сплавов и т. д.

В отличие от DIN 66025 (ISO 6983) разрабатываемый стандарт STEP-NC ISO 14649 (на данный период разработаны не все его модули) определяет специальную структуру управляющей программы ЧПУ — program structure, которую используют для построения логических блоков в рамках структурного программирования обработки. Структура управляющей программы не является списком типовых обрабатываемых форм (features); она определяет план операции (workplan), который представляет собой последовательность исполняемых объектов (executables). STEP-NC предполагает широкий обмен информацией между инженерными службами, в том числе подготовки и планирования производства, а также цеховым уровнем.

Структура предполагаемого обмена информацией приведена на рисунке 3.

Структура планируемого информационного обмена вызывает массу вопросов:

  • недостаточный уровень формализации инженерных работ затрудняет создание баз знаний;
  • большое количество каталогов режущего инструмента, в которых приведена недостаточная информация для выбора инструмента для обработки специальных материалов и условий его применения, что требует в большинстве случаев экспериментальной проверки;
  • в каталогах оборудования часто отсутствует информация о позиционной точности управляемых осей станка, динамические характеристики приводов и т. д.;
  • устаревшие технологические справочники, разработанные еще для универсального оборудования и систематически переиздаваемые практически без обновления технологической информации;
  • отсутствие систематизированной информации о прогрессивной технологической оснастке.

обмен информацией между инженерными службами и цеховым уровнем

Рис. 3. Планируемый обмен информацией между инженерными службами и цеховым уровнем

Дополнительно необходимо отметить, что не существует типовых методов оптимизации программирования станков по параметрам, позволяющих выбрать наилучший станок или группу станков для выполнения того или иного технологической операции или процесса.

На эти проблемы много раз указывали пользователи различных станков, вовлеченные в процесс стандартизации STEP-NC. Производители оборудования и разработчики программного обеспечения стараются учесть требования пользователей и реализуют некоторые из указанных функций в своей продукции. Однако часто их работа не подчиняется единому стандарту, что, по существующему мнению, может тормозить обновление промышленных систем. Также нельзя не упомянуть о том, что выпускаемое оборудование редко пользуется всеми современными технологиями и в результате производственная база оказывается не такой эффективной и совершенной. С учетом этого изготовители систем программного управления выбрали компромиссный вариант, позволяющий работать как по DIN 66025 (ISO 6983), так и по ISO 14649 (рис. 4).

архитектура системы ЧПУ, поддерживающая стандарты DIN 66025 (ISO 6983) и ISO 14649 (STEP-NC)

Рис. 4. Смешанная архитектура системы ЧПУ, поддерживающая стандарты DIN 66025 (ISO 6983) и ISO 14649 (STEP-NC)

Все это свидетельствует о том, что кроме совершенствования систем программного управления и методов программирования необходимо заниматься на системной основе и подготовкой технологической информации:

  • инструмент, обеспечивающий интенсификацию режимов обработки;
  • рекомендации по применению различных конструкций инструмента;
  • зависимости для расчета резания;
  • зависимости для расчета составляющих усилий резания;
  • базы данных по оборудованию с ЧПУ и их технологические возможности, в том числе и в случаях оснащения разными системами управления;
  • алгоритмы расчета режимов резания для станков, где в качестве привода главного движения применены электрошпинделя;
  • стратегия обработки различных конструктивных элементов деталей на станках с ЧПУ;
  • базы данных по применению серийно выпускаемой оснастки для станков с ЧПУ;
  • измерительные системы для станков, включая датчики нулевого отсчета и измерительные;
  • производственные инструкции по сборке инструментальных наладок и их балансировке;
  • технологические регламенты по проверке точности станков с ЧПУ, перепроверки шпиндельной оснастки, особенно оправок и втулок типа HSK и многое другое.

1. Внутренние и внешние подпрограммы

Язык G— и М-кодов, как и любой другой язык программирования, позволяет работать с подпрограммами и совершать переходы. Посредством функции подпрограммы основная (главная) управляющая программа может вызывать из памяти другую программу (подпрограмму) и выполнять ее определенное число раз.

Если управляющая программа (УП) содержит часто повторяемое действие или работает по определенному шаблону, то использование подпрограмм позволяет упростить программу обработки и сделать ее гораздо меньшей в размере.

Существуют два вида подпрограмм – внутренние и внешние. Внутренние подпрограммы вызываются при помощи кода М97 и содержатся внутри главной программы (см. рис. 1). То есть они находятся в одном файле. Внешние подпрограммы вызываются кодом М98 и не содержатся в теле главной программы (см. рис. 2). В этом случае главная программа и подпрограмма находятся в разных файлах.

Внутренняя подпрограмма

Рис. 1. Внутренняя подпрограмма

Внутренняя подпрограмма выполняется, когда СЧПУ встречает код М97. При этом адрес Р указывает на номер кадра, к которому нужно перейти, то есть туда, где начинается внутренняя подпрограмма. Когда СЧПУ находит кадр с кодом окончания подпрограммы М99, то выполнение внутренней подпрограммы завершается и управление передается кадру главной программы, следующему за кадром, вызвавшим завершенную подпрограмму. Внешние подпрограммы работают похожим образом. Когда в главной программе встречается кадр с кодом М98, то вызывается подпрограмма с номером, установленным при помощи Р-адреса.

Внешняя подпрограмма

Рис. 2. Внешняя подпрограмма

При нахождении кода М99 управление возвращается главной программе, то есть выполняется кадр главной программы, следующий за кадром с М98. Учтите, что внешняя подпрограмма находится в отдельном файле. По сути, внешняя подпрограмма – это отдельная программа с индивидуальным номером, которая при желании может быть выполнена независимо от главной программы. Для вызова подпрограммы необходимо, чтобы она находилась в памяти СЧПУ.

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

%

O1023 Программа № 1023

N10 G21 G40 G49 G54 G80 G90 Строка безопасности

N20 Т3 М06 Вызов инструмента № 3

N30 G43 H3 Компенсация длины инструмента

N40 M03 S1000 Включение оборотов шпинделя

N50 G00 X0 Y0 Позиционирование в X0 Y0

N60 Z0.5 Позиционирование в Z0.5

N70 M97 P200 Вызов внутренней подпрограммы

N80 M05 Выключение оборотов шпинделя

N90 M02 Окончание программы

N200 G01 X-0.5 F50 Начало внутренней подпрограммы

N210 X10 Y10 …

N220 Z0.5 …

M230 M99 Конец внутренней подпрограммы

%

При помощи L-адреса определяется, сколько раз нужно вызвать ту или иную подпрограмму. Если подпрограмму нужно вызвать всего один раз, то L в кадре можно не указывать.

М98 Р1000 L4 – подпрограмма будет вызвана 4 раза.

Большим преимуществом от использования подпрограмм является возможность удобной и эффективной работы с программными массивами и шаблонами. Пример такого написания программы представим в главе 11.

На рисунке 3 изображена деталь с 4 группами отверстий диаметром 6 мм. Нулевой точкой является верхний левый угол детали. Сначала создадим главную программу, которая будет позиционировать инструмент к каждой группе отверстий. Затем напишем подпрограмму, необходимую для сверления 4 отверстий в одной группе. Необходимо не забывать, что в подпрограмме используются относительные координаты, а смена инструмента и основные команды находятся в главной программе.

обработка повторяющихся операций с применением подпрограмм

Рис. 3. При обработке повторяющихся операций применение подпрограмм обеспечивает снижение объемов программы

Главная программа с пояснением:

%

O0001 Программа О0001

N10 G90 G40 G80 G49 G98 G21 Строка безопасности

N20 T1 M06 Вызов сверла Ф3 мм

N30 G43 H1 Компенсация длины инструмента

N40 M03 S1000 Включение оборотов шпинделя

N50 G00 X10 Y-10 Позиционирование к 1-й группе

N60 Z0.5 Подвод сверла к детали по Z

N70 M98 P1000 Вызов подпрограммы О1000

N70 G00 X40 Y-10 Позиционирование ко 2-й группе

N80 M98 P1000 Вызов подпрограммы О1000

N90 G00 X10 Y-40 Позиционирование к 3-й группе

N100 M98 P1000 Вызов подпрограммы О1000

N110 G00 X40 Y-40 Позиционирование к 4-й группе

N120 M98 P1000 Вызов подпрограммы О1000

N130 G91 G28 Z0 Отвод инструмента по Z

N140 M05 Останов шпинделя

N150 M30 Конец программы

%

Подпрограмма с пояснением:

%

O1000 Подпрограмма О1000

N10 G91 Режим относительных координат

N20 G99 G81 X5 Y0 Z-5 R0.5 Цикл сверления и 1-ое отверстие

N30 X-5 Y-5 Координаты 2-го отверстия

N40 X-5 Y5 Координаты 3-го отверстия

N50 X5 Y5 Координаты 4-го отверстия

N60 G80 Отмена цикла сверления

N70 G90 Режим абсолютных координат

N80 M99 Возврат в главную программу

%

Обе эти программы необходимо передать в СЧПУ, оператор станка должен вызвать программу О0001 и запустить ее. Главная программа работает с абсолютными координатами и перемещает инструмент последовательно в центр каждой из четырех групп отверстий. Когда СЧПУ встречает кадр с М98 Р1000, то происходит передача управления подпрограмме с номером 01000. В этот момент инструмент уже находится в центре группы отверстий.

Переключаемся в режим относительного (инкрементального) программирования и используем постоянный цикл сверления. После завершения сверления четырех отверстий одной группы выключаем цикл сверления командой G80 и переходим в режим абсолютных координат G90, для того чтобы правильно выполнить позиционирование в главной программе. Код М99 передает управление кадру главной программы, который следует за кадром, вызвавшим эту подпрограмму. Затем инструмент перемещается в центр следующей группы отверстий, и снова вызывается подпрограмма 01000. И так далее, пока не просверлим все отверстия и СЧПУ не прочтет код завершения программы М30.

Если бы мы создавали обычную программу обработки, то ее размер был бы значительно больше, так как пришлось бы указывать координаты всех 16 отверстий. Работая в таком формате, легче производить изменения. Например, если изменится диаметр окружности, на которой находятся отверстия группы, то в случае работы с подпрограммой достаточно пересчитать координаты центров четырех отверстий только в подпрограмме. Из главной программы можно вызвать несколько различных подпрограмм. Более того, из каждой подпрограммы можно вызвать несколько других подпрограмм. Системы ЧПУ могут накладывать ограничения на вложенность и количество выполняемых подпрограмм, поэтому внимательно прочитайте документацию станка и стойки, прежде чем начнете работать с подпрограммами.

2. Использование 4-й координатной оси вращения

Нередки случаи, когда на трехкоординатный станок с ЧПУ дополнительно монтируют управляемый поворотный стол (делительную головку). Управляемый поворотный стол (см. рис. 4) – это устройство, которое способно поворачивать закрепленную в нем деталь на требуемый угол по определенной команде. Обычно 4-я ось управляется при помощи адресов А или В, а числовое значение определяет угол поворота в градусах.

Управляемые поворотные столы LEHMANN

Рис. 4 Управляемые поворотные столы LEHMANN

Существуют два варианта работы с управляемым поворотным столом.

Первый вариант – нам просто необходимо повернуть его на определенный угол и затем выполнить какую-либо технологическую операцию (индексация).

Второй вариант – нужно выполнить фрезерование одновременно с поворотом стола.

В этом случае мы имеем синхронное линейное перемещение исполнительного органа станка по трем (или менее) координатам с вращением стола. При этом СЧПУ станка должна поддерживать данный вид интерполяции.

Для управления поворотным столом достаточно в кадр с линейной интерполяцией, позиционированием или постоянным циклом добавить адрес А (В):

  • G00 X_Y_Z_A_ – позиционирование;
  • G01 X_Y_Z_A_F_ – линейная интерполяция.

Типичный формат для работы с постоянным циклом:

G81 Х0 Y0 Z-5 А0 F45 R0.5

А15

А30

А45

G80

Программирование 4-й оси не должно вызвать у вас особых трудностей. Просто нужно учесть несколько технических особенностей при работе с управляемым поворотным столом. Во-первых, поворотный стол может вращаться как в положительном, так и в отрицательном направлении. Направление вращения и соответствующий знак определяются по правилу правой руки. Во-вторых, поворот стола может быть запрограммирован как в абсолютных, так и в относительных координатах. В-третьих, у многих станков существует ограничение на числовое значение угла поворота.

Например, вам нужно повернуть стол на 400°, а СЧПУ позволяет указывать угол не более 360°. Придется запрограммировать дополнительный кадр с углом в 40° относительно предыдущего положения стола. Ну и напоследок учтите, что чем дальше мы удалимся от центра вращения, тем большей будет ошибка линейного перемещения. Следующие примеры помогут вам понять, как программируется дополнительная ось вращения. В первом случае необходимо просверлить отверстия на периферии диска (см. рис. 5).

сверления отверстий

Рис. 5. Для сверления четырех отверстий по внешнему торцу диска, закрепленного в кулачках поворотного стола, необходимо поворачивать стол на 90°

%

О3000 Программа О3000

N10 G21 G40 G49 G80 G90 G98 Строка безопасности

N20 G54 Рабочая система координат

N30 T2 M06 Вызов инструмента № 2

N40 M03 S1000 Включение оборотов шпинделя

N50 G00 X0 Y0 Позиционирование в X0 Y0

N60 Z5 Позиционирование в Z5

N70 G81 X0 Y0 Z-10 A0 F45 R1 Цикл сверления, сверление 1-го отверстия

N80 A90 Поворот стола на 90°, сверление

N90 A180 Поворот стола на 180°, сверление

N100 A270 Поворот стола на 270°, сверление

N110 G80 Отмена цикла сверления

N120 G91 G00 A-270 Поворот стола в начальное положение

N130 M05 Выключение оборотов шпинделя

N140 M30 Конец программы

%

Во втором случае нужно получить винтовую канавку на поверхности вала, используя одновременное линейное перемещение фрезы и вращение поворотного стола (см. рис. 6).

Вал закреплен в кулачках управляемого поворотного стола. Самый простой способ обработки такой канавки – расчет при помощи CAD/САМсистемы.

винтовая канавка на поверхности вала

Рис. 6. Необходимо получить винтовую канавку на поверхности вала

% O0001

N100 G21

N102 G0 G17 G40 G49 G80 G90

N104 T1 M6

N106 G0 G90 G54 X-16.612 Y0. A-2.993 S1000 M3

N108 G43 H1 Z125.171 M8

N110 Z35.605 A-10.578

N112 G1 Z33.932 A13.459 F200.

N234 G0 Z123.253 A3.674

N236 M5

N238 G91 G28 Z0. M9

N240 G28 X0. Y0. A0.

N242 M30

%

Просмотров: 73

G-код — условное именование языка программирования устройств с числовым программным управлением (ЧПУ). Был создан компанией Electronic Industries Alliance в начале 1960-х. Окончательная доработка была одобрена в феврале 1980 года как стандарт RS274D. Комитет ISO утвердил G-код как стандарт ISO 6983-1:2009, Госкомитет по стандартам СССР — как ГОСТ 20999-83[1]. В советской технической литературе G-код обозначается как код ИСО 7-бит (ISO 7-bit), это вызвано тем, что G-код кодировали на 8-дорожечную перфоленту в коде ISO 7-bit (разработан для представления информации УЧПУ в виде машинного кода так же, как и коды AEG и PC8C), восьмая дорожка использовалась для контроля чётности.

Производители систем УЧПУ (CNC), как правило, используют ПО управления станком, для которого написана (оператором) программа обработки в качестве осмысленных команд управления, используется G-код в качестве базового подмножества языка программирования, расширяя его по своему усмотрению[2].

G-Code — это также стандартный язык, используемый многими моделями 3D-принтеров для управления процессом печати. Файлы GCODE могут быть открыты с помощью различных программ 3D-печати, например, Simplify3D, GCode Viewer, а также с помощью текстового редактора, поскольку их содержимое представляет собой обычный текст.

Структура программы[править | править код]

Основные требования к структуре[править | править код]

Программа, написанная с использованием G-кода, имеет жёсткую структуру. Все команды управления объединяются в кадры — группы, состоящие из одной или более команд. Кадр завершается символом перевода строки (CR/LF) и может необязательно иметь явно указанный номер, начинающийся с буквы N, за исключением первого кадра программы и комментариев. Этот номер является по сути меткой кадра и необязательно должен нарастать в программе или представлять собой последовательные целые числа, важно, чтобы номер не повторялся в пределах программы, например, допустимо:

...
N200 G0
n100 x0
x5y4
...

В большинстве современных интерпретаторов кода допустимо использовать в коде программы строчные и прописные буквы, как в примере.

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

Первый (а в некоторых случаях ещё и последний) кадр содержит только один необязательный знак <%>. Завершается программа командами M02 или M30.

Комментарии к программе размещаются в круглых скобках. Комментарий может располагаться как в отдельной строке, так и в любом месте кадра среди команд. Недопустимо оформлять в качестве комментария несколько строк, охваченных парой круглых скобок.

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

Максимальное число элементарных команд и заданий координат в одном кадре зависит от конкретного интерпретатора языка управления станками, но для большинства популярных интерпретаторов (стоек управления) не превышает 6.

Координаты задаются указанием оси с последующим числовым значением координаты. Целая и дробная части числа координаты разделяются десятичной точкой. Допустимо опускание незначащих нулей, либо их добавление. Также в подавляющем количестве интерпретаторов допустимо не добавлять десятичную точку к целым числам. Например: Y0.5 и Y.5, Y77, Y77. и Y077.0.

Существуют так называемые модальные и немодальные команды. Модальные команды изменяют некоторый параметр/настройку и эта настройка действует на все далее исполняемые кадры программы до их смены очередной модальной командой либо её отмены. К модальным командам, например, относятся скорости перемещения инструмента, управления скоростью шпинделя, подачи смазочно-охлаждающей жидкости (СОЖ) и др. Немодальные команды действуют только внутри их содержащего кадра. К немодальным командам относятся, например, команды разгона и торможения шпинделя.

Интерпретатор кода (стойка управления) станком запоминает значение введённых параметров и настроек до их смены очередной модальной командой или отмены ранее введённой модальной команды, поэтому необязательно указание в каждом кадре, например, скорости перемещения инструмента.

Описание и вызов подпрограмм[править | править код]

Язык допускает многократное исполнение однократно записанной последовательности команд и перемещений инструмента, вызываемую из разных частей программы, например, вырезания в листовой заготовке многих отверстий с одинаковым сложным контуром, расположенных в разных местах будущей детали. При этом в теле подпрограммы описывается траектория движения инструмента для вырезания одного отверстия, а в программе производится многократный вызов подпрограммы из разных мест. В теле подпрограммы перемещения инструмента задаются в относительных координатах — координатах, описывающих траекторию инструмента при обработке отверстия, переход к относительной системе координат (иногда такую систему координат называют <инкрементной>) производится командой G91 в начале тела подпрограммы, а возврат к абсолютной системе координат командой G90 — в конце тела подпрограммы. В инкрементной системе команды перемещения инструмента интерпретируются как приращения, например:

g90 x5 (назначение абсолютной системы координат, после исполнения этого кадра машинная координата по оси X станет равной 5)
g91 x10 (назначение инкрементной системы координат, после исполнения этого кадра машинная координата по оси X станет равной 15)
x-15 (после исполнения этого кадра машинная координата по оси X станет равной 0, так как продолжает действовать инкрементная система координат, заданная модальной командой g91)

Тело подпрограммы обязательно должно быть описано до команды конца программы — М30, но допустимо расположение подпрограммы после команды М02 — конца программы и иметь имя, начинающееся с буквы О с цифрами номера подпрограммы, например, О112. В конце тела подпрограммы помещается команда возврата в основную программу — М99.

В программе вызов подпрограммы производится командой М98 с указанием обязательного параметра имени подпрограммы P. Недопустимо совпадение имён подпрограмм в пределах одной программы. Пример вызова подпрограммы O112: M98 P112. Допустимо при вызове подпрограммы указание числа вызовов подпрограммы добавлением необязательного параметра L, например, двукратный вызов подпрограммы 112: M98 P112 L2, что, например, может быть полезно при описании выполнения второго прохода чистовой обработки после первого прохода черновой обработки. При опущенном параметре L подпрограмма вызывается однократно.

Управляющее математическое обеспечение некоторых станков или некоторые интерпретаторы G-кода допускают вызов подпрограмм по номеру строки (кадра) в программе, для этого используется команда M97 с параметром P, указывающем на номер (метку) строки, например, M97 P321 L4 — четырёхкратный вызов подпрограммы начинающейся с меткой N321. Оформленная таким образом подпрограмма как обычно должна заканчиваться командой M99 — возвратом в вызвавшую программу.

Допустимо вложение подпрограмм, то есть из подпрограммы возможен вызов другой подпрограммы. Максимально допустимое число уровней вложения зависит от реализации конкретного интерпретатора G-кода.

Пример программы вырезания 2 прямоугольных отверстий 10 x 20 мм, увеличенных на диаметр торцевой фрезы, с координатами левых нижних углов отверстий x=57, y=62 и x=104, y=76 в листовой заготовке толщиной 5 мм с вызовом подпрограммы описывающей вырезание одного отверстия
...
(Фрагмент программы)
G00 X57 Y62 (позиционирование по X, Y на 1-е отверстие)
M98 P112 (вырезание 1-го отверстия)
G00 X104 Y76 (позиционирование по X, Y на 2-е отверстие)
M98 P112 (вырезание 2-го отверстия)
...
М02 (Конец программы)
...
(Тело подпрограммы)
O112 (Метка подпрограммы, номер 112)
G00 Z1 (Подвод инструмента на высоту 1 мм над поверхностью заготовки со скоростью холостого перемещения)
G01 F40 Z-5.5 (Врезание инструмента на глубину -5,5 мм в заготовку со скоростью 40 мм/мин) 
G91 (Переход в относительную систему координат, в этой системе вначале X=0, Y=0) 
G01 F20 X10 (Вырезание 1-й стороны прямоугольника со скоростью 20 мм/мин) 
Y20 (Вырезание 2-й стороны прямоугольника со скоростью 20 мм/мин)
X-10 (Вырезание 3-й стороны прямоугольника со скоростью 20 мм/мин. Так как включена инкрементальная система координат, то возврат инструмента в исходную точку до вызова подпрограммы указывается в виде приращения координаты, здесь -10.)
Y-20 (Вырезание 4-й стороны прямоугольника со скоростью 20 мм/мин)
G90 (Переход в абсолютную систему координат, восстановление текущих координат до перехода в относительную систему)
G00 Z5 (Подъём инструмента на высоту 5 мм над поверхностью заготовки со скоростью холостого перемещения) 
M99 (Возврат в вызывавшую программу или подпрограмму) 
...
М30 (Конец интерпретируемого кода программы. После исполнения этой команды указатель номера кадра устанавливается на 1-ю строку программы и исполнение программы останавливается)

Сводная таблица кодов[править | править код]

Основные (называемые в стандарте подготовительными) команды языка начинаются с буквы G (аббревиатура от слова General):

  • Перемещение рабочих органов оборудования с заданной скоростью (линейное и круговое)
  • Выполнение типовых последовательностей (таких, как обработка отверстий и резьба)
  • Управление параметрами инструмента, системами координат, и рабочих плоскостей
Подготовительные (основные) команды

Коды Описание
G00-G03 Позиционирование инструмента
G17-G19 Переключение рабочих плоскостей (XY, ZX, YZ)
G20-G21 Не стандартизовано
G40-G44 Компенсация размера различных частей инструмента (длина, диаметр)
G53-G59 Переключение систем координат
G80-G85 Циклы сверления, растачивания, нарезания резьбы
G90-G91 Переключение систем координат (абсолютная, относительная)

Таблица основных команд[править | править код]

Команда Описание Пример
G00[3] Ускоренное перемещение инструмента (холостой ход). При холостом перемещении НЕ ОБЯЗАТЕЛЬНО производится линейная интерполяция перемещения аналогично команде G01. В некоторых интерпретаторах при выполнении команды перемещения по нескольким осям одновременно, перемещение по осям отрабатывается с максимальной скоростью, поэтому линейное перемещение от исходной точки в конечную точку не обеспечивается, поэтому нельзя производить ходы обработки детали при действии этой модальной команды. G0 X0 Y0 Z100.
G01 Линейная интерполяция, модальная команда. Инструмент (рабочий орган) перемещается по отрезку прямой линии от исходной точки с координатами до исполнения команды в точку с заданными в команде координатами, скорость перемещения задаётся здесь же или ранее модальной командой F. При этом скорость перемещения связана со скоростями перемещения по осям как

{displaystyle F={sqrt {F_{x}^{2}+F_{y}^{2}+F_{z}^{2}}}; } {displaystyle {frac {Delta L_{x}}{F_{x}}}={frac {Delta L_{y}}{F_{y}}}={frac {Delta L_{z}}{F_{z}}}, } {displaystyle Delta L_{x}, Delta L_{y}, Delta L_{z} } — приращения координат между кадрами; {displaystyle F_{x}, F_{y}, F_{z} } — скорости по осям.

G01 X0. Y0. Z100. F200.
G02 Круговая интерполяция по часовой стрелке, модальная команда. Инструмент перемещается по дуге окружности по часовой стрелке от исходной точки с координатами до исполнения команды в точку с заданными в команде координатами, скорость перемещения задаётся в этой команде параметром F, радиус дуги задаётся параметром R, либо указанием координат центра дуги параметрами I — (смещение центра по оси X относительно начальной координаты X), J — (смещение центра по оси Y относительно начальной координаты Y), К — (смещение центра по оси Z относительно начальной координаты Z) относительно начальных координат инструмента. Для указания плоскости, в которой производится круговая интерполяция, предварительно должна быть указана плоскость круговой интерполяции (в этом же или в другом предварительном кадре) модальной командой G17 (плоскость X-Y), или G18 (плоскость X-Z), или G19 (плоскость Y-Z). Скорость перемещения задана модальной командой F. G02 G17 X15. Y15. R5. F200.
или
G02 G17 X20. Y15. I-50. J-60.
G03 Круговая интерполяция против часовой стрелки. Параметры и действие аналогичны команде G02. G03 X15. Y15. R5. F200.
G04 Задержка выполнения программы, способ задания величины задержки зависит от реализации системы управления, P обычно задает паузу в миллисекундах, X — в секундах. В некоторых интерпретаторах P задает паузу в секундах и параметр X в этой команде не используется. Также в некоторых интерпретаторах возможно задание задержки параметром U. G04 P500 или G04 X.5
G10 Переключение абсолютной системы координат. В примере начало координат станет в точке 10, 10, 10 старых координат. G10 X10. Y10. Z10.
G15 Переход в полярную (цилиндрическую) систему координат. В этой системе параметр X задаёт радиус, а Y угол в градусах. Если включена абсолютная система координат (G90), то начало полярных координат будет в точке текущих координат 0; 0, если включена инкрементная система координат, то начало координат будет в точке, достигнутой при отработке предыдущего кадра. G15 X15. Y22.5
G16 Отмена полярной системы координат G16 X15. Y22.5
G17 Выбор рабочей плоскости X-Y G17
G18 Выбор рабочей плоскости Z-X G18
G19 Выбор рабочей плоскости Y-Z G19
G20 Режим работы в дюймовой системе G90 G20
G21 Режим работы в метрической системе G90 G21
G22 Активировать установленный предел перемещений (Инструмент не выйдет за их предел) G22 G01 X15. Y25.
G28 Вернуться на референтную точку G28 G91 Z0 Y0
G30 Поднятие по оси Z на точку смены инструмента G30 G91 Z0
G40 Отмена компенсации радиуса инструмента G1 G40 X0. Y0. F200.
G41 Компенсировать радиус инструмента слева от траектории G41 X15. Y15. D1 F100.
G42 Компенсировать радиус инструмента справа от траектории G42 X15. Y15. D1 F100.
G43 Компенсировать длину инструмента в положительную сторону. В основном применяется при смене инструмента. G43 X15. Y15. Z100. H1 S1000 M3
G44 Компенсировать длину инструмента в отрицательную сторону. Действие аналогично G43. G44 X15. Y15. Z4. H1 S1000 M3
G49 Отмена компенсации длины инструмента G49 Z100.
G50 Сброс всех масштабирующих коэффициентов в 1,0 G50
G51 Назначение масштабов. В примере — уменьшение масштаба по оси X в 10 раз. После этой модальной команды все указанные в командах перемещения и координаты по оси X будут умножаться на масштабирующий коэффициент 0,1 и результат интерпретироваться как требуемое перемещение. Если задать масштабирующий коэффициент по некоторой оси (или по любым осям) равным −1, то последующее движение будет зеркальным по этой оси (или осям, где масштабирующий коэффициент −1). G51 X.1
или G51 X-1
G53 Переход в систему координат станка. G53 G0 X0. Y0. Z0.
G54-G59 Переключиться на заданную оператором систему координат G54 G0 X0. Y0. Z100.
G61-G64 Переключение режимов Точный Стоп/Постоянная скорость
G68 Поворот координат на нужный угол G68 X0 Y0 R45.
G70 Цикл продольного чистового точения G70 P10 Q15.
G71 Цикл многопроходного продольного чернового точения G71 P10 Q15. D.5 U.2 W.5
G80 Отмена циклов сверления, растачивания, нарезания резьбы метчиком и т. д. G80
G81 Цикл сверления G81 X0 Y0. Z-10. R3. F100.
G82 Цикл сверления с задержкой G82 X0. Y0. Z-10. R3. P100 F100.
G83 Цикл прерывистого сверления (с периодическим полным выводом сверла). Параметр Z указывает полную глубину сверления от поверхности (Z=0), R — высота вывода инструмента над поверхностью для вывода стружки и также конечное положение после завершения сверления, Q — величина заглубления одного из нескольких заглублений при сверлении, F — скорость подачи (необязательна, при отсутствии этого параметра скорость определяется ранее заданной скоростью в команде G1. G83 Z-20 R1 Q2 f20
G84 Цикл нарезания резьбы G95 G84 M29 X0. Y0. Z-10. R3 F1.411
G90 Задание абсолютных координат опорных точек траектории G90 G1 X0.5. Y0.5. F10.
G91 Задание координат инкрементально относительно координат последней введённой опорной точки, перемещение инструмента в этой системе координат задаётся в виде приращений G91 G1 X4. Y5. F100.
G94 F (подача) — в формате мм/мин G94 G80 Z100. F75.
G95 F (подача) — в формате мм/об G95 G84 X0. Y0. Z-10. R3 F1.411
G99 После каждого цикла не отходить на <проходную точку> G99 G91 X10. K4.

Таблица технологических кодов[править | править код]

Технологические команды языка начинаются с буквы М (аббревиатура от слова Miscellaneous — дополнительный). Включают такие действия, как:

  • Сменить инструмент
  • Включить/выключить шпиндель
  • Включить/выключить охлаждение
  • Работа с подпрограммами
Вспомогательные (технологические) команды

Код Описание Пример
M00 Приостановить работу станка до нажатия кнопки <старт> на пульте управления, так называемая <безусловная технологическая остановка> G0 X0 Y0 Z100 M0
M01 Приостановить работу станка до нажатия кнопки <старт>, если включён режим подтверждения остановки. Если этот режим отключён, то команда игнорируется. Используется для начальной проверки (отладки) кода. G0 X0 Y0 Z100 M1
M02 Конец программы, без сброса модальных функций. Указатель номера кадра не изменяется. M02
M03 Начать вращение шпинделя по часовой стрелке M3 S2000
M04 Начать вращение шпинделя против часовой стрелки M4 S2000
M05 Остановить вращение шпинделя M5
M06 Сменить инструмент T15 M6
M07 Включить дополнительное охлаждение M3 S2000 M7
M08 Включить основное охлаждение. Иногда использование более одного M-кода в одной строке (как в примере) недопустимо, для этого используются M13 и M14 M3 S2000 M8
M09 Выключить охлаждение G0 X0 Y0 Z100 M5 M9
M13 Включить одновременно охлаждение и вращение шпинделя по часовой стрелке S2000 M13
M14 Включить одновременно охлаждение и вращение шпинделя против часовой стрелки S2000 M14
M17 Возврат из подпрограммы или из макроса (действие аналогично М99) M17
M48 Разрешить переопределять скорость подачи
M49 Запретить переопределение скорости подачи
M25 Замена инструмента вручную M25
M97 Запуск подпрограммы, находящейся в той же программе (где P — номер кадра, в примере переход осуществится к строке с меткой N25), реализована не во всех интерпретаторах, предположительно — только на станках HAAS M97 P25
M98 Запуск подпрограммы, находящейся отдельно от основной программы (где P — номер подпрограммы, в примере переход осуществится к программе O1015) M98 P1015
M99 Конец подпрограммы и переход в вызвавшую программу M99
M30 Конец программы, со сбросом модальных функций и изменением указателя номера кадра на начало программы. M30

Параметры команд[править | править код]

Параметры команд задаются буквами латинского алфавита

Код Описание Пример
X Перемещение инструмента в заданную точку с заданной координатой по оси X при работе в абсолютной системе координат (см. G90) или задание смещений относительно точки, достигнутой в предыдущем кадре при работе в инкрементной системе координат (см. G91) G0 X100 Y0 Z0
Y Аналогично Х по оси Y G0 X0 Y100 Z0
Z Аналогично Х по оси Z G0 X0 Y0 Z100
P При использовании в команде вызова подпрограммы (М98) — указание номера вызываемой подпрограммы с именем, заданным после буквы О, например Р301 вызовет подпрограмму с меткой О301. При использовании в команде задержки (G04) указывает время задержки в миллисекундах. G04 P500;

М98 Р301

О Метка подпрограммы с указанным номером О301
F Линейная скорость перемещения инструмента.

Для фрезерных станков это дюймы в минуту (IPM) или миллиметры в минуту (мм/мин),

Для токарных станков это дюймы за оборот (IPR) или миллиметры за оборот (mm/об). Выбор единиц измерения, дюймы или миллиметры выполняется командами G20 и G21.

G1 G91 X10 F100
S Частота вращения шпинделя в оборотах в минуту. S3000 M3
Т Указание номера инструмента в команде смены инструмента. Обычно указывается перед командой М6. Т1 М6
R Расстояние отвода инструмента в повторяющихся циклах обработки, например, прерывистого сверления глубоких отверстий (G81-G89) или радиус дуги при круговых интерполяциях перемещения инструмента (G02, G03). G81 Z-20 R2 или

G2 G91 X12.5 R12.5

D Параметр коррекции радиуса выбранного инструмента G1 G41 D1 X10. F150.
L Число вызовов подпрограммы, число вызовов макроса, или количество циклов в повторяющихся операциях X_Y_R_ — параметры, передаваемые в макрос M98 L82 P10 или G65 L82 P10 X_Y_R_
I Указание смещения по оси X координаты центра дуги при круговой интерполяции перемещения инструмента (см G02, G03). Координаты центра дуги по осям указываются в виде смещения относительно начальной точки (достигнутой в предыдущем кадре). Плоскость интерполяции (плоскость, которая параллельна заданной координатной плоскости указывается командами G17, G18, G19. G03 X10 Y10 I10 J0 F10
J Аналогично параметру I для оси Y. G03 X10 Y10 I0 J10 F10
K Аналогично параметру I для оси Z. G03 X10 Y10 I0 K0 F10

Пример[править | править код]

Гравировка буквы W. Красной ломаной линией показано движение инструмента от левой верхней точки.

Пример гравировка буквы W на глубину 2 мм, вписанной в прямоугольник 40×30 мм, (см. рисунок) на условном вертикально-фрезерном станке с ЧПУ в листовой заготовке. Торцевая фреза диаметром 2 мм[4]:

% (метка начала программы, необязательна)
(ось Z настроена так, что при Z=0 инструмент касается поверхности заготовки)
O200 (метка программы, необязательна)
G21 G40 G49 G53 G80 G90 G17 (Строка безопасности.)
(Состояние станка или интерпретатора определяется предысторией, либо устанавливаются в  некоторое исходное состояние при включении питания, и эти настройки могут вызвать нежелательные и непредвиденные действия, поэтому необходимо привести станок в <исходное состояние> с помощью «строки безопасности».)
(G21 — выбор метрической системы единиц - миллиметры,)
(G40 — отменяет автоматическую коррекцию на радиус инструмента.)
(G49 — отменяет автоматическую коррекцию на длину инструмента.)
(G53 — отменяет возможно введённые ранее дополнительные системы координат, смещённые относительно исходной и переводит станок в основную систему координат.)
(G80 — отменяет все постоянные циклы, например, циклы сверления и их параметры.)
(G90 — переводит в абсолютную систему координат.)
(G17 — выбирается плоскость круговой интерполяции X-Y.)
G0 F300 (задание скорости холостого перемещения инструмента в мм/мин)
M3 S500 (включение вращения шпинделя по часовой стрелке и задание его скорости вращения 500 об/мин)
G4 P2000 (выдержка 2 секунды для раскрутки шпинделя)
X0 Y30 Z5 (подвод инструмента в точку с координатами X=0 Y=30 Z=5 со скоростью холостого перемещения)
G1 Z-2 F40 (врезание в заготовку на глубину 2 мм со скоростью 40 мм/мин)
G1 F20 X10 Y0 (фрезерование 1-го отрезка буквы W со скоростью 20 мм/мин)
X20 Y30 (фрезерование 2-го отрезка буквы W со скоростью 20 мм/мин)
X30 Y0 (фрезерование 3-го отрезка буквы W со скоростью 20 мм/мин)
X40 Y30 (фрезерование 4-го отрезка буквы W со скоростью 20 мм/мин)
G0 Z5 (отвод инструмента на высоту 5 мм над поверхностью заготовки со скоростью 300 мм/мин)
M5 (выключение вращения шпинделя)
M30 (конец программы и конец интерпретируемого кода)

См. также[править | править код]

  • Металлорежущий станок
  • Параметрическое программирование
  • 3D-принтер

Примечания[править | править код]

  1. ГОСТ 20999-83. Устройства числового программного управления для металлообрабатывающего оборудования. Кодирование информации управляющих программ. Дата обращения: 21 августа 2021. Архивировано 21 августа 2021 года.
  2. CNC G Codes Definitions Examples Programs Programming Learning Training. Дата обращения: 9 февраля 2008. Архивировано из оригинала 12 октября 2007 года.
  3. Многие интерпретаторы кода допускают опускание первого нуля в командах G00—G09, например, G1 вместо G01
  4. Subroutine G-Code. Дата обращения: 2 января 2016. Архивировано из оригинала 17 января 2016 года.

Ссылки[править | править код]

  • Создание и подготовка управляющих программ (G-кода) в режиме on-line.
  • CAM расширение Inkscape для экспорта в G-code
  • Симуляция работы программ на G-коде в реальном времени
  • Real-Time 3D Graphics Simulation for G-code (англ.)
  • Overview of canonical machining functions (англ.)
  • SIMUL CNC (англ.)
  • Подборка ссылок на сайты редакторов визуализаторов G-кода

Станочные комплексы с CNC используют для работы множество ПО. Однако руководить оборудованием можно с помощью одного и того же управляющего кода. Это буквенно-цифровой язык ISO 7-bit. Основывается на международных стандартах ISO и EIA.

Что такое G- и M-функции для CNC?

Большинство изготовителей систем ЧПУ описывают основные параметры с помощью стандартов ISO, но часто в своем оборудовании отступают от правил, чтобы расширить возможности систем.

Японские компании в своих системах ЧПУ FANUC широко раскрывают потенциал использования G- и М-кодов. Их оборудование одним из первых заработало на языке ISO 7-bit. Сейчас это самые распространенные пульты в мире.

фото дисплея

G-коды настраивают СЧПУ на определенное действие. М-коды – вспомогательные, управляют режимами работы оборудования. Чтобы инструмент двигался по прямой траектории, вносится команда G01. А если необходимо заменить рабочий орган, используется код М06.

G- и M-коды для программирования станков с ЧПУ – что это?

Настройки оборудования с CNC пишутся на различных языках, но набора основных G- и М-команд достаточно, чтобы создать УП.

G-code (NC-код)

фото схемы

G-коды настраивают СЧПУ на определенное действие. М-коды – вспомогательные, управляют режимами работы оборудования. Чтобы инструмент двигался по прямой траектории, вносится команда G01. А если необходимо заменить рабочий орган, используется код М06.

G- и M-коды для программирования станков с ЧПУ – что это?

Настройки оборудования с CNC пишутся на различных языках, но набора основных G- и М-команд достаточно, чтобы создать УП.

G-code (NC-код)

фото схемы

G-функция – язык программирования, осуществляет подготовительные функции для работы станка по управлению осевым перемещением инструмента.

«ИСО 7-бит» создан компанией EIA в 60-х гг. прошлого столетия, а доработан спустя 20 лет. G-код утвержден как стандарт ISO 6983-1:2009, в СССР – как ГОСТ 20999-83. Код записывает информацию на восьмидорожечной перфоленте и кодирует 128 символов.

Справка: многие производители дорабатывают код по-своему, и отличия от базового можно посмотреть в инструкции к конкретной системе управления.

В программе, написанной на языке ISO 7-bit, все команды формируют кадры – совокупности из одной или нескольких команд. Первый кадр состоит из единственного знака – «%». Иногда такой символ стоит и в последнем кадре. Так программа отделяет кадры друг от друга. Остальным присваиваются номера, а оканчиваются они знаком CR/LF – перевод строки. Чтобы завершить программу, вводится команда M02 или M30.

фото команд

Комментарии пишутся в круглых скобках и несут конкретную информацию:

  • время и дата создания программы;
  • номер чертежа;
  • материал заготовки;
  • размеры инструмента;
  • данные о рабочей области;
  • название технологических операций.

Примечание: СЧПУ не считывает текст в круглых скобках.

Чаще всего список кодов в кадре начинается с подготовительных. Затем вписываются команды перемещения, выбирается режим работы и технологические коды.

Модальные и немодальные G-коды

Комментарии пишутся в круглых скобках и несут конкретную информацию:

  • время и дата создания программы;
  • номер чертежа;
  • материал заготовки;
  • размеры инструмента;
  • данные о рабочей области;
  • название технологических операций.

Примечание: СЧПУ не считывает текст в круглых скобках.

Чаще всего список кодов в кадре начинается с подготовительных. Затем вписываются команды перемещения, выбирается режим работы и технологические коды.

Модальные и немодальные G-коды

Модальные и немодальные G-коды.

Независимые части основного ПО описываются в промежутке обозначений M02–M30. Сначала идет номер, в конце прописывается M17.

М-code

М-функции — дополнительные коды, на разных станках CNC могут немного отличаться. Эти команды управляют рабочими органами и режимами оборудования с ЧПУ.

Вспомогательные команды используются одиночно или вместе с другими кодами. Когда кадр устанавливает рабочий орган в шпиндель, это выглядит так:

N10 T2 M6, где:

  • T2 – инструмент номер 2;
  • M6 – перестановка инвентаря.

фото

Здесь команда M6 на пульте подразумевает некоторый набор действий, чтобы заменить рабочий орган:

  • подготовка инструмента к замене;
  • отключение вращения шпинделя;
  • смещение нового инструмента в магазине;
  • замена.

Если М- код включает какое-либо устройство, то обязательно существует его пара, которая выключает:

M8 – M9 – включить/выключить систему охлаждения;

M3 – M5 – включить/выключить обороты шпинделя.

В кадре разрешается использовать несколько М-функций. Для станков с внушительным набором сменных устройств задействуется больше М-кодов в управлении.

Примечание: М-код может вписываться самостоятельно или в кадре с G-кодами.

Вспомогательные команды делятся:

  • на стандартные – управляют устройствами, которыми оборудованы почти все станки (системы охлаждения, шпиндель, рабочие органы);
  • специальные – взаимодействуют с рабочими режимами на одном или сразу нескольких станках одинаковой модели: сжать/разжать поворотные оси, включить/выключить измерительную головку.

Важно: на разных станках одни и те же команды могут настраиваться на управление другими устройствами.

Таблица G-кодов ЧПУ с расшифровкой

Таблица представляет неполный перечень команд для управления станком, только важные:

  • скольжение рабочих инструментов оборудования с определенной заданной скоростью по кругу или прямолинейно;
  • выполнение последовательных действий – сверление, резьба, шлифовка;
  • контроль настроек устройств в декартовой системе координат и рабочей области.
Коды Описание кода
G00-G03 Перемещение инструмента на заданных позициях
G17-G19 Переключение рабочих плоскостей (XY, ZX, YZ)
G20-G21 Не специализированы
G40-G44 Компенсация длины и диаметра инструмента
G53-G59 Переключение координатных систем
G80-G85 Фазы сверления, расточки, нарезки резьбы
G90-G91 Переключение систем координат (абсолютная, относительная)

Таблица M-кодов ЧПУ с расшифровкой

Вспомогательные команды программного кода маркируются буквой М и выполняют такие действия:

  • замена инструмента;
  • контроль включения/выключения охлаждения;
  • запуск и остановка шпинделя;
  • начало и завершение подпрограммы.
Код Назначение кода
M00 Временная остановка рабочего станка до повторного нажатия кнопки «Старт»
M01 Прерывание работы оборудования до включения кнопки «Старт», если запущен режим подтверждения останова
M02 Завершение программы, без отката модальных настроек
M03 Запуск шпинделя, вращение по часовой стрелке
M04 Запуск шпинделя, вращение против часовой стрелки
M05 Остановка оборотов шпинделя
M06 Смена рабочего органа
M07 Запуск дополнительного охлаждения
M08 Пуск режима основного охлаждения
M09 Стоп системам охлаждения оборудования
M13 Одновременный запуск охлаждения и вращения шпинделя по часовой стрелке
M14 Одновременный запуск охлаждения и оборотов шпинделя против часовой стрелки
M17 Завершение подпрограммы
M25 Ручная смена рабочего органа
M97 Включение независимой части программы внутри основной
M98 Запуск подпрограммы отдельно от главной
M99 Выключение подпрограммы
M30 Завершение программы и сброс всех установок

1 код в кадре.

G-функции для станков ЧПУ

Код Описание кода
Осевое движение
G00 Ускоренный или холостой ход – перемещение на очень высокой скорости в указанную точку. Не используется для выполнения обработки.
G01 Линейная интерполяция – смещение по прямой траектории с заданной скоростью подачи. Рабочий ход
G02 Круговая интерполяция – перемещение по дуге вправо с запрограммированной скоростью подачи
G03 Круговая интерполяция – смещение по кривой влево с заданной скоростью подачи
Наладка
G20 Ввод дюймовых показателей
G21 Ввод метрической информации
G90 Абсолютное позиционирование – отсчет всех координат от постоянной нулевой точки
G91 Относительное позиционирование – все координаты рассчитываются от предыдущей позиции
Работа с отверстиями
G81 Фаза сверления
G82 Цикл сверления с задержкой на дне отверстия
G83 Прерывистый период сверления
G85 Режим растачивания отверстия

До 4 кодов в кадре.

фото графика

Здесь команда M6 на пульте подразумевает некоторый набор действий, чтобы заменить рабочий орган:

  • подготовка инструмента к замене;
  • отключение вращения шпинделя;
  • смещение нового инструмента в магазине;
  • замена.

Если М- код включает какое-либо устройство, то обязательно существует его пара, которая выключает:

M8 – M9 – включить/выключить систему охлаждения;

M3 – M5 – включить/выключить обороты шпинделя.

В кадре разрешается использовать несколько М-функций. Для станков с внушительным набором сменных устройств задействуется больше М-кодов в управлении.

Примечание: М-код может вписываться самостоятельно или в кадре с G-кодами.

Вспомогательные команды делятся:

  • на стандартные – управляют устройствами, которыми оборудованы почти все станки (системы охлаждения, шпиндель, рабочие органы);
  • специальные – взаимодействуют с рабочими режимами на одном или сразу нескольких станках одинаковой модели: сжать/разжать поворотные оси, включить/выключить измерительную головку.

Важно: на разных станках одни и те же команды могут настраиваться на управление другими устройствами.

Таблица G-кодов ЧПУ с расшифровкой

Таблица представляет неполный перечень команд для управления станком, только важные:

  • скольжение рабочих инструментов оборудования с определенной заданной скоростью по кругу или прямолинейно;
  • выполнение последовательных действий – сверление, резьба, шлифовка;
  • контроль настроек устройств в декартовой системе координат и рабочей области.
Коды Описание кода
G00-G03 Перемещение инструмента на заданных позициях
G17-G19 Переключение рабочих плоскостей (XY, ZX, YZ)
G20-G21 Не специализированы
G40-G44 Компенсация длины и диаметра инструмента
G53-G59 Переключение координатных систем
G80-G85 Фазы сверления, расточки, нарезки резьбы
G90-G91 Переключение систем координат (абсолютная, относительная)

Таблица M-кодов ЧПУ с расшифровкой

Вспомогательные команды программного кода маркируются буквой М и выполняют такие действия:

  • замена инструмента;
  • контроль включения/выключения охлаждения;
  • запуск и остановка шпинделя;
  • начало и завершение подпрограммы.
Код Назначение кода
M00 Временная остановка рабочего станка до повторного нажатия кнопки «Старт»
M01 Прерывание работы оборудования до включения кнопки «Старт», если запущен режим подтверждения останова
M02 Завершение программы, без отката модальных настроек
M03 Запуск шпинделя, вращение по часовой стрелке
M04 Запуск шпинделя, вращение против часовой стрелки
M05 Остановка оборотов шпинделя
M06 Смена рабочего органа
M07 Запуск дополнительного охлаждения
M08 Пуск режима основного охлаждения
M09 Стоп системам охлаждения оборудования
M13 Одновременный запуск охлаждения и вращения шпинделя по часовой стрелке
M14 Одновременный запуск охлаждения и оборотов шпинделя против часовой стрелки
M17 Завершение подпрограммы
M25 Ручная смена рабочего органа
M97 Включение независимой части программы внутри основной
M98 Запуск подпрограммы отдельно от главной
M99 Выключение подпрограммы
M30 Завершение программы и сброс всех установок

1 код в кадре.

G-функции для станков ЧПУ

Код Описание кода
Осевое движение
G00 Ускоренный или холостой ход – перемещение на очень высокой скорости в указанную точку. Не используется для выполнения обработки.
G01 Линейная интерполяция – смещение по прямой траектории с заданной скоростью подачи. Рабочий ход
G02 Круговая интерполяция – перемещение по дуге вправо с запрограммированной скоростью подачи
G03 Круговая интерполяция – смещение по кривой влево с заданной скоростью подачи
Наладка
G20 Ввод дюймовых показателей
G21 Ввод метрической информации
G90 Абсолютное позиционирование – отсчет всех координат от постоянной нулевой точки
G91 Относительное позиционирование – все координаты рассчитываются от предыдущей позиции
Работа с отверстиями
G81 Фаза сверления
G82 Цикл сверления с задержкой на дне отверстия
G83 Прерывистый период сверления
G85 Режим растачивания отверстия

До 4 кодов в кадре.

фото графика

G-code окружности с координатами центра.

схема

G-code для сверления отверстий.

Дополнительные обозначения при программировании станков CNC

Координаты точек движения инструмента в декартовых плоскостях– X, Y, Z.

Смещение вокруг осей X, Y, Z – А, В, С.

Круговая интерполяция параллельно осям координат X, Y, Z – I, J, К.

R – радиус, в повторяющихся периодах – положение плоскости отвода, в команде вращения – угол поворота системы координат.

D – параметр коррекции на радиус рабочего органа.

Н – показатель компенсации длины инструмента.

F – настройка подачи.

S – параметр основного перемещения.

Т – показатель номера инструмента, который требуется поставить на замену поворотом патрона.

N – номерное значение кадров управляющей программы.

/ – пропуск кадра, который не нужно выполнять, ставиться перед кадром.

(…) – комментарии в УП.

Семиразрядный код ISO 7-bit – основной для современных отечественных станков CNC. Правила кодирования для станка с конкретным устройством ЧПУ определяются используемым общим кодом, инструкцией по эксплуатации оборудования и руководством по программированию систем ЧПУ.

Понравилась статья? Поделить с друзьями:
  • Программирование брелка старлайн а91 инструкция привязка к авто
  • Программирование брелка от шлагбаума инструкция
  • Программирование брелков томагавк 9010 инструкция
  • Программирование брелка старлайн а94 инструкция
  • Программирование бегущей строки через флешку инструкция по применению