grbl коды на русском
CNC-DESIGN
Grbl 1.1g[‘$’ for help]
Grbl 1.1g[‘$’ для справки]
где
— Grbl – тип прошивки контроллера.
— 1.1g – версия прошивки Grbl.
При вводе в командную строку ‘$’ и нажатии Enter, Grbl должен вывести примерно следующее, в зависимости от версии прошивки и программы управления могут быть отличия:
Сейчас мы попробуем разобраться, что это все значит, как и зачем использовать.
HLP – СПРАВКА, название данного сообщения.
$# — Вывести параметры G-code.
Параметры G-code сохраняют значения координат смещения для G54-G59 координируют работу, G28/G30 предопределенных позиций, G92 смещение координат, коррекции длин инструмента, и зондирования. Большинство из этих параметров сразу же записываются в EEPROM. Это означает, что они останутся такими же, независимо от выключения питания, пока они не будут изменены явно. Непостоянные параметры, которые не будут сохранятся при перезапуске или выключении питания и повторном включении в G92, смещение длины G43.1 инструмента, и G38.2 данных зондирования.
G54-G59 координирует работу, может быть изменено с помощью команды G10 L2 Px или G10 L20 Px определено стандартом GCode NIST и стандартом EMC2 (linuxcnc.org).
G28/G30 предварительно определенные позиции могут быть изменены с помощью G28.1 и G30.1 команд, соответственно.
[G54:4.000,0.000,0.000]
[G55:4.000,6.000,7.000]
[G56:0.000,0.000,0.000]
[G57:0.000,0.000,0.000]
[G58:0.000,0.000,0.000]
[G59:0.000,0.000,0.000]
[G28:1.000,2.000,0.000]
[G30:4.000,6.000,0.000]
[G92:0.000,0.000,0.000]
[TLO:0.000]
[PRB:0.000,0.000,0.000,0]
$G — посмотреть анализ состояния G-code
Эта команда напечатает все активные режимы GCode в Grbl. При отправке этой команды, Grbl выдаст ответ начинающийся с [GС: и чтото типа:
[GС G54 G17 G21 G90 G94 М0 M5 M9 T0 S0.0 F500.0]
Эти режимы определяют, какой следующий блок G-code или команды будут интерпретироваться анализатором G-code Grbl. Для тех, кто незнаком с G-code и станками с ЧПУ, анализатор устанавливает режимы в определенном состоянии, так что не надо постоянно указывать анализатору как работать. Эти режимы объединены в так называемые «модальные группы», которые не могут быть одновременно логически активными. Например, группа модальных единиц устанавливает интерпретируется ли ваш G-code программы в дюймах или в миллиметрах.
Краткий перечень модальных групп, поддерживаемых Grbl, будет показан ниже, но более полные и подробные описания можно найти на сайте LinuxCNC . G-code команды жирным шрифтом указывают режимы по умолчанию после включения питания контроллера Grbl или его перезагрузки.
Модельные группы | Входящие команды |
Режим движения | G0, G1, G2, G3, G38.2, G38.3, G38.4, G38.5, G80 |
Выбор системы координат | G54, G55, G56, G57, G58, G59 |
Выбор плоскости | G17, G18, G19 |
Режим расстояния | G90, G91 |
Дуга IJK режим расстояния | G91.1 |
Режим подачи | G93, G94 |
Режим единиц | G20, G21 |
Коррекция радиуса фрезы | G40 |
Коррекция длины инструмента | G43.1, G49 |
Программный режим | M0, M1, M2, M30 |
Состояние шпинделя | M3, M4, M5 |
Статус СОЖ | M7, M8, M9 |
В дополнение к режимам синтаксического анализатора G-code, Grbl сообщит активный номер инструмента Т, скорость вращения шпинделя S, и скорость подачи F, установленные после перезагрузки.
Обратите внимание, что этот список не включает немодальную группу команд G-code и они не перечислены в отчете синтаксического анализатора $G, поскольку они влияют только на текущую строку, в которой они вводятся. Для полноты здесь приведены поддерживаемые немодальные команды Grbl:
Поддерживаемые немодальные команды |
G4, G10 L2, G10 L20, G28, G30, G28.1, G30.1, G53, G92, G92.1 |
$I — Показать информацию о программе
ПРИМЕЧАНИЕ. Некоторые производители могут заблокировать доступ к перезаписи строки информации о сборке, чтобы они могли хранить там информацию о продукте и коды.
$N — посмотреть стартовые блоки
$Nx блоки запуска, которыеGrbl запускает каждый раз включении питания или перезагрузке Grbl. Другими словами, блок запуска является линиями G-кода, которые вы можете хранить в Grbl авто-запуска, чтобы установить ваш G-код с модальными значениями по умолчанию, или что нужно делать Grbl каждый раз, когда вы запускаете вашу машину. Grbl может хранить два блока G-кода в системе по умолчанию.
Так, при подключении к Grbl, и вводе значения $N, Grbl должен дать короткий ответ вида:
$Nx=значение — сохранить стартовый блок
ВАЖНО: Будьте очень осторожны при сохранении любых команд движения (G0/1,G2/3,G28/30) в блоках запуска. Эти команды движения будут запускаться каждый раз, когда вы сбрасываете или включаете Grbl, поэтому, если у вас возникла чрезвычайная ситуация и вам необходимо выполнить аварийную остановку и сброс, перемещение блока запуска может и, скорее всего, быстро ухудшит ситуацию. Кроме того, не помещайте никакие команды, которые сохраняют данные в памяти, такие как G10/G28.1/G30.1. Это заставит Grbl постоянно перезаписывать эти данные при каждом запуске и сбросе, что в конечном итоге приведет к износу памяти вашего Arduino.
Чтобы установить блок запуска, введите $N0 =, затем допустимый блок G-кода и ввод. Grbl запустит блок, чтобы проверить, является ли он действительным, а затем ответит ok или error: чтобы сообщить вам, успешно ли это или что-то пошло не так. Если есть ошибка, Grbl не сохранит ее.
Например, предположим, что вы хотите использовать свой первый блок запуска $N0, чтобы установить режимы синтаксического анализатора G-code, такие как рабочая координата G54, режим дюймов G20, плоскость XY G17. Вы должны ввести $N0 = G20 G54 G17 с вводом, и вы должны увидеть ответ ok. Затем вы можете проверить, сохранено ли оно, набрав $N, и теперь вы должны увидеть ответ вроде $N0 = G20G54G17.
Как только у вас есть блок запуска, сохраненный в памяти Grbl, каждый раз при запуске или сбросе вы будете видеть, как ваш блок запуска печатается обратно вам, начиная с open-chevron>, и ответа Grbl: ok, чтобы указать, все ли работает нормально. Итак, для предыдущего примера вы увидите:
Grbl 0.9i [ ‘$’ за помощью]
G20G54G17: ok
Если у вас есть несколько блоков запуска G-code, они будут печатать вам по порядку при каждом запуске. И если вы хотите очистить один из блоков запуска (например, блок 0), введите $N0 = без знака равенства.
$C — Проверить режим G-code
Этот режим переключает анализатор G-code Grbl на прием всех входящих блоков и их полную обработку, как при обычной работе, но он не перемещает оси, игнорирует задержки и отключает шпиндель и охлаждающую жидкость. Это предназначено для того, чтобы предоставить пользователю способ проверить, как его новая программа G-code работает с анализатором Grbl, и следить за ошибками (и проверять нарушения мягкого лимита, если они включены).
При выключении Grbl выполнит автоматический мягкий сброс (^X). Это делается для двух вещей, немного упрощает управление кодом, но это также мешает пользователям начать работу, когда их режимы G-code не такие, как они думают. Сброс системы всегда дает пользователю новый, последовательный старт.
$X — Выключить сигнализацию блокировки
Будьте осторожны! Это следует использовать только в чрезвычайных ситуациях. Возможна потеря позтционирования, и Grbl может оказаться не там, где вы думаете. Поэтому рекомендуется использовать инкрементальный режим G91 для коротких ходов. Затем выполните цикл возврата в исходное положение или выполните сброс сразу после этого.
Как отмечалось ранее, строки запуска не выполняются после команды $X. Всегда сбрасывайте, когда вы сбросили сигнал тревоги и исправили сценарий, вызвавший его. Когда Grbl переходит в режим ожидания, строки запуска будут работать в обычном режиме.
$H — Запуск цикла возврата
СОВЕТ: После запуска цикла возврата в исходное положение достаточно бегать вручную все время до положения в середине объема рабочей области. Вы можете установить предварительно определенную позицию G28 или G30 в качестве позиции после возвращения в исходное положение, ближе к месту обработки. Чтобы установить их, вам сначала нужно переместить машину туда, куда вы хотите, чтобы она переместилась после возвращения в исходное положение. Введите G28.1 (или G30.1), чтобы Grbl сохранил эту позицию. Итак, после возвращения «$H», вы можете просто ввести «G28» (или «G30»), и он будет двигаться там автоматически. В общем, переместить ось XY в центр и оставить ось Z вверх. Это гарантирует, что инструмент в шпинделе не сможет вмешаться и что он ничего не зацепит.
Впервые в Grbl v1.1, эта команда выполнит специальное движение. Существует три основных различия между Jog движением и движением, управляемым G-code.
— Как и обычные команды G-code, несколько движений Jog режима могут быть поставлены в очередь в буфере планировщика, но Jog режим может быть легко отменен с помощью команды реального времени jog-cancel или feed-hold. Grbl немедленно удержит текущее движение, а затем автоматически очистит буферы от всех оставшихся команд.
— Jog-команды полностью независимы от состояния синтаксического анализатора G-code. Это не изменит режимы, такие как режим увеличения расстояния G91. Таким образом, вам больше не нужно обязательно возвращать его обратно в режим абсолютного расстояния G90. Это помогает снизить вероятность запуска с неправильными включенными режимами G-code.
— Если мягкие ограничения включены, любая команда Jog режима, которая превышает мягкое ограничение, просто вернет ошибку. Он не выдаст сигнал Аварии, как это было бы с обычной командой G-code. Это обеспечивает гораздо более приятное и плавное взаимодействие с графическим интерфейсом или джойстиком.
Выполнение пробежки требует определенной структуры команд, как описано ниже:
— первые три символа должны быть ‘$J =‘, чтобы указать режим.
— команда jog следует сразу после ‘=’ и работает как обычная команда G1.
— скорость подачи интерпретируется только в единицах G94 в минуту. Предыдущее состояние G93 игнорируется во это время.
— пробелы и комментарии разрешены в команде. Они удалены предварительным парсером.
ПРИМЕЧАНИЕ. Дополнительные сведения об использовании этой команды для создания интерфейса джойстика с малой задержкой или интерфейса поворотного набора см. в дополнительной документации.
Эти команды не перечислены в основном справочном сообщении Grbl $, но доступны, чтобы позволить пользователям восстанавливать часть или все данные памяти Grbl. Примечание: Grbl автоматически сбросится после выполнения одной из этих команд, чтобы гарантировать правильную инициализацию системы.
Эта команда переведет Grbl в отключенное состояние, отключив шпиндели, контакты охлаждающей жидкости и шагового двигателя, и заблокирует любые команды. Выход из него возможен только при мягком сбросе или выключении питания. После повторной инициализации Grbl автоматически войдет в аварийное состояние, потому что он не уверен, где он находится из-за отключения шаговых двигателей.
Эта функция полезна, если вам нужно автоматически отключить все в конце работы, добавив эту команду в конец вашей программы G-code, настоятельно рекомендуется добавить команды, чтобы сначала переместить ваш станок на безопасное место для парковки до этой команды. Также следует подчеркнуть, что у вас должен быть надежный станок с ЧПУ, который будет отключать все, когда он должен, как ваш шпиндель. Grbl не несет ответственности за любой ущерб, который он может причинить. Никогда не стоит оставлять свою машину без присмотра. Поэтому используйте эту команду с предельной осторожностью!
Установка grbl 1.1 на Arduino uno. Основы работы в программе LaserGRBL.
Продолжаем разбираться, как можно сделать своими руками лазерный гравер из подручных средств. В предыдущей статье рассмотрели электронику лазерного гравера, и научились проверять и настраивать параметры для стабильной работы станка. Сегодня в статье рассмотрим программную часть: как установить и настроить прошивку grbl 1.1 на Arduino uno. А также рассмотрим основы работы с управляющей программой LaserGRBL.
Установка и настройка grbl 1.1.
Как вы помните из предыдущей статьи, мозгом нашего станка является Arduino UNO. Но микроконтроллер не умеет работать без специальной программы, которую нужно загрузить в Arduino. А после установки, прошивку нужно настроить под наш ЧПУ станок. Чем мы и займемся.
Установка grbl 1.1 на Arduino uno.
1. Установка Arduino IDE.
Сперва, нужно установить среду программирования Arduino IDE. Если она у вас установлена, то можете смело пропустить данный пункт.
Я уже рассказывал, как установить программу Arduino IDE, и настроить ее, в статье: «Программа Arduino IDE, бесплатно для Windows, Mac OS, linux. Прошиваем Arduino». Поэтому расскажу в вкратце основные этапы установки и настройки для операционной системы Windows.
Установка драйвера ch340.
Посленехитрых манипуляций, можно приступать к программированию Arduino UNO и других отладочных плат.
2. Установка библиотеки grbl 1.1.
Заходим на сайт github и скачиваем последнюю версию grbl 1.1. На момент написания статьи, это была версия v1.1h от 2019-08-25.
Прокручиваем страницу ниже и скачиваем Zip архив.
Также, скачать grbl 1.1 вы можете внизу сайта, в разделе «файлы для скачивания».
Дальше нужно установить библиотеку grbl 1.1. Это можно сделать двумя способами:
После установки библиотеки нужно загрузить grbl 1.1 в Arduino UNO.
3. Установка grbl 1.1 на Arduino UNO.
После установки библиотеки grbl 1.1,заходимв меню Файлы –> Примеры, и в списке ищем пример «grbl». Открываем пример «grblUpload».
В примере ничего менять не нужно, его нужно загрузить в Arduino UNO. Для этого, в пункте меню «Инструменты», выбираем плату «Arduino UNO» и порт, к которому подключена плата. В моем случае это «COM9».
Теперь мы можем загрузить прошивку GRBL 1.1 в Arduino UNO.
Для этого нажимаем на кнопку «Загрузить». После компиляции скетча, код будет загружен в микроконтроллер. И вы увидите надпись «Загрузка завершена».
Также вы увидите надпись оранжевого цвета «Недостаточно памяти, программа может работать нестабильно». Но не пугайтесь, все будет работать отлично.
Настройка GRBL 1.1 лазерного гравировального станка.
Проверить, загрузилась ли прошивка GRBL 1.1, и посмотреть настройки можно в мониторе последовательного порта.
Для корректной работы нужно обязательно выбрать скорость в 115200 бод. И вы увидите в мониторе порта версию прошивки grbl. Это означает, что все сделано правильно, и можно приступать к настройке станка.
Чтобы посмотреть все настройки, достаточно в монитор порта отправить команду « $$ ». И вы увидите все настройки, которые установились по умолчанию с прошивкой.
Данные настройки нужно подправить под параметры вашего станка. Подробное описание настроек GRBL v.1.1 на русском, смотрите на моем форуме: «Настройки GRBL v.1.1 на русском».
Как отправлять команды, научились, сейчас будем настраивать лазерный гравировальный станок на Arduino UNO. Для этого нужно вспомнить параметры из предыдущей статьи, сколько нужно сделать шагов, чтобы наш станок переместился на 1 мм по оси X, Y. Для обеих осей это значение получилось 400. Данные параметры нужно указать в настройках. В монитор порта отправляем команды:
Затем, нам нужно указать максимальную скорость перемещения в мм/мин по осям Х, Y. Так как у меня станок на винтах, и он достаточно медленный, данное значение было подобрано, и равняется 500. Для того, чтобы эти параметры добавить в настройки, отправляем данное значение в монитор порта:
Дальше, нам нужно установить ускорение по осям. Также, опытным путем, было подобрано значение 16 мм/сек^2. Для обновления данных параметров в настройках отправляем следующие команды:
Также, нас интересует параметр $30=1000 Максимальные обороты шпинделя, Об/мин. Не смотря на то, что написано управление оборотом шпинделя, данный параметр используется для определения максимальной мощности лазера. Данное значение можно оставить без изменения. Но если будете менять, то не рекомендую ставить слишком большое значение, или значение меньше 255.
Также можно настроить $20=0 Мягкие границы. Это программный размер станка, и от нулевой точки станок не сможет переместиться больше, чем на значения, указанные тут: $130=200.000 Максимальное перемещение оси Х, мм, и $131=200.000 Максимальное перемещение оси Y, мм.
Остальные настройки оставляем без изменений.
Управлять и настраивать станок можно через монитор последовательного порта. Но также это можно сделать и с использованием Управляющей программы, например LaserGRBL.
Программа LaserGRBL.
Программа LaserGRBL предназначена для работы с лазерными станками с GRBL прошивкой. Это, наверно, и понятно из названия программы.
Описание программы LaserGRBL.
Кратко рассмотрим все основные возможности программы, а начнем с главного окна программы LaserGRBL.
Настройка GRBL 1.1 в программе LaserGRBL.
Настроить прошивку GRBL 1.1 можно, по аналогии с настройкой, через монитор порта, для этого в программе LaserGRBL используем командную строку в консоли (2). Также есть более простой способ настройки, для этого заходим в пункт меню GRBL –> Конфигурация GRBL.
В открывшемся окне меняем значения в колонке «Значение». И после изменений нажимаем кнопку «Записать». Все настройки будут записаны в память микроконтроллера.
Данный инструмент также позволяет импортировать и экспортировать настройки, что помогает без проблем сохранить настройки и, при необходимости, загрузить обратно.
Управление осями в программе LaserGRBL.
В панели управления осями (5) можно управлять перемещением по оси X и Y, с помощью кнопок со стрелками.
Кнопка с изображением домика возвращает все оси в нулевую точку. С левой стороны вертикальный ползунок настраивает скорость перемещения. С правой стороны ползунок позволяет менять шаг перемещения по осям от 0,1 мм до 200 мм. При любом перемещении в консоли выводятся команды, которые выполняются, и которые уже выполнены.
Синий крестик на рабочем поле (6) показывает, где сейчас находится лазер.
Выбор файла для гравировки.
Для того, чтобы выбрать файл для гравировки, нужно нажать на иконку папки, в поле Выбор файла для гравировки (7).
Нажав кнопку «Далее», откроется всплывающее окно настройки скорости станка, и команды, которые нужно отравлять для работы лазера (M3 и M5 ). Также можно выставить максимальную мощность лазера. Я выставил 500, так как мой станок не быстро перемещается, и при этом лазер сильно прожигает. На половине мощности гравировка проходит максимально качественно.
После нажатия кнопки «создать», откроется основное окно программы, и на рабочем поле появится наш рисунок, с отображением всех перемещений станка при гравировке изображения.
Для запуска гравировки нужно нажать на кнопку «пуск», после чего начнется гравировка с отображением, в режиме реального времени, расположения лазера.
Также вы можете посмотреть, сколько, ориентировочно, гравировка займет времени, и сколько уже выполнено, в разделе «прогресс».
Добавляем дополнительные кнопки управления в программу LaserGRBL.
В программе есть стандартные кнопки управления (3), давайте добавим еще несколько необходимых, для комфортной работы с лазерным гравером. Ниже представлены иконки с командами.
Правой кнопкой мыши кликаем на нижнем поле программы, и нажимаем «Добавить кнопку». С левого края, нажимаем на пиктограмму и выбираем, из Папки «Иконки», изображение.
Далее, копируем его название, и открываем. Выбранное изображение появилось на месте пиктограммы. Далее, в поле «Всплывающая подсказка», добавляем текст подсказки. В поле GCode прописываем команду.
Пример нескольких кнопок для программы LaserGRBL:
· Включить лазер
Команда: M3 S255
При нажатии на кнопку «Включить лазер», лазер начнет работать на максимальной мощности.
Важно, чтобы отключить «Блокировку включения», вы должны сместить лазерную головку кнопками перемещения (установите минимальное перемещение в 0,1 мм)
Будьте очень внимательны, обязательно наденьте очки, так как лазерное излучение очень вредно для глаз.
· Выключить лазер
Команда: M5
При нажатии на кнопку, лазер будет выключен моментально. Режим безопасности включения работать не будет.
· Прицелиться
Команда: M3 S1 (либо M3 S2)
Если Ваш станок имеет ТТЛ модуль (поддержку градиента серого), то при нажатии на кнопку включается лазер на малой мощности, иногда значение S1 может быть больше, прицелиться будет просто.
Важно, чтобы отключить «Блокировку включения лазера» в LaserGRBL, вы должны сместить лазерную головку кнопками перемещения (установите минимальное перемещение в 0,1 мм)
· Границы гравировки
Кнопка для подсветки рамки, границы будущей гравировки. Важно, LaserGRBL работает с картинками, а не с векторами, поэтому подсветка будет обозначать холст картинки.
Это несколько вариантов дополнительных кнопок. Внизу статьи добавлю архив с набором кнопок, который можно импортировать в программу.
Для этого по полю пользовательских кнопок нужно щелкнуть правой кнопкой мыши. В выпадающем списке выбираем » Импортировать пользовательские кнопки «. Выбрать архив и подтвердить добавление каждой кнопки.
На панели появятся дополнительные кнопки.
Подведем итог.
На первый взгляд, все просто и понятно. Но это только минимальные описания для данного ЧПУ станка, которые позволят запустить станок. Если вам понадобится тонкая настройка каких-то параметров в прошивке GRBL 1.1, или в работе программы LaserGRBL, то полученных знаний будет недостаточно. Придётся потратить время на изучения мануала.
В дальнейшем планирую развивать данную тему, и подробнее рассказать про создание станков на Arduino. Поэтому все аспекты тонкой настройки буду постепенно добавлять в свои новые проекты.
Понравился проект Установка grbl 1.1 на Arduino uno. Основы работы в программе LaserGRBL? Не забудь поделиться с друзьями в соц. сетях.
А также подписаться на наш канал на YouTube, вступить в группу Вконтакте, в группу на Facebook.
Спасибо за внимание!
Технологии начинаются с простого!