====== Список G-кодов, реализованных в myCNC: ====== | **Код** | **Описание** | **Термическая резка(С)** **Фрезерная обработка (М)** **Токарная обработка (****L****)** | **Примечания** | | **G00** | Быстрые перемещения (позиционирование) |   |   | | **G01** | Линейная интерполяция |   |   | | **G02** | круговая/винтовая интерполяция против часовой стрелки |   |   | | **G03** | Круговая/винтовая интерполяция по часовой стрелки |   |   | | **G04** | Пауза, задержка |   |   | | **G5.1** |   |   |   | | **G5.2** |   |   |   | | **G5.2** |   |   |   | | **G10** | [[#_G10_Набор_данных|Набор данных.]] Программируемый ввод данных |   |   | | **G11** | Отмена зеркалирования |   |   | | **G12** | Зеркалирование оси Х |   |   | | **G13** | Зеркалирование оси Y |   |   | | **G14** | Зеркалирование оси ХY |   |   | | **G15** | Выключение полярных координат |   |   | | **G16** | Включение полярных координат |   |   | | **G17** | Плоскость координат XY |   |   | | **G18** | Плоскость координат ZX |   |   | | **G19** | Плоскость координат YZ |   |   | | **G20** | Дюймовая система координат |   |   | | **G21** | Метрическая система измерения |   |   | | **G28** | Возврат в исходную позицию (Home) |   |   | | **G28.1** | Записать текущую позицию как исходную позицию (референтная точка) |   |   | | **G28.2** | Сохранить исходную позицию #1 |   |   | | **G28.3** | Сохранить исходную позицию #2 |   |   | | **G28.4** | Сохранить исходную позицию #3 |   |   | | **G28.5** | Восстановить исходную позицию #1 |   |   | | **G28.6** | Восстановить исходную позицию #2 |   |   | | **G28.7** | Восстановить исходную позицию #3 |   |   | | **G28.8** | ? |   |   | | **G28.9** | Адрес исходной позиции ? |   |   | | **G30** | Возврат в исходную позицию G30 (смены инструмента) |   |   | | **G30.1** | Установить исходную позицию G30 |   |   | | **G33** | Синхронизация шпинделя |   |   | | **G38.2** | Измерение методом касания |   |   | | **G38.3** | Измерение методом касания |   |   | | **G38.4** | Измерение методом касания |   |   | | **G38.5** | Измерение методом касания |   |   | | **G38.9** | Измерение длинны инструмента |   |   | | **G40** | Отмена компенсации ширины инструмента |   |   | | **G41** | Компенсация ширины инструмента слева |   | [[https://www.youtube.com/watch?v=N7eXe8Xxpto|Туториал на YouTube]] | | **G42** | Компенсация ширины инструмента справа |   |  [[https://www.youtube.com/watch?v=N7eXe8Xxpto|Туториал на YouTube]] | | **G43** | Компенсация длинны инструмента положительно |   |   | | **G44** | Компенсация длинны инструмента отрицательно |   |   | | **G49** | Отмена компенсации длинны инструмента. |   |   | | **G50** | Выключение режима масштабирования | М |   | | **G51** | Включение режима масштабирования | M |   | | **G50** | Устанавливает максимальную скорость шпинделя | L |   | | **G53** | Используется система координат станка | M L |   | | **G54** | Используется система координат #1 | M L |   | | **G55** | Используется система координат #2 | M L |   | | **G56** | Используется система координат #3 | M L |   | | **G57** | Используется система координат #4 | M L |   | | **G58** | Используется система координат #5 | M L |   | | **G59** | Используется система координат #6 | M L |   | | **G59****.1** | Используется система координат #7 | M L |   | | **G59****.2** | Используется система координат #8 | M L |   | | **G59****.3** | Используется система координат #9 | M L |   | | **G59** | Установить параметры источника питания плазменной дуги Hypertherm | C |   | | **G61** |   | M |   | | **G62** |   | M |   | | **G64** |   | M |   | | **G6****5** | Простой вызов Макроса | M |   | | **G68** | Вращение координат | M |   | | **G69** | Отмена вращения координат | M |   | | **G70** | Дюймовая система координат (2) |   |   | | **G71** | Метрическая система измерения (2) |   |   | | **G73** | Цикл глубокого сверления | M |   | | **G74** | Цикл нарезания левой резьбы | M |   | | **G76** | Цикл нарезания резьбы | L |   | | **G76** | Motion Mode Cancel ? | L |   | | **G80** | Отмена цикла |   |   | | **G81** | Цикл  сверления |   |   | | **G82** | Цикл  сверления с задержкой |   |   | | **G83** | Цикл  сверления с выводом сверла |   |   | | **G84** | Цикл  нарезания резьбы метчиком |   |   | | **G85** | Цикл  растачивания без задержки с выходом |   |   | | **G86** | Цикл  сверления с остановкой и выходом |   |   | | **G87** | Цикл  обратного растачивания |   |   | | **G88** | Цикл  растачивания с остановкой и ручным выводом |   |   | | **G89** | Цикл  растачивания с задержкой и выводом |   |   | | **G90** | Программирование в абсолютных координатах |   |   | | **G91** | Программирование в приращениях |   |   | | **G90.1** | Программирование центра дуги в абсолютных координатах |   |   | | **G91.1** | Программирование центра дуги в приращениях |   |   | | **G****92** | Установка системы координат заготовки (рабочая система) | М |   | | **G9****2** | Нарезание резьбы | L |   | | **G94** | Подача за минуту | L |   | | **G95** | Подача за оборот | L |   | | **G96** | Контроль постоянной скорости резания | L | Постоянная скорость резки | | **G97** | Задание скорости шпинделя, отмена G96 | L | Оборотов в минуту | | **G98** | Задание скорости шпинделя оборотов в минуту | L |   | | **G99** | Задание скорости оборотов за единицу подачи | L |   | | **G98** | Возврат в исходную точку в постоянном цикле | М |   | | **G99** | Возврат к точке R в постоянном цикле | М |   | | **G150** | Установка коррекции по радиусу инструмента |   |   | | ** ** |   |   |   |   ===== М-функции (наличие зависит от профиля) : ===== | **Код** | **Описание** | **Реализация** | **Термическая резка(С)** **Фрезерная обработка (М)** **Токарная обработка (****L****)** | | **М00** | Безусловный останов | ПЛК |   | | **M01** | Условный останов | ПЛК |   | | **M02** | Конец программы | Встроенный +ПЛК |   | | **М03** | Вращение шпинделя по часовой | ПЛК |   | | **М04** | Вращение шпинделя против часовой | ПЛК |   | | **M05** | Останов шпинделя | ПЛК |   | | **M06** | Смена инструмента | Макрос |   | | **М07** | Включение подачи СОЖ (начало обработки) | ПЛК |   | | **М07** | Точечная маркировка плазменной дугой | ПЛК | С | | **М08** | Включение насоса СОЖ | ПЛК |   | | **М08** | Маркировка сверловкой | ПЛК | С | | **М09** | Выключение СОЖ | ПЛК |   | | **М14** | Выключение системы поддержания зазора (ТНС) | Встроенный +ПЛК | С | | **М15** | Включение системы поддержания зазора (ТНС) | Встроенный +ПЛК | С | | **М19** | Включение ориентации шпинделя | ПЛК | L | | **М20** | Выключение ориентации шпинделя | ПЛК | L | | **М20** | Начало резки | ПЛК | С | | **М21** | Окончание (останов) резки | ПЛК | С | | **М23** | Включение чистового прохода резьбы | ПЛК | L | | **М24** | Выключение чистового прохода резьбы | ПЛК | L | | **М30** | Конец программы с переходом в начало | Макрос |   | | **М41** | Установка быстрого/медленного режима коробки скорости шпинделя | ПЛК |   | | **М45** | Начало маркировки плазменной дугой | ПЛК | С | | **М46** | Конец маркировки плазменной дугой | ПЛК | С | | **М50(1)** | Выключение системы поддержания зазора (ТНС) | ПЛК | С | | **М50(2)** | Выключение источника Hypertherm HPR при резке | Встроенный +ПЛК | С | | **М50(3)** | Изменение скорости подачи | Встроенный +ПЛК |   | | **М51** | Выключение системы поддержания зазора (ТНС | ПЛК | С | | **М62** | Включение выхода | ПЛК |   | | **М63** | Выключение выхода | ПЛК |   | | **М64** | Включение выхода | ПЛК |   | | **М65** | Выключение выхода | ПЛК |   | | **М71** | Начало резки | ПЛК | С | | **М72** | Начало резки | ПЛК | С | | **М73** | Окончание (останов) резки | ПЛК | С | | **М74** | Останов резки | ПЛК | С | | **М75-М88** | Определённые пользователем М-функции |   |   | | **М89** | Начало маркировки плазменной дугой | ПЛК | С | | **М90** | Конец маркировки плазменной дугой | ПЛК | С | | **М92** | Начало резки | ПЛК | С | | **М93** | Окончание (останов) резки | ПЛК | С | | **М98** | Запуск подпрограммы | Встроенный | С | | **М99** | Останов подпрограммы | Встроенный | С | | **М131** | Поиск исходного положения (референтной точки ) ось X | Макрос |   | | **М132** | Поиск исходного положения (референтной точки ) ось Y | Макрос |   | | **М133** | Поиск исходного положения (референтной точки ) ось Z | Макрос |   | | **М13****4** | Поиск исходного положения (референтной точки ) ось A | Макрос |   | | **M135** | Поиск исходного положения (референтной точки ) ось B | Макрос |   | | **M136** | Поиск исходного положения (референтной точки ) ось C | Макрос |   | | **M138** | Поиск исходного положения (референтной точки ) для всех осей | Макрос |   | | **М101-М199** | Определённые пользователем М-функции |   |   | | **М200-М999** | Определённые пользователем М-функции |   |   | ==== G10 Набор данных ==== Формат команды **- ** **G10** **L ****P ****Q ****X ****Y ****Z ****A ****B ****C ****U ****V ****W,** где: ·        G10 -- Программируемый набор данных ·        L -- код операции ·        P - Параметр #1 ·        Q - Параметр #2 ·        X, Y, Z, A, B, C, U, V, W -- координаты/и их значения ·          **L70** -- установить позицию/координаты в заданные значения o   **P0** -- Устанавливает машинные координаты, в заданные как параметр |G10L70 P0 X0 Y0 (Установит машинные координаты X=0, Y=0)| o   **P1** - Устанавливает рабочие координаты (система координат - **G54**), в заданные как параметр  |G10L70 P1 X10 Y20 Z30 (Установит рабочие координаты (**G****54**) в X=10, Y=20, Z=30)| |G10L70 P1 X0 Y0 Z0 A0 B0 C0 (Установит рабочие координаты (**G****54**) в X=0, Y=0, Z=0, A=0, B=0, C=0)| o   **P2** - Устанавливает рабочие координаты (система координат - **G55**), в заданные как параметр |G10L70 P2 X0 Y10 Z20 (Установит рабочие координаты (**G****5****5**) в X=0, Y=10, Z=20)| |G10L70 P2 X0 Y0 Z0 A0 B0 C0 (Установит рабочие координаты (**G****5****5**) в X=0, Y=0, Z=0, A=0, B=0, C=0)| o   **P3** - Устанавливает рабочие координаты (система координат - **G56**), в заданные как параметр |G10L70 P2 X0 Y10 Z20 (Установит рабочие координаты (**G****5****6**) в X=0, Y=10, Z=20)| |G10L70 P2 X0 Y0 Z0 A0 B0 C0 (Установит рабочие координаты (**G****5****6**) в X=0, Y=0, Z=0, A=0, B=0, C=0)| o   **P4** - Устанавливает рабочие координаты (система координат - **G57**), в заданные как параметр o   **P5** - Устанавливает рабочие координаты (система координат - **G58**), в заданные как параметр o   **P6** - Устанавливает рабочие координаты (система координат - **G59**), в заданные как параметр o   **P7** - Устанавливает рабочие координаты (система координат - **G59.1**), в заданные как параметр o   **P8** - Устанавливает рабочие координаты (система координат - **G59.2**), в заданные как параметр o   **P9** - Устанавливает рабочие координаты (система координат - **G59.2**), в заданные как параметр   Дополнительно текущие координаты могут быть изменены прямым обращением к регистрам глобальных переменных. Находящиеся в регистре __#5220 ???__ значения, содержат текущие рабочие координаты. **Формат команды будет следующий:** |G10L70 P#5220 X0 Y10 Z20 (Установит рабочие координаты в X=0, Y=10, Z=20)| |G10L70 P#5220 X0 Y0 Z0 A0 B0 C0 (Установит рабочие координаты в X=0, Y=0,Z=0, A=0, B=0, C=0)| ** ** **L80** -- Назначает значение заданное в **Q** переменной регистра с адресом **P** |G10L80 P100 Q10 (Назначит "10" в регистр #100 #100=10)| **L81** -- Копирует значение из регистра с адресом **Q** в регистр с адресом **P** |G10L81 P100 Q10 (Значение регистра #10 будет назначено в регистр #100 #100=#10)| **L180** -- Добавляет заданное в **Q** значение к содержимому регистра с адресом указанным в P результат хранится в **P** |G10L180 P100 Q10 (Сложить 10 с содержимым регистра #100 #100=#100 + 10)| **L181** - Вычитает заданное в **Q** значение от содержимого регистра с адресом, указанным в P результат хранится в **P** |G10L181 P100 Q10 (Вычесть 10 из содержимого регистра #100 #100=#100 - 10)| **L182** -- Умножает содержимое регистра с адресом указанным в **P** на значение заданное как **Q**, результат операции сохраняется в регистре с адресом **P** |G10L180 P100 Q10 (Умножает содержимое регистра #100 на 10 #100=#100 * 10)| **L183** - Делит содержимое регистра с адресом, указанным в **P** на значение, заданное как **Q**, результат операции сохраняется в регистре с адресом **P** |G10L180 P100 Q10 (Разделить содержимое регистра #100 на 10 #100=#100 / 10)| **L184** -- Побитное И -- С значением указанным в **Q** и содержимым регистра с адресом указанным в **P** будет проведена операция побитного И, результат останется в регистре с адресом **P** |G10L184 P100 Q66 (Проведёт операцию побитного И с регистром #100 и числом 66 #100=#100 & 66)| **L185** - Побитное ИЛИ -- С значением, указанным в **Q** и содержимым регистра с адресом, указанным в **P** будет проведена операция побитного ИЛИ, результат останется в регистре с адресом **P** |G10L185 P100 Q66 (Проведёт операцию побитного ИЛИ с регистром #100 и числом 66 #100=#100 | 66 )| **L186** - Побитное Исключающее ИЛИ -- С значением указанным в **Q** и содержимым регистра с адресом указанным в **P** будет проведена операция побитного Исключающее ИЛИ, результат останеться в регистре с адресом **P** |G10L186 P100 Q77 (Проведёт операцию побитного Исключающее_ИЛИ  с регистром #100 и 77 #100=#100 ^ 77 )| **L190** -- Сложит значения хранящиеся в регистрах адреса, которых заданны как параметры **Q** и **P**, результат сохранится в регистре с адресом **P** |G10L190 P100 Q101 (Сложит содержимое регистра #100 и #101 #100=#100 + #101)| **L191** - Вычтет значение, которое храниться в регистре с адресом **Q** из значения, которое хранится в регистре с адресом **P**, результат сохранится в регистре с адресом **P** |G10L191 P100 Q101 (Вычтет значение в регистре #101 из значения регистра #100 #100=#100 - #101)| **L192** -- Умножит значение, которое храниться в регистре с адресом **P** на значение, которое хранится в регистре с адресом **Q**, результат сохранится в регистре с адресом **P** |G10L192 P100 Q105 (Помножит содержимое регистров #100 и #105 #100=#100 * #105)| **L193** - Разделит значение, которое храниться в регистре с адресом **P** на значение, которое хранится в регистре с адресом **Q**, результат сохранится в регистре с адресом **P** |G10L193 P100 Q101 (Разделит содержимое регистра #100 на содержимое регистра #101 #100=#100 / #101)| **L194** -- Вычеслит абсолютное значение содержимого регистра с адресом **P **результат сохранится в регистре с адресом **P** |G10L194 P100 (Расчитает абсолютное значение содержимого регистра #100 #100=ABS(#100))|