G коды, М команды и дополнительные параметры

Справочные материалы
Аватара пользователя
Predator
Мастер
Сообщения: 2890
Зарегистрирован: 30 авг 2014, 20:14
Репутация: 1611
Настоящее имя: Александр
Страна: Россия

G коды, М команды и дополнительные параметры

#1 

Сообщение Predator » 19 дек 2014, 19:44

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

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

Структура программы
Программа, написанная с использованием G-кода, имеет жесткую структуру. Все команды управления объединяются в кадры — группы, состоящие из одной или более команд. Кадр завершается символом перевода строки (CR/LF) и имеет номер, за исключением первого кадра программы и комментариев. Первый, а в некоторых случаях ещё и последний кадр содержит только один символ «%». Завершается программа командой M02 или M30. Комментарии к программе размещаются в круглых скобках, как после программных кодов, так и в отдельном кадре.

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

Подпрограммы могут быть описаны после команды M02, но до M30. Начинается подпрограмма с кадра вида Lxx, где xx — номер подпрограммы, заканчивается командой M17.

Подготовительные (основные) функции «G коды»


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

G00 - быстрое позиционирование.
Функция G00 используется для выполнения ускоренного перемещения режущего инструмента к позиции обработки или к безопасной позиции. Ускоренное перемещение никогда не используется для выполнения обработки, так как скорость движения исполнительного органа станка очень высока. Код G00 отменяется кодами: G01, G02, G03.

G01 - линейная интерполяция.
Функция G01 используется для выполнения прямолинейных перемещений с заданной скоростью (F). При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z). Код G01 отменяется кодами: G00, G02, G03.

G02 - круговая интерполяция по часовой стрелке.
Функция GO2 предназначена для выполнения перемещения инструмента по дуге (окружности) в направлении часовой стрелки с заданной скоростью (F). При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z).

Параметры интерполяции I, J, K, которые определяют координаты центра дуги окружности в выбранной плоскости, программируются в приращениях от начальной точки к центру окружности, в направлениях, параллельных осям X, Y, Z соответственно.

Код G02 отменяется кодами: G00, G01, G03.

G03 - круговая интерполяция против часовой стрелки.
Функция GO3 предназначена для выполнения перемещения инструмента по дуге (окружности) в направлении против часовой стрелки с заданной скоростью (F). При программировании задаются координаты конечной точки в абсолютных значениях (G90) или приращениях (G91) с соответственными адресами перемещений (например X, Y, Z).

Параметры интерполяции I, J, K, которые определяют координаты центра дуги окружности в выбранной плоскости, программируются в приращениях от начальной точки к центру окружности, в направлениях, параллельных осям X, Y, Z соответственно.

Код G03 отменяется кодами: G00, G01, G02.

G04 - пауза.
Функция G04 - команда на выполнение выдержки с заданным временем. Этот код программируется вместе с X или Р адресом, который указывает длительность времени выдержки. Обычно, это время составляет от 0.001 до 99999.999 секунд. Например G04 X2.5 - пауза 2.5 секунды, G04 Р1000 - пауза 1 секунда.

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

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

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

G20 - ввод дюймовых данных.
Функция G20 активизирует режим работы с дюймовыми данными.

G21 - ввод метрических данных.
Функция G21 активизирует режим работы с метрическими данными.

G40 - отмена коррекции на радиус инструмента.
Функция G40 отменяет действие автоматической коррекции на радиус инструмента G41 и G42.

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

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

G43 - коррекция на положение инструмента.
Функция G43 применяется для компенсации длинны инструмента. Программируется вместе с функцией инструмента (H).

G52 - локальная система координат.
СЧПУ позволяет устанавливать кроме стандартных рабочих систем координат (G54-G59) еще и локальные. Когда СЧПУ станка выполняет команду G52, то начало действующей рабочей системы координат смещается на значение указанное при помощи слов данных X, Y и Z. Код G52 автоматически отменяется с помощью команды G52 ХО YO Z0.

G54 - G59 - заданное смещение.
Смещение рабочей системы координат детали относительно системы координат станка.

G68 - вращение координат.
Код G68 позволяет выполнить поворот координатной системы на определенный угол. Для выполнения поворота требуется указать плоскость вращения, центр вращения и угол поворота. Плоскость вращения устанавливается при помощи кодов G17, G18 и G19. Центр вращения устанавливается относительно нулевой точки активной рабочей системы координат (G54 - G59). Угол вращения указывается при помощи R. Например: G17 G68 X0. Y0. R120.

G69 - отмена вращения координат.
Код G69 отменяет режим вращения координат G68.

G70 - обработка отверстий, с центрами расположенными на одной окружности.
При этом обрабатываются отверстия с центрами, расположенными равномерно по окружности. Перед этой G-функцией должен быть запрограммирован жесткий цикл сверления (т.е. G81, G82, G83, G85 ) , так как этот цикл определяет метод сверления отверстий, лежащих на окружности.

