Gcode для 3д принтера чем открыть
Что такое G-code?
G-code представляет собой программный язык для машин и станков со встроенным модулем числового программного управления.
Он был разработан компанией Electronic Industries Alliance в первой половине 1960-х годов. Программы, созданные с использованием этого кода, отличаются жесткой и предельно последовательной структурой. В G-code отсутствуют циклы, функции и логические команды, его возможности позволяют настроить оборудование только таким образом, чтобы оно исполняло лишь те действия, которые были заложены в компьютер.
G-code для 3D-принтеров может быть сформирован специальной программой – слайсером – посредством предварительной загрузки в нее 3D-модели и выставления требуемых параметров печати.
G-code в работе используют подавляющее большинство популярных принтеров. Его популярность обусловлена простотой использования и возможностью генерировать код в любых доступных слайсерах, в том числе Cura, Chitubox, Simplify3D, Slic3er и др. Редактировать написанную программу можно в обычном блокноте или NotePad++, который доступен всем пользователям операционной системы Windows.
Но бывают случаи, когда печатные устройства работают на зашифрованном G-code, например – Zortrax, использующий собственный слайсер, который генерирует файл в расширении Z-code.
Созданные таким образом файлы нельзя открыть с помощью стандартных программ и сторонних слайсеров.
Независимо от типа шифрования, код состоит из строк, каждая из которых при этом является кадром. Для каждого кадра или группы кадров разработчики прописывают комментарии, которые выделяются в ленте кода знаком точки с запятой.
Основные команды языка
Все команды языка, относящиеся к основным, начинаются с буквы G. Они ответственны за следующие действия:
- Линейное и круговое перемещение рабочего устройства по заданной траектории с установленной скоростью.
- Выполнение стандартных операций, к которым относятся запуск вентиляторов, нагревательных элементов и др.
- Установка параметров и системы координат.
Дополнительными считаются команды, название которых начинается с М или Т. Команды М являются вспомогательными, технологическими. Они отвечают за использование нагрева, охлаждения, считывания параметров и их последующего вывода на дисплей печатного устройства.
Команды T отвечают за смену используемого инструмента или переход от одного экструдера к другому.
Каждая строка (кадр) G-code несет в себе зашифрованную конкретную команду, а также набор характеристик, который определяет действие оборудования: время работы приводов, количество подаваемого материала, его нагрев, и др.
Разработка и популяризация специальных программ-слайсеров помогла оптимизировать и сделать автоматическим процесс программирования. Код, полученный с помощью современного программного обеспечения, как правило, не требует корректировки, а если и требует, то изменения разработчику приходится вносить не в весь код, а в несколько строк, корректируя один или несколько параметров.
Принцип работы ПО для 3D-принтера
Каждая из строк G-code является командой, которую должно выполнить печатное устройство. Принцип работы программного обеспечения для 3D-принтеров заключается в разбивке 3D-моделей на множество слоев, расположенных в горизонтальной плоскости.
Каждый из них, независимо от способа создания, в дальнейшем проходит еще одну разбивку на множество линий разной толщины и ширины, параметры которых задает разработчик.
К примеру, ширина линии для 3D-принтера, работающего на технологии FDM, должна соответствовать диаметру сопла, а высота – толщине слоя выдавливаемого материала.
Каждый вектор в траектории движения G-code может быть описан исходя из декартовой системы координат, по которым движется экструдер. Также в этом файле дополнительно указываются сопутствующие параметры: нагрев, скорость движения экструдера, скорость подачи материала и др.
Когда использовать G-код?
Редактирование G-кода, составленного слайсерами, целесообразно в следующих случаях:
- При внесении точечных правок в код.
- Для установки специальных настроек, в том числе изменения температуры нагрева экструдера во время печати и др.
- Для решения возникших проблем. Для их устранения разработчики могут добавить специальную команду, например, включить обдув или увеличить температуру нагрева материала.
Команды G-code
К самым популярным G командам относятся:
- G0 – применяется для определения холостого хода, не предусматривает работы инструмента.
- G1 – команда определяет координированное движение по осям X, Y, Z, E .
- G4 – применяется в случаях, когда необходимо обозначить паузу и установить ее время в секундах.
- G28 – команда ответственна за возврат головки экструдера в начало системы координат.
- G90 – применяется при необходимости использования абсолютных координат.
- G91– команда, применяемая для использования относительных координат.
- G92 – определяет текущую заданную позицию.
Команды M
Самая многочисленная группа, включающая команды, ответственные за управление печатным устройством.
Как редактировать G-код?
Для редактирования G-code могут использоваться самые разнообразные онлайн- и офлайн-программы. Самыми популярными при этом являются:
- Notepad++. Это бесплатная программа, доступная для операционной системы Windows, которая позволяет настроить выделение синтаксиса G-code.
- gCodeViewer. Приложение облачного типа, оптимизированное для создания команд, предназначенных для 3D-принтеров. Специфической функцией программы является возможность послойного просмотра изделия в 2D-режиме.
- Simplify3D. Слайсер, который имеет собственный редактор G-code. При его использовании пользователь получает доступ к возможности создания автоматических сценариев.
Знание языка программирования G-code необходимо каждому владельцу 3D-принтера. Экспериментируя с ручной настройкой слайсеров, пользователь может получить любой результат, исходя из собственного опыта работ с разнообразными материалами.
В этой статье разберем что представляет из себя Gcode для 3d принтеров. Детально рассмотрим структуру, виды команд, принцип формирования кадров.
Итак, Gcode — это язык программирования для машин и станков с числовым программным управлением. Для 3d принтеров он формируется программой слайсером, предварительно загрузив в нее 3d модель и задав необходимые параметры печати.
По какому же принципу работает ПО для 3d печати?
Принцип по которому работает любой 3d принтер – это разбиение 3d модели на множество горизонтальных слоев. Каждый слой вне зависимости от способа его формирования (экструдером FDM принтер, лазером SLA, DLMS) разбивается на множество линий определенной толщины и ширины или формируется в виде растрового изображения если это DLP принтер. Например ширина такой линии для FDM 3d принтера – это диаметр сопла, высота это толщина слоя. Для того чтобы задать экструдеру маршрут необходимо сформировать своего рода карту. Простыми словами – этот набор команд и есть gcode, а формируется он автоматически, программой сласером типа Cura, Slick3r и т.д., при подгрузке в нее 3d модели .
Каждый вектор траектории в gcode описывается декартовыми координатами, по которым и перемещается экструдер. В этом файле еще описываются такие параметры как нагрев, скорость перемещения, скорость выдавливание пластика и т.д. Вообще Gcode создавался для ЧПУ станков, он имеет множество различных команд и функций. Для этих устройств G-код на много сложнее, нежели для 3d принтеров. Для sla и dlp 3d принтеров слайсеры устроены немного по другому принципу, т.к. sla иcпользую лазеры, которые управляются гальванометрами с зеркалами, а dlp — проекторы засвечивают каждый слой пятном созданным в виде растрового изображения.
Немного истории, gcode был создан компанией Electronic Industries Alliance ещё в 1960-х годах. В дальнейшем распространился по всему как стандарт для применения во всех устройствах с ЧПУ.
Итак, ваш 3 d принтер – это устройство с числовым программным управлением. Работает он в соответствии с командами которые описаны в запушенном Gcode .
Файл содержащий код имеет расширение. gcode и условно его структура выглядит следующим образом:
1. Подготовительные операции. Здесь подготавливается 3 d принтер к печати, запускаются нагрев стола, экструдера, устанавливается параметры системы координат, включается охлаждение, перемещение головки в нулевую точку отсчета, выдавливается тестовая порция пластика и другие установленные параметры.
2. Непосредственно 3 d печать объекта.
3. Заключительный этап. Перемещение экструдера и стола в исходное положение, отключение нагрева всех элементов 3 d принтера и т.д.
Весь код состоит из строк, каждая из них называется кадром. При этом для каждого кадра или группы кадров, для того что бы было понятно что будет выполняться можно прописать комментарии которые понятны только разработчикам и начинаются они со знака точка с запятой ; , например:
Ну а прошивка (машина воспринимает только 0 и 1) работает только по командам которые можно разделить на:
1. G – Основные (называемые в стандарте подготовительными) к оманды которые выполняют перемещение от точки к точке по прямой линии, в высоту или заданной дуге окружности определенного радиуса. Т.е. позиционирование экструдера или инструмента в пространстве.
2. М – Вспомогательные (технологические ) команды. Различные команды которые включают рабочие элементы нагрев, охлаждение, передача, считывание параметров и их вывод на дисплей и др. Это самая многочисленная группа.
3. T — смена инструмента т.е. в нашем случае переход от с первого на второй экструдер T 0, T 1.
Ниже идут параметры которые необходимо передать команде для ее выполнения. Это конкретные числовые значения:
1. X , Y , Z – координаты для позиционирования инструмента в пространстве. Могут быть целыми, дробными, отрицательными, положительными.
2. F — скорость движения печатающей головки в мм/мин.
3. S – значение температуры, время в секундах, напряжение
4. P – параметры в миллисекундах для настройки PID -контроллеров
5. Е – кол-во пластика в мм. Зависит от указанного диаметра сопла и диаметра нити. В Gcode устанавка скорость работы мотора подающий пластик в самом начале с помощью параметра F 200 [G1 F200 E10], так же в настройках самого 3 d принтера, можно увеличить обороты двигателя в %. До обнуления в каждом кадре указывается общее кол-во в мм начиная сначала. Может принимать отрицательные значения если необходимо втягивание нити.
6. H — номер нагревателя. H 0 — Для стола, H 1 — H … для экструдера и т.д.
7. R – радиус дуги
8. D – диаметр нити.
Основные команды G , которые применяются для управления 3 d принтерами:
- G0 — Холостой ход, без выдавливания пластика. Например [G0 F5400 X92.570 Y102.081 Z0.300] – Перемещение в точку с координатами X92.570 Y102.081 Z0.300, со скоростью 5400 мм/мин.
- G1 — Прямолинейное движение по осям X Y Z, с выдавливаем пластика Е в мм. Например [G1 F1200 X93.754 Y101.488 E0.0660] – это координаты точки куда необходимо перемеcтиться экструдеру, со скоростью 20 мм/с, при этом израсходуется 0.066 мм нити.
- G2 и G3 – перемещение по дуге. Эта команда практически не применяется если ее не задать вручную, т.к. периметр всегда представляет из себя ломанную (поверхность состоит из треугольников), а заполнение формируется прямыми линиями. Для этой команды необходимо задать R радиус окружности дуги.
- G4 — Пауза в секундах в S – в сек, P – миллисекундах. [G4 S15] — Останавливаемся на 15 мин.
- G21 – значения единиц измерения в мм. Устанавливается один раз в подготовительной части.
- G28 — Команда Home — паркуем головку. [G28 Y0 X0 Z0] – перемещение экструдера в указанные координаты.
- G90 — Использовать абсолютные координаты . В этой команде отсчет производиться от начально нулевой точки декартовой системы координат. Устанавливается один раз в подготовительной части.
- G91 — Использовать относительные координаты . В этой команде отсчёт производится от последней точки траектории перемещения.
- G92 — Установить текущую заданную позицию.
Основные команды M которые применяются для управления 3 d принтерами:
Обязатльные:
Команды для SD карты
Команды для экструдер а:
- M82 — Установить экструдер в абсолютную систему координат
- M83 — Установить экструдер в относительную систему координат
- M104 — Нагрева экструдера до определенной температуры [ M104 S210] – нагрев до 210 град.
- M105 — Получить текущую температуру экструдера [ M105 S2]
- M106 — Включение вентилятора обдува детали [ M106 S255] — мощность 100% , [ M106 S128]- мощность 50%
- M107 — Выключение вентилятора обдува детали
- M109 — Нагреть и удерживать температуру экструдера [M109 S210] – температура 210 град
Управление стол для 3d печати:
- M140 — Установить температуру стола [ M140 S75] – температура 75 град.
- M190 — Нагреть стол и удерживать температуру [M190 S70] — температура 70 град
PID (параметры для регуляторов температуры):
- M301 — Записать PID параметры в EEPROM [M301 H1 P1 I2 D3]
- где: H0 – стол, H1 – экструдер – это обязательные параметры.
- M302 — Разрешить холодное выдавливание [M302 P1].
- M303 — Запустить процесс PID калибровки [M303 E-1 C8 S110]
- где: E-1 – стол, E0 – хотэнд, C8 – количество попыток, S – температура.
- M304 – Задать PID параметры для стола [M304 P1 I2 D3]
EEPROM – внутренняя память микроконтроллера (не обнуляется при выключении)
- M500 — Сохранить параметры в EEPROM
- M501 — Прочитать параметры из EEPROM
- M502 — Сброс параметров EEPROM
Параметры для пластиковой нити:
- M200 — Задать диаметр нити [M200 D1.75] – диаметр 1.75
- M600 – Заменить пластик.
А теперь разберем Gcode сформированный программой Ultimaker — Cura , 3 d модель 3 dbenchy с двумя экструдерами. Поддержки печатаем вторым экструдером.
Приложено 2 скриншота, с основными настройками и продвинутыми:
Сопоставить параметры Cura и исходных записей Gcode :
M 190 S 70.000000 – температура стола
M 104 T 1 S 210.000000
M 109 T 0 S 210.000000 — температура первого экструдера 210
M 109 T 1 S 210.000000– температура второго экструдера 210
Дальше описываются параметры первого и второго экструдера + комментарии:
Выбираются единицы измерения, система координат, точки начального отсчета.
M 107 – включается вентилятор.
Дальше идет формирование первого слоя LAYER 0
G0 F5400 X92.570 Y102.081 Z0.300 – Холостой ход со скоростью 90 мм/с. Обратите внимание на продвинутые настройки.
G1 F1200 X93.754 Y101.488 E0.06606 – скорость первого слоя 20 мм/с, расход нити на этот кадр 0.066 мм.
Ниже указывается скорость для структур заполнения:
G1 F4800 E18.03179
G1 F1200 X134.460 Y114.661 E18.06728
G0 F5400 X133.848 Y115.470
Смена экструдера для печати поддержек
Заключительный этап 3 d печати: Перемещение экструдера и стола в исходное положение, отключение нагрева всех элеменетов 3 d принтера и т.д.
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
GCODE: Плюшки от ПавлушкиПосле написания предыдущей статьи ко мне стали поступать вопросы на поводу G-CODE.
Решил написать пост об основах G-CODE.
И так приступим …
Не для кого не секрет, что наш с Вами 3D принтер является простым ЧПУ станком (CNC), который просто выполняет команды оператора.
Чтобы мы с принтером понимали друг друга, умными людьми в начале 1960 годов был придуман специальный язык под названием «G-CODE» (G-код).
Программа, написанная с использованием G-кода, имеет жесткое строение.
Все команды управления объединяются в кадры - состоящие из одной или более команд.
Кадр завершается символом перевода строки (CR/LF).
Порядок команд в кадре строго не оговаривается, но традиционно предполагается, что первыми указываются подготовительные команды, затем команды перемещения, затем выбора режимов обработки и технологические команды.
Если говорить коротко, то наш ПК через USB, просто посылают команды на порт принтера (микроконтроллера), а принтер без прикословно их выполняет.
Немного забегая вперед скажу, что G-код для принтера местами отличается от привычного G-кода. Какие-то команды были переделаны под нужды принтера, какие-то были удалены, какие-то вообще не используются, но в целом все очень похоже.
Описание команд будет производится для прошивки MARLIN, возможно будет работать и на других прошивках.
Будут рассмотрены самые только самые основные команды (рабочий минимум), в поисках экзотики, можно пройти по ссылке.
Сами команды делятся на группы:
G - Подготовительные (основные) команды;
М - Вспомогательные (технологические) команды.
Эти команды имеют параметры.
X - Координата точки траектории по оси X [G0 X100 Y0 Z0]
Y - Координата точки траектории по оси Y [G0 X0 Y100 Z0]
Z - Координата точки траектории по оси Z [G0 X0 Y0 Z100]
E - Координата точки выдавливания пластика [G1 E100 F100]
P - Параметр команды [M300 S5000 P280]
S - Параметр команды [G04 S15]
F - Параметр команды, подача (скорость) [G1 Y10 X10 F1000]
G0 - Холостой ход, без работы инструмента [G 0 X 10]
G1 - Координированное движение по осям X Y Z E [G 1 X 10]
G4 - Пауза в секундах [G4 S15]
G28 - Команда Home - паркуем головку [G28 Y0 X0 Z0]
G90 - Использовать абсолютные координаты [G90]
G91 - Использовать относительные координаты [G91]
G92 - Установить текущую заданную позицию [G92]
Пояснение:
Относительные координаты - это координаты относительно текущего положения головки.
На пример, если головка находиться в положении X10 Y10, то при подаче команды G91
G1 X10 F1000, произойдет смещение головы на 10 мм по оси Х на скорости 1000.
Эту команду можно делать много раз, до достижения «софтового» ограничение в прошивке.
Абсолютные координаты - это координаты, строго привязанные к рабочей области.
При выполнении команды G90 G1 X10 F1000 - головка сместиться в координату X10 на скорости 1000.
Команда выполниться только один раз.
Обычные команды
M0 - Сделать паузу и ожидать нажатия кнопки на LCD дисплеи (работает если в прошивку установлен параметр ULTRA_LCD) [G0 X10 Y10 Z10 M0]
M17 - Подать ток на двигатели (двигатели руками не вращаются)
M18 - Убрать ток с двигателей (двигатели можно вращать руками, аналог M84)
M42 - Управление контактами ARDUINO MEGA 2560 [M42 P4 S255]
M80 - Включить питание, только для ATX - блок питания
M81 - Выключить питания, только для ATX - блок питания
M84 - Выключение всех осей (моторов после простоя) [M84 S10]
М112 - Экстренная остановка
M114 - Получить текущие координаты
M115 - Получить версию прошивки
M119 - Получить статус концевиков
M300 - Проиграть звук [M300 S5000 P280]
Команды SD карты
M20 - Прочитать SD карту (прочитать список файлов)
M21 - Инициализировать SD карту
M22 - Использовать SD карту
M23 - Выбрать файл с SD карты [M23 filename.gcode]
M24 - Начать/возобновить печать с SD карты
M25 - Пауза печати с SD карты
M26 - Установить позицию SD карты в байтах [M 26 S 12345]
M27 - Узнать статус печати с SD карты
M28 - Записать файл на SD карту [M 28 filename . gcode]
M29 - Закончить записать файла на SD карте
M30 - Удалить файл с SD карты [M 30 filename . gcode]
M31 - Получить значение, сколько прошло времени с последнего M109
M928 - Логирование на SD карту [M 928 filename . gcode]
M82 - Установить экструдер в абсолютную систему координат
M83 - Установить экструдер в относительную систему координат
M104 - Ожидание нагрева экструдера до определенной температуры [M104 S190]
M105 - Получить текущую температуру экструдера [M105 S2]
M106 - Включение вентилятора обдува детали [M106 S127] - мощность 50%
M107 - Выключение вентилятора обдува детали [M 107]
M109 - Нагреть экструдер и удерживать температуру [M109 S215]
M140 - Установить температуру стола [M140 S65]
M190 - Нагреть стол и удерживать температуру [M190 S60]
PID M301 - Записать PID параметры в EEPROM [M301 H1 P1 I2 D3]
где: H0 – стол, H1 – экструдер
M302 - Разрешить холодное выдавливание [M302 P1].
M303 - Запустить процесс PID калибровки [M303 E-1 C8 S110]
где: E-1 – стол, E0 – хотэнд, C8 – количество попыток, S – температура.
M304 – Задать PID параметры для стола [M304 P1 I2 D3]
EEPROM – внутренняя память микроконтроллера (не обнуляется при выключении)
M500 - Сохранить параметры в EEPROM
M501 - Прочитать параметры из EEPROM
M502 - Сброс параметров EEPROM
M200 - Задать диаметр филамента [M200 D1.128]
M600 – Замена филамента.
Данные команды можно подавать в консоли из таких программ как Pronterface или Universal-G-Code-Sender.
В Pronterface можно включить режим ответа в меню Settings / Debug communications, программа будет писать все ответы от принтера.
Или открыть файл с G-кодом в блокноте и написать все руками. =)
Чтобы не быть голословным предлагаю Вам разобрать пример G-кода программы:
M190 S60 - включаем нагрев стола и ждём, пока он не нагреется до температуры 60 градусов
M109 S210 - включаем нагрев сопла и ждём, пока оно не нагреется до температуры 210 градусов
G21 - устанавливает метрическую систему координат
G90 - устанавливает абсолютную систему координат
M82 - устанавливает абсолютную систему координат для экструдера
M107 - выключаем обдув детали
M300 S5000 P280 – звуковой сигнал
G28 X0 Y0 - команда Home X Y
G28 Z0 - команда Home Z
G1 X100 Y100 Z5 F1000 - центруем сопло относительно стола
G92 E0 - обнуляет количество выдавленного пластика
G1 F300 E4 - выдавливаем 4 мм пластика со скоростью 300 мм
M106 S125 - включаем обдув детали со скоростью 50%
G1 Z0 - опускаем сопло на 0 мм
G1 X96.11 Y110.92 E87.55 - ездим по координатам и выдавливаем пластик
G1 Z0.2 - поднимаем сопло на 0.2 мм
G1 X96.11 Y111.00 E89.60 - ездим по координатам и выдавливаем пластик
M140 S50 - изменяем температуру стола
G1 Z4.8 - поднимаем сопло на 4.8 мм
G1 X96.11 Y110.92 E87.55 - ездим по координатам и выдавливаем пластик
G1 Z5 - поднимаем сопло на 5 мм
G1 X96.11 Y111.00 E89.60 - ездим по координатам и выдавливаем пластик
G91 - устанавливает относительную систему координат
G1 E-5 F200 - всасывание экструдером 5 мм прутка
M104 S0 - отключением нагрев экструдера
M140 S0 - отключением нагрев стола
M107 - выключаем обдув детали
M84 - выключаем шаговые двигатели
M300 S5000 P280 – звуковой сигнал
Благодарю Вас за внимание!
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Я новичок в деле 3D печати. Купил подарок себе и детям на Новый год, 3D принтер Creality3D Ender 3 Pro . Собрали примерно за 2 часа, а что делать дальше, не я, и естественно они понятие не имеем. Давайте разбираться вместе.
Вот в такой коробке принтер поставляется
Вот так он выглядит уже собранный
Про сборку я ничего писать не буду, тонны текста и видео есть в интернете. Я только остановлюсь на некоторых деталях.
При сборке возникли следующие проблемы:
- Ремень, который приводит в движение экструдер, не сразу поняли как ставить.
Крепления ремня пимками наружу (сначала пытался засунуть внутрь и даже одну засунул)
- Затягивайте и подтягивайте все гайки, а не только те которые вы закручивали, а в основном именно те которые уже были, типа "закручены" китайскими рабочими.
Итак, принтер собран, первое включение экран засветился, вроде работает, но что делать дальше?
Давайте разбирается, поехали.
Работа с железом
Регулировки
Еще раз регулировки, если вы думаете что все собрали и на этом все, то вы ошибаетесь. Скажу еще раз нужно все отрегулировать и затянуть.
Изначально принтер у меня стоял на ровной поверхности криво т. е. он качался и не стоял ровно на всех четырех ножках, а только на двух - так не должно быть! Решение, ослабить боковые винты с одной и с другой стороны, выставить принтер на ровную поверхность он встанет ровно и закрутить винты еще раз.
Винты которые нужно перезатянуть для ровной установки Винты которые нужно перезатянуть для ровной установкиНастройка стола
Затягивайте винты стола для этого снимите магнитную накладку и открутите четыре большие подпружиненных регулировочных винта - колеса. Снимите стол, под ним будут четыре винта, устраните люфт, если он есть и затяните (подзатяните) четыре винта. Соберите все в обратном порядке.
Четыре подпружиненных винта которые нужно открутить для того чтобы снять стол
Не стоит затягивать сильно два винта резьбовой втулки оси Z, так как их затяг никакой роли не играет и они вообще могут болтаться, это даже лучше (под винты можно подложить маленькие пружинки, от автоматической ручки, например)
Кривой стол.
Помните, стол кривой по умолчанию, и с этим ничего не сделать, вернее сделать можно, но для начала сойдет и так. Просто помните об этом и я вернусь к этому ниже, из за него возникли проблеммы.
Кривой стол, фото с линейкой, видна щель это середина стола
По краям, пролистайте галерею.
Работа с меню принтера
Меню принтера, начальный экран "Info screen"
Калибровка стола принтера.
Для калибровки необходимо включить принтер, нажать на энкодер, войти в меню Prepare –> Auto Home.
Головка принтера переместится в нулевой положение. Затем в том же меню активируем "Disable Steppers" - отключение режим удержания двигателей и крутим вручную каретку по Х и Y (Z - высоту, длинный винтовой стержень - не трогаем, она у нас уже «дома»). Перемещая вручную стол и каретку с печатающей головкой необходимо регулировочными винтами стола добиться зазора примерно 0.1 мм хотя бы в пяти точках стола, по углам и в центре.
В качестве щупа можно использовать полоску обычной офисной бумаги, бумага должна с небольшим усилием проходить между столом и соплом.
Лучше контролировать каждую точку несколько раз, например пройтись по кругу сначала углы затем центр и так несколько раз.
Заправка филамента в принтер .
Для начала нужно разогреть сопло принтера.
Включаем принтер, заходим в меню Prepare, далее Preheat ABS - преднагрев. Сопло начнёт нагревается до 230 градусов. После нагрева сопла кусачками (идут в комплекте) делаем заострение на конце прутка. При отжатой пружине экструдера вставляем пруток и проталкиваем до момента, когда почувствуете сопротивление. Продолжаем аккуратно давить рукой на пруток – из сопла начнёт выдавливаться размягчённый пластик. Удаляем пластик и принтер заправлен.
При первом включении Вы вероятно захотите использовать пластик который идет в комплекте
Напомню, что в комплекте идет моток, всего 5 метров PLA-пластика (полилактид, ПЛА)
Виды пластика
Самый распространённый вид пластика это
- ABS
- Полилактид (PLA, ПЛА) - он идет в комплекте 5 метров, поэтому при печати выбирайте Preheat PLA
Программная часть
Заготовка для 3D печати
Выберем первую заготовку которую будем печатать просто для того чтобы проверить сам принтер и его возможности.
Самая известная проверочная, калибровочная модель это кораблик 3 D Benchy , на ней можно проверить как 3D принтер печатает изогнутые поверхности, наклонных плоскости, дуги, отверстия.
На печать 3D Benchy стандартных размеров требуется приблизительно час — зная это, по времени печати модели можно судить также и о производительности 3D-принтера.
Thingiverse
Пожалуй самый популярный ресурс, здесь представлено множество бесплатных 3D-моделей и большинство оптимизированы для печати FDM
Это модель космонавта, так же тестовая модель для проверки принтера
Можно, еще посмотреть наш русскоязычный ресурс на сайте 3dtoday, 3D-модели для 3D-принтера на сайте 3dtoday
Качайте ZIP файл там будет много файлов (я про "Буксир"), но нас интересует файл: " 3DBenchy.stl " или " Astronaut_Phil_A_Ment.stl " (он и так один)
Давай те разберемся с файлами типа STL, расширение .stl. Файл STL содержит 3D-модель объекта и используется в стереолитографии, ST ereo L ithography технологии трехмерной печати. С этими файлами работает много программ, вот например Blender, SketchUp, Kompas, этот файл можно открыть и в Windows 10 используя стандартную программу для 3D моделей, Print 3D и конечно можно открыть используя программу Cura и Creality Slicer_1.2.3 которая идет на SD карте которая прилагается к принтеру
Про SD карту которая идет в нагрузку к принтеру
Комплектная SD карта Netac 8 Гб
На SD карте находится программное обеспечение
Установим и запустим программу Слайсер (Slicer) это программы для нарезания 3D моделей на слои для 3D принтера, а именно Creality Slicer_1.2.3 она входит в стандартную поставку 3D принтера Creality3D Ender 3 Pro и записана на SD карту, находится в папке: "2.Software and Drive"
При первом запуске обязательно выберите Русский язык и профиль принтера Ender 3/Ender 3 Pro/Ender 3S
Предпочтительно печатать 3D модель с карты памяти SD, особенно это важно новичкам при первой печати.
Но оказалось, что Creality Slicer_1.2.3 не может открыть файлы G-Code (GCODE) или может. но я делаю чего то не так, или открывает их как то криво. Об этих файлах более подробно.
Файлы G-Code (GCODE) для печати с SD карты
Принтер поддерживает формат файлов для печати с карты памяти G-Code (GCODE) расширение файла ".gcode"
Вот файлы которые идут на SD карте которая прилагается к принтеру.
G-Code (GCODE) это формат файлов, используемый многими 3D-принтерами для управления процессом печати. Интересно, что его можно открыть простым текстовым редактором, там будет довольно читабельный набор текста который говорит что делать принтеру. Но это не очень удобно, а если честно вообще не удобно и лучше открывать в специализированных программах 3D печати типа Cura
- Бесплатна
- Открытый исходный код, можно расширять с помощью плагинов.
Настройте программу, выберите русский язык, выберите нужный тип принтера (Creality3D Ender 3 Pro), а еще писали, что по умолчанию идет диаметр филамента 2,85 мм, но у меня все было нормально, диаметр был как нужно 1,75мм, видимо это было в старых версиях, но на всякий случай проверьте.
Это программа способна открыть файлы G-Code (GCODE) в том числе и те которые идут на SD карте. Мы же откроем скачанные файлы расширения STL "3DBenchy.stl" или "Astronaut_Phil_A_Ment.stl" и экспортируем их в файл типа .gcode на SD карту.
Теперь вытащим SD карту и вставим ее в принтер
Выберем в меню "Print From TF" в меню принтера
Нажмём на энкодер и головка начнет ездит - печать началась.
И у меня ничего не получилось!
Сразу отслоилась заготовка и вместе с соплом стал ездить ниточный шар скомковавшегося пластика.
Стал разбираться и оказалось что стол кривой (см. снимки вначале) , а именно имеется вогнутость в центре стола. Т. е. периферия, по краям стола приподнята, а центр стола опущен, такое дело наблюдается чаще всего. И реже наблюдается обратная картина. Пришлось еще раз настраивать. Но для начала давайте разберёмся в механизме, а почему, собственно не пристает заготовка. При запуске печати прямая линия пластика по краю получалась, овал вокруг заготовки получался, а вот сама заготовка отставала. Почему? Да потому что в центре большой зазор между головкой и столом из за кривизны стола, а по краем он маленький и там все пристает. Решить эту проблему можно несколькими путями.
Решение кривизны печатного стола
- Выровнять стол. Например, отфрезеровать или что то подложить, или прикрутить профили с обратной стороны и так далее, тут кто на что горазд.
- Заменить поверхность стола например на стекло. Стекло как известно довольно прямое, и не очень то прогибается на таких масштабах, а если уж начинает прогибаться, то разобьётся.
- Использовать повышенный нагрев сопла и стола. Тогда пластик будет в более расплавленном, а значит в более текучем состоянии, и адгезия к столу улучшится.
- Использовать клеевые составы, есть специальные клеи, а можно использовать например пиво, а что, его то же используют, вместе с сахаром, но это как то не очень гигиенично и к тому же пахнет. Лучше использовать клей ПВА. Клеи уменьшают просвет между соплом и поверхностью стола и увеличиваем адгезию. Но о ПВА будет отдельный разговор.
- Подкрутить настройки стола таким образом, что по краям сопло будет чрезмерно опущено и будет елозить по магнитной накладке, зато в центре все будет хорошо.
Все способы имеют свои преимущества и недостатки.
- Например хорошо все сделать один раз и навсегда - отфрезеровать стол. Но отфрезеровать стол довольно затруднительно и накладно, нужно идти в автосервис и то не всякий, искать кто этим занимается и платить денежку. То же самое с всяким профилями, нужно по крайне мере иметь прямые руки.
- Стекло всем хорошо, но теплопроводность стекла не как у метала, а термодатчик все же не на стекле, а на металле стола. В итоге показания термодатчика не будут соответствовать реальным.
- Использовать повышенный нагрев стола и (или) сопла. Заготовка прилипнет, но в целом это может негативно отразится на дальнейшей печати заготовки.
- Использование клеевых составов. Но клей нужно счищать со стола и иногда это довольно затруднительно.
В своем случае, что бы быстро решить проблему, я использовал повторную настройку стола, настраивал опять листком бумаги. Таким образом, по краям сопло стало чрезмерно опущено и елозило по магнитному коврику (сильно цепляло листок бумаги), зато в центре все нормально (листок не касался сопла). И использовал клей ПВА, вот такой.
Аддитивные технологии на современном уровне развития дают возможность пользователю создавать сложнейшие объекты, практически не вникая в суть техпроцесса. Тем не менее, пользователи 3D-принтеров часто интересуются тем, как работает G-code и как его наиболее эффективно использовать — это помогает глубже погрузиться в процесс и понять все тонкости.
Читайте нашу подробную инструкцию о командах G-code, чтобы узнать — что такое G-code для 3D-принтера и как с ним работать.
Содержание
Что такое G-code?
G-code — условное наименование языка программирования устройств с числовым программным управлением (ЧПУ) и написанного на этом языке кода. Был создан компанией Electronic Industries Alliance в начале 1960-х. Программа, написанная с использованием G-code, имеет жесткую и последовательную структуру. В отличие от других языков программирования, в G-code нет циклов, функций и логических команд, т.е. оборудование выполняет ровно то, что подготовила программа, либо пользователь ручным набором.
Также важно понимать что все 3D-принтеры , фрезерные станки, CO2-станки и прочее станки ЧПУ работают практически на одном языке. Разница может быть сугубо в “богатстве языка”, т.е. количестве уникальных команд для того или иного типа устройств.
Основные команды языка
Основные команды языка начинаются с буквы G (отсюда и его название), это например:
- перемещение рабочих органов оборудования с заданной скоростью (линейное и круговое,
- выполнение типовых команд (таких, как запуск вентиляторов, нагревателей и т.д.),
- управление параметрами, системами координат ( абсолютное или относительное исчисление).
Также существует большое количество команд, что начинаются с букв M и T, они относятся к вспомогательным и используются в фрезерных станках и фрезерных обрабатывающих центрах.
Каждая строка G-code содержит в себе конкретную команду и набор параметров, характеризующий само действие оборудования. Так, обычное перемещение во время печати может характеризоваться рядом параметров, таких как направление, время работы приводов, для перемещения на заданное расстояние, количество выдавленного пластика, скорость и ускорение.
Если раньше программировать действия станков приходилось вручную, то в наше время существует большое многообразие программ, что могут преобразовать загруженный 3D-объект в код управления, необходимый станку для создания этого объекта.
Для 3D-принтеров применяются программы, называющиеся слайсерами.
Такие слайсеры, как Cura, Simplify3D и множество подобных, помогают автоматизировать процесс написания кода управления, пользователю остается лишь использовать полученный с их помощью код. Возможная ручная корректировка сводится к коррекции одного или двух параметров, или поиску лишней команды. Теперь не требуется писать 100-200 строк кода, достаточно лишь сгенерировать код в слайсере и, если требуется, внести небольшие правки.
Для ручного внесения правок в G-code рекомендуем использовать бесплатную программу NotePad++. С её помощью можно найти вредоносную команду, пометить все её повторения в коде и удалить их.
Подробнее о командах читайте далее, в разделе “Популярные команды G-code”.
На какие принтеры можно загружать G-code?
Большинство популярных принтеров работает на G-code. Поскольку этот код можно генерировать в любых доступных слайсерах, таких как как Simplify3D, Cura, Chitubox, CreatWare, Slic3er, и легко редактировать в обычном блокноте или NotePad++, то пользователи самых доступных 3D-принтеров Anet A8, профессиональных 3D-принтеров Wanhao Duplicator 6 Plus и 3D-принтеров с двумя экструдерами Hercules Strong DUO могут перенастроить работу аппаратов для достижения оптимального результата.
Но бывают случаи, когда оборудование работает на зашифрованном G-code. Как пример — это Zortrax и их Слайсер Z-suite, что генерирует файл в расширении Z-code. Увы, такие файлы уже не открыть блокнотом и NotePad++, а сторонний слайсер с этим принтером использовать нельзя.
Принцип кодировки команд для 3D-принтера
Каждая строка G-кода — это команда, которую выполняет 3D-принтер. Если ваш принтер “делает что-то не так”, а механика его при этом исправна и настроена правильно, скорее всего дело в коде, где-то в него закралась неверная или находящаяся не на своем месте команда.
Рассмотрим типичную команду:
G1 X-9.2 Y-5.42 Z0.5 E0.0377
В этой кодировке содержится следующая информация:
G1 — перемещаться по прямой;
Координата X — -9,2 мм;
Координата Y — -5,42 мм;
Координата Z — 0,5 мм;
Экструзия — 0,0377 мм.
Как видно на примере, кодировка G-code имеет простой синтаксис. Разобраться в командах может любой пользователь и помнить их все не обязательно — достаточно иметь под рукой список.
Рекомендуем заглянуть в “Энциклопедию Тридэшника” Там можно найти описание и параметры большинства команд.
В каких случаях использовать G-code?
В абсолютном большинстве случаев слайсеры составляют корректный G-code, который обеспечит отличный результат в процессе печати, но существует несколько сценариев, когда оправдана ручная правка G-code.
Случаи, когда целесообразно переписать G-код:
Специальные настройки — выполнение 3D-принтером определенных действий, таких как изменение температуры экструдера в конкретные моменты времени, при печати деликатных/тонких или просто важных областей модели, если слайсер не имеет такого функционала.
Решение проблемы — при печати крупной сложной детали могут возникнуть сложности на определенном этапе. Для устранения проблемы можно добавить специальную команду, например — включение или выключение обдува или добавление ряда своих команд.
Популярные команды G-code
G28 — вернуться в исходное положение
Эта команда сообщает 3D-принтеру о необходимости вернуться в нулевую точку. С этой команды начинается работа 3D-принтера, а также этой командой заканчивается печать. Печатающая головка перемещается в дальний угол печатной камеры, чтобы пользователь мог легко извлечь деталь.
G1 — линейное движение
С этой команды начинается около 95% строк в файле для печати. Команда G1 задает и направление перемещения печатающей головки. В этой же строке может содержаться команда E, которая указывает, сколько филамента (в миллиметрах) необходимо протолкнуть в сопло. Также в строке можно указать команду F, которая задает скорость движения в миллиметрах в минуту.
Пример: G1 X30 E10 F1800 — протолкнуть 10 мм филамента в экструдер, пока печатающая головка перемещается на 30 мм по координате X со скоростью 1800 мм/мин.
G92 — установить текущее положение
Команда задает текущее положение осей. Одно из наиболее распространенных применений команды — это ось E (положение филамента). Если переопределить текущее положение нити, то все будущие команды будут определяться по новому значению. Обычно это делается в начале каждого слоя.
Пример: G92 E0 — установить текущее положение нити в качестве нулевого.
M104 и M109 — температура экструдера
Команды M104 и M109 задают температурные значения в градусах Цельсия (S) для экструдера (экструдеров). При использовании команды M104 3D-принтер может производить другие действия в процессе нагрева. Команда M109 указывает принтеру не предпринимать других действий, пока не будет достигнута заданная температура. При использовании 3D-принтера с двумя экструдерами используются команды T0 для установления температуры правого экструдера и T1 — для левого.
Пример: M104 S190 T0 — начать разогревать правый экструдер до температуры 190 °C.
M140 и M190 — температура рабочего стола
Эти команды указывают на необходимость нагреть рабочий стол до заданной температуры в градусах Цельсия (S). Аналогично примеру выше, команда M140 будет выполняться 3D-принтером одновременно с другими процессами, а команда M190 указывает на необходимость ожидания, пока рабочий стол не будет нагрет до заданной температуры.
Пример: M140 S50 — разогревать рабочий стол до 50 °C.
M106 — скорость вращения кулера
Эта команда задает скорость вращения кулера, который охлаждает изделие. Скорость вращения (S) устанавливается в диапазоне значений от 0 (выключен) до 255 (максимальная скорость).
Пример: M106 S128 — включить кулер на скорости 50%.
Как отредактировать G-code?
Для редактирования G-code можно использовать различные оффлайн- и онлайн-программы. Рассмотрим основные инструменты.
Notepad++
Бесплатная программа, в которой можно настроить выделение синтаксиса G-code. ПО доступно для ОС Windows.
gCodeViewer
Облачное приложение, которое оптимизировано для создания команд для 3D-принтеров. Среди специфических функций — послойный просмотр изделия в 2D-режиме.
Simplify3D
Популярный слайсер, имеет собственный редактор G-code. Пользователю доступно создание автоматических сценариев, например — стандартное выполнение 3D-принтером определенных действий в начале и в конце процесса печати.
Итоги
Использование языка программирования G-code не только насущно необходимо, но и способствует пониманию 3D-печати. Пользователь не обязан следовать рекомендациям производителей филамента или 3D-принтера, чтобы получить идеально напечатанный объект. Экспериментируя с настройками слайсеров и возможностью ручного редактирования команд G-кода, пользователь может получить любой результат, опираясь на собственный опыт работы с различными материалами и свою фантазию.
Купите Simplify3D — слайсер с редактором G-code, для максимально удобного и понятного взаимодействия с кодом 3D-моделей, а значит и более простой, беспроблемной печати. Покупая ПО в Top 3D Shop вы приобретаете лицензионный программный продукт у официального поставщика на территории России, вся необходимая для отчетности документация предоставляется по требованию.
Читайте также: