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

Материал из cnc-club
Перейти к навигации Перейти к поиску
Code Параметры Описание Примеры использования Ссылки
Перемещения X Y Z A B C U V W После имени оси пишется координата, куда ей двигаться, пример: G0 X123 Y321.

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

G0
Перемещение на "скорости быстрого перемещения" по прямой линии из текущей точки в заданную.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G1
Перемещение с текущей скоростью подачи в заданную точку. Подача задаётся кодом F.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G2, G3 I J K or R, P Перемещение в заданную точку по дуге (спирали) по (CW) или против (CCW) часовой стрелки с числом витков P.Если координата,не входящая в выбранную плоскость (G17-19) не изменяется,то выбранной плоскости описывается окружность.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G4 P Пауза длинной в указанных после параметра P секунд.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G5 I J P Q Кубический сплайн
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G5.1 I J Квадратичный сплайн
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G5.2 P L NURBS, добавить контрольную точку
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G5.3
NURBS, выполнить
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G38.2…G38.5
Проба датчика в направлении из текущей точки в указанную,работает на контакт (G38.2 G38.4) и разрыв (G38.3 G38.5) с датчиком. Результат в параметрах #5061 - #5069,а параметр #5070 в случае удачи становится равным единице.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G33 K Перемещение синхронизированное со шпинделем
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G33.1 K Rigid tapping
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G80
Cancel motion mode
Циклы (X Y Z or U V W apply to canned cycles, depending on active plane)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G81, G82 R L (P) Циклы сверления (с задержкой в конце отверстия)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
  3. lunuxcnc.org
    1. current version
    2. devel version
G83, G73 R L Q Циклы сверления с отскоком и сломом стружки
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
  3. lunuxcnc.org
    1. current version
    2. devel version
G85, G89 R L (P) Циклы расточки (с задержкой в нижней точке)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
  3. lunuxcnc.org
    1. current version
    2. devel version
