Настройка печати отключена, файл нельзя изменить с помощью контрольного кода

Обновлено: 21.11.2024

Если вы находитесь в чужой стране, очень полезно понимать разговорный язык. И, как и во время летних каникул, если вы регулярно работаете с 3D-принтерами или другими станками с ЧПУ, понимание того, как создается G-код и что означают некоторые инструкции, может помочь вам не только исправить проблемы, но и легко настроить отпечатки. для ваших нужд.

G-код — это то, как мы сообщаем нашим машинам, что им нужно делать. Он существует с конца 1950-х годов и является наиболее широко используемым языком программирования числового программного управления. Тем не менее, не пугайтесь, если я скажу язык программирования, потому что это один из самых простых языков, о которых вы только можете подумать, потому что в той форме, в которой он используется в большинстве 3D-принтеров, нет циклов, операторов if, скобок или чего-либо еще. Модные вещи. Если вы подготовите модель в своем любимом слайсере и откроете сгенерированный G-код в текстовом редакторе, то увидите, что это просто список команд, которые прошивка наших 3D-принтеров считывает и затем выполняет — одну строку за другой. Мы рассмотрим наиболее распространенный вариант G-кода для 3D-принтеров, который совместим с прошивкой marlin. Если вы используете принтер с прошивкой RepRap или, возможно, фрезерный станок с ЧПУ с Mach 3, общий вид файла будет таким же, хотя некоторые команды могут выполнять несколько разные действия. В этом видео я расскажу о наиболее распространенных командах, которые позволят вам понять 95% вашего G-кода для 3D-печати, но если вы хотите узнать больше, есть ссылки на все команды и то, как G-код должен искать конкретная прошивка. Я дал ссылку на несколько таких ресурсов в описании.

Визуализация G-кода в PrusaSlicer

Итак, давайте посмотрим на Marlin-G-code. Как я уже говорил, каждая строка кода обрабатывается одна за другой — от начала файла до его конца. Файлы обычно создаются с заголовком, который включает некоторую общую информацию. Далее следует начальный G-код, который вы можете настроить в своем слайсере, затем команды печати с конечным G-кодом. Также часто присутствует блок текста, содержащий все использованные настройки слайсера. Этот раздел настроек иногда бывает очень полезен, если вы забыли сохранить профиль или получили от кого-то еще файл g-кода, который распечатался очень хорошо. Некоторые слайсеры позволяют импортировать файл G-кода и создавать профиль из настроек, но обычно только в том случае, если G-код был создан с помощью того же слайсера.

Пример G-кода Marlin

Если мы посмотрим на шапку или блок настроек, мы уже можем увидеть что-то важное. Эти строки обычно начинаются с точки с запятой. Наличие точки с запятой в начале строки означает, что это комментарий, поэтому он будет проигнорирован прошивкой. Вы можете не только закомментировать целую строку, но и добавить комментарий после обычной команды, чтобы сделать код более читабельным. Слайсеры также часто добавляют комментарии, чтобы вам было легче найти определенный слой или определенную функцию. Просто для полноты картины: некоторые прошивки поддерживают комментарии в скобках в соответствии со стандартом G-кода ЧПУ, хотя этот стиль используется редко.

Комментарии в G-коде

А теперь рассмотрим синтаксис команд G-кода. Каждая команда начинается с буквы. G обозначает подготовительные команды и обычно используется для задач, связанных с движением. М-команды или Разные команды часто используются для изменения настроек или выполнения действий. Следующий номер относится к конкретной команде. Далее следуют параметры для этой команды G-кода с описательной буквой, за которой следует значение. Очень просто.

Начнем с наиболее распространенных команд G0 и G1, которые используются для перемещения осей. Параметры XYZ определяют место, куда он должен перемещаться, E определяет количество экструдируемого материала, а F определяет скорость федерации, обычно в мм в минуту. G0 и G1 не требуют значений для всех осей, а также федерацию нужно установить только один раз, и она будет сохраняться до тех пор, пока она не будет изменена. G0 использовался в прошлом для быстрых перемещений, где не требовалась точность, а G1, с другой стороны, был скоординированным линейным перемещением из одной позиции в другую. На современных 3D-принтерах G0 и G1 делают практически то же самое, и есть только соглашение, что G0 должен использоваться для перемещений, а G1 для перемещений, при которых также выдавливается материал.

G0 и G1 — линейное перемещение

Очень важной парой команд в контексте G0 и G1 являются G90 и G91. Они устанавливают режим позиционирования на абсолютный или относительный. Если установлена ​​G90, все перемещения выполняются в абсолютных позициях в системе координат принтера. Таким образом, G0 X50 Y50 переместит головку инструмента на X50, Y50 и следующая за ней G0 X100 Y100 переместит головку на X100 Y100.

Если установлена ​​G91, все перемещения выполняются относительно последней позиции. Таким образом, если мы начнем с исходной точки X0 Y0 и отправим G0 X50 Y50, мы перейдем к X50 Y50, хотя, если мы затем отправим G0 X100 Y100, мы выполним пошаговое перемещение и закончим X150 Y150.

Большинство перемещений в файле GCode будут выполняться с использованием абсолютного позиционирования. Где относительное позиционирование может быть полезным, например, для вашего конечного G-кода, где вы хотите поднять сопло от печати и отойти. Таким образом, независимо от высоты вашей модели, G91 или G0 Z10 всегда будут поднимать печатающую головку на 10 мм. Сразу после этого мы снова переключаемся на абсолютное позиционирование с помощью G90 и можем перемещать сопло к краю печатного стола.

Пример завершения скрипта, чтобы поднять сопло и отодвинуть его

К перемещениям печати также относится пара команд M82 и M83. Хотя поначалу это может показаться немного странным, но наш экструдер нитей является четвертой осью нашего 3D-принтера и может отдельно переключаться с абсолютного на относительное позиционирование, как и наши оси движения. M82 устанавливает ось в абсолютный режим, M83 — в относительный. Этот параметр в основном является предпочтением используемого вами слайсера. CURA в основном производит выдавливание в абсолютных координатах, то есть M82, тогда как PrusaSlicer, например, по умолчанию использует относительное выдавливание с M83. Ведутся дискуссии о том, лучше или хуже тот или иной вариант для накопленной относительной погрешности, хотя, по моему опыту, это не имеет большого значения и скорее зависит от того, какой стиль вы предпочитаете.

Пример G-кода из разных слайсеров

Большинство наших 3D-принтеров используют простые шаговые двигатели для осей без обратной связи по положению. Это означает, что когда вы включаете свою машину, она не знает, что это такое. Вот почему практически каждый файл G-кода, который мы запускаем на наших принтерах, с самого начала содержит G28. G28 инициирует процедуру возврата в исходное положение, при которой станок перемещается до конечных упоров с известными позициями. Это может быть так же просто, как просто выдать G28, где все оси возвращаются в исходное положение одна за другой. Добавив параметр X, Y или Z или их комбинацию, мы можем сообщить прошивке, что нужно использовать только одну или две оси.

Различные способы установки осей

Все больше и больше 3D-принтеров начинают поставляться с датчиками выравнивания платформы, где G29 используется для запуска процесса выравнивания. G28 и G29 обычно идут в последовательном порядке, потому что оси необходимо установить в исходное положение, прежде чем вы начнете измерение ложа.

Подобно возврату в исходное положение, использование команды G92 позволяет нам установить текущую позицию на определенное значение. Таким образом, независимо от того, где вы находитесь, отправка, например, G92 X0 Y0 Z0 сообщит принтеру, что текущее местоположение является новым началом системы координат. В 3D-печати G-код G92 чаще всего встречается при использовании абсолютного выдавливания, а ось экструдера сбрасывается для лучшей читаемости.

