Не раз я встречал в сети утверждение, что Cura врет — не показывает точное время печати. Предлагаю разобраться с этим утверждением, ведь Cura умеет вычислять время печати достаточно точно, просто ее нужно правильно приготовить.
По жизни мы очень часто встречаемся со словом ТОЧНО. В разных сферах понятие точности может разниться, но вот абсолютная точность — это по сути полное совпадение желаемого и действительного.
В большинстве случаев абсолютная точность достижима в основном в компьютерном или финансовом мире, но вот в инженерном мире абсолютная точность — это утопия. А поскольку 3D принтер и слайсер являются частью скорее инженерного мира, то в рамках именно «инженерной вселенной» мы и будем рассматривать проблему точности.
В инженерном мире есть понятие ПОГРЕШНОСТЬ, или приемлемое положительное/отрицательное отклонение от абсолютного значения. Например, если мы хотим напечатать кубик со стороной 20 мм, при этом мы допускаем погрешность в 0,5 мм, то все кубики, у которых размер стороны будет попадать в предел от 19,5 до 20,5 мм, будут соответствовать заявленным требованиям.
Слайсер Ultimaker Cura является компьютерной программой, которая согласно заложенной в ней логике и математической модели готовит задание на печать для 3D принтера согласно тем параметрам, которые в нее загрузили.
Вот только процесс слайсинга модели (под слайсингом будем понимать процесс формирования gcode файла для 3D принтера) и процесс предсказания времени это 2 разных задачи.
При слайсинге Cura строит и просчитывает траектории движения экструдера, позволяющие 3D принтеру вырастить модель, а уже после этого, на основании сформированных данных слайсер рассчитывает ориентировочное время печати.
Cura оперирует абсолютными величинами и в соответствии с параметрами печати (ширина линии, параметры печати стенок, крышки, дна, заполнения) и значениями заданных скоростей (см. разделы настроек «скорость» и «перемещение») в состоянии просчитать сколько потребуется времени для печати детали в идеальных условиях.
Но, наш мир не идеален и физические процессы никто не отменял. Все 3D принтеры разные, у каждого свои настройки, о которых слайсер зачастую даже не подозревает. По умолчанию, Cura знать не знает с какой скоростью греется и остывает сопло и стол 3D принтера (согласитесь, это нелинейные процессы), какие ускорения и рывки установлены в прошивке Вашего 3D принтера. Вот и получается, что то время печати, которое прогнозирует слайсер оказывается значительно меньше реального времени печати. Иногда в разы.
Но не все так плохо. Есть способ «научить» слайсер более точно предсказывать время печати и свести погрешность до приемлемых значений. Мне удалось снизить погрешность до 15-20 минут при длительных печатях. Ну а при коротких печатях погрешность вообще становится незаметной.
Поможет в этом деле очень полезный плагин — Printer Settings
Устанавливаем его в ultimaker cura через магазин плагинов.
Теперь необходимо получить все настройки принтера, прописанные в прошивке, для этого необходимо сделать следующее:
Закрываем слайсер Cura и перезагружаем компьютер.
Качаем и запускаем программу Pronterface Можно использовать и Repiter Host, но Pronterface удобнее.
Устанавливаем драйверы для вашего 3D принтера, если еще не установлены.
Включаем 3D принтер и подключаем кабелем к компьютеру.
Запускаем ПО Pronterface и подключаемся к 3D принтеру. Для этого необходимо выбрать COM порт, на котором определился 3D принтер, выбрать скорость соединения и нажать кнопку CONNECT
В нашем случае это COM5 скорость 250 000
Если порт и скорость выбраны верно, то после нажатия кнопки CONNECT в правой части окна побегут различные текста:
Если вместо осознанного текста вы увидели какие-то кракозябры, то значит вы выбрали неверную скорость подключения. Подберите ее экспериментально.
Если же в окне справа кроме текста Connecting… ничего не появляется, значит компьютер по каким-то причинам не может связаться с принтером (неверно выбран порт, отсутствует драйвер, проблемы с кабелем и т.д.)
После того, как мы успешно подключились к 3D принтеру, в строке ввода команд необходимо ввести команду
M501
Вводим команду в строку для ввода команд нажимаем кнопку SEND .
Эта команда выводит на экран все настройки, которые записаны в память 3D принтера.
Теперь, мы знаем все его параметры и можем переходить к настройке слайсера.
Запускаем Cura
Выбираем необходимый профиль печати и в самом низу окна настроек видим новый раздел «Printer Settings»
В этом разделе хранятся все мыслимые и не мыслимые параметры вашего 3D принтера. Часть из них может быть скрыта, но это не значит что они не оказывают своего влияния на расчет времени печати.
Подведя курсор мыши к названию раздела вы можете открыть список параметров и отобразить необходимые вам
В моем случае, список параметров выглядит вот так:
В рамках данной статьи в настройках, которые предлагает нам плагин Printer Settings, нас будут интересовать следующие параметры:
Параметры нагрева.
Влияют на расчетную скорость, однако, т.к. процесс нагрева и остывания стола и сопла является нелинейным, то они лишь добавляют погрешности. Вы можете попытаться их вычислить для какой-то средней температуры стола и сопла самостоятельно.
Параметры работы кинематики 3D принтера:
А именно, минимальные и максимальные скорости по осям, ускорения, рывки, шаги на мм и т.д. (См скриншот).
Значения этих параметров необходимо заменить на реальные значения, которые мы получили из прошивки 3D принтера. Именно их слайсер использует для прогнозирования скорости печати.
Таким образом, прописав в разделе Printer settings реальные параметры записанные в прошивку вашего 3D принтера, вы расскажете слайсеру о том, как Ваш 3D принтер реально печатает.
После внесения указанных параметров, точность предсказания времени печати значительно возрастет. Лично я это проверил на практике, пару лет назад записав эти параметры в Printer settings в профиля печати для принтера Ulti Steel, я получил точность предсказания с разбросом около 10-15 минут.
Надеюсь, эта информация оказалась для Вас полезной.