Posted by PurpleSensation

Delta printer Dimenssional error correction calculation. (ARTICLE) March 13, 2016 09:46AM |
Registered: 4 years ago Posts: 22 |

Hello everybody, after too much time calibrating manually the "diagonal rod" value which gives me optimal dimensional accuracy, I've decided to calculate the exact value for a given geometry and a measured dimensional error:

I have written all the process in a little text to share with all of you: Delta_dimensional_calibration.pdf

And I have implemented the method in a Thingiverse publication: [www.thingiverse.com]

This method worked wonderfully for me and a friend and I would like to have some opinions and feedback. Thank you very much.

Edited 1 time(s). Last edit at 03/14/2016 08:04PM by PurpleSensation.

I have written all the process in a little text to share with all of you: Delta_dimensional_calibration.pdf

And I have implemented the method in a Thingiverse publication: [www.thingiverse.com]

This method worked wonderfully for me and a friend and I would like to have some opinions and feedback. Thank you very much.

Edited 1 time(s). Last edit at 03/14/2016 08:04PM by PurpleSensation.

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 14, 2016 02:42AM |
Registered: 5 years ago Posts: 30 |

Dear,

Thanks for sharing your work with rest of us. Do you have any video showing the calibration process. I am using Marlin Firmware for my Delta Printer. I used autocalibration with inductive proximity probe and i am getting the part size slight bigger then the CAD model for example presently i use scale factor of 0.974 for X axis and 0.96 for Y axis in slicer software.

I will be happy to see a video if you can share and this will tell where to input the required values in Marlin.

Edited 1 time(s). Last edit at 03/14/2016 02:46AM by Khalid.

Thanks for sharing your work with rest of us. Do you have any video showing the calibration process. I am using Marlin Firmware for my Delta Printer. I used autocalibration with inductive proximity probe and i am getting the part size slight bigger then the CAD model for example presently i use scale factor of 0.974 for X axis and 0.96 for Y axis in slicer software.

I will be happy to see a video if you can share and this will tell where to input the required values in Marlin.

Edited 1 time(s). Last edit at 03/14/2016 02:46AM by Khalid.

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 14, 2016 05:50AM |
Registered: 5 years ago Posts: 30 |

In addition to the above attached pls see the existing parameters settings of my Delta Printer. There are two types of parameters: a) Towers Position Correction and b) Tower radius corrections. Can you pls tell:

1- Should i print the Hexagon keeping the existing parameters of my Delta Printer ( attached image)

2- What is "L" in the Excel sheet and how can i measure it?

1- Should i print the Hexagon keeping the existing parameters of my Delta Printer ( attached image)

2- What is "L" in the Excel sheet and how can i measure it?

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 14, 2016 08:42AM |
Registered: 4 years ago Posts: 22 |

Thanks Khalid for your commentary. It's a very good idea to output the particular parameters for Marlin and Repetier Firmware in the Excel file, I'll work on it.

The Hexagon can be printed with all your particular parameters but the diagonal rod ones. I', not sure if Marlin let you modify particularly the x,y and z diagonal rod length without modifying the source code, but for printing the Hexagon you must have equal distance on the three of them. Them you must print the Hexagon.

The distance L for the particular case of the Hexagon piece is the half of the distance between faces that is supposed to measure. Lx,Ly and Lx are the half of the real distance you measure for each tower.

(WHY THE HALF?: because the calculation needs to work with a distance from the centre of the bed toward the towers).

The actual output of the excel file is:

The new diagonal rod value you must use, which is the mean of the three new values.

The difference (in mm) of each (x,y and z) diagonal rod and the mean of the three.

In Repetier firmware the use of this data is direct because it have specific fields to modify that.

In Marlin I'm sure you can set a particular diagonal rod value for each tower, but I'm not sure if it's necessary or not to modify the source code. You can start using the mean given by the excel as the parameter "Diagonal rod length".

I'll work on it and I'll try to make a video, I also will edit the article to extend it and explain the process with some images.

I also will make an output with the parameters for Repetier and Marlin, I'm sending you a private in the moment as it is done.

Thank you very much.

The Hexagon can be printed with all your particular parameters but the diagonal rod ones. I', not sure if Marlin let you modify particularly the x,y and z diagonal rod length without modifying the source code, but for printing the Hexagon you must have equal distance on the three of them. Them you must print the Hexagon.

The distance L for the particular case of the Hexagon piece is the half of the distance between faces that is supposed to measure. Lx,Ly and Lx are the half of the real distance you measure for each tower.

(WHY THE HALF?: because the calculation needs to work with a distance from the centre of the bed toward the towers).

The actual output of the excel file is:

The new diagonal rod value you must use, which is the mean of the three new values.

The difference (in mm) of each (x,y and z) diagonal rod and the mean of the three.