Теперь поговорим о температурах и, в частности, о температурах сопла и слоя. С помощью M104 и M109 плюс параметр S устанавливается температура сопла. Но в чем разница между этой парой команд? М104 просто задает температуру сопла, а дальше выполнение G-кода продолжится в обычном режиме.M109, с другой стороны, устанавливает температуру, а затем приостанавливает выполнение G-кода, пока температура не будет достигнута. Точно так же и при настройке температуры кровати. M140 просто установит желаемую температуру, M190 установит ее и сделает паузу, пока температура не будет достигнута.

Кстати, две пары команд действительно легко запомнить, потому что числа 4 и 9 просто сдвигаются на одну цифру.

Команды работают по похожей схеме

В основном вы найдете их в любом сценарии запуска, где вы хотите подождать, пока не будут достигнуты надлежащие температуры, и только затем начать печать. Если ваш принтер начнет одновременно нагревать платформу и сопло, вы найдете M104, M140, M109, M190.

Одновременно нагревайте сопло и платформу

Некоторые машины сначала нагревают слой, а затем сопло, чтобы избежать просачивания материала. В этом случае вы обычно найдете M140, M190, M104 и M109 в стартовом скрипте.

Сначала нагрейте кровать, затем сопло

Итак, если вы устали ждать, пока кровать и сопло нагреются один за другим, теперь вы знаете, что нужно изменить в своем стартовом сценарии! В моем случае я часто вручную добавляю команды M104 в свои G-коды на определенных высотах, чтобы настроить свои температурные башни. Я не использую M109, потому что новая температура обычно достигается в пределах одного слоя, поэтому приостановка печати вызывает больше проблем, чем помогает.

Другой важной командой является M106, которая используется для управления вентилятором охлаждения. Параметр S, который может принимать значения от 0 до 255, позволяет регулировать его скорость. Например, полная мощность 255, а половинная мощность 128. Если вы хотите полностью отключить его, используется M106 S0 или специальная команда M107.

Примеры настроек вентилятора

Последняя команда, о которой я хочу поговорить, это M84. Шаговые двигатели будут оставаться под напряжением после перемещения оси с помощью управления принтером, чтобы не потерять свое положение. Если вы хотите отключить двигатели, чтобы оси можно было перемещать вручную, вы можете использовать M84 для всех осей или M84 с параметрами X, Y, Z и E, чтобы отключить отдельные оси.

Отключить шаговые двигатели

И все! Если вы помните эти 10 команд или пар команд, вы поймете большую часть G-кода, который генерирует ваш слайсер, и настроите процедуры печати по своему вкусу. Конечно, есть еще много команд, но те, что я вам представил, самые важные, на мой взгляд. Дайте мне знать в комментариях, какую команду вы считаете наиболее важной для запоминания и когда знание G-кода наиболее практично?

Изменение G-кода для 3D-печати поначалу может показаться сложным и запутанным, но это не так уж сложно освоить. Если вы хотите узнать, как изменить свой G-код в Cura, эта статья для вас.

Cura — очень популярный слайсер среди любителей 3D-печати. Он предлагает пользователям возможность настроить свой G-код с помощью заполнителей. Эти заполнители представляют собой предустановленные команды, которые вы можете вставить в свой G-код в определенных местах.

Хотя эти заполнители очень полезны, для пользователей, которым требуется больший редакторский контроль, они могут быть очень ограничивающими. Чтобы полностью просмотреть и отредактировать G-код, вы можете использовать различные сторонние редакторы G-кода.

Это основной ответ, поэтому продолжайте читать, чтобы получить более подробное руководство. В этом руководстве мы покажем вам, как создавать, понимать и изменять G-код с помощью как Cura, так и сторонних редакторов.

Итак, приступим.

Что такое G-код в 3D-печати?

G-Code — это язык программирования, содержащий набор команд для управления практически всеми функциями печати принтера. Он контролирует скорость экструзии, скорость вращения вентилятора, температуру нагреваемого слоя, движение печатающей головки и т. д.

Он создается из STL-файла 3D-модели с помощью программы, известной как «Slicer». Слайсер преобразует файл STL в строки кода, которые сообщают принтеру, что делать на каждом этапе процесса печати.

Все ли 3D-принтеры используют G-код?

Да, все 3D-принтеры используют G-код, это основная часть 3D-печати. Основным файлом, из которого создаются 3D-модели, являются файлы STL или файлы стереолитографии. Эти 3D-модели обрабатываются с помощью программы-слайсера для преобразования в файлы G-кода, понятные 3D-принтерам.

Как вы переводите и понимаете G-код?

Как мы уже говорили ранее, в большинстве случаев обычным пользователям может даже не понадобиться редактировать или изменять G-код. Но иногда могут возникать ситуации, когда пользователю может потребоваться настроить или изменить некоторые параметры печати, которые можно найти только в профиле G-кода принтера.

В подобных ситуациях знание G-кода может пригодиться для выполнения задачи. Давайте рассмотрим некоторые распространенные обозначения в G-коде и их значение.

В языке программирования G-Code у нас есть два типа команд; команда G и команда M.

Давайте посмотрим на них обоих:

G-команды

G-команды управляют различными режимами принтера. Он также используется для управления движением и ориентацией различных частей принтера.

Типичная команда G выглядит следующим образом:

11 G1 F90 X197.900 Y30.000 Z76.000 E12.90000; Комментарий

Давайте пройдемся по строке и объясним команды:

  • 11 – указывает на выполняемую строку кода.
  • G — буква G означает, что строка кода представляет собой команду G, а число после нее представляет режим принтера.
  • F — F — скорость или скорость подачи принтера. Он устанавливает скорость подачи (мм/с или дюйм/с) в число сразу после него.
  • X/Y/Z — представляют систему координат и ее позиционные значения.
  • E – E – параметр движения кормушки.
  • <ли>; – Точка с запятой обычно предшествует комментарию к G-коду. Комментарий не является частью исполняемого кода.

Итак, если мы сложим все вместе, строка кода предписывает принтеру двигаться к координатам [197,900, 30,00, 76,00] со скоростью 90 мм/с при выдавливании 12 900 мм материала.

Команда G1 означает, что принтер должен двигаться по прямой с указанной скоростью подачи. Позже мы рассмотрим другие различные G-команды.

Здесь вы можете визуализировать и протестировать свои команды G-кода.

M-команды

Команды M отличаются от команд G тем, что они начинаются с буквы M. Они управляют всеми другими функциями принтера, такими как датчики, нагреватели, вентиляторы и даже звуки принтера.

Мы можем использовать M-команды для изменения и переключения функций этих компонентов.

Типичная M-команда выглядит следующим образом:

11 М107; Отключите вентиляторы охлаждения деталей

12 М84; Отключить моторы

Давайте расшифруем, что они означают;

  • 11, 12 — это строки кода, которые можно использовать для справки.
  • M107, M84 — типичные команды завершения печати для отключения питания принтера.

Как редактировать G-код в Cura

Как мы упоминали ранее, популярный слайсер Ultimaker Cura предоставляет пользователям некоторые функции редактирования G-кода. Пользователи могут настраивать и оптимизировать некоторые части G-кода в соответствии со своими спецификациями.

Однако, прежде чем мы приступим к редактированию G-кода, важно понять структуру G-кода. G-код состоит из трех основных частей.

Этап инициализации

Прежде чем можно будет начать печать, необходимо выполнить определенные действия. Эти действия включают в себя такие вещи, как предварительный нагрев кровати, включение вентиляторов, калибровка положения горячего конца.

Все эти действия перед печатью находятся на этапе инициализации G-кода. Они запускаются перед любым другим фрагментом кода.

Пример кода этапа инициализации:

