For most 3D printer users, printing accuracy is a critical standard for evaluating a printed part. A precise term for this criterion is printing tolerance. Printing tolerance is the variance between the design of an object and the printed object’s dimensions. For example, a poorer tolerance is due to a larger variance between the CAD model and the print. Printing tolerance can be affected by many factors, and this blog entry discusses how to improve XY axis printing tolerance using a Raise3D printer with ideaMaker, regarding extrusion width factors.
Figure: Tolerance existed between design and actual print
An FFF printed part’s exterior XY dimension is determined by the extruded thread path position and the width of the outmost thread. Assuming positioning is accurate, the deposited thread width decides the XY dimension. The Z-axis positioning decides the Z-dimensional tolerance of the printed part.
Note: Raise3D printer’s stepping precision is higher than 1 micrometer, therefore XYZ positioning variance is ignored here.
The outmost thread path position is computed by slicing software after calculating the pre-set extrusion width and the design dimensions of the STL file. For example, in ideaMaker, the common setting is an extrusion width of 0.4mm. During the slicing process, ideaMaker will calculate where to deposit the 0.4mm wide thread so that its outmost contour can fit within the dimensions determined by the design. Therefore, if the extrusion width is virtually the same as the setting in ideaMaker, the outcome will have perfect tolerance.
Figure: Flow rate will change width of outmost contour
Basic Practice: Adjusting Flow Rate
Calibrating deposited thread width to reduce exterior dimension tolerance is a convenient strategy. Under ideal conditions, a change in the width of the outmost thread can directly compensate for the exterior dimension tolerance. In ideaMaker, adjusting Flow Rate can change the amount of filament extrusion by a percentage against extruder moving distance, with the extrusion path unchanged. Subsequently, the width of the squeezed thread will change. Such a mechanism can manipulate the virtual width close to a preset value, delivering a better dimensional size outcome. However, the Flow Rate cannot solve the irregularity of extrusion width along the thread, giving it a certain dimensional tolerance. In a real-world case, Flow Rate can only calibrate the average width close to a preset value. If the user wants further improvement, the user can apply additional methods.
Figure: Left with lower flow rate, right with higher flow right
Figure: Where to change flow rate in ideaMaker
Side Effects:
If the Flow Rate adjustment is too low, under-extrusion will occur, resulting in gaps in the infill of the top and bottom surfaces. If the Flow Rate is too high, over-extrusion will occur, causing the top and bottom surfaces to wrinkle. In such cases, the user can adjust the Top\Bottom Surface Solid Fill Extrusion Width Percentage and Speed. If the former setting cannot deliver decent surface quality, the user can activate Ironing to optimize surface quality.
Figure: Left shows under extruded surface, right shows over extruded surface
Additional Calibration: Smaller Diameter Nozzle and Reduce Extrusion Width
Due to inevitable filament quality inconsistency, such as filament diameter and thermal expansion rate, users can reduce virtual extrusion width to improve the thread width tolerance. Generally speaking, the lower the width extrusion thread is, the less variance in its irregularity. Therefore, the user can switch to a smaller nozzle and set a lower extrusion width in ideaMaker. A method like this has a cost for certain structures. For example, the top/bottom surface will need more extrusion paths to fill up, resulting in a longer printing time.
Figure: Left shows extrusion with smaller nozzle and extrusion width value, right shows what with larger setting
For any further questions regarding dimensional size tolerance and how to calibrate the size with this extrusion width strategy using ideaMaker, contact Raise3D.