Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
soft:g-code_on_russian [2024/09/12 10:21] – kotmorkot | soft:g-code_on_russian [2024/09/24 00:25] (текущий) – внешнее изменение A User Not Logged in | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
==== G-CODE по-русски для 3D печати ==== | ==== G-CODE по-русски для 3D печати ==== | ||
- | <WRAP center round todo 60%> | ||
- | Необходимо форматирование статьи! | ||
- | </ | ||
- | Привожу ссылку на оригинал. Текст продублирую здесь, так как он мне показался полезным | + | Привожу ссылку на оригинал. Текст продублирую здесь, так как он мне показался полезным. |
+ | Все команды и примеры из данной статьи актуальны для прошивки **Marlin**. | ||
+ | Для принтеров семейства RatRig, используется ОС RatOs, которая имеет дружественный интерфейс установки, | ||
+ | Часть этих команд прошивка **Klipper** понимает напрямую - путем ввода в // | ||
- | [[https:// | + | [[https:// |
==== G-CODE по-русски для 3D печати (Мини-справочник) ==== | ==== G-CODE по-русски для 3D печати (Мини-справочник) ==== | ||
Строка 15: | Строка 15: | ||
На некоторых сайтах(вроде reprap.org/ | На некоторых сайтах(вроде reprap.org/ | ||
+ | |||
На некоторых отечественных сайтах команды переведены на русский, | На некоторых отечественных сайтах команды переведены на русский, | ||
Строка 27: | Строка 28: | ||
Однако, | Однако, | ||
- | Внимание! Соответствие команд и параметров проверены только для прошивки Marlin. | + | **Внимание! Соответствие команд и параметров проверены только для прошивки Marlin.** |
=== G-команды === | === G-команды === | ||
Строка 50: | Строка 51: | ||
- | === G4 Pnnn (или Snnn) – ожидание. | + | * **G4** //Pnnn// (или |
- | * | + | G4 S2 и G4 P2000 – эквивалентны |
- | + | ||
- | * | + | |
- | + | ||
- | * | + | |
- | + | ||
- | + | ||
* **G10** - Откат пластика (Ретракт). | * **G10** - Откат пластика (Ретракт). | ||
Строка 85: | Строка 80: | ||
- Введите **G29 S0** для начала создания сетки. | - Введите **G29 S0** для начала создания сетки. | ||
- | |||
- Введите **G29 S1** для установки первой точки сетки. | - Введите **G29 S1** для установки первой точки сетки. | ||
- | |||
- Выровняйте сопло по высоте при помощи бумажки(как обычно). | - Выровняйте сопло по высоте при помощи бумажки(как обычно). | ||
- | |||
- Введите **G29 S2** для сохранения значения и перехода к новой точке | - Введите **G29 S2** для сохранения значения и перехода к новой точке | ||
- | |||
- Повторить шаги **3** и **4**, пока процедура создания не закончится. | - Повторить шаги **3** и **4**, пока процедура создания не закончится. | ||
- | |||
- Введите **M500** чтобы записать полученную сетку в EEPROM. | - Введите **M500** чтобы записать полученную сетку в EEPROM. | ||
=== Создание Mesh Bed Leveling при помощи меню принтера(функция должна быть активна в прошивке): | === Создание Mesh Bed Leveling при помощи меню принтера(функция должна быть активна в прошивке): | ||
- | |||
- Выберите пункт Prepare, а после Auto home (она же команда **G28**). | - Выберите пункт Prepare, а после Auto home (она же команда **G28**). | ||
- | |||
- Выберите пункт Prepare, а после Level Bed. | - Выберите пункт Prepare, а после Level Bed. | ||
- | |||
- Ждите начала инструкций на экране. Нажмите «крутилку» на экране, | - Ждите начала инструкций на экране. Нажмите «крутилку» на экране, | ||
- | |||
- Используя «крутилку», | - Используя «крутилку», | ||
- | |||
- Повторяйте п.4 пока программа не пройдет все точки. | - Повторяйте п.4 пока программа не пройдет все точки. | ||
- | |||
- После окончания войдите в меню //Control// и выберите пункт //Store// memory для сохранения созданной сетки в **EEPROM**. | - После окончания войдите в меню //Control// и выберите пункт //Store// memory для сохранения созданной сетки в **EEPROM**. | ||
| | ||
- | + | * **G90** - Установка абсолютных координат. Все координаты являются абсолютными относительно начала координат станка. | |
- | + | ||
- | G90 - Установка абсолютных координат | + | |
- | + | ||
- | Все координаты являются абсолютными относительно начала координат станка. | + | |
- | + | ||
- | G91 - Установка относительных координат | + | |
- | + | ||
- | Все координаты с этого момента становятся относительными по отношению к последней позиции. Марлин переводит все оси в относительные координаты, | + | |
+ | * **G91** - Установка относительных координат. Все координаты с этого момента становятся относительными по отношению к последней позиции. Марлин переводит все оси в относительные координаты, | ||
- | + | * **G92** Xnnn Ynnn Znnn Ennn - Установить позицию Эта команда может быть использована без каких-либо дополнительных параметров. | |
- | G92 Xnnn Ynnn Znnn Ennn - Установить позицию | + | |
- | + | ||
- | Эта команда может быть использована без каких-либо дополнительных параметров. | + | |
- | + | ||
- | G92 - сбросит все координаты осей на ноль. | + | |
- | + | ||
- | Xnnn - новая координата X | + | |
- | + | ||
- | Ynnn - новая координата Y | + | |
- | + | ||
- | Znnn - новая координата Z | + | |
- | + | ||
- | Ennn - новая позиция экструдера | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | М-команды | + | |
- | + | ||
- | M17 - Включить/ | + | |
- | + | ||
- | M18 - Убрать ток с двигателей | + | |
- | + | ||
- | Двигатели можно вращать руками. Аналог команды M84 | + | |
+ | * **G92** - сбросит все координаты осей на ноль. | ||
- | M20 - Список файлов на SD карте | + | // |
- | + | ||
- | M21 - Инициализация SD карты | + | |
- | + | ||
- | Если SD карта загружена при включении принтера, | + | |
- | + | ||
- | M22 - Освобождение SD карты | + | |
- | + | ||
- | Указанная SD карта будет освобождена. При будующих (случайных) попытках чтения происходит гарантированная ошибка. Полезно перед извлечением SD карты. | + | |
- | + | ||
- | M23 - Выбор файла на SD карте | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | M24 - Начало/продолжение печати с SD карты | + | |
- | + | ||
- | Принтер будет печатать из файла выбранного с помощью команды M23. | + | |
- | + | ||
- | M25 - Пауза печати с SD карты | + | |
- | + | ||
- | M28 - Начать запись | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | На SD карте создается файл, обозначенный как filename.gco (если файл существует, то он перезаписывается) и все последующие | + | |
- | + | ||
- | M29 - Остановить запись на SD карту | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | Файл, открытый командой M28 закрывается | + | |
- | + | ||
- | M30 - Удалить файл с SD карты | + | |
- | Пример: M30 filename.gco. filename.gco будет удален. | + | //Ynnn// - новая координата Y |
- | M32 - Выбрать файл | + | // |
- | Пример: M32 filename.gco. | + | //Ennn// - новая позиция экструдера |
- | Используется для печати с SD карты и работает так же как M23 и M24 | + | //Пример: G92 X10 E90// |
+ | === М-команды === | ||
- | M80 - Включить | + | * **M17** |
- | Переводит | + | * **M18** - Убрать ток с двигателей. Двигатели можно вращать |
- | M81 - Выключить блок | + | * **M20** |
- | M82 - Установить экструдер | + | * **M21** |
+ | SD карта должна быть проинициализирована для работы других функций SD карты. | ||
- | M83 - Установить экструдер в относительный режим | + | * **M22** |
+ | происходит гарантированная ошибка. Полезно перед извлечением SD карты. | ||
- | Позволяет экструдеру производить экструзию в абсолютных/ | + | * **M23** - Выбор файла на SD карте |
- | + | // | |
- | M84 Snnn X,Y,Z,E – Перевести моторы в режим ожидания | + | * **M24** - Начало/ |
- | Snnn – время в секундах. | + | * **M25** - Пауза печати |
- | Если тайм-аут задан | + | * **M28** - Начать запись на SD карту |
- | Если моторы(X, | + | //Пример: M28 filename.gco.// |
- | Если указана одна или несколько осей, эта команда немедленно отключает указанные. Например, "M84 S10" | + | На SD карте создается файл, обозначенный как filename.gco (если файл существует, то он перезаписывается) и все последующие команды на принтер записываются в этот файл. |
- | + | * **M29** - Остановить запись на SD карту | |
- | M92 Xnnn Ynnn Znnn Ennn - Установить количество шагов по осям на единицу | + | //Пример: M29 filename.gco// |
- | Xnnn, Ynnn, Znnn – шаги на единицу по осям. | + | |
- | Еnnn – шаги на единицу для экструдера | + | * **M30** - Удалить файл с SD карты |
- | Примеры: M92 X87.489 Y87.489 Z87.489 или M92 E420 | + | //Пример: |
- | Позволяет | + | filename.gco будет удален. |
- | + | * **M32** - Выбрать файл и начать печать с SD карты. Используется для печати с SD карты и работает так же как M23 и M24 | |
- | M104 Snnn - Установить температуру экструдера и НЕ ждать | + | //Пример: M32 filename.gco.// |
- | Snnn - Заданная температура | + | * **M80** |
- | Пример: M104 S190 | + | * **M81** - Выключить блок питания ATX |
- | Устанавливает температуру активного | + | * **M82** - Установить экструдер |
- | + | * **M83** - Установить экструдер в относительный режим. Позволяет экструдеру производить экструзию в абсолютных/ | |
- | M105 - Получить температуру экструдера | + | * **M84** Snnn X,Y,Z,E – Перевести моторы в режим ожидания |
- | Получает температуру активного экструдера и горячего стола | + | //Snnn// – время в секундах. |
- | + | | |
+ | |||
+ | | ||
+ | |||
+ | | ||
- | M106 Snnn - Включить | + | * **M92** Xnnn Ynnn Znnn Ennn - Установить |
- | Snnn - Скрорость вращения вентилятора от 0 до 255 (значение 127 – 50% скорости) | + | //Xnnn//, //Ynnn//, //Znnn// – шаги на единицу по осям. |
- | + | //Еnnn// – шаги на единицу для экструдера | |
- | M107 - Выключить вентилятор | + | //Примеры: M92 X87.489 Y87.489 Z87.489 |
- | M108 - Отменить нагрев | + | Позволяет устанавливать количество шагов |
- | Обрывает ожидание | + | * **M104** //Snnn// - Установить температуру экструдера |
- | + | // | |
- | M109 Snnn - Установить температуру экструдера и ждать | + | |
- | Устанавливает температуру | + | * **M105** - Получить температуру |
- | + | | |
- | M110 Nnnn - Установить номер текущей строки | + | * **M106** // |
- | Nnnn - Номер строки | + | * **M107** |
- | Пример: M110 N123 | + | * **M108** - Отменить нагрев. Обрывает ожидание достижения заданной командами M109 и M190 температуры, продолжает печать. |
- | В этом примере устанавливается номер текущей строки 123. Таким образом | + | * **M109** Snnn - Установить температуру экструдера и ждать. Устанавливает |
- | + | * **M110** Nnnn - Установить номер текущей строки | |
- | M112 – Экстренная остановка | + | //Nnnn// - Номер |
- | M114 - Получение текущих позиций | + | //Пример: M110 N123// |
- | M115 - Получить версию прошивки | + | В этом примере устанавливается номер текущей |
- | M119 - Получить | + | * **M112** – Экстренная остановка |
- | | + | * **M114** |
- | Пример: M140 S65 | + | * **M115** - Получить версию прошивки |
- | Устанавливает температуру стола 65C и сразу же возвращает управление (то есть НЕ ЖДЕТ пока стол достигнет заданной температуры). Еще см. М190 | + | * **M119** - Получить статус |
- | + | * **M140** - Установить температуру стола и НЕ ждать | |
- | M190 - Установить температуру стола и ждать | + | //Пример: M140 S65// |
- | Устанавливает температуру | + | Устанавливает температуру |
- | + | * **M190** - Установить температуру стола и ждать | |
- | М200 Dnnn Tnnn – Установить РЕАЛЬНЫЙ диаметр | + | |
- | Dnnn – диаметр | + | * **М200** //Dnnn Tnnn// |
- | Tnnn – номер экструдера. (для одноэкструдерных принтеров можно не указывать) | + | // |
- | Пример: М200 D1.65 | + | //Tnnn// – номер |
- | Используется для вычислений | + | //Пример: М200 D1.65// |
- | Для установки номинальных параметров см. М404. | + | |
- | + | * **M201 Xnnn Ynnn Znnn Ennn** – Установка максимальных ускорений (в мм/ | |
- | M201 Xnnn Ynnn Znnn Ennn – Установка максимальных | + | //Xnnn, Ynnn, Znnn// – ускорения в мм/сек в кв. для осей. |
- | Xnnn, Ynnn, Znnn – ускорения в мм/сек в кв. для осей. | + | // |
- | Ennn – ускорения в мм/сек в кв. для экструдера. | + | //Пример: M201 X1000 Y1000 Z100 E2000// |
- | Можно использовать | + | **Для сохранения параметров в EEPROM |
- | Пример: M201 X1000 Y1000 Z100 E2000 | + | * **М202** – Установка максимального ускорения для простого(холостого) перемещения. |
- | Для | + | **!Не используется в Марлин! В мм/сек в кв.** |
- | + | // | |
- | М202 – Установка максимального ускорения для простого(холостого) перемещения. | + | * **М203** Xnnn Ynnn Znnn Ennn – Установка максимальной скорости (в мм/сек) |
- | !Не используется в Марлин! В мм/сек в кв. Пример: | + | //Xnnn, Ynnn, Znnn// – макс.скорость для осей. |
- | + | //Ennn// – макс.скорость для экструдера. | |
- | + | ||
- | М203 Xnnn Ynnn Znnn Ennn – Установка максимальной скорости (в мм/сек) | + | |
- | + | ||
- | Xnnn, Ynnn, Znnn – макс.скорость для осей. | + | |
- | + | ||
- | Ennn – макс.скорость для экструдера. | + | |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для сохранения параметров в EEPROM использовать M500. | + | **Для сохранения параметров в EEPROM использовать M500.** |
- | М204 Pnnn Rnnn Tnnn – Установка ускорений (в мм/ | + | * **М204** //Pnnn Rnnn Tnnn// – Установка ускорений (в мм/ |
- | Pnnn – Ускорения при печати | + | //Pnnn// – Ускорения при печати |
- | Rnnn – Ускорение ретракта | + | //Rnnn// – Ускорение ретракта |
- | Tnnn – Ускорения при холостых перемещениях | + | //Tnnn// – Ускорения при холостых перемещениях |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для сохранения параметров в EEPROM использовать M500. | + | **Для сохранения параметров в EEPROM использовать M500.** |
- | + | * **М205** Xnnn, Znnn, Ennn – Установка максимальных рывков(jerk) (мм/ | |
- | М205 Xnnn, Znnn, Ennn – Установка максимальных | + | //Xnnn// – рывок по осям Х и Y. (по этим осям |
- | Xnnn – рывок по осям Х и Y. (по этим осям рывки одинаковые) | + | // |
- | Znnn – рывок по оси Z. | + | //Ennn// – рывок для экструдера. |
- | + | ||
- | Ennn – рывок для экструдера. | + | |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для | + | Установить рывок по X/Y = 30, по Z рывок = 5. |
- | + | **Для сохранения параметров в в EEPROM использовать M500.** | |
- | М206 Xnnn, Ynnn, Znnn – Установка смещений относительно концевиков(ноля) | + | * **М206** //Xnnn, Ynnn, Znnn// – Установка смещений относительно концевиков(ноля) |
Подобие команды G92, но эти смещения можно записать в EEPROM см. М500. | Подобие команды G92, но эти смещения можно записать в EEPROM см. М500. | ||
- | Пример: | + | //Пример: |
- | + | * **M207** //Snnn Fnnn Znnn// – Установка параметров ретракта (втягивание прутка) | |
- | M207 Snnn Fnnn Znnn – Установка параметров | + | //Snnn// – положительное значение ретракта в мм. |
- | Snnn – положительное значение ретракта в мм. | + | // |
- | Fnnn – скорость подачи мм/сек. | + | // |
- | Znnn – лифт(подъем) головы по оси Z в мм при ретракте. (Помогает не задеть модель) | + | //Пример: |
- | + | ||
- | Пример: | + | |
Используется впоследствии для команд G10 и G11. | Используется впоследствии для команд G10 и G11. | ||
- | Для сохранения параметров в в EEPROM использовать M500. | + | **Для сохранения параметров в в EEPROM использовать M500.** |
- | + | * **M208** Snnn Fnnn – Параметры восстановления подачи прутка после ретракта | |
- | M208 Snnn Fnnn – Параметры восстановления подачи | + | //Snnn// – положительное значение подачи |
- | Snnn – положительное значение | + | // |
- | Fnnn – скорость подачи мм/сек. | + | **Для |
- | Для сохранения параметров в в EEPROM использовать M500. | + | * **M209** Snnn – Вкл/выкл автоматического |
- | + | //Snnn// – значение 1 – вкл, 0- выкл. | |
- | + | ||
- | M209 Snnn – Вкл/выкл автоматического ретракта | + | |
- | + | ||
- | Snnn – значение 1 – вкл, 0- выкл. | + | |
Используется, | Используется, | ||
Строка 421: | Строка 336: | ||
Каждая команда «выдавливания» будет классифицироваться как ретракт, | Каждая команда «выдавливания» будет классифицироваться как ретракт, | ||
- | + | * **M218** Tnnn Xnnn Ynnn – Установка смещения головы | |
- | M218 Tnnn Xnnn Ynnn – Установка смещения | + | //Tnnn// - номер головы |
- | Tnnn - номер головы | + | //Xnnn, Ynnn// – координаты по Х,Y. |
- | Xnnn, Ynnn – координаты по Х,Y. | + | //Пример: |
- | + | ||
- | Пример: | + | |
- | + | ||
- | + | ||
- | M301 Hnnn Pnnn Innn Dnnn — Записать PID параметры хотэнда(!) | + | * **M301** Hnnn Pnnn Innn Dnnn — Записать PID параметры хотэнда(!) |
- | Hnnn – номер экструдера. H1 – первый эксрудер(хотэнд). | + | //Hnnn// – номер экструдера. H1 – первый эксрудер(хотэнд). |
- | Pnnn - Коэффициэнт proportional (Kp) | + | //Pnnn// - Коэффициэнт proportional (Kp) |
- | Innn - Коэффициэнт integral (Ki) | + | //Innn// - Коэффициэнт integral (Ki) |
- | Dnnn - Коэффициэнт derivative (Kd) | + | //Dnnn// - Коэффициэнт derivative (Kd) |
- | Пример: | + | //Пример: |
- | Для сохранения параметров в EEPROM использовать M500. | + | **Для сохранения параметров в EEPROM использовать M500.** |
Для записи PID стола смотри М304. | Для записи PID стола смотри М304. | ||
- | + | **M302** Snnn – Разрешить выдавливание при температуре Snnn и выше. | |
- | M302 Snnn – Разрешить выдавливание при | + | //Snnn// - Заданная температура |
- | Snnn - Заданная температура | + | //Пример: M302 S170// |
- | Пример: | + | Разрешить выдавливать(включать мотор экструдера) при температуре сопла 170С и выше. М302 S0 – выдавливать при любой температуре. |
- | + | * **M303** Ennn Snnn Cnnn — Запустить процесс PID калибровки для стола/ | |
- | M303 Ennn Snnn Cnnn — Запустить процесс PID калибровки для стола/ | + | //Ennn// - E0 хотэнд, E1 стол. |
- | Ennn - E0 хотэнд, E1 стол. | + | //Snnn// – температура калибровки. |
- | Snnn – температура | + | // |
- | Cnnn – количество циклов калибровки. Больше циклов – точнее параметры. | + | //Пример |
- | Пример M303 E1 C8 S110 – калибровка PID стола при температуре 110С в течении 8-ми циклов. | + | Калибровка PID стола при температуре 110С в течении 8-ми циклов. |
+ | Параметры PID будут выведены строкой, | ||
- | Параметры PID будут выведены строкой, | + | * **M304** Pnnn Innn Dnnn — Записать PID параметры стола(!) |
- | + | //Pnnn// - Коэффициэнт proportional (Kp) | |
- | M304 Pnnn Innn Dnnn — Записать PID параметры стола(!) | + | //Innn// - Коэффициэнт integral |
- | Pnnn - Коэффициэнт | + | // |
- | Innn - Коэффициэнт integral (Ki) | + | //Пример: M301 H1 P1 I2 D3// |
- | Dnnn - Коэффициэнт derivative (Kd) | + | * **М301** – без параметров выведет текущие параметры. |
- | Пример: M301 H1 P1 I2 D3 | + | **Для сохранения параметров в EEPROM использовать M500.** |
- | М301 – без параметров выведет текущие параметры. | + | |
- | Для | + | * **М404** Wnnn – Установка номинальной |
- | Для записи PID экструдера смотри М301. | + | //Wnnn// – номинальная(теоретическая) толщина филамента в мм. |
- | + | // | |
- | М404 Wnnn – Установка номинальной толщины филамента 1.75 или 3. | + | * **M404** |
- | Wnnn – номинальная(теоретическая) толщина филамента | + | Это значение используется для определения процентной разницы при автоматической настройке расхода в ответ на измеренную ширину нити и должно соответствовать значению, используемому для ширины нити в настройках слайсера. |
+ | |||
+ | Установка реальной | ||
- | Пример: M404 W1.75 | + | * **М420** Snnn – Вкл/ |
- | M404 – без параметров выведет текущее номинальное значение строкой. | + | // |
- | Это значение | + | * **M420 S1** – использовать при печати |
- | Установка реальной | + | См. G29 чтобы получить текущий статус |
- | + | * **М500** – Сохранение данных в EEPROM | |
- | + | ||
- | М420 Snnn – Вкл/ | + | |
- | + | ||
- | Snnn – S1 вкл., S0 выкл. | + | |
- | + | ||
- | M420 S1 – использовать при печати сетку компенсации кривизны стола загруженной | + | |
- | + | ||
- | См. G29 чтобы получить текущий статус и создать сетку компенсации кривизны стола. | + | |
+ | * **М501** – Чтение данных из EEPROM | ||
- | + | * **М600** – Команда для автоматической смены филамента | |
- | М500 – Сохранение данных в EEPROM | + | |
- | + | ||
- | М501 – Чтение данных из EEPROM | + | |
- | + | ||
- | М600 – Команда для автоматической смены филамента | + |