G90; переведите машину в абсолютный режим

M82; Интерпретировать значения экструзии как абсолютные значения

M106 S0; Включите вентилятор и установите скорость на 0.

M140 S90; Нагрейте рабочую поверхность до 90°C

M190 S90; Подождите, пока температура кровати не достигнет 90°C

Этап печати

Фаза печати включает собственно печать 3D-модели. G-код в этом разделе управляет послойным перемещением хотэнда принтера, скоростью подачи и т. д.

G1 X96.622 Y100.679 F450; управляемое движение в плоскости X-Y

G1 X96.601 Y100.660 F450; управляемое движение в плоскости X-Y

G1 Z0,245 F500; изменить слой

G1 X96.581 Y100.641 F450; управляемое движение в плоскости X-Y

G1 X108.562 Y111.625 F450; управляемое движение в плоскости X-Y

Этап сброса принтера

G-код для этого этапа вступает в силу после завершения печати 3D-модели. Он включает инструкции по очистке, чтобы вернуть принтер в состояние по умолчанию.

Пример завершения или сброса G-кода принтера показан ниже:

G28; принеси насадку домой

M104 S0; выключить обогреватели

M140 S0; выключите обогреватели кроватей

M84; отключить моторы

Теперь, когда мы знаем все различные этапы или разделы G-кода, давайте посмотрим, как мы можем их редактировать. Как и большинство других слайсеров, Cura поддерживает редактирование G-кода только в трех местах:

  1. В начале печати на этапе инициализации печати.
  2. В конце печати на этапе сброса печати.
  3. На этапе печати во время смены слоев.

Чтобы отредактировать G-код в Cura, необходимо выполнить ряд инструкций. Давайте пройдемся по ним:

Шаг 1. Загрузите Cura с сайта Ultimaker здесь.

Шаг 2. Установите его, примите все условия и положения и настройте.

Шаг 3. Добавьте свой принтер в список принтеров.

Шаг 4. При настройке профиля печати вместо рекомендуемого режима выберите пользовательский режим.

Шаг 5. Импортируйте файл G-кода в Cura.

  • Нажмите "Настройки".
  • Нажмите профиль
  • Затем нажмите «Импорт», чтобы открыть окно для импорта файла.

Шаг 6. Кроме того, вы можете перейти к настройкам принтера, щелкнуть настройки машины и ввести свой G-код вручную.

Шаг 7. В настройках принтера вы увидите вкладки для изменения начального и конечного G-кода для различных компонентов, таких как экструдеры, настройки печатающей головки и т. д.

Здесь вы можете изменить различные настройки инициализации печати и сброса. Вы можете редактировать команды, а также добавлять свои собственные.

В следующем разделе мы рассмотрим некоторые из этих команд.

Вы также можете использовать расширение постобработки Cura для изменения вашего G-кода. Вот как вы можете это сделать.

Шаг 1. Откройте Cura и загрузите файл.

Шаг 2. Нажмите на вкладку "Расширения" на панели инструментов.

Шаг 3. Нажмите на расширения, а затем нажмите "Изменить G-код".

Шаг 4. В новом всплывающем окне нажмите «Добавить скрипты».

Шаг 5. Появится меню с такими параметрами, как «Пауза на высоте», «Промежуток времени» и т. д. Вы можете использовать эти предустановленные сценарии для изменения G-кода.

Какие общие команды G-кода для 3D-принтеров?

Теперь, когда вы знаете все о G-Code и о том, как изменить его в Cura, давайте покажем вам некоторые команды, которые вы можете использовать.

Распространенные G-команды

G1/G0 (линейное перемещение): обе команды сообщают машине, что нужно двигаться от одной координаты к другой с определенной скоростью. G00 сообщает машине двигаться с максимальной скоростью в пространстве к следующей координате. G01 указывает ему двигаться к следующей точке с указанной скоростью по прямой.

G2/G3 (движение по дуге или по окружности): обе команды указывают машине двигаться по кругу от начальной точки до точки, указанной как смещение от центра. G2 перемещает машину по часовой стрелке, а G3 - против часовой стрелки.

G28: Эта команда возвращает станок в исходное положение (ноль станка) [0,0,0]. Вы также можете указать ряд промежуточных точек, через которые машина пройдет на пути к нулю.

G90: переводит станок в абсолютный режим, в котором все единицы интерпретируются как абсолютные координаты.

G91: перемещает станок на несколько единиц или шагов от его текущего положения.

Распространенные M-команды

M104/109: обе команды являются командами нагрева экструдера, они обе принимают аргумент S для желаемой температуры.

Команда M104 запускает нагрев экструдера и немедленно возобновляет выполнение кода. M109 ждет, пока экструдер не достигнет нужной температуры, прежде чем запускать другие строки кода.

M 140/ 190: Эти команды являются командами подогрева кровати. Они следуют тому же синтаксису, что и M104/109

Команда M140 запускает нагрев кровати и немедленно возобновляет выполнение кода. Команда M190 ожидает, пока кровать не достигнет нужной температуры, прежде чем запускать другие строки кода.

M106: Команда M106 позволяет установить скорость внешнего вентилятора охлаждения. Он принимает аргумент S, который может принимать значения от 0 (выключено) до 255 (полная мощность).

M82/83: эти команды относятся к установке вашего экструдера в абсолютный или относительный режим соответственно, аналогично тому, как G90 и G91 задают положение для осей X, Y и Z.

M18/84: вы можете отключить свои шаговые двигатели и даже установить таймер в S (секундах). Например.M18 S60 — это означает отключение шаговых двигателей через 60 секунд.

M107: позволяет отключить один из ваших вентиляторов, и, если индекс не указан, это будет вентилятор охлаждения детали.

M117: Немедленно отобразите ЖК-сообщение на экране — «M117 Hello World!» чтобы отобразить «Hello World!»

M300: воспроизведите мелодию на 3D-принтере с помощью этой команды. Он использует M300 с параметром S (частота в Гц) и параметром P (длительность в миллисекундах).

M500: сохраните любые настройки ввода на 3D-принтере в файл EEPROM, чтобы запомнить их.

M501: загрузить все сохраненные настройки в файл EEPROM.

M502: Сброс к заводским настройкам — сброс всех настраиваемых параметров до заводских значений по умолчанию. Вам придется сохранить это, также используя M500 впоследствии.

Эти команды являются лишь примером широкого набора доступных команд G-кода. Вы можете проверить MarlinFW для получения списка всех команд G-кода, а также RepRap.

Лучшие бесплатные редакторы G-кода для 3D-печати

Cura отлично подходит для редактирования G-кода, но все же имеет свои ограничения. Это полезно только для редактирования определенных областей G-кода.

Если вы опытный пользователь и вам нужно больше свободы для редактирования G-кода и работы с ним, мы рекомендуем использовать редактор G-кода.

С помощью этих редакторов вы можете свободно загружать, редактировать и даже визуализировать различные области вашего G-кода. Вот список некоторых из самых популярных бесплатных редакторов G-кода.

Блокнот++

Notepad++ — это расширенная версия обычного текстового редактора. Он может просматривать и редактировать несколько типов файлов, одним из которых является G-код.

В Блокноте есть стандартные функции, такие как поиск, поиск и замена и т. д., которые помогут вам редактировать G-код. Вы даже можете разблокировать дополнительные функции, такие как выделение текста, следуя этому простому руководству.

Возможно, Notepad++ не самый яркий редактор G-кода на рынке, но он быстрый, простой в использовании и легкий.

Просмотрщик NC

NC Viewer предназначен для пользователей, которые ищут больше мощности и функциональности, чем может предложить Notepad++. В дополнение к мощным инструментам редактирования G-кода, таким как выделение текста, NC Viewer также предоставляет интерфейс для визуализации G-кода.

