I spoke to researchers from Oregon State University, who have been doing some interesting work on 3D print slicing algorithms.
The University’s Design Engineering Lab has been considering ways to improve the toolpaths for FFF 3D printing. Most of today’s slicing software generates toolpaths that work, but are almost always less than optimal.
You can see this yourself by simply watching an FFF 3D printer’s toolhead. Why is it moving over there, when it could be faster if it went here instead? Why can’t it strengthen that corner? Why can’t it jump up a bit to handle an overhang in a different manner?
These are all questions I have with today’s toolpaths, and the researchers sought ways to improve several aspects of toolpath generation.
Their investigation looked at the possibilities opened up by multi-axis 3D printing. That is, 3D printers that move in more than just X, Y, and Z axes.
They developed five new algorithms.
Quadric Slicing
This is an unusual approach for generating toolpaths on each layer. Because of the extra axis, the layers need not be flat. Instead, this approach views layers as spheres, cylinders, ellipsoids, or other mathematical shapes, all known as “quadrics”.
They produced an AI-powered algorithm to identify the best quadric for each region of a given 3D model. The result is toolpaths that eliminate support structures and improve surface quality, all while strengthening the part because the layers are not parallel.
Differential Growth Infill
This algorithm intends on generating an infill pattern that is a single, continuous extrusion that maintains a consistent distance between the infill walls. You can see how this appears in the image above.
This creates a more random structure, and therefore it is stronger than typical infill patterns that are regular. It also means that the outer shell can be directly connected to the infill.
Variable Density Infill
This algorithm uses an AI system to generate infill that optimizes density in different regions. While the overall density varies, there is a constant wall thickness throughout the infill. They say there is “little additional user input required”, making this an easy feature to integrate.
Concavity Planning
A problem that occurs with multi-axis 3D printers occurs when a concave surface is produced. The issue is that the cavity may be too deep for the large toolhead to access. This algorithm solves the issue by detecting these concavities and planning toolpaths that avoid the problem.
General Inverse Kinematics
This is a framework for reliably generating the complex toolpaths required for multi-axis 3D printing. While layer-by-layer FFF 3D printing is challenging to compute, the problem gets vastly more complex when multiple axes are involved.
In fact, they say:
“However, this leap forward is not without its challenges. Avoid collision, smooth and consistent motion of the tool, collaboration between the speed of the tool and the material extrusion. Generating reliable machine motion requires solving nonlinear inverse kinematics in real time.”
The work has produced a framework for implementing multi-axis toolpath generation that can support different numbers and types of axes.
Commercialization
This work is only research at this stage, but it does appear to be quite important for the future of 3D printing. Today we see very few multi-axis 3D printers, partly because the hardware is more expensive, but also because the software is highly complex. The work described above could simplify the software side of the equation and therefore might encourage increased use of multi-axis 3D printers.