Коды чпу используемые в программе

Для программирования современного оборудования используется буквенно-цифровой код ИСО 7 бит (ISO 7 bit), разработанный в начале 60-х годов компанией Electronic Industries Alliance с финальной доработкой в начале 80-х годов. Также известен как G или CNC код. В СССР регламентировался ГОСТ 20999-83.

Основные единицы данного кода – G и M команды.

Функции с адресом (префиксом) G – называются подготовительными и определяют режим и условия работы станка и системы ЧПУ. Стандартные подготовительные функции лежат в диапазоне G00-G99.

G00. G09 – команды общего порядка, позиционирование, линейная или круговая интерполяция;
G10. G39 – особенности непрерывной обработки; выбор осей, плоскостей, видов интерполяции;
В таблице ниже приведены основные подготовительные функции.

G00 – ускоренное перемещение (холостой ход);
G01 – линейное перемещение (рабочий ход);
G02 – круговая интерполяция с движением по часовой стрелке;
G03 — круговая интерполяция с движением по против часовой стрелки;

G-, M-КОДЫ — #25 — БАЗОВЫЕ G-КОДЫ: G00 И G01 / Программирование обработки на станках с ЧПУ


G04 – останов выполнения программы на заданное время;
G17 – рабочая плоскость XY;
G18 – рабочая плоскость XZ;
G19 – рабочая плоскость YZ;
G40 – отмена коррекции на радиус инструмента;
G41 – коррекция на радиус инструмента слева от контура;
G42 — коррекция на радиус инструмента справа от контура;
G43 – коррекция на длину инструмента положительная;
G44 – коррекция на длину инструмента отрицательная;
G49 – отмена коррекции на длину;
G53 — программирование в системе координат станка;
G54. G59 – установка рабочей системы координат;
G70 – программирование перемещений в дюймах;
G71 – программирование перемещений в мм;
G80 – отмена циклов сверления;
G81. G89 – циклы сверления;
G90 – задание перемещений в абсолютных координатах;
G91 – задание перемещений в приращениях от предыдущего значения;
G94 — задание скорости перемещения (подачи) в мм/мин;
G95 — задание скорости перемещения (подачи) в мм/об;
G97 — обороты в минуту;

Между собой G-коды выделяются в отдельные группы, в пределах которых действие одной функции может отменяться другой, например ускоренное перемещение G00 действует до тех пор, пока в программе не встретится другая функция этой группы G01, G02 или G03. Не допускается использование в одном кадре нескольких функций из одной группы.

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

M00 – программируемый останов, без потери информации;
M02 – конец программы, модальные функции сохраняются;
M03 – вкл. шпинделя по часовой стрелке;
M04 — вкл. шпинделя против часовой стрелке;
M05 – выкл. шпинделя;
M06 – сменить инструмент;
M08 – вкл. охлаждение;
M09 – выкл. охлаждение;
M10 – зажим поворотной оси;
M11 – разжим поворотной оси;

G-коды для ЧПУ фрезера для начинающих.


M30 — конец программы, модальные функции отменяются;

В следующих главах рассмотрим некоторые функции подробно.

Источник: postprocessor.su

Базовые g-коды

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

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

Рис. 6.1. Условные обозначения на рисунках

Ускоренное перемещение – G00

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

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

Рис. 6.2. Ускоренное перемещение G00

Для выполнения ускоренного перемещения достаточно указать в кадре код G00 и координаты требуемой позиции. Условно кадр ускоренного перемещения выглядит так:

G00 Xn.n Yn.n Zn.n

Посмотрим, как будет перемещаться инструмент из точки с координатами (0;0) в данном фрагменте УП:

N05 G00 X10.0 Y20.0

Кадр N05 обеспечивает ускоренное перемещение инструмента в точку с координатами (10;20). Следующий кадр вьполняет позиционирование в точку (40;20). Кадр N15 перемещает инструмент в точку (40;0). Так как G00 является модальным кодом, то нет никакой необходимости указывать его еще раз в кадрах N10 и N15.

Читайте также:
Полезные программы для планшета Самсунг

Рис. 6.3. Ускоренные перемещения инструмента

Всегда необходимо оставлять небольшое расстояние между поверхностью заготовки и точкой, в которую должен быть перемещен инструмент при помощи кода G00. Если это расстояние будет близким к нулю, то возникает опасность столкновения инструмента с заготовкой так как размеры заготовки или инструмента могут оказаться немного большими, чем вы ожидаете. Обычно безопасное расстояние находится в пределах от 0.5 до 5 мм.

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

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

Сравните два фрагмента УП:

N10 G00 X100.0 Y200.0 Z0.5

N10 G00 X100.0 Y200.0

Во втором фрагменте ускоренное перемещение разбито на два кадра: сначала инструмент быстро перемещается в точку (100;200), а уже после опускается по оси Z. Этот вариант является более предпочтительным, так как основное позиционирование осуществляется по осям X и Y далеко от заготовки и приспособления, тогда как в первом случае существует вероятность столкновения инструмента с деталью.

