Использование G-кода в лазерно-гравировальных станках с ЧПУ

ТЕХНИЧЕСКИЕ НАУКИ

ИСПОЛЬЗОВАНИЕ G-КОДА В ЛАЗЕРНО-ГРАВИРОВАЛЬНЫХ

СТАНКАХ С ЧПУ Прядилов А.В.1, Позднов М.В.2, Певчев В.П.3, Алмаев А.Ю.4

'Прядилов Алексей Вадимович - кандидат технических наук, доцент;

2Позднов Максим Владимирович - кандидат технических наук, доцент;

3Певчев Владимир Павлович - кандидат технических наук, профессор;

4Алмаев Артем Юрьевич - заведующий лабораториями, кафедра теплогазоснабжения, вентиляции, водоснабжения и водоотведения, кафедра промышленной электроники, Тольяттинский государственный университет, г. Тольятти

Аннотация: в статье рассмотрены G-код и некоторые особенности его применения для управления лазерно-гравировальными станками с ЧПУ. Приведен пример G-кода и графическая иллюстрация его выполнения.

Ключевые слова: G-код, GRBL, ГРБЛ, ЧПУ, CNC, Arduino, Ардуино, CNC Shield, лазерно-гравировальный станок с ЧПУ.

G-код — условное именование языка программирования устройств с числовым программным управлением (ЧПУ) [1]. Программа, написанная с использованием G-кода, является текстовым файлом. Все команды управления объединяются в кадры (строчки), состоящие из команд.

Рассмотрим пример такого файла (рис. 1). Он предназначен для исполнения на самодельном станке, управляемом микроконтроллером Arduino с прошивкой GRBL и платой CNC Shield с драйверами DRV8825. Изначально G-код предназначался для фрезерных, а не лазерно-гравировальных станков. Поэтому в нем отсутствуют команды, предназначенные для управления лазером. В качестве таких команд может быть использовано движение по оси Z, но чаще всего (как это сделано в примере) используют команды, предназначенные для управления шпинделем. Движение по оси Z, соответствующее поднятию/опусканию инструмента во фрезерных станках, в примере отсутствует.

G90 ; включение абсолютной системы координат

S1000 ;задание скорости оборотов вращения шпинделя F300 ; задание рабочей скорости в 300 мм/мин.

G0 ;включение режима холостого хода

x0 y0 ;линейное перемещение (по прямой) в точку с координатами x0y0 x10 ;линейное перемещение в точку с координатами x10y0

M3 ;включение вращения шпинделя по часовой стрелке (М4-против) G1 х20 ;включение режима рабочего хода G1 (перемещения с ранее

; заданной скоростью подачи F300) и перемещение в точку х20у0 x30 ; продолжение движения до х30у0 произойдет без остановки x40 у5 F600 ; задание новой скорости перемещения и перемещение в х40у5 x50 у10 M5 ; выключение шпинделя (М5) и движение на х50у10 М5 ; ничего не произойдет, т.к. шпиндель уже выключен g0X0y0 ; включение холостого хода и перемещения в начальную точку _;регистр букв и наличие пробелов между командами значения не имеет_

Рис. 1. Пример G-кода

Команда S1000, задающая скорость оборотов вращения шпинделя, интерпретируется GRBL прошивкой как настройка мощности лазера (S1000 соответствует 100% мощности). Для включения лазера используется команда M3, а для отключения М5. Путь, который пройдет лазер, изображен на рис. 2. Толщиной линией обозначено состояние лазера (тонкая -выключен, толстая - включен); количество стрелочек, указывающих направление движения, пропорционально скорости; жирными точками обозначены точки остановки.

Рис. 2. Путь, пройденный лазером в ходе выполнения О-кода

Остановка и разгон происходят не мгновенно, а с задаваемым ускорением. В примере (рис. 1, 2) станок переместится в точку 1, остановится, включит лазер и начнет двигаться по пути 12-3-4. Причем точку 2 он пройдет без остановки и изменения скорости; точке 2 пройдет поворот и ускорится тоже без остановки. Но вот в точках 1 и 4, где будет включаться/выключаться/изменяться яркость лазера, станок будет останавливаться. Например, в точке 4 станок остановится (с заданным ускорением), выключит лазер и только потом продолжит движение. Таким образом, не удается написать программу, согласно которой станок будет непрерывно ездить, на ходу включая/выключая лазер. Например, в программе HCPU предлагается несколько способов выжигания фотографического изображения [2]. В первом способе (рис. 3а) лазер постоянно включен и двигается по горизонтали. Над белым изображением быстро, над темным - медленно. Во втором способе (рис. 3б) станок приезжает в точку, включает лазер на время, пропорциональное степени черноты пикселя, выключает и передвигается на следующую точку. Этот способ самый долгий, но дает наилучший результат. Отметим необходимость выбора размера пикселя равным, либо кратным шагу шагового двигателя (во избежание полос, получившихся на рис. 3в).

а) 1 способ

б) 2 способ

в) 2 способ

Рис. 3. Результат выжигания лазером рисунков 30х35мм Список литературы

1. G-code. [Electronic recourse]. URL: http://ru.wikipedia.org/wiki/G-code/ (date of access: 06.04.2016).

2. HCPU (конвертор BMP в G-код). [Электронный ресурс]. Режим доступа: https://sites.google.com/site/nikromsoft/home/programmy/konverter-bmp-v-gcode/ (дата обращения: 06.04.2016).