In Repetier firmware the use of this data is direct because it have specific fields to modify that.

In Marlin I'm sure you can set a particular diagonal rod value for each tower, but I'm not sure if it's necessary or not to modify the source code. You can start using the mean given by the excel as the parameter "Diagonal rod length".

I'll work on it and I'll try to make a video, I also will edit the article to extend it and explain the process with some images.

I also will make an output with the parameters for Repetier and Marlin, I'm sending you a private in the moment as it is done.

Thank you very much.

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 14, 2016 08:05PM |
Registered: 4 years ago Posts: 22 |

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 15, 2016 12:33AM |
Registered: 4 years ago Posts: 443 |

Hi

I actually did something similar when I first started playing with deltas, only I created a spreadsheet that examined the effects of arm correction on the planar shape and not a single dimension.

The problem is best illustrated by considering a triangular lobe, this is a special shape that clearly appears to not be round yet if you use a simple pair of calipers it would measure as if it was round, i.e. the 'diameter' would measure the same in any direction, if your British you can test this simply by taking a 20p or 50p coin (both septagonal lobes) and try measuring it with your calipers.

Now, the problem is, if you consider a cylindrical part, which may initially be perfectly cylindrical yet the wrong size and you apply your correction method to the arms to 'correct' the diameter what will actually happen is the 'diameter' may become correct, but the part changes from a cylinder to a triangular lobe.... yes it will measure correct, but it wont be round.

The distortion happens to any shape and is actually a lot easier to identify by simple measureemnt, the further the arm lengths are from the optimum value the more 'triangular' the printed shape becomes, in a square shape this would be seen as a flaring at one end and the sides becoming concaved

conversely however, of your printer is printing lobed shapes, you can correct this problem by adjusting the arm length.

My findings basically concluded that arm length should only be used to correct inaccuracies with the planar geometry and never to correct for simple dimensional inaccuracies or to give you a better calibration factor.

RepRapPro Mendel 3 Tricolour

RepRapPro Fisher

-Carbon Arms

-Easy adjust Carriage+effector

-axis stiffness mods

HE3D -600 delta

-Duet 0.8.5

-PanelDue

-DC42 Height probe

-RobotDigg metal components

Simplyfy3D

RS Design Spark CAD

I actually did something similar when I first started playing with deltas, only I created a spreadsheet that examined the effects of arm correction on the planar shape and not a single dimension.

The problem is best illustrated by considering a triangular lobe, this is a special shape that clearly appears to not be round yet if you use a simple pair of calipers it would measure as if it was round, i.e. the 'diameter' would measure the same in any direction, if your British you can test this simply by taking a 20p or 50p coin (both septagonal lobes) and try measuring it with your calipers.

Now, the problem is, if you consider a cylindrical part, which may initially be perfectly cylindrical yet the wrong size and you apply your correction method to the arms to 'correct' the diameter what will actually happen is the 'diameter' may become correct, but the part changes from a cylinder to a triangular lobe.... yes it will measure correct, but it wont be round.

The distortion happens to any shape and is actually a lot easier to identify by simple measureemnt, the further the arm lengths are from the optimum value the more 'triangular' the printed shape becomes, in a square shape this would be seen as a flaring at one end and the sides becoming concaved

conversely however, of your printer is printing lobed shapes, you can correct this problem by adjusting the arm length.

My findings basically concluded that arm length should only be used to correct inaccuracies with the planar geometry and never to correct for simple dimensional inaccuracies or to give you a better calibration factor.

RepRapPro Mendel 3 Tricolour

RepRapPro Fisher

-Carbon Arms

-Easy adjust Carriage+effector

-axis stiffness mods

HE3D -600 delta

-Duet 0.8.5

-PanelDue

-DC42 Height probe

-RobotDigg metal components

Simplyfy3D

RS Design Spark CAD

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 15, 2016 09:14AM |
Registered: 4 years ago Posts: 22 |

You are right in the theory, however there are some points that make that effect not to affect to the domestic user using this method:

-Shape inaccuracy after/before calibrating is on the order/under the order of the usual printer resolution for a Nema17 motor supposing we are correcting around 2% dimensional error max.

-You might want to use a method like least squares (for example) to calibrate ALL the possible parameters of the printer, but this is useless because the measurement error+plastic dilation error will make you never converge.

-To calibrate a 3d printer the best way to do it is first, calibrate planar shape, modifying parameters until you get an homogeneous centred parabola. Then calibrate dimensional error, because a little correction on dimensional error via diagonal rod value does not affect really hard to planar shape, but the rest of the parameters does. So for the domestic user is much easy to converge on a good quality printing for the precision magnitude of those printers (around 0.4 mm on the center).

I invite you to share your results and compare them, so we can bring easy precision to domestic 3d printers.

-Shape inaccuracy after/before calibrating is on the order/under the order of the usual printer resolution for a Nema17 motor supposing we are correcting around 2% dimensional error max.