При работе с ускоренными перемещениями нужно проявлять повышенную внимательность. Современные станки с ЧПУ в этом режиме могут иметь скорость 30 метров в минуту и более. Скорее всего, оператор станка просто не успеет среагировать на неправильное перемещение на такой скорости, и может произойти серьезное столкновение. Опытный программист старается не допускать ускоренных перемещений инструмента ниже поверхности заготовки и всегда проверяет кадры, содержащие код G00.

Линейная интерполяция – G01

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

G01 Xn.n Yn.n Zn.n F n.n

Как видите, в этом кадре появилось слово данных F. Основное отличие кода G01 от G00 заключается в том, что при линейной интерполяции инструмент перемещается с заданной скоростью (скоростью рабочей подачи), при которой возможна механическая обработка материала. При этом СЧПУ поддерживает прямолинейное перемещение даже по трем осям одновременно.

N10 G01 X10.0 Y30.0 F100 N20 X40.0 Y40.0 Z40.0

В кадре N10 инструмент перемещается в точку (10;30) со скоростью 100 миллиметров в минуту. Следующий кадр выполняет линейное перемещение в точку (40;40;40). Так как код G01 является модальным, то его не нужно указывать еще раз в кадре N20. То же самое относится и к скорости подачи F. Если в кадре N10 указана скорость F100, то она остается неизменной, пока не будет запрограммировано новое значение F. Линейная интерполяция используется не только для обработки в плоскости X–Y, но и для вертикального врезания в материал заготовки.

Рис. 6.4. Перемещение инструмента в точку (30; 40) со скоростью рабочей подачи 50 мм/мин

Круговая интерполяция – G02 и G03

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

Коды G02 и G03 предназначены для выполнения круговой интерполяции. Код G02 используется для перемещения по дуге по часовой стрелке, a G03 – против часовой стрелки. Направление перемещения определяется, когда мы смотрим на инструмент со стороны шпинделя, в отрицательном направлении оси Z. Как и при выполнении линейной интерполяции, в кадре круговой интерполяции необходимо указать скорость рабочей подачи F.

Существуют два способа для формирования кадра круговой интерполяции. Сравните структуру следующих кадров:

G02 Xn.n Yn.n Zn.n In.n Jn.n Kn.n Fn.n.

G02 Xn.n Yn.n Zn.n Rn.n Fn.n.

В первом варианте для выполнения кругового перемещения указывают: код G02 (G0З); координаты конечной точки дуги; I, J, К – слова данных и скорость рабочей подачи. А во втором варианте вместо I, J, К указывают R. Выбор варианта записи кадра кругового перемещения зависит от возможностей ЧПУ и привычки программиста. Большинство современных станков с ЧПУ поддерживают оба варианта записи.

Рис. 6.5. Направление перемещения по дуге можно определить, если посмотреть на заготовку со стороны инструмента. В данном случае фреза перемещается по часовой стрелке, значит, используем код G02

Читайте также:
Что такое программа кортана

В кадре с кодом круговой интерполяции необходимо указать координаты конечной точки перемещения (дуги). Если, кроме X и Y, в кадре находится Z-слово данных, то это значит, что производится винтовая интерполяция. Винтовая интерполяция, которая поддерживается не всеми системами ЧПУ, позволяет выполнять фрезерование резьбы и обеспечивает плавное винтовое врезание инструмента в материал заготовки.

Дуга с I, J, К

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

Рис. 6.6. Адреса I, J, К используются для определения центра дуги

При помощи I, J и К вы указываете относительные (инкрементальные) расстояния от начальной точки дуги до ее центра. Слово данных с I относится к оси X, слово данных с J – к оси Y, а слово данных с К – к оси Z. При этом в зависимости от расположения дуги значения могут быть положительными или отрицательными.

Рис. 6.7. Для описания дуги № 1 необходимо указать положительное значение для I и отрицательное для J

Рис. 6.8. Для описания дуги № 2 необходимо указать положительное значение для I и положительное для J

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

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

Рис. 6.9. Так как дуга меньше 180° (ее центр расположен снаружи хорды), то R будет иметь положительное значение

Рис. 6.10. Так как дуга больше 180° (ее центр расположен внутри хорды), то R будет иметь отрицательное значение

Использование G02 и G03

Давайте разберемся, как работает круговая интерполяция, на примере. Приведенный ниже фрагмент управляющей программы перемещает инструмент по дуге с радиусом 3 мм из точки А (0;0) в точку В (3;3) со скоростью рабочей подачи 100 мм/мин.

N10 G02 X3.0 Y3.0 I3.0 J0.0 F100