С помощью этого интерфейса вы можете просматривать свой G-код построчно и просматривать, что вы редактируете в реальной жизни. Важно отметить, что это программное обеспечение не было разработано для 3D-принтеров. Он предназначен для станков с ЧПУ, поэтому некоторые команды могут работать некорректно.

Средство просмотра gCode

gCode — это онлайн-редактор G-кода, созданный в первую очередь для 3D-печати. Помимо предоставления интерфейсов для редактирования и визуализации G-кода, он также принимает такую ​​информацию, как размер сопла, материал и т. д.

Благодаря этому вы можете генерировать и сравнивать различные оценки стоимости для различных G-кодов, чтобы определить оптимальную версию.

И наконец, предостережение. Перед редактированием G-кода обязательно сделайте резервную копию исходного файла G-кода на случай, если вам потребуется отменить изменения.

Кроме того, убедитесь, что принтер правильно откалиброван, прежде чем начинать использовать G-команды. Удачного редактирования.

Cura — это программное обеспечение с открытым исходным кодом, созданное и разработанное компанией Ultimaker. FABtotum может работать с .gcodes, созданными с помощью Cura.
Чтобы загрузить его на FABUI, см. обзор FABUI.

Установка

Примечание. Профили Cura для Cura 2.X доступны, но являются экспериментальными.

Найдите Cura в папке «Загрузки» на вашем компьютере, установите ее и запустите.

Установка в Windows
В ходе процедуры установки вам будет предложено выбрать, хотите ли вы, чтобы программа открывала другие форматы файлов, кроме .stl (например, .obj). Мастер также спросит вас, хотите ли вы установить дополнительные драйверы для управления вашими принтерами. Поскольку FABtotum не требует драйверов Arduino для последовательного подключения, вы можете не устанавливать их. Наконец, вы можете нажать «Запустить Cura» и завершить настройку.

Настройка параметров машины в Cura

При первом открытии Cura вам будет предложено настроить компьютер:
* Выберите нужный язык (английский для этого руководства)

– Нажмите «Далее» на первой странице. .
– Отметьте «Другое (например, Reprap, Makerbot, Witbox)», затем нажмите «Далее».
– Отметьте «Пользовательский», затем «Далее»
– Название машины: «FABtotum»
– Ширина машины X: 214
– Глубина машины Y: 234
– Машина высота Z: 241 (если вы хотите быть уверены, что не заденете нижний упор, уменьшите значение, например, 240 или 239)
– Размер сопла: 0,4 (0,35, если вы используете гибридную головку V1)
– Кровать с подогревом: «Да»
– Центр кровати 0,0,0 (RoStock): НЕТ
– Нажмите «Готово»

На этом этапе приложение Начало.
В раскрывающемся меню «Файл» откройте и установите соответствующий профиль FABtotum (Файл → Открыть профиль). Вот и все, вы готовы нарезать с помощью Cura.

Примечание. Профили — это только отправная точка, помните, что каждый объект уникален и имеет разные потребности.

Профили FABtotum Cura

Примечание. Эти профили можно использовать с версиями Cura ⇐ 15.4.

Команда FABteam подготовила несколько предварительно настроенных профилей, которые помогут вам начать работу с Cura.
Имейте в виду, что в некоторых случаях профиль может быть идеальным, но чаще всего он является отправной точкой для дальнейших улучшений в других.

Выберите имя профиля, соответствующее вашей версии надстройки, выберите правильный материал и используйте профиль «Базовый» в качестве отправной точки.

Чтобы установить профиль Cura, выберите: Файл → Открыть профиль

Нарезка STL-модели

После того, как Cura настроена, правильный профиль FABtotum загружен, и у вас есть модель на вашем компьютере, которую нужно подготовить к печати, вы можете приступить к самой нарезке.

Задача довольно проста: просто перетащите файл .stl в интерфейс (или выберите значок папки в 3D-виде), и модель загрузится.

Вы можете выбрать его, переместить, проверить, как машина будет работать слой за слоем (крайне важно), и сохранить .gcode, щелкнув значок дискеты в окне 3D-просмотра.

После того как вы сохранили файл .gcode, вы должны загрузить его в FABtotum через менеджер объектов FABUI. Затем вы можете приступить к печати, как обычно.

Примечание.
Вы можете добавить в Cura столько машин, сколько захотите, и переключаться между ними. Обратите внимание, что последние используемые настройки будут следовать за машиной.

ВНИМАНИЕ!
Не забывайте всегда загружать один из выпущенных нами профилей, чтобы изменить «START и END .gcodes» и некоторые другие параметры, чтобы машина работала правильно. Затем вы можете изменить другие параметры в соответствии с файлом, который вам нужно распечатать.

Последовательная пакетная печать

Cura позволяет печатать несколько копий одного и того же объекта при условии, что размеры находятся в допустимых пределах и элементы не будут конфликтовать с надстройкой во время операции.
Чтобы настроить последовательную пакетную печать, следуйте этим инструкциям:

В Cura перейдите в Machine -> Machine Settings -> FABtotum и добавьте следующие настройки:

Совет: печатайте на двух разных машинах, если хотите сохранить оба профиля настроек.

Теперь перейдите в Cura -> Инструменты -> Печать по одному. После этого очень важно перезапустить Cura.

Настройка «Короткая партия» активируется, когда каждый объект короче 17 мм, но вы можете разместить на платформе больше объектов.
Настройка «Высокая партия» позволит вам разместить максимум 3-4 объекта на платформе (в зависимости от размера объекта) и расположить их в линию по оси Y (от самого короткого до самого высокого).
Перед экспортом .gcode убедитесь, что последовательная печать активирована с помощью представления слоя объекта в Cura, и посмотрите, что происходит во время печати.

Объекты будут строиться один за другим.
При активации конфигурации больших партий важен порядок объектов, вы должны поместить один объект с меньшим значением Y, а затем остальные по очереди.

Редактирование параметров нарезки

Изменение параметров

Попробовав наши профили, вы захотите внести изменения и создать свой собственный.
Вот основная информация о нарезке.

РАЗМЕР СОПЛА: это крошечное отверстие, из которого вытекает материал. Гибридная головка V1 имеет сопло диаметром 0,35 мм, печатающая головка V2 – сопло диаметром 0,4 мм.

LAYER HEIGHT: этот параметр соответствует высоте каждого слоя. Слой большего размера означает менее точную, но более быструю печать, слой меньшего размера означает более точную, но более медленную печать. Максимальная высота слоя рассчитывается в зависимости от размера сопла. Вы должны разделить размер сопла на 2, таким образом, вы получите хорошее значение для использования в качестве максимальной высоты слоя.
Разделите размер сопла на 3, 4 или 5, чтобы получить хорошие значения для печати очень высокого качества.
Минимальная высота слоя связана с текучестью материала. Для стандартной нити PLA мы достигли очень хороших результатов с высотой слоя 0,05 мм (50 микрон, сопло 1/7). При нанесении слоя 0,03 мм (30 микрон, 1/11 сопла) материал начал скручиваться при нанесении и качество поверхности стало хуже.

ТОЛЩИНА ОБОЛОЧКИ: С помощью этого параметра вы можете выбрать толщину внешней оболочки. Он относится к сторонам объекта. Базовая настройка предполагает, что вы должны удвоить размер сопла (т.е. при использовании нашего сопла 0,35 мм вы должны установить этот параметр на 0,7 мм, с нашим соплом 0,4 мм параметр должен быть 0,8 мм). Однако при использовании базовой настройки вы можете увидеть внутреннее заполнение объекта снаружи, так что это не подходит, если вы хотите добиться хорошего качества поверхности, но вы получите более быструю печать и более легкий объект. Если вы хотите создавать прочные прочные объекты, вы должны увеличить это значение по своему усмотрению.

