G-code
Материал из Википедии — свободной энциклопедии
G-код — условное именование языка программирования устройств с ЧПУ (Числовое программное управление). Был создан компанией Electronic Industries Alliance в начале 1960-х. Финальная доработка была одобрена в феврале 1980 года как стандарт RS274D. Комитет ИСО утвердил G-код, как стандарт ISO 6983-1:1982, Госкомитет по стандартам СССР — как ГОСТ 20999-83. В советской технической литературе G-код обозначается, как код ИСО 7-бит (ISO 7-bit).
Производители систем управления используют G-код в качестве базового подмножества языка программирования, расширяя его по своему усмотрению.
Содержание |
[править] Структура программы
Программа, написанная с использованием G-кода, имеет жесткую структуру. Все команды управления объединяются в кадры — группы, состоящие из одной или более команд. Кадр завершается символом перевода строки (ПС/LF) и имеет номер, за исключением первого кадра программы и комментариев. Первый кадр содержит только один символ «%». Завершается программа командой M02 или M30. Комментарии к программе размещаются в круглых скобках, занимая отдельный кадр.
Порядок команд в кадре строго не оговаривается, но традиционно предполагается, что первыми указываются подготовительные команды, (например, выбор рабочей плоскости), затем команды перемещения, затем выбора режимов обработки и технологические команды.
Подпрограммы должны быть описаны после команды M02, но до M30. Начинается подпрограмма с кадра вида Lxx, где xx — номер подпрограммы, заканчивается командой M17.
[править] Сводная таблица кодов
Основные (называемые в стандарте подготовительными) команды языка начинаются с буквы G:
- Перемещение рабочих органов оборудования с заданой скоростью (линейное и круговое)
- Выполнение типовых последовательностей (таких, как обработка отверстий и резьб)
- Управление параметрами инструмента, системами координат, и рабочих плоскостей
| Коды | Описание |
|---|---|
| G00-G04 | Позиционирование инструмента |
| G17-G19 | Переключение рабочих плоскостей (XY, XZ, YZ) |
| G20-G21 | Не стандартизовано |
| G40-G44 | Компенсация размера различных частей инструмента (длина, диаметр) |
| G53-G59 | Переключение систем координат |
| G80-G84 | Циклы сверления, нарезания резьбы |
| G90-G92 | Переключение систем координат (абсолютная, относительная) |
[править] Таблица основных команд
| Код | Описание | Пример |
|---|---|---|
| G00 | Ускоренное перемещение инструмента (холостой ход) | G0 X0 Y0 Z100 |
| G01 | Линейная интерполяция | G01 X0 Y0 Z100 F200 |
| G02 | Круговая интерполяция по часовой стрелке | G02 X15 Y15 R5 F200 |
| G03 | Круговая интерполяция против часовой стрелки | G03 X15 Y15 R5 F200 |
| G04 | Задержка на E миллисекунд | G04 E500 |
| G40 | Отмена компенсации размера инструмента | G1 G40 X0 Y0 F200 |
| G41 | Компенсировать радиус инструмента слева от траектории | G41 X15 Y15 D1 F100 |
| G42 | Компенсировать радиус инструмента справа от траектории | G42 X15 Y15 D1 F100 |
| G43 | Компенсировать длину инструмента положительно | G43 X15 Y15 Z100 H1 S1000 M3 |
| G44 | Компенсировать длину инструмента отрицательно | G44 X15 Y15 Z4 H1 S1000 M3 |
| G53 | Отключить смещение начала системы координат станка | G53 G0 X0 Y0 Z0 |
| G54-G59 | Переключиться на заданную оператором систему координат | G54 G0 X0 Y0 Z100 |
| G80 | Отмена циклов сверления (G81-G84) | G80 |
| G81 | Цикл сверления | G81 X0 Y0 Z-10 R3 F100 |
| G82 | Цикл сверления с задержкой | G82 X0 Y0 Z-10 R3 P100 F100 |
| G83 | Цикл сверления с отходом | G83 X0 Y0 Z-10 R3 Q8 F100 |
| G84 | Цикл нарезания резьбы | G95 G84 X0 Y0 Z-10 R3 F1.411 |
| G90 | Задание абсолютных координат опорных точек траектории | G90 G1 X0.5 Y0.5 F10 |
| G91 | Задание координат относительно последней введённой опорной точки | G91 G1 X4 Y5 F100 |
| G94 | F (подача) — в формате мм/мин. | G94 G80 Z100 |
| G95 | F (подача) — в формате мм/об. | G95 G84 X0 Y0 Z-10 R3 F1.411 |
[править] Таблица технологических кодов
Технологические команды языка начинаются с буквы М. Включают такие действия, как:
- Сменить инструмент
- Включить/выключить шпиндель
- Включить/выключить охлаждение
| Код | Описание | Пример |
|---|---|---|
| M00 | Приостановить работу станка до нажатия кнопки «старт» на пульте управления, так называемый "технологический останов" | G0 X0 Y0 Z100 M0 |
| M01 | Приостановить работу станка до нажатия кнопки «старт», если включён режим подтверждения останова | G0 X0 Y0 Z100 M1 |
| M02 | Конец программы | M02 |
| M03 | Начать вращение шпинделя по часовой стрелке | M3 S2000 |
| M04 | Начать вращение шпинделя против часовой стрелки | M4 S2000 |
| M05 | Остановить вращение шпинделя | M5 |
| M06 | Сменить инструмент | M6 T15 |
| M07 | Включить дополнительное охлаждение | M3 S2000 M7 |
| M08 | Включить основное охлаждение | M3 S2000 M8 |
| M09 | Выключить охлаждение | G0 X0 Y0 Z100 M5 M9 |
| M17 | Конец подпрограммы | M17 |
| M30 | Конец информации | M30 |
[править] Параметры команд
Параметры команд задаются буквами латинского алфавита
| Код | Описание | Пример |
|---|---|---|
| X | Координата точки траектории по оси X | G0 X100 Y0 Z0 |
| Y | Координата точки траектории по оси Y | G0 X0 Y100 Z0 |
| Z | Координата точки траектории по оси Z | G0 X0 Y0 Z100 |
| E | Величина задержки в микросекундах | G04 E101 |
| F | Скорость рабочей подачи | G1 G91 X10 F100 |
| S | Скорость вращения шпинделя | S3000 M3 |
| R | Параметр стандартного цикла или радиус дуги (расширение стандарта) | G81 R1 0 R2 -10 F50 или G1 G91 X12.5 R12.5 |
| D | Параметр коррекции выбранного инструмента | M06 T1 D1 |
| P | Число вызовов подпрограммы | L82 P10 |
| I,J,K | Параметры дуги при круговой интерполяции | G03 X10 Y10 I0 J0 F10 |
| L | Вызов подпрограммы с данной меткой | L12 |
[править] См. также
- Языки программирования
- Металлорежущий станок
- Числовое программное управление
- Станок с числовым программным управлением
[править] Пример
Обработка буквы W (вписанной в прямоугольник 34х27 мм, см рис.) на условном вертикально-фрезерном станке с ЧПУ, фрезой диаметром 4 мм, в заготовке из органического стекла:
Красным цветом выделен результат обработки.
| Кадр | Содержание | Комментарий |
|---|---|---|
| % | Начало программы | |
| N1 | G90 G40 G17 | Система координат абсолютная, компенсация на инструмент выключена, плоскость интерполяции XOY |
| N2 | G00 X2.54 Y26.15 | Переход в точку начала обработки |
| N3 | S500 F0.5 M3 | Выбрать режимы резания и включить привод главного движения |
| N4 | G01 Z-1.0 | Врезание в заготовку |
| N5 | G01 X5.19 Y 2.0 | Первый штрих буквы W |
| N6 | G01 X7.76 | Продолжение движения |
| N7 | G01 X16.93 Y26.15 | Второй штрих буквы W |
| N8 | G01 X18.06 | Продолжение движения |
| N9 | G01 X25.4 Y2.0 | Третий штрих буквы W |
| N10 | G01 X25.96 | Продолжение движения |
| N11 | G01 X32.17 Y 26.15 | Четвертый штрих буквы W |
| N12 | G00 Z12 | Отвод инструмента от заготовки |
| N13 | M5 | Выключить привод главного движения |
| N14 | M02 | Конец программы |