Так как центр дуги находится на расстоянии 3 мм по оси X и 0 мм по оси Y относительно начальной точки А, то I будет равно 3.0, a J равно 0. Полученная дуга составляет всего четверть от полной окружности. Попытаемся описать всю окружность постепенно. Следующий кадр перемещает инструмент из точки В (В1) в точку В2. Так как скорость рабочей подачи не изменяется, то нет необходимости повторно указывать F-слово данных.

Рис. 6.11. Перемещение по дуге с R3 из точки А (0;0) в точку В (3;3)

Так как центр дуги находится на расстоянии 3 мм по оси X и 0 мм по оси Y относительно начальной точки А, то I будет равно 3.0, a J равно 0. Полученная дуга составляет всего четверть от полной окружности. Попытаемся описать всю окружность постепенно. Следующий кадр перемещает инструмент из точки В1 в точку В2. Так как скорость рабочей подачи не изменяется, то нет необходимости повторно указывать F-слово данных.

Так как центр дуги находится на расстоянии 0 мм по оси X и 3 мм по оси Y относительно точки В, то I будет равно 0, a J равно –3. Таким образом, нам удалось создать перемещение по дуге из точки А в точку В2 при помощи двух кадров. Этот пример не случаен. Дело в том, что многие станки требуют именно такого разбиения окружности. То есть для описания полной окружности может потребоваться до четырех кадров.

В настоящее время большинство систем ЧПУ позволяют выполнить операцию по описанию полной окружности за два или даже за один кадр. Поэтому перемещение из точки А в точку С можно записать следующим образом:

N05 G02 X6.0 Y0.0 I3.0 J0.0

Рис. 6.12. Современные системы ЧПУ допускают описание подобной дуги в одном кадре

А для полной окружности с радиусом 3 мм и центром в точке с координатами (0; 0) справедливым будет следующий кадр:

N15 G02 Х-3.0 Y0.0 13.0 J0.0

Рис. 6.13. Описание полной окружности в одном кадре также возможно

Дуги такого типа несложно описать математически. Однако если начальная и конечная точки дуги образуют некоторый сложный угол или эти точки находятся в разных квадрантах, то для нахождения значений I, J, К требуются определенные тригонометрические вычисления (рис. 6.14). При этом необходимо, чтобы расчеты были достаточно точными, иначе СЧПУ может выдать сообщение о невозможности построения дуги.

Рис. 6.14. Часто для расчета дуги «вручную» необходимо приложить некоторые усилия

На рис. 6.15 изображена дуга, которую необходимо описать при помощи кодов круговой интерполяции с R-словом данных. В случае, когда инструмент перемещается по дуге по часовой стрелке (G02) из точки А в точку В , в УП должен присутствовать следующий кадр: G02 Х0 Y-10 R10. Если инструмент перемещается по дуге против часовой стрелки (G03) из точки В в точку А, в УП должен присутствовать следующий кадр: G03 Х10 Y0 R10.

Читайте также:
Как установить программу с iso образа не записывая на диск

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

Источник: studfile.net

Краткое описание G- M- и O кодов

Имена осей, обычно у простого 3х осевого фрезерного это XYZ, у простого токарного XZ, поворотная ось обычно А.

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  • Так же не забывайте,что на запуск шпинделя требуется время,поэтому после этой команды надо ставить паузу на 5~12 секунд.

Обычно эта пауза осуществляется через соответствующею настройку опций ЧПУ,но если такой настройки нет или вы не знаете как её сделать
то можете добавить в УП после команды запуска шпинделя код G4,указав после параметра P нужное время в секундах.
Но более правильно не добавлять эту команду в УП вручную,а сразу указать её в постпроцессор CAMэ’а вашего станка

  • У некоторых производителей лазерных станков код M3 используется для включения луча лазера.

cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel

  • Аналогично с командами M3 и M4 на остановку шпинделя так же требуется время,поэтому для нормальной работы следует выполнить настройки аналогичные настройкам команд M3 и M4.
  • Элемент маркированного списка

cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version

cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version

cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel
cnc-club.ru/wiki
lunuxcnc.org current
linuxcnc.org devel

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version

Makes a rapid move to the position specified by axes including any offsets, then will make a rapid move to the absolute position of the values in parameters 5161-5166(G28) or 5181-5186(G30) for axes specified. Any axis not specified will not move.

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version

Makes a rapid move to the position specified by axes including any offsets, then will make a rapid move to the absolute position of the values in parameters 5161-5166(G28) or 5181-5186(G30) for axes specified. Any axis not specified will not move.

  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. Link
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version

o sub
(MSG,code here)
o endsub

o call

o123 call

  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version

o123 return [#2 *5]
.
o123 endsub [3 * 4]

Subroutine return values:Subroutines may optionally return a value by an optional expression at an endsub or return statement. A subroutine return value is stored in the predefined named parameter , and the predefined parameter is set to 1, to indicate a value was returned. Both paramters are global, and are cleared just before the next subroutine call.

  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version
  1. cnc-club.ru/wiki
  1. [Link]
  1. current version
  2. devel version

Источник: www.cnc-club.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru