§ 11. Модальность. Группы кодов
На фрагменте ниже программируется ускоренное перемещение (G0) в точку на безопасной плоскости, после чего происходит переключение на режим рабочего движения фрезы (кадр N30).
.
N10 G0 X0 Y0
N20 Z10
N30 G1 Z5 F100
N40 X10 Y5.5
.
В кадрах N20 и N40 движение происходит на режимах заданных кадром выше. Соответственно по принципу модальности вывод G0 и G1 в этих кадрах не нужен. В кадре N30 также задается скорость перемещения фрезы 100 мм/мин. Она будет действовать пока не встрится новое значение с адресом F или изменен режим движения.
Код, действующий в пределах одного кадра программы называется немодальным. Его действие прекращается уже в следующем кадре.
Группы кодов вспомогательных функций:
Группы кодов подготовительных функций:
Домашний ЧПУ-фрезер как альтернатива 3D принтеру, часть третья, ПО и G-code
В этой статье хотелось бы рассказать о необходимом в работе ПО, а заодно дать маленькую вводную по g-коду. Опять прошу простить непрофессионала, могу что-то упустить, а в чем-то быть неточным. С другой стороны, все описанное в моих статьях — исключительно личный опыт, и он точно работает в приближенных к офисно-гаражно-домашним условиях на простых китайских фрезерах с ЧПУ.
ПО для работы можно разделить по уровню абстракции снизу вверх: прошивка драйверов двигателей, «стойка ПУ» или замещающий ее программно-аппаратный комплекс на базе ПК или МК, CAM — ПО, строящее траекторию движения инструмента и преобразующее ее в G-код, и CAD.
Наиболее низкоуровневое ПО — прошивка драйверов двигателей, которая преобразует сигналы шага и направления (step/dir) для шаговых двигателей либо скорость/направление для серводвигателей в значения напряжения и тока, подаваемые на обмотки двигателей; его мы не выбираем и не модифицируем, по крайней мере в обсуждаемом случае.
Следующий уровень — «стойка» — программно-аппаратный комплекс, преобразующий строки кода в сигналы для драйверов. Тут уже интересней, по крайней мере на этапе выбора станка (или выбора компонентов для самостроя) мы можем остановиться как на промышленных стойках начального уровня (GSK, Washing, бэушные старые сименсы и фануки), так и на сочетании интерфейсных плат (от банального LPT и опторазвязанной китайской красной платы до MESA) с ПО — LinuxCNC, Mach3, NCStudio и прочих. Лично у меня большой положительный опыт с LinuxCNC и NCStudio; несмотря на простоту и того и другого, с обработкой по готовому простому G-коду нотации ISO-7bit они справляются на ура. У промышленных стоек есть преимущество в гибкости настройки приводов и возможности подключения большого количества периферии, а так же возможность работать по расширенным G-кодам (циклам) и макропрограммам, но при нынешней доступности КАМ-систем и штучном производстве это не нужно.
Уровнем выше идут CAM (computer aided manufacture) программы — ПО для создания траекторий, описывающих прохождение инструмента в заготовке. И вот тут у нас начинается полный разброд и шатание. С одной стороны, бесплатного или условно-бесплатного CAMа мало. Чтобы не сказать вообще нет пристойного. Да, есть плагин для Inkscape, есть какие-то нестабильные чудеса пятилетней давности, есть триальный фьюжн, есть плагины для CADов… Кстати, по поводу совсем простых, на раскроечный роутер мы долго прикручивали G-CodeTools для Inkscape, но так и не смогли достичь приемлимых скоростей связки оператор-плагин. В результате купили CamBam+ за смешные по меркам рынка 150 долларов и наслаждаемся. А так — все из дешевого или бесплатного либо под совсем простые обработки, либо глюк на глюке и глюком погоняет. Мы перепробовали кучу всего в демках и ломаных версиях, в результате провели переговоры с жабой и финдиректором, и купили PowerMill — по отзывам и пережитым в процессе перебора эмоциям, пожалуй, оптимальным для небольшого производства инструменте. Уже позже на нас вышли замечательные товарищи из SprutCAM, дали демку, и мы с ужасом обнаружили, что переплатили примерно в 20 раз — почти все наши потребности закрываются вполне демократичным SprutCAM Mach3. Купили, конечно (типа про запас по подарочной цене), но потом нашли пару недостатков, так что используем исключительно ПМ.
Чуть не забыл: промежуточным этапом между g-code и CAM выступает постпроцессор — когда-то отдельная программа, а ныне встроенный модуль всякого пристойного CAMа. Это та самая штука, которая преобразует траекторию CAM в код конкретного станка. О постпроцессоре стоит знать только что он есть, и что у него есть описание, привязанное к конкретной нотации кода, воспринимаемой станком. Условно, некоторые станки просят нумерацию строк, некоторые — «;» в конце каждой строки, некоторые вообще русскими буквами команды принимают, ну и так далее. Для рассматриваемых станков (домашние фрезеры) вне зависимости от того, MACH3, LinuxCNC или NCStudio пойдет стандартный постпроцессор fanuc0i 3axis.
Ну и самый высокий уровень — CAD, он уже совсем далек от станка. Тут выбор почти бесконечен, и даже посвободней, чем в 3D-принтерах, благо фрезеровка идет до поверхности, и на входе CAM может быть не твердотельная модель, а граничная поверхность. Нормальные CAMы почти всеядны и с одинаковым удовольствием втягивают модели из чего попало — от 3DMAX до SolidWorks.
Несколько раз начинал я писать про g-code, но каждый раз забрасывал. С одной стороны, полный g-code неоднозначен, по крайней мере в части циклов: даже разные серии станков одного производителя могут трактовать g-коды разным образом, а в основных кодах все и так понятно. С другой — современная CAM-система позволяет оператору вообще не знать g-кода как класса, обходясь дерганьем мышкой по окошечкам компа. Но когда один из наших операторов (хороший кстати, ВО, опыт и все такое) не справился с задачей «сделать тестовую прогу, которая 1000 раз прогонит шпиндель вверх-вниз на 30 мм», я понял, что хотя бы общее понимание быть должно. Даже если не писать простые программки, то хотя бы чтобы разобрать и отдебажить что там нам постпроцессор написал.
Во-первых, стоит знать, что g-code идет кадрами, каждая строка — кадр. Код
даст переход по линии, соединяющей текущее местоположение и точку x10y20, а код
даст переход по ломаной — сначала в точку (текущее положение, x10), а потом уже в точку x10y20.
Кстати, на втором примере мы можем увидеть свойство модальности: мы можем не писать G1 в начале второй строки, ибо G1 — модален и стойка поймет кадр без кода как дублирующий код предыдущего. Если бы мы пытались пройти по дуге (G2/G3) и так же вторую часть перенесли бы на следующую строку — стойка бы интерпретировала эту строчку как новый кадр G1.
Итак, первая группа кодов, которые стоит знать — установочные. Сюда входят коды установки системы координат, системы единиц, установка коррекции длины и радиуса инструмента. Для хобббийного ЧПУшника достаточно из всего этого знать строку безопасности, которая ставится в начале каждой программы:
И расшифровка: G17 (работаем в плоскости XY) G21 (единицы — миллиметры) G40 (отмена компенсации длины инструмента) G49 (отмена компенсации радиуса инструмента) G54 (работа в первой системе координат) G80 (отмена ранее запущенных постоянных циклов) G90 (работа в абсолютной системе координат). После такой лошадиной дозы команд любой станок очищается от всех возможных грехов, оставшихся с предыдущих обработок, и готов к работе над вашим проектом. Даже если ваш станок не знает ничего про коррекции, не стесняйтесь — на фоне тела программы эти несколько байт сильно размера программе не добавят, станок чужеродные коды просто проигнорирует, зато точно все будет хорошо.
В общем, пожалуй, тут больше и знать-то нечего для работы на обсуждаемых станках.
Разве что G54 — обозначение работы в первой системе координат. Дело в том, что почти любая стойка по умолчанию поддерживает машинную систему координат (с нулем на концевых датчиках, обычно в углу рабочего стола), и до 6 дополнительных систем координат, задаваемых пользователем. Зачем? Когда Вы работаете в CAM, Вы задаете произвольную нулевую точку — в верхнем левом ближнем углу (так правильней) или в центре заготовки, и вся траектория описывается от этой точки. Если бы станок умел работать только в машинной СК, приходилось бы либо ставить заготовку углом в машинный ноль, либо в CAM задавать ноль в неясной точке, вымерянной относительно реального расположения детали. Зачем целых 6 систем координат? Ну тоже все просто, хотя и реже используется: если стол позволяет установить несколько заготовок, имеет смысл объединить обработки: сначала пройти все заготовки одной фрезой, потом поменять фрезу и снова пройти по всем, ну т.д. Тут и приходит на помощь разные СК: вместо того, чтобы сращивать модели в CAM, можно обозначить разные СК для заготовок и в начале каждой обработки прописать, в какой СК работаем.
Теоретически при ручном написании программы еще может помочь команда G90/G91: выбор абсолютной или относительной системы координат. Тут все тоже боль-мень просто: в G90 станок переходит по заданным в строке координатам, а в G91 — по добавленным к текущим координатам. Так что станок, стоящий в точке X10Y10 на строку G90 G1 x20 перейдет в точку X20, а на строку G91 G1 X20 — в точку X30.
Следующая группа — коды перемещений. Тут все просто, по крайней мере на обсуждаемых станках:
G0 — холостые перемещения, выполняются на максимальной установленной в стойке скорости. Стоит учитывать, что G0 не всегда дает линейное движение, в некоторых стойках при команде G0 X200 Y300 при нахождении в точке X0Y0 рабочий инструмент сначала уходит под 45 градусов в точку X200Y200, и потом по прямой — в Y300. Имеет смысл проверить, как это происходит на Вашем станке, не зная этой тонкости можно случайно врезаться в крепеж или заготовку.
G1 — линейная интерполяция. Тут еще проще, станок движется всегда по прямой между текущей точкой и точкой, обозначенной в коде. Команда предполагает синтаксис G1 X20Y30Z10 F1000, где F — скорость движения в единицах станка (чаще — миллиметры в минуту, но иногда и мм/сек или еще что-нибудь экзотическое). Скорость — модальна, т.е. если Вы указали скорость один раз, она будет действительна для всех последующих строк G1/G2/G3, даже если они разделены, например, G0 или другими кодами.
G2/G3 — круговая интерполяция по часовой или против часовой стрелке. Допустимы два варианта определения: при нахождении станка в точке X0Y0 формат G2 X10Y10R20 построит дугу между текущей точкой и точкой X10Y10 с радиусом 20, формат G2 X35Y25 I20J-5 построит дугу между текущей точкой и X35 Y25 с центром в точке X(текущая точка)+20 Y(текущая точка)-5.
Теоретически, в продвинутых стойках встречается масса других интерполяций — от синуса до гиперболы, но в наших станках и при наличии CAMа это неактуально.
Ну и еще несколько кодов, которые входят в систему ISO 7bit, но не являются g-кодами. Это M03 (включение шпинделя) с аргументом S (скорость вращения), M05 — остановка шпинделя, M07/09 — подача и отключение СОЖ, и M30 — окончание программы.
Фух. Как-то сумбурно и затянуто получилось, но это действительно может оказаться полезным. На этом прощаюсь, в следующей серии я напишу немножко по материалам для домашнего ЧПУ-фрезера и опишу процесс построения обработки в PowerMill.
G09, G61, G62, G64, G60 G-Code: точный останов и защита от люфта
G09 / G61 G-код: проверка точного останова
Зачем это нужно и почему элемент управления не всегда работает в режиме проверки точной остановки?
Во время типичной контурной операции направление движения резания меняется довольно часто. В этом нет ничего необычного, со всеми пересечениями, точками касания и зазорами. При контурной обработке это означает, что для программирования острого угла детали движение инструмента по оси X в одном кадре должно измениться на движение по оси Y в следующем кадре. Чтобы перейти от одного режущего движения к другому, система управления должна сначала остановить движение по оси X, а затем начать движение по оси Y. Поскольку невозможно мгновенно запустить полную скорость подачи без ускорения, а также невозможно остановить подачу без замедления, возможна ошибка резания. Эта ошибка может привести к резке острых углов на контуре детали с нежелательным перерегулированием, особенно при очень высоких скоростях подачи или очень узких углах. Это происходит только во время движения резания в режиме G01, а также в режимах G02 и G03, но не в режиме ускоренного движения G00. Во время быстрого движения замедление движения происходит автоматически — и в сторону от детали.
Учтите, что резкие маневры на высокой скорости могут превысить возможности машины по ускорению, заставляя ее отставать и начинать попытки догнать с помощью контура обратной связи сервопривода. Проверка точной остановки просто заставляет машину закрыть ошибку (расстояние от заданного положения до фактического положения) до нуля перед продолжением. Недостатком является то, что это может замедлить работу программы без уважительной причины. Например, при черновой обработке необязательно, чтобы станок был точно намечен. Роль чистового прохода заключается в устранении неточностей чернового прохода. Думайте о Exact Stop Check как о чем-то, что есть в вашем наборе инструментов, чтобы вытащить, если вы знаете, что у вас есть проблема, либо потому, что вы видите проблему в деталях, либо потому, что по опыту знаете, что вы увидите проблемы.
Проверка точной остановки доступна в двух формах. G09 — это однократная команда, а G60 — модальная команда. Когда вы указываете G61, это как если бы точная проверка остановки происходит в конце каждого движения, которое делает машина.
G-код G64: отменить точную остановку
Используйте команду G64, чтобы отменить G61. G09 не требует отмены, так как он автоматически отменяется, когда программа переходит к следующему кадру.
G-код G60: движение в одном направлении (защита от люфта)
Говоря о решениях проблем в нашем наборе инструментов, давайте поговорим об однонаправленных движениях. У каждой машины есть люфт, вопрос в том, «сколько и что нам с этим делать?» Типичное ЧПУ, которое работает в хорошем состоянии, имеет настолько небольшой люфт, что это не имеет большого значения для большинства операций. Тем не менее, здесь есть некоторый люфт, и есть некоторые операции, которые должны быть очень точными, поэтому мы хотим иметь возможность выполнять их без ошибки люфта. Это время, когда мы вытаскиваем G60 из нашего набора инструментов и пробуем односторонние движения.
Люфт появляется только тогда, когда мы меняем направление. Мастера-механики привыкли работать на станках с большим люфтом — настолько сильным, что подъемное фрезерование на таких станках может быть опасным. И все же им удается делать очень точную работу. Причина в том, что они знают, что нужно подходить к пропилу только с одного направления после устранения всех люфтов. Если они должны изменить направление, они оттягиваются достаточно далеко, чтобы пройти обратный ход, преодолев любой люфт, прежде чем начать резку. Это в основном то, что G60 делает для ЧПУ.
Какие операции требуют такой точности?
Что ж, подумайте о зондировании с помощью электронного щупа. Ясно, что мы хотим, чтобы их измерения были максимально точными. В любом случае зондирование обычно выполняется в одном направлении, поэтому использование движения в одном направлении является естественным.
G60 работает, принимая координату XYZ, поэтому движения выглядят примерно так:
Эти маленькие фрагменты кода перемещаются к Y0Y0 с порогами, затем заставляют G60 перемещаться вправо на 1 дюйм, за которым следует возврат к 0, и завершается перемещением вверх на 1 дюйм. Мы должны указать G60 в каждой строке, потому что G60 — это однократный g-код, а не модальный g-код.
Точные команд останова G09 / G61 и их использование
Команда точного останова (G09) и примеры
Первая из двух команд, управляющих скоростью подачи при обработке углов, — это команда G09 — Точный останов. Это немодальная команда, и ее следует повторять в каждом блоке всякий раз, когда это необходимо.
В примере программы O1301 ускорение и замедление не предусмотрено. Это может вызвать неровные углы из-за довольно высокой скорости подачи F90.0 (дюйм / мин):
O1301 (ОБЫЧНАЯ РЕЗКА)
…
N13 G00 X15.0 Y12.0
N14 G01 X19.0 F90.0
N15 Y16.0
N16 X15.0
N17 Y12.0
…
Если добавить в программу команду точного останова G09, движение в этом кадре будет полностью завершено до того, как начнется движение по другой оси — O1302:
O1302 (G09 РЕЗКА)
…
N13 G00 X15.0 Y12.0
N14 G09 G01 X19.0 F90.0
N15 G09 Y16.0
N16 G09 X15.0
N17 Y12.0
…
Пример O1302 гарантирует острый угол во всех трех положениях детали. Если только один угол критичен для резкости, запрограммируйте команду G09 в кадре, который заканчивается в этом углу — O1303:
O1303 (G09 РЕЗКА)
…
N13 G00 X15.0 Y12.0
N14 G01 X19.0 F90.0
N15 G09 Y16.0
N16 X15.0
N17 Y12.0
…
Команда G09 полезна только в том случае, если несколько блоков требуют замедления для крутого поворота. Для программы, в которой все углы должны быть точными, постоянное повторение G09 не очень эффективно.
Команда режима точной остановки (G61) и пример
Вторая команда, исправляющая ошибку на острых углах, — это G61 — Режим точного останова. Он намного эффективнее G09 и работает идентично. Основное отличие состоит в том, что G61 — это модальная команда, которая остается в силе до тех пор, пока она не будет отменена командой режима резки G64. G61 сокращает время программирования, но не время цикла. Это наиболее полезно, когда G09 будет повторяться слишком много раз в одной программе, что делает ее излишне слишком длинной — O1304.
O1304 (G61 РЕЗКА)
…
N13 G00 X15.0 Y12.0
N14 G61 G01 X19.0 F90.0
N15 Y16.0
N16 X15.0
N17 Y12.0
N18 G64
…
Обратите внимание, что пример программы O1304 идентичен по результатам программе O1301. В обоих случаях проверка точного останова применяется ко всем движениям резания — немодально в программе O1301, модально в программе O1304. Также обратите внимание на дополнительный блок — N18. Используется команда G64 — нормальный режим резки. Нормальный режим резки является настройкой по умолчанию при включении питания машины и обычно не программируется. На рисунке показано движение инструмента с командой G09 / G61 и без нее. Показанная величина большого перерегулирования преувеличена только для иллюстрации, на самом деле она очень мала.
Подробности использования в других режимах
Автоматическая коррекция угла
Хотя для фрез действует смещение радиуса фрезы, скорость подачи в точках изменения контура обычно не отменяется. В таком случае можно использовать подготовительную команду G62 для автоматического изменения скорости подачи резания в углах детали. Эта команда активна до тех пор, пока не будет запрограммирована команда G61 (режим проверки точного останова), команда G63 (режим нарезания резьбы) или команда G64 (режим резания).
Режим нажатия
Программирование в режиме нарезания резьбы G63 заставит систему управления игнорировать любые настройки переключателя коррекции скорости подачи, кроме настройки 100%. Это также приведет к отмене функции клавиши фиксации питания, расположенной на панели управления. Режим нарезания резьбы будет отменен путем программирования команды G61 (проверка точного останова), команды G62 (выбор режима автоматической коррекции угла) или команды G64 (выбор режима резания).
Режим резки
Когда режим резки G64 запрограммирован или активен по умолчанию, он представляет собой нормальный режим резки. Когда эта команда активна, проверка точного останова G61 не будет выполняться, равно как и автоматическая коррекция угла G62 или режим нарезания резьбы G63. Это означает, что ускорение и замедление движения будут выполняться в обычном режиме (в соответствии с системой управления), и будет действовать коррекция скорости подачи. Это наиболее распространенный режим по умолчанию для типичной системы управления.
Режим резки можно отменить, запрограммировав следующие команды: G61 (режим точного останова), G62 (режим автоматической коррекции угла) или G63 (режим нарезания резьбы).
Команда G64 обычно не программируется, если в той же программе не используются один или несколько других режимов подачи. Чтобы лучше понять режимы G62 и G64, сравните иллюстрации на рисунке.
G- и M-коды для станков с ЧПУ – просто о сложном
Станочные комплексы с 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-функция – язык программирования, осуществляет подготовительные функции для работы станка по управлению осевым перемещением инструмента.
«ИСО 7-бит» создан компанией EIA в 60-х гг. прошлого столетия, а доработан спустя 20 лет. G-код утвержден как стандарт ISO 6983-1:2009, в СССР – как ГОСТ 20999-83. Код записывает информацию на восьмидорожечной перфоленте и кодирует 128 символов.
Справка: многие производители дорабатывают код по-своему, и отличия от базового можно посмотреть в инструкции к конкретной системе управления.
В программе, написанной на языке ISO 7-bit, все команды формируют кадры – совокупности из одной или нескольких команд. Первый кадр состоит из единственного знака – «%». Иногда такой символ стоит и в последнем кадре. Так программа отделяет кадры друг от друга. Остальным присваиваются номера, а оканчиваются они знаком CR/LF – перевод строки. Чтобы завершить программу, вводится команда M02 или M30.
Комментарии пишутся в круглых скобках и несут конкретную информацию:
Примечание: СЧПУ не считывает текст в круглых скобках.
Чаще всего список кодов в кадре начинается с подготовительных. Затем вписываются команды перемещения, выбирается режим работы и технологические коды.
Модальные и немодальные G-коды.
Независимые части основного ПО описываются в промежутке обозначений M02–M30. Сначала идет номер, в конце прописывается M17.
М-code
М-функции — дополнительные коды, на разных станках CNC могут немного отличаться. Эти команды управляют рабочими органами и режимами оборудования с ЧПУ.
Вспомогательные команды используются одиночно или вместе с другими кодами. Когда кадр устанавливает рабочий орган в шпиндель, это выглядит так:
Здесь команда M6 на пульте подразумевает некоторый набор действий, чтобы заменить рабочий орган:
Если М- код включает какое-либо устройство, то обязательно существует его пара, которая выключает:
M8 – M9 – включить/выключить систему охлаждения;
M3 – M5 – включить/выключить обороты шпинделя.
В кадре разрешается использовать несколько М-функций. Для станков с внушительным набором сменных устройств задействуется больше М-кодов в управлении.
Примечание: М-код может вписываться самостоятельно или в кадре с G-кодами.
Вспомогательные команды делятся:
Важно: на разных станках одни и те же команды могут настраиваться на управление другими устройствами.
Таблица G-кодов ЧПУ с расшифровкой
Таблица представляет неполный перечень команд для управления станком, только важные:
Таблица M-кодов ЧПУ с расшифровкой
Вспомогательные команды программного кода маркируются буквой М и выполняют такие действия:
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. Правила кодирования для станка с конкретным устройством ЧПУ определяются используемым общим кодом, инструкцией по эксплуатации оборудования и руководством по программированию систем ЧПУ.











