Skip to content

Calibration: XYZ Accuracy

Tiago Conceição edited this page Dec 22, 2020 · 8 revisions

When is required to print with accuracy you must make sure that the printed object in X, Y and Z axis are in spec with the designed/expected size.

The inaccuracy can come from multiple sources:

  1. Wrong resolution
  2. Wrong display width and/or display height
  3. Exposure times
  4. Bad resin
  5. Expansion of resin and big masses
  6. No fraction of pixels

To convert pixels into millimeters we need to find the "pixels per millimeter" ratio, that is given by "Resolution / Display = Pixels per millimeter", then we can multiply our part millimeters per Ppmm to slice the model, the problem with this, is there are no half pixels, and then, there are a chance that our input size will not be the same as the output. So in the end you and UVtools will have to compare the results agaisnt the real expected size and not your inputed size. This can also be an reason why you were slicing a "20mm" cube and get a very close result but not the same as sliced, that doesn't mean your printer is out of spec or anything is wrong, is just the ratio x millimiters are not giving an integer value and it will shrink by a fraction of the size. This is were most users think they should scale every model by a factor to get the real size, when in fact the problem is just a pixel limitation. Some slicers are using anti-analysing strategies to try under cure a pixel to value that allows that compensation, by under cure is possible to have a cured pixel with less than it size and then get an "half pixel", but this is not a sure thing nor a perfect solution.

With this problem in mind, UVtools incorporates a XYZ Accuracy test to verify if your printer + resin are in spec.

Preparation

  1. First prepare a dummy file, sliced in your slice of preference with the right settings for your printer, this file will be overwritten and blanked with the new calibration test. You can also use a old file that you no longer need, or an actual file but when saving the file use the "Save as" option to keep your original file.
  2. Open file in UVtools
  3. Go to: "Calibration - XYZ Accuracy"
  4. Tune values as required
  5. Save current settings in one profile to be easier to load the values on the next stage (Optional but recommended)
  6. Hit apply
  7. Analyze the output, check if the tests are what you desire and save the file
  8. Print the file, remove and clean the parts

Dialog Example:

Dialog

Analyze the results

  1. Reopen the last printed file in UVtools
  2. Go to: "Calibration - XYZ Accuracy"
  3. Load the previous saved profile or input the same used settings
  4. Grab a good digital caliper and measure the X, Y, Z and input the results into "Step 2"
  5. Automatically UVtools compares your measures with the expected size (not your input) and gives the "resultant scale factor"
  6. If the scale factor is both 100%: Then your part is on spec and nothing more is required, you can repeat test with a larger mass to verify for expansion if you want.
  7. If any of the scale factor are other than 100%:
    1. First renember that your calipers can have an error, so allow some error, like 0.02mm or depending on datasheet
    2. Save a resize profile on step 3, auto name it if you like and close the dialog
    3. Go to "Tools - Resize"
    4. Load the previous saved profile or input the scale factors manually
    5. Hit apply
    6. Now you have your test model resized to taking in account your meassures
    7. Go to "File - Save as" file and give it other name, like: xyzcal_resized
    8. Print the new file and repeat this guide, in the end it should match the expected size now
    9. If the resize factor validates, then you can start using it on your models

A note about Z validation: Due elephant foot is normal that Z will not match the expected size. To validate Z you will have to print two separete tests with same values but different heights, lets say 10mm and 20mm. If the 10mm piece is meassuring 10.20mm and the 20mm piece is meassuring 20.2mm, that means is on spec and elephant foot is causing 0.2mm higher. If you got 10.20mm and 20.35mm instead, as example, that indicates a problem in Z accuracy. In that case you can delete some layers to account the problem, example: if you remove 4 layers @ 0.05mm layers you will end with a 10mm height. If otherwise and you need more Z height, you can clone some bottom layers to account the lack of Z. Still i recommend to check the printer, proper lube Z rod, look for constrains, bending and any other things you can find. Repeat test with diferent sizes and heights if you are paranoid.

Example of meassure:

Can i run other tests and shapes?

This tool is limited to the predefined tests, what if you want to run your shape or stl? This wizard is also an calculator, and can be used to validate external tests:

  1. Prepare your models on your default slicer
  2. Print
  3. Open the file on UVtools
  4. Go to: "Calibration - XYZ Accuracy"
  5. Put in the original designed object X, Y, Z size that you want to validate in "Step 1"
  6. Grab a good digital caliper and measure the X, Y, Z and input the results into "Step 2"
  7. Automatically UVtools compares your measures with the expected size (not your input) and gives the "resultant scale factor"
  8. This will validate objects sliced and printed from other programs, so the usage is not limited to UVtools own tests