G76 P Z I J R K Q H L E Multipass lathe threading cycle
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
Distance Mode
G90
Далее координаты в командах будут заданы как абсолютные значения
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G91
Далее координаты в командах будут заданы в приращениях
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G90.1
В последующих командах координаты центра дуги I,J,K (G02 G03) будут заданы как абсолютные координаты
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G91.1
В последующих командах координаты центра дуги I,J,K (G02 G03) будут заданы относительно текущего положения
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G7
X Diameter mode (токарный станок)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G8
X Radius mode (токарный станок)
Режимы задания подачи
G93
Inverse time feed rate
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G94
Подача в Ед/мин (мм/мин, дюйм/мин...)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G95 Подача на оборот (мм/обб дюйм/об)
Управление шпинделем
M3, M4 S Запуск вращения шпинделя по(M3) или против (M4) направления вращения часовой стрелки.
  • Так же не забывайте,что на запуск шпинделя требуется время,поэтому после этой команды надо ставить паузу на 5~12 секунд.

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

  • У некоторых производителей лазерных станков код M3 используется для включения луча лазера.
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M5
Остановка шпинделя.
  • Аналогично с командами M3 и M4 на остановку шпинделя так же требуется время,поэтому для нормальной работы следует выполнить настройки аналогичные настройкам команд M3 и M4.
  • Элемент маркированного списка
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M19
Ориентация шпинделя
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G96 S D Режим постоянной скорости реза (CSS mode, Constant Surface Speed)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G97
Режим об/мин
Охлаждение
M7
Включение подачи тумана (mist)
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M8
Включение подачи СОЖ (flood)
M9
Отключения подачи охлаждающих сред запущенных командами M7 и/или M8
Компенсация длины инструмента
G43 H Включение компенсации длинны инструмента, данные берутся из указанной в параметре H ячейки (length offset)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G43.1
Включение компенсации длинны текущего инструмента, данные указываются в команде.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G43.2 H Применить дополнительную компенсацию длины инструмента
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G49
Отключение (Отмена) компенсации длинны инструмента.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
Остановка
M0
Пауза программы
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M1
Условная пауза
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M2, M30
Конец программы
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M60
Пауза для смены палет
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
Units
G20
Параметры последующих команд задаются в дюймах
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G21
Параметры последующих команд задаются в миллиметрах
Выбор рабочей плоскости (применительно к G2, G3, G81…G89, G40…G42)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G17
Выбор плоскости XY (по умолчанию)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G18
Выбор плоскости XZ
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G19
Выбор плоскости YZ
Компенсация радиуса инструмента
G40
Отмена компенсации радиуса инструмента
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G41,G42 D Начало компенсации радиуса инструмента слева или справа от траектории
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G41.1, G42.1 D L Start cutter radius compensation left or right, transient tool
Path Control Mode
G61
Exact Path mode
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G61.1
Exact Stop mode
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G64 P Continuous mode with optional path tolerance
Return Mode in Canned Cycles
G98
Retract to prior position
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G99
Retract to R position
Other Modal Codes
F
Set Feed Rate
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
S
Set Spindle Speed
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
T
Select Tool (also see M6)
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
M48, M49
Speed and Feed Override Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M50 P0 (off) or P1 (on) Feed Override Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M51 P0 (off) or P1 (on) Spindle Speed Override Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M52 P0 (off) or P1 (on) Adaptive Feed Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M53 P0 (off) or P1 (on) Feed Stop Control
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G54…G59.3
Выбор системы координат, отступы систем координат задаются командами G10 L2 и G10 L20
Flow-control Codes
M70
Save modal state
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M71
Invalidate stored state
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M72
Restore modal state
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M73
Save and Auto-restore modal state
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
Input/Output Codes
M62…M65 P Digital Output Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M66 P E L Q Digital and Analog Input Control
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M67 T Analog Output Synchronized with Motion
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M68 T Analog Output Immediate
Non-modal Codes
M6 Команда смены инструмента, выбор номера инструмента осуществляется кодом T
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
M61 Q Set Current Tool
cnc-club.ru/wiki 
lunuxcnc.org current
linuxcnc.org devel
G10 L1 P Q R axes Изменение указанного в таблице длинны, радиуса и ориентации инструмента, на которые ссылаются команды G41, G42 и G43.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G10 L10 P axes Изменение указанного в таблице длинны, радиуса и ориентации инструмента "from workpiece", на которые ссылаются команды G41,G42 и G43.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G10 L11 P axes Изменение указанного в таблице длинны, радиуса и ориентации инструмента "from fixture", на которые ссылаются команды G41, G42 и G43.
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G10 L2 P R axes Coordinate system origin, rotation setting
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G10 L20 P axes Coordinate system origin setting calculated
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G28 axes, G28.1
Возврат в запомненную точку номер 1(G28) , точка запоминается командой G28.1

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
  2. lunuxcnc.org
    1. current version
    2. devel version
G30 axes, G30.1
Возврат в запомненную точку номер 2(G30), точка запоминается командой G31.1

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
  2. lunuxcnc.org
    1. current version
    2. devel version
G53
Выполнение строки в машинной системе координат, т.е офсеты G54 - G59.3 и G92 будут игнорироваться
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G92 axes Установка и применение оперативного отступа
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G92.1
Отмена и обнуление офсета G92
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G92.2
Отмена офсета G92 с сохранением его в параметрах #5211 - #5219
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
G92.3
Восстановление и применение офсета G92 из параметров #5211 - #5219
  1. cnc-club.ru/wiki
    1. Link
  2. lunuxcnc.org
    1. current version
    2. devel version
M101…M199 P Q User-defined M-codes
Элементы процедурного программирования
O- while
Looping, while/endwhile do/while
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
O- if
Conditional, if/else/endif
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
O- repeat
Run enclosed code more than once
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
Subroutines Подпрограммы и именованные файлы

o<sub_name> sub
(MSG,code here)
o<sub_name> endsub

Объявление подпрограммы
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version

o<myfile> call

Вызов именнованной подпрограммы
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version

o123 call

Вызов номерной подпрограммы
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
o[#101+2] call Перенаправляемый вызов номерной подпрограммы
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    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 <_value> predefined named parameter , and the <_value_returned> 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]
  2. lunuxcnc.org
    1. current version
    2. devel version
Comments & Messages
(…)
An inline comment
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
(MSG,…)
Display a message "" to the user (e.g., in a popup)
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
(DEBUG,…)
Display a message (with variables substituted) like MSG
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version
(PRINT,…)
Display a message (with variables substituted) to stderr
  1. cnc-club.ru/wiki
    1. [Link]
  2. lunuxcnc.org
    1. current version
    2. devel version