Параметры Х_ и У_ заданные в строке кадра с G81-G85 определяют координаты центра. Функции G81-85 и функция G70 должны программироваться в разных строках программы.

Синтаксис:
G70 I_J_L_, где
I – радиус окружности должен быть больше нуля,
J – угол, образованный осью Х и вектором из центра окружности в начальную точку,
L – число точек / центров на окружности

Пример программирования:
G83 X_Y_Z_R_L_ H83
G70 I30 J45 L8
G80

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

В цикле сверления должен быть указан параметр "Н", равный номеру цикла сверления.
Пример:
G81X_Y_Z_R_H81
G70I50J25L3
G80

Отмена обработки центрального отверстия.

Для отмены сверления центрального отверстия необходимо включить в программу функцию G70.1

Пример:
G70.1G99G81X_Y_Z_R_H81
G70I40J30L12
G80

G70.1 – отмена обработки центрального отверстия.

G71 - обработка отверстий на дуге.
Если задана функция G71, инструмент будет располагаться в точках, равномерно распределенных на дуге. Заданию G71 должен предшествовать жесткий цикл (т.е. G81, G82, G83, G85) определяющий метод сверления в цикле обработки отверстий. Параметры Х_ и У_ в строке, содержащей функции G81-G85, определяют координаты центра отверстия.

G81-G85 и G71 должны задаваться в разных строках (кадрах) программы.

Синтаксис:
G71 I_J_K_L_, где
I – радиус окружности должен быть больше нуля,
J – угол, образованный осью Х и вектором из центра окружности в начальную точку,
L – число точек / центров на окружности,
K – угол между двумя соседними точками на окружности.

В цикле сверления должен быть указан параметр «Н», равный номеру цикла сверления.

Пример программирования:
G70.1
G81 X_Y_Z_R_L_H81
G71 I3 J0 L8 K5
G80
G70.1 – центральное отверстие не сверлится.

G72 - обработка ряда отверстий лежащих на наклонной линии (прямой).
При этом инструмент должен располагаться в точках, равномерно распределенных на отрезке прямой. Заданию этой G-функции должно предшествовать задание жесткого цикла G81-G85, т.к. жесткий цикл задает способ сверления ряда отверстий. Параметры X_ и Y_ определяемые в кадре с G81-G85, определяют начальную точку ряда. Жесткий цикл G81-G85 и цикл сверления ряда отверстий G72 должны задаваться в разных кадрах.

Синтаксис:
G72 I_J_L_, где:
I – расстояние между центрами отверстий, всегда > 0,
J – угол образованной осью Х и наклонной прямой,
L – число точек на отрезке прямой.

В цикле сверления должен быть указан параметр «Н», равный номеру цикла сверления.

Пример программирования:
G81X_Y_Z_R_L_H81
G72 I1 J45 L5
G80

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

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

G80 - отмена постоянного цикла.
Функция, которая отменяет любой постоянный цикл.

G81 - стандартный цикл сверления.
Цикл G81 предназначен для зацентровки и сверления отверстий. Движение в процессе обработки происходит на рабочей подаче. Движение в исходное положение после обработки идет на ускоренной подаче.

G82 - сверление с выдержкой.
Цикл G82 предназначен для сверления и зенкования отверстий. Движение в процессе обработки происходит на рабочей подаче с паузой в конце. Движение в исходное положение после обработки идет на ускоренной подаче.

G83 - цикл прерывистого сверления.
Цикл G83 предназначен для глубокого сверления отверстий. Движение в процессе обработки происходит на рабочей подаче с периодическим выводом инструмента в плоскость отвода. Движение в исходное положение после обработки идет на ускоренной подаче.

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

G85 - стандартный цикл растачивания.
Цикл G85 предназначен для развертывания и растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. Движение в исходное положение после обработки идет на рабочей подаче.

G86 - цикл растачивания с остановкой вращения шпинделя.
Цикл G86 предназначен для растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. В конце обработки происходит остановка шпинделя. Движение в исходное положение после обработки идет на ускоренной подаче.

G87 - цикл растачивания с отводом вручную.
Цикл G87 предназначен для растачивания отверстий. Движение в процессе обработки происходит на рабочей подаче. В конце обработки происходит остановка шпинделя. Движение в исходное положение после обработки идет вручную.

G90 - режим абсолютного позиционирования.
В режиме абсолютного позиционирования G90 перемещения исполнительных органов производятся относительно нулевой точки рабочей системы координат G54-G59 (программируется, куда должен двигаться инструмент). Код G90 отменяется при помощи кода относительного позиционирования G91.

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

G94 - скорость подачи в дюймах/миллиметрах в минуту.

При помощи функции G94 указанная скорость подачи устанавливается в дюймах за 1 минуту (если действует функция G20) или в миллиметрах за 1 минуту (если действует функция G21). Программируется вместе с функцией подачи (F). Код G94 отменяется кодом G95.