-You might want to use a method like least squares (for example) to calibrate ALL the possible parameters of the printer, but this is useless because the measurement error+plastic dilation error will make you never converge.

-To calibrate a 3d printer the best way to do it is first, calibrate planar shape, modifying parameters until you get an homogeneous centred parabola. Then calibrate dimensional error, because a little correction on dimensional error via diagonal rod value does not affect really hard to planar shape, but the rest of the parameters does. So for the domestic user is much easy to converge on a good quality printing for the precision magnitude of those printers (around 0.4 mm on the center).

I invite you to share your results and compare them, so we can bring easy precision to domestic 3d printers.

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 15, 2016 12:00PM |
Registered: 6 years ago Posts: 14,422 |

In RepRapFirmware, you can also make dimensional corrections using the M579 command, see [reprap.org]. I don't know whether this approach or adjusting the diagonal rod length is better for maintaining straight lines.

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 15, 2016 12:35PM |
Registered: 4 years ago Posts: 22 |

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) March 19, 2016 09:47PM |
Registered: 6 years ago Posts: 153 |

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 27, 2017 01:16PM |
Registered: 2 years ago Posts: 8 |

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 27, 2017 01:49PM |
Registered: 6 years ago Posts: 14,422 |

QuoteVido

I know that thread is old but if you would like to really calibrate delta check this video sadly it only works on repetier but hope for now

Here's a video of an easier way that only works with RepRapFirmware: [youtube.com]

Edited 2 time(s). Last edit at 10/27/2017 01:50PM by dc42.

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 29, 2017 08:55PM |
Registered: 2 years ago Posts: 8 |

Right, so I did not know that IR works on glass or does it probe surface under the glass ? But thanks for sharing and I assume that this printer is yours so where did you obtain this sensor ? Tnx

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 30, 2017 06:56AM |
Registered: 6 years ago Posts: 14,422 |

QuoteVido

Right, so I did not know that IR works on glass or does it probe surface under the glass ? But thanks for sharing and I assume that this printer is yours so where did you obtain this sensor ? Tnx

Differential IR works on glass with some caveats, e.g. don't coat the glass with anything (you can print good PLA filaments onto uncoated glass), and put a black backing underneath it. However, I've now switched to a nozzle-contact Z probe, see [duet3d.com]. It's available from the duet3d.com shop. It uses the same 25-second auto calibration procedure, and it works with any bed surface.

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 30, 2017 07:30AM |
Registered: 4 years ago Posts: 22 |

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) October 30, 2017 08:28AM |
Registered: 6 years ago Posts: 14,422 |

It's slightly OT I agree, but the mathematical model used for auto calibration is built into the firmware, so IMO it has some relevance. I was responding to the video linked to by Vido rather than to your original post.

If there are XY scaling errors when the delta radius and tower steps/mm have been calibrated, those are generally caused by the effector tilting as it translates in the XY plane, and the geometrical errors that are causing it to tilt need to be addressed. So correcting for them by adjusting the diagonal rod lengths is somewhat dubious - always assuming that the errors weren't caused by using different length diagonal rods. We prefer to correct for small XY scaling errors using the M579 command.

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

If there are XY scaling errors when the delta radius and tower steps/mm have been calibrated, those are generally caused by the effector tilting as it translates in the XY plane, and the geometrical errors that are causing it to tilt need to be addressed. So correcting for them by adjusting the diagonal rod lengths is somewhat dubious - always assuming that the errors weren't caused by using different length diagonal rods. We prefer to correct for small XY scaling errors using the M579 command.

Large delta printer [miscsolutions.wordpress.com], Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].

Re: Delta printer Dimenssional error correction calculation. (ARTICLE) August 26, 2018 10:54AM |
Registered: 4 years ago Posts: 57 |

Thanks for handling this topic.

My Delta printer with LERDGE board set with the calculated correction factors A, B & C came close enough to exact.

I'm happy with 0,2 mm tolerance field.

One remark from my side: Nozzle diameters can vary quite a bit, especially the cheap Chinese ones. This makes that all outer dimension can get bigger and all inner dimensions smaller if a hole is not 0,4mm but for example 0,44.

If all dimensions are bigger or all dimensions are smaller, just play around with the nozzle diameter a little; it will do miracles.

My Delta printer with LERDGE board set with the calculated correction factors A, B & C came close enough to exact.

I'm happy with 0,2 mm tolerance field.

One remark from my side: Nozzle diameters can vary quite a bit, especially the cheap Chinese ones. This makes that all outer dimension can get bigger and all inner dimensions smaller if a hole is not 0,4mm but for example 0,44.

If all dimensions are bigger or all dimensions are smaller, just play around with the nozzle diameter a little; it will do miracles.

Sorry, only registered users may post in this forum.