НИЖНЯЯ/ВЕРХНЯЯ ТОЛЩИНА: Этот параметр соответствует толщине верхней и нижней оболочек. Это очень важные параметры для качественной печати. Чем выше значение, тем выше качество, но также тем медленнее процесс и тем больше материала используется.

ПЛОТНОСТЬ ЗАПОЛНЕНИЯ: это процент заполнения материала внутри объекта. Более низкое значение заполнения означает более быструю печать и более легкие, но более хрупкие объекты. Более высокое заполнение означает более медленную печать, но более устойчивые объекты. Разумные значения варьируются от 10% до 30%. Если вы печатаете PLA или другой материал с низкой усадкой, вы можете увеличить заполнение до 100% (с ABS вы получите большую деформацию).
Существует большая разница между 25 % и 24 %: это потому, что до 24 % наполнение происходит в обоих направлениях для каждого слоя; от 25 % Cura меняет направление заливки на каждом слое.

СКОРОСТЬ ПЕЧАТИ. Это еще один параметр, существенно влияющий на качество печати. Это скорость, с которой машина будет печатать. Если установить очень высокую скорость, механическая инерция машины начнет выдавать дефекты на отпечатке. Печать на более медленных скоростях помогает машине следовать линиям и создавать хорошие углы, а также облегчает проталкивание нити в экструдер и охлаждение материала.
Хороший диапазон составляет от 30 мм/с до 120 мм/с, наиболее часто используемые значения – от 50 мм/с до 90 мм/с.

SUPPORT TYPE: этот тип следует использовать при печати объекта, который представляет собой вертикальные пустые пространства. Если установлено значение «Нет», поддержки не будет. Если установлено значение «Касание рабочей пластины», создается опора только там, где опорная конструкция должна касаться плоскости построения. Если установлено значение «Везде», будет создана поддержка и поверх объекта.

ТИП ПРИКЛЕИВАНИЯ ПЛАТФОРМЫ. Это параметры, которые можно выбрать, чтобы предотвратить подъем углов из-за деформации. «Поля» добавляют плоскую область в один слой толщиной вокруг вашего объекта. «Плот» добавляет толстый растр под объектом и тонкий интерфейс между ним и вашим объектом. Обратите внимание, что если вы включите один из двух параметров, это отключит «Юбку».

ДИАМЕТР НИТЬ: соответствует диаметру используемой нити. Наша машина предназначена для использования нитей диаметром 1,75 мм, что является значением, которое вы должны указать в Cura. Пожалуйста, всегда используйте наши проверенные и одобренные высококачественные нити при использовании нашего FABtotum, вы можете приобрести катушки в нашем магазине.

ПОТОК ВОЛОТА: это количество экструдированного материала в процентах.
Приведенные выше параметры являются базовыми. Если вы опытный пользователь, вы также можете работать с расширенными настройками, приведенными ниже.

СКОРОСТЬ ВТЯГИВАНИЯ И РАССТОЯНИЕ: скорость измеряется в миллиметрах в секунду и соответствует скорости втягивания нити при перемещении из одной точки в другую. Более высокая скорость отвода работает довольно хорошо, но не устанавливайте ее слишком высокой, чтобы избежать перетирания нити. Расстояние измеряется в миллиметрах и соответствует степени втягивания нити. Установите значение 0, чтобы не было втягивания, мы рекомендуем установить значение 4, чтобы получить отпечатки хорошего качества.

НАЧАЛЬНАЯ ТОЛЩИНА СЛОЯ: Этот параметр используется для установки толщины нижнего слоя. Очевидно, что более толстый нижний слой облегчает прилипание к кровати. Установите значение 0.0, если вы хотите, чтобы нижний слой имел такую ​​же толщину, как и все остальные слои. Мы советуем вам установить этот параметр равным 0,23.

ШИРИНА ЛИНИИ НАЧАЛЬНОГО СЛОЯ: Этот параметр, измеряемый в %, используется для улучшения адгезии слоя и обеспечивает дополнительную ширину экструзии первого слоя. Мы советуем установить значение 120.

CUT OFF OBJECT BOTTOM: этот параметр следует установить при печати объекта, который не имеет плоского дна, так как он погружает объект в платформу. Эту функцию следует использовать, чтобы объект не отрывался от плоскости.

СКОРОСТЬ ПЕРЕМЕЩЕНИЯ: Этот параметр устанавливает скорость, с которой движется головка, когда печать не выполняется. Предлагаемые значения для этого находятся в диапазоне от 100 мм/с до 200 мм/с.
(500 мм/с — это максимальное значение, которое мы пробовали, но это вызывает много шума и может привести к медленному выходу из строя машины, если она используется в течение более длительного периода времени).

СКОРОСТЬ НИЖНЕГО СЛОЯ. Важно, чтобы нижний слой печатался с меньшей скоростью, чтобы он лучше прилипал к платформе. Имейте в виду, что нижний слой является самым важным слоем из всех. Мы советуем вам установить это значение на 25.

СКОРОСТЬ ЗАПОЛНЕНИЯ: это скорость, с которой печатаются детали заполнения. Если установлено значение 0, машина будет использовать скорость печати для заполнения. Чем выше скорость, тем быстрее печать. Однако более быстрая печать создаст отпечаток более низкого качества, но если учесть, что он внутри, если у вас нет особых потребностей, он может быть как-то быстрее.

ВЕРХНЯЯ/НИЖНЯЯ СКОРОСТЬ: это скорость, с которой печатаются верхний и нижний слои. Если установлено значение 0, машина будет использовать для них скорость печати. Мы рекомендуем не печатать эти слои слишком быстро, так как ускоренная печать сокращает время печати, но значительно снижает качество.

OUTER SHELL SPEED: этот параметр соответствует скорости печати внешней оболочки. Печать на более низкой скорости улучшит качество конечной оболочки, однако слишком большая разница между скоростью заполнения и скоростью внешней оболочки может негативно сказаться на качестве печати. Мы советуем установить это значение на 75.

СКОРОСТЬ ВНУТРЕННЕЙ ОБОЛОЧКИ: это скорость, с которой печатается внутренняя оболочка. Это должно быть установлено на средней скорости между скоростью внешней оболочки и скоростью заполнения/печати. Если установлено значение 0, скорость печати будет использоваться для внутренней оболочки.

МИНИМАЛЬНОЕ ВРЕМЯ СЛОЯ: эта функция устанавливает минимальное время, затрачиваемое на охлаждение слоя, прежде чем следующий слой будет помещен сверху. Мы советуем установить значение 6.

ВКЛЮЧИТЬ ОХЛАЖДАЮЩИЙ ВЕНТИЛЯТОР. Эта функция особенно важна при быстрой печати, поскольку она обеспечивает дополнительное охлаждение.

Если вы являетесь экспертом, вы также можете работать с еще более расширенными настройками. Это достигается в Cura, перейдя в → EXPERT → Открыть настройки EXPERT

ОБЪЕМНАЯ СКОРОСТЬ (объемный расход). Хороший способ понять ваши параметры — это рассчитать объемную скорость. Это количество кубических миллиметров, которое устройство выдавливает каждую секунду.
Вы можете рассчитать его следующим образом:
ВЫСОТА СЛОЯ (мм) x РАЗМЕР СОПЛА (мм) x СКОРОСТЬ ПЕЧАТИ (мм/с) = ОБЪЕМНАЯ СКОРОСТЬ (мм3/с)
Вы можете изменить температура в соответствии с этой скоростью (больше объемная скорость, более высокая температура) и максимальная объемная скорость материала, который вы используете.