G95 - скорость подачи в дюймах/миллиметрах на оборот.
При помощи функции G95 указанная скорость подачи устанавливается в дюймах на 1 оборот шпинделя (если действует функция G20) или в миллиметрах на 1 оборот шпинделя (если действует функция G21). Т.е. скорость подачи F синхронизируется со скоростью вращения шпинделя S. Код G95 отменяется кодом G94.

G98 - возврат к исходной плоскости в цикле.
Если постоянный цикл станка работает совместно с функцией G98, то инструмент возвращается к исходной плоскости в конце каждого цикла и между всеми обрабатываемыми отверстиями. Функция G98 отменяется при помощи G99.

G99 - возврат к плоскости отвода в цикле.
Если постоянный цикл станка работает совместно с функцией G99, то инструмент возвращается к плоскости отвода между всеми обрабатываемыми отверстиями. Функция G99 отменяется при помощи G98.

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


Технологические команды языка начинаются с буквы М. Включают такие действия, как:
  • Сменить инструмент;
  • Включить/выключить шпиндель;
  • Включить/выключить охлаждение;
  • Работа с подпрограммами.

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

М01 - останов с подтверждением.
Код М01 действует аналогично М00, но выполняется только после подтверждения с пульта управления станка. Если клавиша подтверждения нажата, то при чтении кадра с М01 происходит останов. Если же клавиша не нажата, то кадр М01 пропускается и выполнение УП не прерывается.

М02 - завершение программы.
Код М02 указывает на завершение программы и приводит к останову шпинделя, подачи и выключению охлаждения.

М0З - вращение шпинделя по часовой стрелке.
При помощи кода МОЗ включается прямое вращение шпинделя с запрограммированным числом оборотов (S). Код МОЗ действует до тех пор, пока он не будет отменен с помощью М04 или М05.

М04 - вращение шпинделя против часовой стрелки.
При помощи кода М04 включается обратное вращение шпинделя с запрограммированным числом оборотов (S). Код М04 действует до тех пор, пока он не будет отменен с помощью М03 или М05.

М05 - останов шпинделя.
Код М05 останавливает вращение шпинделя, но не останавливает осевые перемещения.

М06 - смена инструмента.
При помощи кода М06 инструмент, закрепленный в шпинделе, меняется на инструмент, находящийся в положении готовности в магазине инструментов.

М07 - включение охлаждения №2.
Код М07 включает подачу СОЖ в зону обработки в распыленном виде либо включает подачу СОЖ через инструмент, если станок обладает такой возможностью.

М08 - включение охлаждения №1.
Код М08 включает подачу СОЖ в зону обработки в виде струи.

М09 - отключение охлаждения.
Код М09 выключает подачу СОЖ и отменяет команды М07 и М08.

М10 - зажим.
Код М10 относиться к работе с зажимным приспособлением подвижных органов станка.

М11 - разжим.
Код М11 относиться к работе с зажимным приспособлением подвижных органов станка.

М19 - останов шпинделя в заданной позиции.
Код М19 вызывает останов шпинделя при достижении им определенного углового положения.

МЗ0 - конец информации.
Код МЗ0 информирует УЧПУ о завершении программы, приводит к останову шпинделя, подачи и выключению охлаждения.

М98 - вызов подпрограммы.
Код М98 предназначен для вызова подпрограммы. Программируется вместе с «Р», которое обозначает номер вызываемой подпрограммы. Например М98 Р1234.

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

Дополнительные параметры команд


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

X, Y, Z - команды осевого перемещения.

А, В, С - команды кругового перемещения вокруг осей X, Y, Z соответственно.

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

I - Параметр дуги при круговой интерполяции. Инкрементальное расстояние от начальной точки до центра дуги по оси X. G03 X10 Y10 I0 J0 F10
J - Параметр дуги при круговой интерполяции. Инкрементальное расстояние от начального G03 X10 Y10 I0 J0 F10
K - Параметр дуги при круговой интерполяции. Инкрементальное расстояние дуги по оси Z.

R - При круговой интерполяции (G02 или G03) R определяет радиус, который соединяет начальную и конечную точки дуги. В постоянных циклах «R» определяет положение плоскости отвода. При работе с командой вращения R определяет угол поворота координатной системы.

Р - При постоянных циклах обработки отверстий «Р» определяет время выдержки на дне отверстия. Совместно с кодом вызова подпрограммы М98 - номер вызываемой подпрограммы.

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

D - значение коррекции на радиус инструмента.

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

F - функция подачи.

S - функция главного движения.

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

N - нумерация кадров УП.

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

/ - пропуск кадра.

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

© Точные машины. Все права защищены.

Великую цивилизацию не покорить извне — пока она не разрушит себя изнутри! © Уильям Дюрант

Тэги:

Вернуться в «Справочная»

Сейчас на форумах

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей