Мир физики 3D принтеров и слайсеров - это какой то параллельный мир, миру физики человека!!!
Погружаясь в него, иногда открываются новые законы приводящие в парадокс физику.
После того, как я выложил это сообщение, я нашел недочет в своих расчетах )
недочет исправил, поэтому, теперь это сообщение больше стало инструкцией, представляющей интерес для начинающих разбираться в g-code...
Провел анализ простейшего g-code полученного от KISSlicer
Взял модель кубика 20мм x 20мм x 10мм (правильней параллелограмм)
http://www.thingiverse.com/thing:2064/#fileshttp://www.thingiverse.com/download:17274Убрал заполнение ->
Infill: Hollow Толщина слоя: 0.2Ширина экструзии 0.35 - сопло 0.3, поэтому толщина должна быть шире заданной, узнать ширину экструзии одна из целей экспиремента;
Убрал дно и крышку ->
Skin Thickness = 0mmТолщина периметра 1 виток (1 стенка) ->
Num Loops = 1Выключил ретракт (
Uncheck De-String)
Выключил вытерание или растерание (
Uncheck Wipe)
Глубина и Зазор установил 0 ->
Depth=0, Gap=0Поддержка не нужна -> support: off - можно не выключать, она не появится
Для Printer параметры
Bed Roughness = 0mm
Z-Settle = 0mm
Раз эти параметры установлены в ноль, то до печати, обязательно проверить (откалибровать) расстояние между соплом и столом в координате Z=0, с помощью листа бумаги;
И для Материала:
Диаметр нити 1.75 -> Diametr = 1.75mm
!!! и очень важно коэф.потока равен 1 -> Flow Tweak = 1
В итоге, после нарезки получиться один периметр в виде квадрата, толщина стенок которого будет равна реальной толщине экструзии.
После нарезки, получаем код (убрал стартовые коды и коды завершения):
- Код: Выделить всё • Развернуть
G92 E0
;
G1 X109.82 Y109.82 Z0.2 E0 F12000
G1 X109.69 Y109.86 E0.004 F252.2
G1 X109.57 Y109.82 E0.0076
G1 X90.43 Y109.82 E0.5648
G1 X90.31 Y109.86 E0.5684
G1 X90.18 Y109.82 E0.5724
G1 X90.14 Y109.69 E0.5764
G1 X90.18 Y109.57 E0.58
G1 X90.18 Y90.43 E1.1372
G1 X90.14 Y90.31 E1.1408
G1 X90.18 Y90.18 E1.1448
G1 X90.31 Y90.14 E1.1488
G1 X90.43 Y90.18 E1.1524
G1 X109.57 Y90.18 E1.7096
G1 X109.69 Y90.14 E1.7132
G1 X109.82 Y90.18 E1.7172
G1 X109.86 Y90.31 E1.7212
G1 X109.82 Y90.43 E1.7248
G1 X109.82 Y109.57 E2.282
G1 X109.86 Y109.69 E2.2856
G1 X109.82 Y109.82 E2.2896
который повторяется 50 раз (50 слоев) с изменением высоты (координата Z увеличивается) на 0.2 - высота 10мм
Полученный код очень простой и прозрачный для исследования.
Первое, что я увидел (еще kisslicer) - модель нарезалась на слои, на плоские квадраты, углы у которого круглые и выступают наружу. Либо стенки вдавлены. То что углы круглые, может объясняется тем, что принтер физически угол напечатать не сможет, так как сечение сопла круг. А вот для чего углы выступают, или стенки вдавлены?
далее...
Расстояние между углами: 109.86 - 90.14 = 19.72 мм
Расстояние между углами, с учетом заданной ширины экструзии: 19.72 + 0.35 = 20.07
Расстояние между стенками: 109.82 - 90.18 = 19,64
Расстояние между стенками, с учетом заданной ширины экструзии: 19.64 + 0.35 = 19.99
Стека у модели равна 20мм - в целом почти по размерам получилось.
На самом деле, при исследовании других полученных кодов, у меня расхождение размеров (между полученными и исходными) было больше, может быть по размерам более интересные моменты выложу позже...
далее...
3 и 4 строки
- Код: Выделить всё • Развернуть
G1 X109.57 Y109.82 E0.0076
G1 X90.43 Y109.82 E0.5648
перемещение только по оси X - печать одной из стенок
перемещение на 109.57 - 90.43 = 19.4 мм
при этом пластика на печать этой стенки будет затрачено 0.5648 - 0.0076 = 0,5572 мм
То есть, выдавливается цилиндр, радиусом 1.75 и высотой 0.5572 мм
или выдавливается объем пластика равный = 0.25 * pi * (1.75)^2 * 0.5572 = 1.340 mm^3
Теперь с обратной стороны:
высота слоя, а значит высота экструзии = 0.2 мм
ширина экструзии = 0.35 мм
длина экструзии (размер стенки) = 19.4 мм
объем этого бруска экструзии = 0.2 * 0.35 * 19.4 = 1.358 мм^3
Полоска экструзии это конечно не брусок, в сечении что-то среднее между овалом и квадратом, и потому объем будет немного меньше, чем объем бруска.
далее...
последняя строчка для слоя:
G1 X109.82 Y109.82 E2.2896
где E2.2896 - столько выдавили пластика на весь слой
0.25 * pi * (1.75)^2 * 2.2896 = 5.507 мм^3 - объем выдавленного пластика на один слой
для всех слоев, а их 50, получается объем:
5.507 * 50 = 275.357 мм^3
или 0.275 см^3
то же показывает и KISslicer (и в программе, и в файле)
затраченный объем 0.275 cm^3
использовано прутка 114.48 mm
проверем длину прутка = 2.2896 * 50 = 114.48 мм
это если пруток 1.75
переведем его в пруток равный диаметру сопла 0.3
0.25 * pi * 1.75^2 * 114.48 = 0.25 * pi * 0.3^2 * L
L - это и есть длина прутка диаметром 0.3
L = 1.75^2 * 114.48 / 0.3^2 = 3895.8 мм
то есть из сопла будет выдавлено 3895.8 мм пластика,
и длина пути печати так же должна быть равна 3895.8мм так как коэф.потока (Flow Tweak) равен 1
Путь у модели простой непрерывный, без ретрактов и мостов.
Печать идет с каждым перемещением.
Привожу расчет длины пути для каждого перемещения:
- Код: Выделить всё • Развернуть
Координаты, мм Длина пути, мм
G1 X109.82 Y109.82 Z0.2 E0 F12000 0
G1 X109.69 Y109.86 E0.004 F252.2 0,136014705
G1 X109.57 Y109.82 E0.0076 0,126491106
G1 X90.43 Y109.82 E0.5648 19,14
G1 X90.31 Y109.86 E0.5684 0,126491106
G1 X90.18 Y109.82 E0.5724 0,136014705
G1 X90.14 Y109.69 E0.5764 0,136014705
G1 X90.18 Y109.57 E0.58 0,126491106
G1 X90.18 Y90.43 E1.1372 19,14
G1 X90.14 Y90.31 E1.1408 0,126491106
G1 X90.18 Y90.18 E1.1448 0,136014705
G1 X90.31 Y90.14 E1.1488 0,136014705
G1 X90.43 Y90.18 E1.1524 0,126491106
G1 X109.57 Y90.18 E1.7096 19,14
G1 X109.69 Y90.14 E1.7132 0,126491106
G1 X109.82 Y90.18 E1.7172 0,136014705
G1 X109.86 Y90.31 E1.7212 0,136014705
G1 X109.82 Y90.43 E1.7248 0,126491106
G1 X109.82 Y109.57 E2.282 19,14
G1 X109.86 Y109.69 E2.2856 0,126491106
G1 X109.82 Y109.82 E2.2896 0,136014705
Итого: 78,66004649
итого 78,66004649мм путь печати на один слой
с учетом всех слоев пройденный путь печати будет
50 * 78,66004649 = 3933,002325 мм
И так, получилось:
По данным kisslicer:затраченный объем 0.275 cm^3
для диаметра 1.75, использовано прутка 114.48mm
Из расчетных данных:затраченный объем 0.275 см^3
для диаметра 1.75, использовано прутка 114.48mm
для диаметра 0.3,использовано прутка 3895.8mm
печать непрерывная, на протяжении пути 3933,002325мм
коэффициент потока, при этом равен 1
то есть теоритически, чуток пластика не хватает