Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
soft:g-code_on_russian [2024/09/12 10:12] – 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** - Откат пластика (Ретракт). | ||
Строка 79: | Строка 74: | ||
| | ||
| | ||
- | | + | |
- | | + | |
=== Создание Mesh Bed Leveling вручную(через команды): | === Создание Mesh Bed Leveling вручную(через команды): | ||
- | - Введите G29 S0 для начала создания сетки. | + | - Введите |
- | + | - Введите | |
- | - Введите G29 S1 для установки первой точки сетки. | + | |
- Выровняйте сопло по высоте при помощи бумажки(как обычно). | - Выровняйте сопло по высоте при помощи бумажки(как обычно). | ||
+ | - Введите **G29 S2** для сохранения значения и перехода к новой точке | ||
+ | - Повторить шаги **3** и **4**, пока процедура создания не закончится. | ||
+ | - Введите **M500** чтобы записать полученную сетку в EEPROM. | ||
- | - Введите G29 S2 для сохранения значения | + | === Создание Mesh Bed Leveling при помощи меню принтера(функция должна быть |
- | - Повторить | + | - Выберите пункт Prepare, а после Auto home (она же команда **G28**). |
+ | - Выберите пункт Prepare, а после Level Bed. | ||
+ | - Ждите начала инструкций на экране. Нажмите «крутилку» на экране, | ||
+ | - Используя «крутилку», | ||
+ | - Повторяйте п.4 пока программа не пройдет все точки. | ||
+ | - После окончания войдите в меню //Control// и выберите пункт //Store// memory для | ||
- | - Введите M500 чтобы записать полученную сетку | + | |
- | Создание Mesh Bed Leveling при помощи меню принтера(функция должна быть активна в прошивке): | + | * **G90** - Установка абсолютных координат. |
- | + | ||
- | 1. Выберите пункт Prepare, а после Auto home (она же команда G28). | + | |
- | + | ||
- | 2. Выберите пункт Prepare, а после Level Bed. | + | |
- | + | ||
- | 3. Ждите начала инструкций на экране. Нажмите «крутилку» | + | |
- | + | ||
- | 4. Используя «крутилку», поднимая или опуская сопло, выставите | + | |
- | + | ||
- | 5. Повторяйте п.4 пока программа не пройдет все точки. | + | |
- | + | ||
- | 6. После окончания войдите в меню Control и выберите пункт Store memory для | + | |
- | + | ||
- | | + | |
- | + | ||
- | М420 S1(См. М420). | + | |
+ | * **G91** - Установка относительных координат. Все координаты с этого момента становятся относительными по отношению к последней позиции. Марлин переводит все оси в относительные координаты, | ||
- | + | * **G92** Xnnn Ynnn Znnn Ennn - Установить позицию Эта команда может быть использована без каких-либо дополнительных параметров. | |
- | G90 - Установка абсолютных координат | + | |
- | + | ||
- | Все координаты являются абсолютными относительно начала координат | + | |
- | + | ||
- | G91 - Установка относительных координат | + | |
- | + | ||
- | Все координаты с этого момента становятся относительными по отношению к последней позиции. Марлин переводит все оси в относительные координаты, в том числе экструдер. | + | |
+ | * **G92** - сбросит все координаты осей на ноль. | ||
- | G92 Xnnn Ynnn Znnn Ennn - Установить позицию | + | //Xnnn// - новая координата X |
- | + | ||
- | Эта команда может быть использована без каких-либо дополнительных параметров. | + | |
- | + | ||
- | G92 - сбросит все координаты осей на ноль. | + | |
- | + | ||
- | Xnnn - новая координата X | + | |
- | + | ||
- | Ynnn - новая координата Y | + | |
- | + | ||
- | Znnn - новая координата Z | + | |
- | + | ||
- | Ennn - новая позиция экструдера | + | |
- | + | ||
- | Пример: | + | |
- | М-команды | + | // |
- | M17 - Включить/ | + | // |
- | M18 - Убрать ток с двигателей | + | // |
- | Двигатели можно вращать руками. Аналог команды M84 | + | //Пример: G92 X10 E90// |
+ | === М-команды === | ||
- | M20 - Список файлов на SD карте | + | * **M17** |
- | M21 - Инициализация SD карты | + | * **M18** |
- | Если SD карта загружена | + | * **M20** - Список файлов на SD карте |
- | M22 - Освобождение SD карты | + | * **M21** |
+ | SD карта должна быть проинициализирована для работы других функций | ||
- | Указанная SD карта будет освобождена. При будующих (случайных) попытках чтения происходит гарантированная ошибка. Полезно перед извлечением SD карты. | + | * **M22** |
+ | происходит гарантированная ошибка. Полезно перед извлечением SD карты. | ||
- | M23 - Выбор файла на SD карте | + | * **M23** - Выбор файла на SD карте |
- | Пример: | + | //Пример: |
- | M24 - Начало/ | + | * **M24** - Начало/ |
- | Принтер будет | + | * **M25** - Пауза печати с SD карты |
- | M25 - Пауза печати с SD карты | + | * **M28** |
- | M28 - Начать запись на SD карту | + | //Пример: M28 filename.gco.// |
- | Пример: M28 filename.gco. | + | На SD карте создается файл, обозначенный как |
- | На SD карте | + | * **M29** - Остановить запись на SD карту |
- | M29 - Остановить запись на SD карту | + | //Пример: M29 filename.gco// |
- | Пример: M29 filename.gco | + | |
- | Файл, открытый командой M28 закрывается и все последующие | + | * **M30** - Удалить файл с SD карты |
- | M30 - Удалить файл с SD карты | + | //Пример: M30 filename.gco.// |
- | Пример: | + | |
- | M32 - Выбрать файл и начать печать с SD карты | + | * **M32** - Выбрать файл и начать печать с SD карты. Используется для печати с SD карты и работает так же как M23 и M24 |
- | Пример: | + | //Пример: |
- | Используется для печати с SD карты и работает | + | * **M80** - Включить блок питания ATX. Переводит блок питания ATX из спящего режима в рабочий режим. Не работает |
- | + | * **M81** - Выключить блок питания ATX | |
- | M80 - Включить | + | * **M82** |
- | Переводит блок питания ATX из спящего | + | * **M83** - Установить экструдер в относительный режим. |
- | M81 - Выключить блок питания | + | * **M84** Snnn X,Y,Z,E – Перевести моторы в режим ожидания |
- | M82 - Установить экструдер в абсолютный режим | + | //Snnn// – время в секундах. |
- | M83 - Установить экструдер в относительный режим | + | |
+ | |||
+ | | ||
+ | |||
+ | | ||
- | Позволяет экструдеру производить | + | * **M92** Xnnn Ynnn Znnn Ennn - Установить количество шагов по осям на единицу |
- | + | //Xnnn//, //Ynnn//, //Znnn// – шаги на единицу по осям. | |
- | M84 Snnn X, | + | // |
- | Snnn – время в секундах. | + | //Примеры: M92 X87.489 Y87.489 Z87.489 или M92 E420// |
- | Если тайм-аут | + | Позволяет устанавливать количество шагов |
- | Если моторы(X, | + | * **M104** //Snnn// - Установить температуру экструдера и НЕ ждать. Snnn - Заданная температура |
- | Если указана одна или несколько осей, эта команда немедленно отключает указанные. Например, "M84 S10" переведет шаговые двигатели в режим ожидания после 10 секунд простоя. | + | //Пример: M104 S190// |
- | + | Устанавливает температуру активного экструдера 190C и сразу же возвращает управление (то есть НЕ ЖДЕТ пока экструдер достигнет заданной температуры). Еще см. М109 | |
- | M92 Xnnn Ynnn Znnn Ennn - Установить количество шагов по осям на единицу | + | * **M105** |
- | Xnnn, Ynnn, Znnn – шаги на единицу по осям. | + | |
- | Еnnn – шаги на единицу для экструдера | + | * **M106** //Snnn// - Включить вентилятор обдува детали //Snnn// - Скрорость вращения вентилятора от 0 до 255 (значение 127 – 50% скорости) |
- | Примеры: M92 X87.489 Y87.489 Z87.489 | + | * **M107** - Выключить вентилятор |
- | Позволяет устанавливать количество шагов | + | * **M108** - Отменить нагрев. Обрывает ожидание достижения заданной командами M109 и M190 температуры, |
- | + | * **M109** Snnn - Установить температуру экструдера и ждать. Устанавливает температуру в градусах Цельсия и ожидает ее достижения. Еще см. М104 | |
- | M104 Snnn - Установить | + | * **M110** Nnnn - Установить |
- | Snnn - Заданная температура | + | // |
- | Пример: | + | //Пример: |
- | Устанавливает | + | В этом примере устанавливается номер текущей строки 123. Таким образом ожидается, что следующая |
- | + | * **M112** – Экстренная остановка | |
- | M105 - Получить температуру экструдера | + | * **M114** |
- | Получает температуру активного экструдера и горячего стола в градусах Цельсия. Температура передается на подключенный компьютер. Ответ, переданный на компьютер может | + | * **M115** - Получить версию прошивки |
- | + | * **M119** - Получить статус концевиков | |
- | M106 Snnn - Включить | + | * **M140** |
- | Snnn - Скрорость вращения вентилятора от 0 до 255 (значение 127 – 50% скорости) | + | //Пример: M140 S65// |
- | + | | |
- | M107 - Выключить | + | * **M190** |
- | M108 - Отменить нагрев | + | Устанавливает температуру в градусах Цельсия и ОЖИДАЕТ ее достижения. см. М140 |
- | Обрывает ожидание достижения заданной командами M109 и M190 температуры, продолжает | + | * **М200** //Dnnn Tnnn// – Установить РЕАЛЬНЫЙ |
- | + | //Dnnn// – диаметр в мм. | |
- | M109 Snnn - Установить температуру экструдера и ждать | + | //Tnnn// – номер |
- | Устанавливает температуру в градусах Цельсия и ожидает ее достижения. Еще см. М104 | + | //Пример: М200 D1.65// |
- | + | | |
- | M110 Nnnn - Установить номер текущей строки | + | * **M201 Xnnn Ynnn Znnn Ennn** – Установка максимальных ускорений (в мм/сек.в кв) |
- | Nnnn - Номер строки | + | //Xnnn, Ynnn, Znnn// – ускорения в мм/сек в кв. для осей. |
- | Пример: M110 N123 | + | //Ennn// – ускорения в мм/сек в кв. для экструдера. Можно использовать только один/ |
- | В этом примере устанавливается номер текущей строки 123. Таким образом ожидается, | + | //Пример: M201 X1000 Y1000 Z100 E2000// |
- | + | **Для сохранения параметров в EEPROM использовать M500** | |
- | M112 – Экстренная остановка | + | * **М202** |
- | M114 - Получение текущих позиций | + | **!Не используется в Марлин! В мм/сек в кв.** |
- | M115 - Получить версию прошивки | + | //Пример: M202 X1000 Y1000// |
- | M119 - Получить | + | * **М203** Xnnn Ynnn Znnn Ennn – Установка максимальной скорости (в мм/ |
- | M140 - Установить температуру | + | //Xnnn, Ynnn, Znnn// – макс.скорость для |
- | Пример: | + | // |
- | + | ||
- | Устанавливает температуру стола 65C и сразу же возвращает управление (то есть НЕ ЖДЕТ пока стол достигнет заданной температуры). Еще см. М190 | + | |
- | + | ||
- | + | ||
- | + | ||
- | M190 - Установить температуру стола и ждать | + | |
- | + | ||
- | Устанавливает температуру в градусах Цельсия и ОЖИДАЕТ ее достижения. см. М140 | + | |
- | + | ||
- | + | ||
- | + | ||
- | М200 Dnnn Tnnn – Установить РЕАЛЬНЫЙ диаметр прутка филамента. | + | |
- | + | ||
- | Dnnn – диаметр в мм. | + | |
- | + | ||
- | Tnnn – номер экструдера. (для одноэкструдерных принтеров можно не указывать) | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | Используется для вычислений | + | |
- | + | ||
- | Для установки номинальных параметров см. М404. | + | |
- | + | ||
- | + | ||
- | + | ||
- | M201 Xnnn Ynnn Znnn Ennn – Установка максимальных ускорений (в мм/ | + | |
- | + | ||
- | Xnnn, Ynnn, Znnn – ускорения в мм/сек в кв. для осей. | + | |
- | + | ||
- | Ennn – ускорения в мм/сек в кв. для экструдера. | + | |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для сохранения параметров в EEPROM использовать M500 | + | **Для сохранения параметров в EEPROM использовать M500.** |
- | + | * **М204** //Pnnn Rnnn Tnnn// – Установка ускорений (в мм/ | |
- | М202 – Установка максимального ускорения для простого(холостого) | + | // |
- | !Не используется в Марлин! В мм/сек в кв. Пример: M202 X1000 Y1000 | + | //Rnnn// – Ускорение ретракта |
- | + | // | |
- | + | ||
- | М203 Xnnn Ynnn Znnn Ennn – Установка максимальной | + | |
- | + | ||
- | Xnnn, Ynnn, Znnn – макс.скорость для осей. | + | |
- | + | ||
- | Ennn – макс.скорость для экструдера. | + | |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для сохранения параметров в EEPROM использовать M500. | + | **Для сохранения параметров в EEPROM использовать M500.** |
- | М204 Pnnn Rnnn Tnnn – Установка | + | * **М205** Xnnn, Znnn, Ennn – Установка |
- | Pnnn – Ускорения при печати | + | // |
- | Rnnn – Ускорение ретракта | + | // |
- | Tnnn – Ускорения при холостых перемещениях | + | // |
Можно использовать только один/ | Можно использовать только один/ | ||
- | Пример: | + | //Пример: |
- | Для | + | Установить рывок по X/Y = 30, по Z рывок = 5. |
- | + | **Для сохранения параметров в в EEPROM использовать M500.** | |
- | М205 Xnnn, Znnn, Ennn – Установка максимальных рывков(jerk) (мм/сек) | + | * **М206** //Xnnn, Ynnn, Znnn// – Установка смещений относительно концевиков(ноля) |
- | + | ||
- | Xnnn – рывок по осям Х и Y. (по этим осям рывки одинаковые) | + | |
- | + | ||
- | Znnn – рывок по оси Z. | + | |
- | + | ||
- | Ennn – рывок для экструдера. | + | |
- | + | ||
- | Можно использовать только один/два из параметров. | + | |
- | + | ||
- | Пример: | + | |
- | + | ||
- | Для сохранения параметров в в EEPROM использовать M500. | + | |
- | + | ||
- | + | ||
- | + | ||
- | М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- выкл. | + | |
Используется, | Используется, | ||
Строка 422: | Строка 336: | ||
Каждая команда «выдавливания» будет классифицироваться как ретракт, | Каждая команда «выдавливания» будет классифицироваться как ретракт, | ||
- | + | * **M218** Tnnn Xnnn Ynnn – Установка смещения головы | |
- | M218 Tnnn Xnnn Ynnn – Установка смещения | + | //Tnnn// - номер головы |
- | Tnnn - номер головы | + | //Xnnn, Ynnn// – координаты по Х,Y. |
- | Xnnn, Ynnn – координаты по Х,Y. | + | //Пример: M218 T0 X50 Y10.5// |
- | Пример: M218 T0 X50 Y10.5 | + | * **M301** Hnnn Pnnn Innn Dnnn — Записать PID параметры хотэнда(!) |
- | + | //Hnnn// – номер экструдера. H1 – первый эксрудер(хотэнд). | |
- | M301 Hnnn Pnnn Innn Dnnn — Записать PID параметры хотэнда(!) | + | //Pnnn// - Коэффициэнт proportional |
- | Hnnn – номер | + | //Innn// - Коэффициэнт integral |
- | Pnnn - Коэффициэнт | + | // |
- | Innn - Коэффициэнт integral (Ki) | + | //Пример: M301 H1 P1 I2 D3// |
- | 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 – Команда для автоматической смены филамента | + |