ВТЯГИВАНИЕ, ММ И СКОРОСТЬ: Наша машина ограничена максимальной скоростью втягивания 18 мм/с, поэтому вы можете придерживаться этого значения. Что касается длины ретракции, лучше использовать ее около 6 мм (просто измените максимум на 1-2 мм, небольшие изменения в этом случае могут быть полезны).

Детали с большим втягиванием могут повредить нить до ее разрыва, поэтому лучше увеличить заполнение детали, чтобы нить продвигалась больше во время печати, поэтому следующее втягивание будет на новом сегменте нити. .

Помимо множества тестовых устройств, у Мартина теперь работает четвертый собственный 3D-принтер, и он занимается печатью в качестве хобби для друзей, семьи и себя. Он с радостью делится своим опытом с каждой новой статьей.

  • Anycubic Кобра | Практический тест и обзор | Стоит ли оно того? – 27 марта 2022 г.
  • Плохая адгезия, разделение и расслоение АБС-пластика | Путеводитель – 24 марта 2022 г.
  • Шаблон заполнения с тремя шестигранниками | Стабильность, использование, плотность и многое другое – 23 марта 2022 г.

В дополнение к «Сценарию паузы на высоте», Cura также позволяет использовать «Сценарий смены нити» для замены нити во время печати.

С помощью сценария смены нити Cura нить можно заменить на определенном слое во время печати. Это позволяет создавать многоцветные 3D-принты без двойного экструдера. В скрипте можно настроить слой, втягивание и вывод нити.

Как это сделать подробно, какие ошибки могут возникнуть и как их решить, вы узнаете из этого пошагового руководства.

Шаг 1. Найдите слой для изменения в предварительном просмотре

Вероятно, у вас есть точное представление о том, где должно произойти изменение цвета вашего объекта. Высота для этого указана в скрипте смены филамента по слоям.

Чтобы найти правильный слой, сначала нужно разрезать объект без скрипта, а затем искать правильный слой в предварительном просмотре.

Вы можете вручную переключаться между слоями с помощью ползунка справа.

Выбранный слой будет напечатан новой нитью после замены нити.

Шаг 2: Расширения > Постобработка > Изменить G-код

Настройки для скриптов находятся не в обычных настройках печати, а в строке меню Cura.

Расширения > Постобработка > Изменить G-код

Различие между настройками печати и сценариями делает очевидным, что сценарии следует создавать после фактических параметров печати. Они вставляют специальные события в печать и не изменяют фактические настройки печати.

Шаг 3. Добавьте сценарий смены нити

В открывшемся окне вы можете добавлять различные скрипты. Сценарий замены нити также можно найти в раскрывающемся меню.

С помощью этого меню вы также можете вставлять несколько скриптов один за другим. Также возможно реализовать несколько смен нитей за один отпечаток. Вставьте сценарий смены нити для каждой смены нити. Единственная настройка, которую вам нужно изменить, — это номер слоя.

Шаг 4. Настройте параметры скрипта

На этом шаге вы должны настроить скрипт. Самым важным параметром, конечно же, является количество слоев, при котором должна быть напечатана новая нить.

Слой: Здесь вы определяете слой, на котором будет использоваться новая нить. После предыдущего слоя вставляется пауза и происходит смена нити.
Возможна также вставка нескольких смен нити через один и тот же скрипт. Вы можете перечислить различные номера слоев один за другим через запятую. Затем тот же сценарий будет повторен для этих номеров слоев.

Использовать конфигурацию прошивки. Некоторые 3D-принтеры оснащены прошивкой, которая позволяет менять нить во время печати через меню. Этот флажок позволяет вам использовать эту встроенную замену нити и выполнять ее на определенном слое.
Если вы активируете этот флажок, настройки для «Первоначальное втягивание», «Позже Расстояние отвода' и для положений X и Y исчезают. Затем эти настройки контролируются прошивкой.

Начальное втягивание: здесь вы указываете длину втягивания нити в миллиметрах. Время этого втягивания наступает сразу после последнего слоя перед тем, как печатающая головка переместится к месту смены нити. Это предотвратит появление лишней нити на конце последнего слоя.

Расстояние последующего отвода. С помощью этого параметра вы указываете, насколько экструдер должен отводить нить. Это значение зависит от того, какой 3D-принтер вы используете. Если вы хотите полностью вытолкнуть нить, это значение должно быть не меньше длины между кончиком сопла и входным отверстием экструдера.

Положение X/Y: здесь вы можете установить координаты XY для печатающей головки. Как только начинается пауза для замены нити, печатающая головка перемещается в это положение для замены нити.
В большинстве случаев используется нулевое положение по умолчанию. Однако для некоторых принтеров другое положение может оказаться более полезным для более удобной замены нити.

Позиция Z (относительная): Как и в случае с координатами XY, вы также можете указать координату Z, по которой должна происходить смена нити. Имейте в виду, однако, что это значение рассчитывается относительно. Если вы введете 0 мм, печатающая головка не переместится на Z = 0 мм, а останется на той высоте, на которой она была. Если вы введете 1 мм, он сдвинется на один миллиметр вверх и так далее.

Шаг 5. Разрежьте объект еще раз

После того, как вы запрограммировали сценарий, вы можете закрыть окно. Теперь вам нужно снова разрезать объект, чтобы применить изменения.

После того как вы запрограммируете сценарий, вы увидите соответствующее уведомление в правом нижнем углу интерфейса Cura.

Как и в случае с настройками печати, сценарии сохраняются при выходе из программы и сохраняются при ее запуске. Чтобы вы случайно не воспользовались скриптом снова, эта подсказка хорошо видна.

Шаг 6. Начните печать

После того, как вы нарезали объект и отправили его на 3D-принтер, вы можете начать печать.

Однако не следует слишком долго упускать из виду 3D-принтер, чтобы не пропустить замену нити. Если 3D-принтер будет ждать вас слишком долго, уже напечатанный материал может слишком сильно остыть. Однако с PLA это обычно не проблема.

Шаг 7. Замените нить и продолжите печать

После запуска сценария и извлечения нити из 3D-принтера вы можете установить новую нить и продолжить печать.

Если вы все сделали правильно, изменение цвета или материала должно быть бесшовным. Если нет, есть несколько способов оптимизации.

Устранение неполадок — замена нити Cura

Хотя настройки сценария смены нити в Cura довольно просты, они часто могут приводить к осложнениям. После того, как вы найдете правильные настройки для своего принтера, может потребоваться от 1 до 3 тестовых отпечатков.

Я бы определенно посоветовал вам попрактиковаться в замене нити на небольших тестовых объектах. Небольшие тестовые объекты, которые занимают всего несколько минут и несколько граммов нити, помогут вам не испортить более крупный отпечаток.

Прошивка не распознает сценарий:
С более старыми 3D-принтерами встроенная прошивка может не распознавать команду M600 сценария. Тогда принтер просто проигнорирует скрипт и продолжит печать без остановки.
Чтобы проверить, знает ли прошивка вашего 3D-принтера команду, вы можете открыть файл конфигурации и найти команду M600. Если он появится, он будет реагировать на сценарий. Если вы его не найдете, принтер просто продолжит печатать, как будто скрипт не был запрограммирован.
Если его нет, вам следует обновить прошивку. Более новые версии обычно совместимы.

Капли, прыщи и избыток материала в точке перехода:
Одной из наиболее распространенных ошибок при замене нити является избыток материала в точке перехода. Основная причина этой ошибки — избыточное давление в сопле, которое не было сброшено должным образом.
Лучший способ сбросить это давление — вытянуть нить из сопла. Есть два момента времени, в которые может появиться капля: в начале и в конце паузы. Для начала паузы в скрипте есть настройка 'Начальное отведение'.
Если блоб происходит в начале, здесь нужно установить значение немного выше, чтобы нить втягивается дальше и не может вырваться непреднамеренно. Если капля появляется в конце паузы, вы должны убедиться, что после замены нити нить не выйдет из сопла, прежде чем принтер снова начнет работать.

Деформация или плохая адгезия печатной платформы:
Обычно температура печатной платформы во время выполнения сценария должна быть постоянной. Однако были случаи, когда по какой-либо причине температура была установлена ​​на 0 °C, что приводило к значительному охлаждению печатной платформы во время замены нити.
Когда это происходит, это может быстро привести к деформации или повреждению всего объекта. отделить от печатной формы. Если это произойдет с вами, вам следует обновить прошивку, так как этого не должно происходить.
В противном случае вы можете использовать сценарий «Пауза на высоте» вместо сценария смены нити. Там вы можете задать температуру вручную.

Сдвиг слоя (сдвиг в направлении X/Y):
Эта проблема сильно зависит от используемого 3D-принтера. На некоторых принтерах при смене нити во время печати вы можете столкнуться с большим смещением слоев, чем на других. Все зависит от того, насколько легко перемещать шаговые двигатели вручную во время работы.
Если вы случайно измените положение печатающей головки по осям XY при замене нити, это напрямую повлияет на 3D-объект. 3D-принтер не заметит смещения и продолжит печатать, как ни в чем не бывало. В результате все слои, которые печатаются после смены филамента, смещаются именно на это смещение.
Поэтому следует следить за тем, чтобы при замене филамента вы не двигали печатающую головку.

Сдвиг по высоте (сдвиг в направлении Z):
Эта ошибка в основном такая же, как сдвиг слоя, только в направлении Z. Однако проявляется он совсем по-разному и иногда его трудно идентифицировать. Если вы случайно сместили платформу печати или ось X с печатающей головкой в ​​направлении Z во время паузы, печать начнется слишком высоко или слишком низко после паузы.
В крайних случаях объект может быть отделенным от печатной платформы соплом, потому что сопло начинается слишком низко и сталкивается с ним. С другой стороны, также может случиться так, что сопло внезапно снова начнет печатать в воздухе, когда произошло смещение в положительном направлении Z. Тогда либо между слоями остается небольшой зазор, либо получаются знаменитые спагетти из нити, и все равно приходится начинать сначала.

Плохая адгезия слоев:
Плохая адгезия между отдельными слоями до и после паузы может быть вызвана не только случайным смещением оси Z. Во время смены филамента последний напечатанный слой остывает. Поэтому новый слой приходится печатать на холодном материале. Это может привести к плохой адгезии с некоторыми материалами. Затем вы можете попробовать повысить температуру для нового слоя на несколько градусов.
Плохая адгезия до и после паузы также распространена при смене материала, а не только цвета. Существуют комбинации материалов, которые плохо сцепляются друг с другом. В любом случае убедитесь, что вы снова начинаете печатать при правильной температуре для новой нити.

На этой странице описываются поддерживаемые RepRapFirmware G-коды, изначально основанные на информации со страницы G-кода вики RepRap.

G-коды — это широко используемый язык управления машинами. Они доступны для чтения и редактирования человеком. На этой странице описаны поддерживаемые RepRapFirmware G-коды.RepRapFirmware следует философии «G-code везде», по сути взаимодействие пользователя или внешней программы с прошивкой должно осуществляться через G-коды. Существуют G-коды для всех поддерживаемых входных данных управления и конфигурации, а также информация о состоянии и отладке.

G-коды RepRapFirmware изначально были основаны на информации со страницы G-кода вики RepRap. На этой странице перечислены некоторые G-коды, которые не реализованы в RepRapFirmware. Более подробную информацию можно найти на странице нереализованных G-кодов.

Введение

Типичный фрагмент G-кода, отправляемый на машину с RepRapFirmware, может выглядеть следующим образом (значение этих (и других) кодов объясняется ниже на этой странице.)

G-код повсюду

Философия дизайна RepRapFirmware заключается в том, что «G-код везде», что это означает, объясняется в этом подразделе

G-код может быть получен из нескольких источников:

Во всех случаях G-код может

  • вводится пользователем по одной строке за раз, например, во время настройки или тестирования
  • отправляться пользовательским интерфейсом (Pronterface, веб-интерфейс или PanelDue) в ответ на нажатие пользователем кнопок
  • исходить из макросов, которые запускаются при запуске, при определенных событиях (например, при возникновении ошибок) или вызываются пользователем или пользовательским интерфейсом.
  • быть из файла g-кода, который обычно хранится на встроенной или внешней SD-карте.

Ключевое отличие от других прошивок для 3D-принтеров заключается в том, что для настройки принтера не используется отдельный набор команд (кроме G-кодов). С этой целью RepRapFirmware имеет большую коллекцию g-кодов конфигурации, которые позволяют контролировать поведение машины. Некоторые примеры использования этих G-кодов можно найти на этих вики-страницах:

Преимущество «G-кода повсюду» заключается в том, что одни и те же команды могут быть отправлены из любого источника G-кода, исходить от пользователя, пользовательского интерфейса, макроса или файла, и они будут генерировать одинаковый ответ от встроенного ПО. . Это значительно упрощает и упрощает настройку встроенного ПО и работу с ним.

Структура G-кода

В этом разделе объясняются элементы, из которых состоит команда G-кода.

Командный порядок

Общее правило порядка команд в config.g: не пытайтесь изменить параметры чего-либо, что вы еще не создали и не существует по умолчанию.

  • Не ссылайтесь на какие-либо буквы осей или номера экструдеров, которые вы не создали с помощью M584 (за исключением того, что XYZ уже существует по умолчанию).
  • Не ссылайтесь ни на один датчик температуры в M950 или M106, пока не создадите его с помощью M308.
  • Не ссылайтесь на нагреватель в M307, M140, M141, M143 или M563, пока не создадите его с помощью M950.
  • Не ссылайтесь на веер в M106, пока не создадите его с помощью M950.
  • Не обращайтесь к инструменту в G10/M568, пока не создадите его с помощью M563.

Комментарии

Комментарии G-кода начинаются с точки с запятой и заканчиваются в конце строки:

Кроме того, комментарии можно заключать в квадратные скобки, но они должны начинаться и заканчиваться на одной строке:

Комментарии и пробелы будут игнорироваться RepRapFirmware при выполнении G-кода

Поля

G-код RepRap – это список полей, разделенных пробелами или разрывами строк. Поле можно интерпретировать как команду, параметр или любое другое специальное назначение. Он состоит из одной буквы, за которой непосредственно следует число, или может быть только отдельной буквой (Флаг). В письме содержится информация о значении поля (см. список ниже в этом разделе). Числа могут быть целыми (128) или дробными числами (12,42), в зависимости от контекста. Например, координата X может принимать целые числа (X175) или дроби (X17,62), но выбор номера экструдера 2,76 не имеет смысла. В этом описании числа в полях представлены nnn в качестве заполнителя.

В RepRapFirmware 3.01 и более поздних версиях вместо числа можно использовать выражение, заключенное в фигурные скобки, например . Подробнее о поддерживаемых типах выражений см. в разделе Метакоманды GCode.

В RepRapFirmware за некоторыми параметрами может следовать более одного числа, разделяя их двоеточием. Обычно это используется для указания параметров экструдера с одним значением для каждого экструдера. Если для каждого экструдера указано только одно значение, то это значение применяется ко всем экструдерам.

< td>Innn< td>Номер строки. Используется для запроса повторной передачи в случае ошибок связи. Необязательно
БукваЗначение
ГнннСтандартная команда G-кода, например, перемещение в точку
MnnnКоманда, определяемая RepRap, например, включение охлаждающего вентилятора
TnnnВыберите инструмент nnn. В RepRap инструмент обычно связан с соплом, которое может питаться одним или несколькими экструдерами.
SnnnПараметр команды, например время в секундах; температуры; напряжение для отправки на двигатель
PnnnПараметр команды, например, время в миллисекундах; пропорциональная (Kp) в настройке PID
XnnnКоордината X, обычно для перемещения. Это может быть целое или дробное число.
YnnnКоордината Y, обычно для перемещения. Это может быть целое или дробное число.
ZnnnКоордината Z, обычно для перемещения. Это может быть целое или дробное число.
U,V,WКоординаты дополнительных осей
Параметр - X-смещение в дуговом движении (Еще не реализовано в RepRapFirmware); интеграл (Ki) в настройке ПИД; инверсия сигнала
JnnnПараметр — смещение по оси Y при движении по дуге (еще не реализовано в RepRapFirmware)
DnnnПараметр - используется для диаметра; производная (Kd) в настройке PID; номер привода
HnnnПараметр — используется для номера нагревателя в настройке PID
FnnnСкорость подачи в мм в минуту. (Скорость движения печатающей головки)
RnnnПараметр - используется для температур
Qnnn< /td>Параметр - в настоящее время не используется
EnnnДлина нити для прохождения через экструдер. Это точно так же, как X, Y и Z, но по длине нити накала. Если инструмент имеет более одного привода экструдера, поддерживается Ennn:nnn:nnn и т. д., чтобы можно было напрямую управлять отдельными параметрами каждого из них
Nnnn
*nnnКонтрольная сумма. Используется для проверки ошибок связи. Необязательно

Чувствительность к регистру

Исходный стандарт NIST GCode требует, чтобы интерпретаторы gcode не учитывали регистр, за исключением символов в комментариях. Однако не все прошивки для 3D-принтеров соответствуют этому, а некоторые распознают только заглавные буквы команд и параметры.

RepRapFirmware версии 1.19 и выше нечувствителен к регистру, за исключением символов в строках в кавычках. RepRapFirmware версии 1.18 и более ранних поддерживает только прописные буквы для букв команд и параметров.

Строки в кавычках

В RepRapFirmware строки в кавычках разрешены везде, где ожидается строковый параметр. Это позволяет именам файлов, паролям WiFi и т. д. содержать пробелы, точки с запятой и другие символы, которые в противном случае были бы запрещены. Символы двойных кавычек используются для разделения строки, и любой символ двойных кавычек в строке должен повторяться.

К сожалению, многие программы отправки gcode преобразуют все символы в верхний регистр и не предоставляют никаких средств для отключения этой функции. Таким образом, в строке, заключенной в кавычки, символ одинарной кавычки используется в качестве флага для перевода следующего символа в нижний регистр. Если вы хотите включить в строку символ одинарной кавычки, используйте два символа одинарной кавычки для представления одного символа одинарной кавычки.

Пример: чтобы добавить SSID MYROUTER с паролем ABCxyz;" 123 в список сетей WiFi, используйте команду:

или если вы не можете отправлять символы нижнего регистра:

Проверка

Это дополнительная функция, которая редко используется, поскольку файлы g-кода обычно распечатываются со встроенной SD-карты.

N: номер строки

Если присутствует, номер строки должен быть первым полем в строке. Для G-кода, хранящегося в файлах на SD-картах, номер строки обычно не указывается.

Если проверка поддерживается, микропрограмма ожидает, что номера строк будут увеличиваться на 1 в каждой строке, и если этого не происходит, это помечается как ошибка. Но вы можете сбросить счетчик с помощью M110 (см. ниже).

*: Контрольная сумма

Если присутствует, контрольная сумма должна быть последним полем в строке, но перед комментарием. Для G-кода, хранящегося в файлах на SD-картах, контрольная сумма обычно не указывается.

Если проверка поддерживается, прошивка RepRap сравнивает контрольную сумму с локально вычисляемым значением и, если они отличаются, запрашивает повторную передачу строки с заданным номером.

Метод

Пример: N123 [. G-код здесь. ] *71

Прошивка проверяет номер строки и контрольную сумму.

Контрольная сумма "cs" для строки G-кода "cmd" (включая номер строки) вычисляется путем исключения байтов в строке до символа * и без него следующим образом:

и значение добавляется в виде десятичного целого числа к команде после символа *.

Условное выполнение, циклы и другие командные слова

прервать elif else, если установлено var while

Подробнее об этих командах см. в разделе Метакоманды GCode.

Строка, не начинающаяся с одного из этих ключевых слов, должна начинаться с командной буквы G, M или T или быть пустой, за исключением пробелов и комментариев.Исключение: в режиме ЧПУ или лазера, если строка не начинается с команды G, M или T, но, тем не менее, имеет другие поля, а предыдущая строка, которая включала команду, была командой G0, G1, G2 или G3, тогда предыдущая команда будет повторена со значениями из новых полей. Это необходимо для поддержки GCode, сгенерированного для станков с ЧПУ.

Несколько команд в одной строке

RepRapFirmware позволяет включать несколько G- и M-команд в одну строку. Каждое вхождение G или M в строке, которой предшествует пробел или символ табуляции и не находится внутри строки в кавычках или метакоманды, запускает новую команду. В RRF 3.2 и более поздних версиях пробел или символ табуляции не требуются.

Важно: команда, которая вызывает файл макроса, должна быть последней командой в этой строке GCode, потому что любые последующие команды в той же строке не будут выполняться.

Буферизация

RepRapFirmware хранит некоторые команды в кольцевом буфере для выполнения. Это означает отсутствие (заметной) задержки при подтверждении команды и передаче следующей. В свою очередь, это означает, что последовательности отрезков могут быть построены без задержки между одним и другим. Как только одна из этих буферизованных команд получена, она подтверждается и сохраняется локально. Если локальный буфер полон, то подтверждение откладывается до тех пор, пока не освободится место для хранения в буфере. Хост-программы ПК полагаются на это для управления потоком, когда электроника контроллера не поддерживает управление потоком на уровне устройства.

RepRapFirmware буферизует только команды перемещения от G0 до G3. Все остальные команды G, M или T не буферизируются. Когда M555 P6 используется для выбора режима совместимости с nanoDLP, никакие команды не буферизуются.

При получении небуферизованной команды она сохраняется, но не подтверждается хостом до тех пор, пока буфер не будет исчерпан, а затем команда не будет выполнена.

Имена файлов и пути

Файлы gcode системного макроса ожидаются в "0:/sys/". См. M505, чтобы узнать, как переключаться между несколькими конфигурациями

Файлы gcode пользовательского макроса ожидаются в "0:/macros/"

Файлы gcode задания ожидаются в "0:/gcodes/" или в его подкаталоге.

"0:/ — корень встроенной SD-карты в автономном режиме или эквивалентная папка в режиме SBC (/opt/dsf/sd/)

Поддерживаются длинные имена файлов (например, формат длиннее 8.3), поддерживаются имена файлов с пробелами.

Полные пути, включая все каталоги и подкаталоги, не должны превышать 120 символов.

считается как 30 символов

Редактирование в реальном времени

Как правило, любую команду G или M можно отправить в любое время. Это означает, что все настройки можно менять «на лету», то есть во время печати. При этом не учитываются логические соображения или индивидуальные предпосылки для отдельных команд. Например, отправка новых значений для M566 «рывок», M201 «ускорение» или M203 «максимальная скорость» во время печати — отличный способ настроить эти значения. Однако, хотя теоретически возможно изменить M563 «определить инструмент» во время печати, вероятно, это не очень хорошая идея.

Читайте также: