Auto-Calibration - $100 Bounty and Bragging Rights
-
- ULTIMATE 3D JEDI
- Posts: 2417
- Joined: Mon Mar 26, 2012 1:44 pm
- Location: Redmond WA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
The problem with correcting the Z-Height vs correcting the actual geometry (or accounting for it in software) is that you are ignoring the introduced X and Y error.
But it's probably fine if the geometric error is small.
But it's probably fine if the geometric error is small.
Printer blog http://3dprinterhell.blogspot.com/
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I was planning on investigating my own autocalibration idea, but my R2 build has been held up and at this point I would just like to get the printer assembled and printing stuff. Someone else can explore my idea if they want.
My scheme is really simple, but the one drawback is that it needs to be calibrated once before it will work.
Here's the idea I have: The back side of the borosilicate glass is coated with a metal like a mirror. The effector hot end is installed a pickup from a CD player. The CD pickup is read as the effector is lowered and a certain height can be established based on the reflection from the mirror. This value will be the same for that height at any position along the surface. This will be used to form an array of points a small distance from the build surface that has the same shape as the surface. This way nothing needs to touch the glass to establish the shape.
Once the shape of the glass is measured, the user has to calibrate the distance from the CD pickup to the glass, perhaps by simply manually measuring it somehow, or microstepping down until the nozzle touches the glass. As long as you don't replace or change the nozzle, the calibration will be one time only. If you play with the nozzle, you would need to recalibrate the height at one point and use that.
This could probably also be achieved using a simple LED with a light guide and an optical pickup of some sort. You could probably place them at 45 degree angles to the build surface on the effector and use the reflectivity of the glass itself to bounce the light. The CD pickup may be overkill, but they typically have some controllable optics inside that may be useful for gaining precision.
I think it would work.
Note:. For all I know this is already something someone is working on? I have not looked to see
My scheme is really simple, but the one drawback is that it needs to be calibrated once before it will work.
Here's the idea I have: The back side of the borosilicate glass is coated with a metal like a mirror. The effector hot end is installed a pickup from a CD player. The CD pickup is read as the effector is lowered and a certain height can be established based on the reflection from the mirror. This value will be the same for that height at any position along the surface. This will be used to form an array of points a small distance from the build surface that has the same shape as the surface. This way nothing needs to touch the glass to establish the shape.
Once the shape of the glass is measured, the user has to calibrate the distance from the CD pickup to the glass, perhaps by simply manually measuring it somehow, or microstepping down until the nozzle touches the glass. As long as you don't replace or change the nozzle, the calibration will be one time only. If you play with the nozzle, you would need to recalibrate the height at one point and use that.
This could probably also be achieved using a simple LED with a light guide and an optical pickup of some sort. You could probably place them at 45 degree angles to the build surface on the effector and use the reflectivity of the glass itself to bounce the light. The CD pickup may be overkill, but they typically have some controllable optics inside that may be useful for gaining precision.
I think it would work.
Note:. For all I know this is already something someone is working on? I have not looked to see
- Eaglezsoar
- ULTIMATE 3D JEDI
- Posts: 7159
- Joined: Sun Apr 01, 2012 5:26 pm
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Brian, your concept is one of the best I have read but depends on the back of the glass being absolutely parallel to the front surface.
“ Do Not Regret Growing Older. It is a Privilege Denied to Many. ”
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Is there a lot of variance in the tolerance of the thickness of the glass? I am not an expert in glass, but I suspect that if they can make contact lenses fro the Hubble, they can polish a flat piece of glass with parallel sides. It's just a matter of cost.Eaglezsoar wrote:Brian, your concept is one of the best I have read but depends on the back of the glass being absolutely parallel to the front surface.
- Eaglezsoar
- ULTIMATE 3D JEDI
- Posts: 7159
- Joined: Sun Apr 01, 2012 5:26 pm
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I'm not sure if there is a variance or not, I just wanted to throw it out there for discussion. I still think it is the best idea I have heard of.Brian wrote:Is there a lot of variance in the tolerance of the thickness of the glass? I am not an expert in glass, but I suspect that if they can make contact lenses fro the Hubble, they can polish a flat piece of glass with parallel sides. It's just a matter of cost.Eaglezsoar wrote:Brian, your concept is one of the best I have read but depends on the back of the glass being absolutely parallel to the front surface.
“ Do Not Regret Growing Older. It is a Privilege Denied to Many. ”
Re: Auto-Calibration - $100 Bounty and Bragging Rights
True, any time you compensate instead of correct errors you are shifting it somewhere else. The key is shift it where you have error to spare or just don't care.Polygonhell wrote:The problem with correcting the Z-Height vs correcting the actual geometry (or accounting for it in software) is that you are ignoring the introduced X and Y error.
But it's probably fine if the geometric error is small.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I wonder what nanobots eat.Eaglezsoar wrote:Why don't we go to the set of Startrek, get some of the self replicating nano bots, train them to walk on the bed and transmit the coordinates, after
mapping the whole bed they can line up on the glass binders until needed again. We may have to buy them some heatproof booties, I hear that
their little feet have trouble with heat.
If we get this to work, Mhackney can go back to writing in English.
Ok, Saturday, I woke up thinking that "auto-calibration" or the proposed "auto-bed compensation" was going to be very complex. It is.
Essentially, if you pick arbitrary points on the bed to measure, you have to decide right there and then that there is a straight line between each point. While we might be dealing with sub-thousandths, it might be interesting to be able to set how many points you might measure based on the variability of the bed. I see a future for someone who makes aerospace-toleranced heated beds....
Last edited by JohnStack on Wed May 21, 2014 3:02 pm, edited 1 time in total.
Technologist, Maker, Willing to question conventional logic
http://dropc.am/p/KhiI1a
http://dropc.am/p/KhiI1a
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I had a giant lighted bed thrown in my office left from me predicessor in a 'storage' cubical that just got cleaned out this morning, and had me thinking of a similar modification to put a backing on the glass and angle leds at the edge to reflect off of it and make a lighted hot bed. A higher reflectivity backing would just make it an even better effect.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Nano-crops from nano-farmerbots.JohnStack wrote: I wonder what nanobots eat.
- Eaglezsoar
- ULTIMATE 3D JEDI
- Posts: 7159
- Joined: Sun Apr 01, 2012 5:26 pm
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Makerbots.JohnStack wrote:I wonder what nanobots eat.Eaglezsoar wrote:Why don't we go to the set of Startrek, get some of the self replicating nano bots, train them to walk on the bed and transmit the coordinates, after
mapping the whole bed they can line up on the glass binders until needed again. We may have to buy them some heatproof booties, I hear that
their little feet have trouble with heat.
If we get this to work, Mhackney can go back to writing in English.
“ Do Not Regret Growing Older. It is a Privilege Denied to Many. ”
Re: Auto-Calibration - $100 Bounty and Bragging Rights
*sigh* That was definitely better..Eaglezsoar wrote:JohnStack wrote:Makerbots.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I have a good friend who does exactly this for laser optics. I didn't want to complicate my description above, but basically you fit a polynomial to the point grid. This is a one time operation and provide a formula for calculating the Z offset for any X, Y position.JohnStack wrote:Eaglezsoar wrote: Essentially, if you pick arbitrary points on the bed to measure, you have to decide right there and then that there is a straight line between each point. While we might be dealing with sub-thousandths, it might be interesting to be able to set how many points you might measure based on the variability of the bed. I see a future for someone who makes aerospace-toleranced heated beds....
All, true it is better to make the mechanics flawless but even multi $100K laser optical systems use this form of compensation as temperature and other environmental things affect the optics. The goal is to get the printer mechanics to <1mm across the bed surface and then apply the compensation. This will ensure good 1st layer adhesion and any error in X and Y is really, really small. Much smaller than the variation of the bead thickness as it pulses out of the nozzle.
Sublime Layers - my blog on Musings and Experiments in 3D Printing Technology and Art
Start Here:
A Strategy for Successful (and Great) Prints
Strategies for Resolving Print Artifacts
The Eclectic Angler
- Captain Starfish
- Printmaster!
- Posts: 950
- Joined: Tue Dec 10, 2013 5:24 am
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Lordbinky, mhackney, thank you. Either I've managed to dial my geometry in sufficiently tight or I'm not printing parts huge enough to notice the spheroidal base issue. Yet. But I get it now - my assumption has been it's the base but that the geometry of the delta was good. ASS of U and ME strikes again!
Still, if that's all that's being dealt with, the three points on the perimeter and one in the centre should be enough, surely? The calculations aren't /that/ strenuous that the Atmel couldn't handle it, surely. Even if they were a bit much - store the points in the EEPROM and have the slicer or the printer controller do the calculations and offsets on the fly, same as MatterControl does its auto bed levelling.
Still, if that's all that's being dealt with, the three points on the perimeter and one in the centre should be enough, surely? The calculations aren't /that/ strenuous that the Atmel couldn't handle it, surely. Even if they were a bit much - store the points in the EEPROM and have the slicer or the printer controller do the calculations and offsets on the fly, same as MatterControl does its auto bed levelling.
- Demolishun
- Printmaster!
- Posts: 147
- Joined: Wed May 07, 2014 4:28 am
- Location: SE Idaho, USA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I don't have anything to add, but last night I was thinking about auto calibrating as I was manually calibrating my machine. I wonder if a touchscreen overlay could work? Something that is pressure sensitive and can be laid temporarily on the bed maybe. It would have to have a known uniform thickness though so that could subtracted. You could also probably want some kind of auto adjust for some non-contact end of travel switches. I have been thinking about putting in some hall effect switches so that would be part way there.
Challenge yourself and be a more awesome you.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
It would need to be a resistive touchscreen to cut costs. Using flat force sensors makes the most sense out of all the proposals.Demolishun wrote:I don't have anything to add, but last night I was thinking about auto calibrating as I was manually calibrating my machine. I wonder if a touchscreen overlay could work? Something that is pressure sensitive and can be laid temporarily on the bed maybe. It would have to have a known uniform thickness though so that could subtracted. You could also probably want some kind of auto adjust for some non-contact end of travel switches. I have been thinking about putting in some hall effect switches so that would be part way there.
-
- Printmaster!
- Posts: 205
- Joined: Sun Feb 09, 2014 10:15 pm
- Location: Wakefield, MA
- Contact:
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Well, I've been sitting on and incubating my own calibration idea, hoping for bucks and/or prestige, but it's clear I don't have time to take it into reality (not in the near future anyway). So, I'll throw it out and see what y'all think.
Basically, it's a way of detecting exactly when the nozzle hits the glass; I'm assuming (probably incorrectly) that once that is accomplished then implementing the required software will be fairly straightforward. So:
1) Get a thin strip of unfinished, flat, springy metal, perhaps 5mm x 50mm, and springy enough so that, when held on one end, a light touch (e.g. the weight of a penny) will displace the tip a millimeter or so. Bonus points if it doesn't corrode (e.g. aluminum probably wouldn't be good).
2) Mount the strip under the end effector platform, so that it extends at a shallow angle downwards (less than 10 degrees?) from the mounting point, with the far end suspended about a millimeter under the tip of the nozzle. The shallower the angle the better, although the mounting device cannot extend below the tip of the nozzle. It shouldn't be too hard to design a 3D-printable part for this.
Now, when the nozzle is lowered to the glass, the strip will hit the glass first, and then be bent upwards until it touches the nozzle. Raise the nozzle a hair, and the strip will stop touching the nozzle.
"What good is that?", you say. Well:
3) Run two wires from a digital input on the RAMBo down to the effector platform. Attach one wire to the metal strip, and the other to the metal of the hot end (below the PEEK), and configure the hardware/software to detect the contact closure when the strip touches the nozzle. Add software, and you can calibrate.
"But then you can't print because there's this strip in the way of the nozzle!", you gripe. Well:
4) Make the mounting point for the strip clip onto the effector platform, with the wire from the RAMBo ending at a contact on the platform, and the mounting point having a matching contact, with a second wire down to the actual measuring strip. Time to calibrate? Well, then slide the calibration mount onto the platform, run the calibration software, slide it off, and then print.
"But I don't want to have to put on or remove anything!", you complain. Well:
5) Have the mounting point be a mechanism, with the strip mounted on a pivot. The pivot moves through (about) 270 degrees, with one end of the motion holding the strip under the nozzle, and the other end of the motion having the strip pointed straight up, parallel to the hot end and out of the way. Use small magnets on the moving and fixed portions to hold things in place at the ends of the motion. Then, flip it down before calibrating, and up before printing.
"But I want it all to be automatic!", you moan. Well:
6) Have a second device mounted at the edge of the heated bed, between two of the towers, on the same side of the effector platform as the strip mounter. The device will end in a fixed, horizontal pin, parallel to the strip mounter's pivot axis. The pin and the strip mounter will be designed so that, by moving the effector platform, you can use the pin to pull the strip away from its current magnet and pivot it around to attach it to the other magnet. Then, have your calibration routine include canned G-code for moving the strip under the nozzle before calibration, and then up and out of the way before printing.
"But what if plastic on the nozzle prevents the contact?", you whine. Well:
7) Before you start the calibrate/print cycle, clean the tip of the nozzle.
"But..."
SHUT UP!!!!!

Basically, it's a way of detecting exactly when the nozzle hits the glass; I'm assuming (probably incorrectly) that once that is accomplished then implementing the required software will be fairly straightforward. So:
1) Get a thin strip of unfinished, flat, springy metal, perhaps 5mm x 50mm, and springy enough so that, when held on one end, a light touch (e.g. the weight of a penny) will displace the tip a millimeter or so. Bonus points if it doesn't corrode (e.g. aluminum probably wouldn't be good).
2) Mount the strip under the end effector platform, so that it extends at a shallow angle downwards (less than 10 degrees?) from the mounting point, with the far end suspended about a millimeter under the tip of the nozzle. The shallower the angle the better, although the mounting device cannot extend below the tip of the nozzle. It shouldn't be too hard to design a 3D-printable part for this.
Now, when the nozzle is lowered to the glass, the strip will hit the glass first, and then be bent upwards until it touches the nozzle. Raise the nozzle a hair, and the strip will stop touching the nozzle.
"What good is that?", you say. Well:
3) Run two wires from a digital input on the RAMBo down to the effector platform. Attach one wire to the metal strip, and the other to the metal of the hot end (below the PEEK), and configure the hardware/software to detect the contact closure when the strip touches the nozzle. Add software, and you can calibrate.
"But then you can't print because there's this strip in the way of the nozzle!", you gripe. Well:
4) Make the mounting point for the strip clip onto the effector platform, with the wire from the RAMBo ending at a contact on the platform, and the mounting point having a matching contact, with a second wire down to the actual measuring strip. Time to calibrate? Well, then slide the calibration mount onto the platform, run the calibration software, slide it off, and then print.
"But I don't want to have to put on or remove anything!", you complain. Well:
5) Have the mounting point be a mechanism, with the strip mounted on a pivot. The pivot moves through (about) 270 degrees, with one end of the motion holding the strip under the nozzle, and the other end of the motion having the strip pointed straight up, parallel to the hot end and out of the way. Use small magnets on the moving and fixed portions to hold things in place at the ends of the motion. Then, flip it down before calibrating, and up before printing.
"But I want it all to be automatic!", you moan. Well:
6) Have a second device mounted at the edge of the heated bed, between two of the towers, on the same side of the effector platform as the strip mounter. The device will end in a fixed, horizontal pin, parallel to the strip mounter's pivot axis. The pin and the strip mounter will be designed so that, by moving the effector platform, you can use the pin to pull the strip away from its current magnet and pivot it around to attach it to the other magnet. Then, have your calibration routine include canned G-code for moving the strip under the nozzle before calibration, and then up and out of the way before printing.
"But what if plastic on the nozzle prevents the contact?", you whine. Well:
7) Before you start the calibrate/print cycle, clean the tip of the nozzle.
"But..."
SHUT UP!!!!!

-
- Printmaster!
- Posts: 205
- Joined: Sun Feb 09, 2014 10:15 pm
- Location: Wakefield, MA
- Contact:
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Whoa. Way to kill a thread.
In case my joke wasn't clear; I was trying to be funny about having response after response to someone's concerns, but finally running out of answers and patience with the imagined interrogator.
I think this effort is really important, and would love to hear any and all comments about my idea. And, assuming my idea isn't clearly the be-all and end-all of calibration, I'd love to hear what others are coming up with.
Dan
In case my joke wasn't clear; I was trying to be funny about having response after response to someone's concerns, but finally running out of answers and patience with the imagined interrogator.
I think this effort is really important, and would love to hear any and all comments about my idea. And, assuming my idea isn't clearly the be-all and end-all of calibration, I'd love to hear what others are coming up with.
Dan
-
- ULTIMATE 3D JEDI
- Posts: 2417
- Joined: Mon Mar 26, 2012 1:44 pm
- Location: Redmond WA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
The Force sensing resistors seem like the most promising approach for actually detecting the bed.
Though I'm sure your idea would at least partly work, I'd be worried about repeatabilty, though it's probably no worse than the end stops most people use. One similar approach (i.e. using the hotend as the sensor) to what you are proposing is using a reed or microswitch above the hotend, and allowing the hotend to move upwards very slightly to trigger it.
Unfortunately sensing the bed is the easy bit, you really need to correctly model the printer geometry (because very few printers are built perfectly) the most promising approach for actually solving the problem involves reading many points on the bed then adjusting the model of the printer (tower positions, arm lengths, delta radius etc) and repeating until you converge on a solution. There is a Marlin branch that does this, however this is far from foolproof, iterative algorithms like this suffer from issues with local minima and oscillation. But it's the right approach.
The other approach basically tries to solve the problem by basically assuming the bed is not flat, the issue with this is while it's not very hard to continuously adjust Z, on a delta any significant Z error caused by bad geometry is coupled to X and Y error, and you can neither measure, nor correct those.
Though I'm sure your idea would at least partly work, I'd be worried about repeatabilty, though it's probably no worse than the end stops most people use. One similar approach (i.e. using the hotend as the sensor) to what you are proposing is using a reed or microswitch above the hotend, and allowing the hotend to move upwards very slightly to trigger it.
Unfortunately sensing the bed is the easy bit, you really need to correctly model the printer geometry (because very few printers are built perfectly) the most promising approach for actually solving the problem involves reading many points on the bed then adjusting the model of the printer (tower positions, arm lengths, delta radius etc) and repeating until you converge on a solution. There is a Marlin branch that does this, however this is far from foolproof, iterative algorithms like this suffer from issues with local minima and oscillation. But it's the right approach.
The other approach basically tries to solve the problem by basically assuming the bed is not flat, the issue with this is while it's not very hard to continuously adjust Z, on a delta any significant Z error caused by bad geometry is coupled to X and Y error, and you can neither measure, nor correct those.
Printer blog http://3dprinterhell.blogspot.com/
- Demolishun
- Printmaster!
- Posts: 147
- Joined: Wed May 07, 2014 4:28 am
- Location: SE Idaho, USA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
A lot of modern game pads use pressure sensitive buttons (mostly because they use analog inputs on a microcontroller). So it is possible one could rob the rubber springy part of the joystick button, create a simple PCB with game pad type traces to mate with the rubber part, and hook that to a simple voltage divider on an analog input to the 3D printer control board. Then an end effector could be created/printed that hooks onto the sensor to act as a Z probe. Once the cal is done then remove the end effector and start printing. The "sensor" hardware would stay.
This could be fairly repeatable and garage tech way to get a nice pressure sensor. You could even put 3 on there too. Some kind of tri-probe setup to get more accuracy. Might a pain to align the 3 sensors though.
I also thought if there was some kind of cheapo interferometer that could work too. Then again a laser and some optics with a good 3d printed design...
Distance sensors with any accuracy tend to be spendy though.
This could be fairly repeatable and garage tech way to get a nice pressure sensor. You could even put 3 on there too. Some kind of tri-probe setup to get more accuracy. Might a pain to align the 3 sensors though.
I also thought if there was some kind of cheapo interferometer that could work too. Then again a laser and some optics with a good 3d printed design...
Distance sensors with any accuracy tend to be spendy though.
Challenge yourself and be a more awesome you.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I don't see any inherent benefits that other solutions provide beyond the mounted microswitch. I agree ease of installation, repeatability, cost are definitely important factors, but without any added functionality of other sensing solutions, it makes them interchangeable and to me a minor part of the final solution. Being able to break any developed algorithmic or heuristic based methods will be important to getting a more reliable solution and provide escapes from the local minima/maxima that iterative solutions bring.
On that note, a way to break out of those constraints I was thinking of is the use of an additional microswitch in a bump sensor configuration. If you provided poles opposite the towers at a fixed known distance, you could use that to help identify effector distance moved in the X/Y which could be such a variable to escape those incorrectly converged settings that occur in the iterative processes.
On that note, a way to break out of those constraints I was thinking of is the use of an additional microswitch in a bump sensor configuration. If you provided poles opposite the towers at a fixed known distance, you could use that to help identify effector distance moved in the X/Y which could be such a variable to escape those incorrectly converged settings that occur in the iterative processes.
- Demolishun
- Printmaster!
- Posts: 147
- Joined: Wed May 07, 2014 4:28 am
- Location: SE Idaho, USA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
I have read this several times, but I cannot understand what you are talking about. Either I have not read enough college papers using a thesaurus to get to the English, I am not drunk enough, or I was not around for the sixties...lordbinky wrote:I don't see any inherent benefits that other solutions provide beyond the mounted microswitch. I agree ease of installation, repeatability, cost are definitely important factors, but without any added functionality of other sensing solutions, it makes them interchangeable and to me a minor part of the final solution. Being able to break any developed algorithmic or heuristic based methods will be important to getting a more reliable solution and provide escapes from the local minima/maxima that iterative solutions bring.
On that note, a way to break out of those constraints I was thinking of is the use of an additional microswitch in a bump sensor configuration. If you provided poles opposite the towers at a fixed known distance, you could use that to help identify effector distance moved in the X/Y which could be such a variable to escape those incorrectly converged settings that occur in the iterative processes.

Maybe a drawing would help me understand what is wrong with the suggested approaches versus the new method you are discussing?
Challenge yourself and be a more awesome you.
-
- ULTIMATE 3D JEDI
- Posts: 2417
- Joined: Mon Mar 26, 2012 1:44 pm
- Location: Redmond WA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
OK let me try and explain.
The "problem" with deltas printers is that all three axis of motion X/Y/Z require motion of all 3 carriages, i.e. they are coupled, so any error in any variable affects all 3 axis.
The only axis you can reliably measure is Z (whether using a Microswitch, FSR, Optical distance sensor, sonar, piece of string or whatever) - the measurement is the easy bit.
The problem is taking those measurements and establishing which of the many variables in setup is incorrect and how to correct them is hard.
The current Marlin branch I mentioned above has a model that include Delta Radius, Arm length, 3x Tower position 3x Tower Orientation, that's 8 variables right there, and changing any one of them affects Z at various points on the surface, a more complete model would include 6x arm lengths instead of 1, 3x arm separation, 3x2x Tower tilts.
Since you only have error in Z you can't isolate individual contributing variables, so you have to solve for the entire system, solving none linear systems like this is usually done using an iterative model, i.e. you measure the error perterb one or more possible contributing variables, see if things get better or worse, now imagine a big plane with lots of dips in it , with one big one at the center, what the algorithm does is effectively drop a ball onto the plane and let gravity decide where it settles, you are trying to find the deepest divot in the sheet, but depending on where you start you could end up in another divot, and you have no way to know from the bottom of that divot that another divot which is deeper exists. The real problem is in a lot more dimensions, but the principle is basically the same.
On a cartesian printer this problem does not exist, each axis is coupled to only one driving axis, so to correct for error in Z you can literally just map the bed and offset the points.
The "problem" with deltas printers is that all three axis of motion X/Y/Z require motion of all 3 carriages, i.e. they are coupled, so any error in any variable affects all 3 axis.
The only axis you can reliably measure is Z (whether using a Microswitch, FSR, Optical distance sensor, sonar, piece of string or whatever) - the measurement is the easy bit.
The problem is taking those measurements and establishing which of the many variables in setup is incorrect and how to correct them is hard.
The current Marlin branch I mentioned above has a model that include Delta Radius, Arm length, 3x Tower position 3x Tower Orientation, that's 8 variables right there, and changing any one of them affects Z at various points on the surface, a more complete model would include 6x arm lengths instead of 1, 3x arm separation, 3x2x Tower tilts.
Since you only have error in Z you can't isolate individual contributing variables, so you have to solve for the entire system, solving none linear systems like this is usually done using an iterative model, i.e. you measure the error perterb one or more possible contributing variables, see if things get better or worse, now imagine a big plane with lots of dips in it , with one big one at the center, what the algorithm does is effectively drop a ball onto the plane and let gravity decide where it settles, you are trying to find the deepest divot in the sheet, but depending on where you start you could end up in another divot, and you have no way to know from the bottom of that divot that another divot which is deeper exists. The real problem is in a lot more dimensions, but the principle is basically the same.
On a cartesian printer this problem does not exist, each axis is coupled to only one driving axis, so to correct for error in Z you can literally just map the bed and offset the points.
Printer blog http://3dprinterhell.blogspot.com/
- Demolishun
- Printmaster!
- Posts: 147
- Joined: Wed May 07, 2014 4:28 am
- Location: SE Idaho, USA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Okay, that is a explanation I can get my head around. Thanks.
So doing a point check with a sensor of some sort really is not a whole lot of info to go on. If we had a ball end (UHMW or smooth stainless) with a fine pressure sensor on it that could map the surface quickly help? Like have it do concentric sweeps around the entire surface.
Also, measuring some parts on the machine could help. Like measuring the absolute angles between the towers would be a start. Also the angle of the towers to the table might help fine tune things too. Also the perpendicularness of the table to the towers would be something to measure too.
Another issue that bothers me is I am not sure how repeatable the end stop switches are. I think in the long run a hall effect switch would be better.
Yeah, okay, I am seeing the problem a little clearer now.
One question though: How accurate does it need to be to be good enough? We will never arrive at perfect, but what is close enough to perfect? And how to we measure that? LOL!
So doing a point check with a sensor of some sort really is not a whole lot of info to go on. If we had a ball end (UHMW or smooth stainless) with a fine pressure sensor on it that could map the surface quickly help? Like have it do concentric sweeps around the entire surface.
Also, measuring some parts on the machine could help. Like measuring the absolute angles between the towers would be a start. Also the angle of the towers to the table might help fine tune things too. Also the perpendicularness of the table to the towers would be something to measure too.
Another issue that bothers me is I am not sure how repeatable the end stop switches are. I think in the long run a hall effect switch would be better.
Yeah, okay, I am seeing the problem a little clearer now.
One question though: How accurate does it need to be to be good enough? We will never arrive at perfect, but what is close enough to perfect? And how to we measure that? LOL!

Challenge yourself and be a more awesome you.
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Measurements will help you get off to a better start, and if they were all taken into account in the software you could get more accurate movement. Get them wrong and it will easily get worse though.
Endstop switches are also really easy to change to magnetics, and if you get the Hall effect sensor by itself it's only a ~$3 upgrade.
I suppose you'd stop with corrections when the error is less than the accuracy of the movements...then it's upgrade time for the components!
Endstop switches are also really easy to change to magnetics, and if you get the Hall effect sensor by itself it's only a ~$3 upgrade.
I suppose you'd stop with corrections when the error is less than the accuracy of the movements...then it's upgrade time for the components!

- Demolishun
- Printmaster!
- Posts: 147
- Joined: Wed May 07, 2014 4:28 am
- Location: SE Idaho, USA
Re: Auto-Calibration - $100 Bounty and Bragging Rights
Well I am looking at the design of delta robots here:
http://forums.trossenrobotics.com/tutor ... tics-3276/
I have always been interested in IK so I may have to build a separate robot and experiment. I do want a second delta robot to do clays anyway. I was thinking though that I could mock up a robot in a 3D engine and do testing on the math. That might be a quick way to do some "what if" type calibrating of the robot. It might be easier to just build the second robot anyway...
Time to get into my boxes of motors and start building another robot! It's replicator time! Everybody build now!
http://forums.trossenrobotics.com/tutor ... tics-3276/
I have always been interested in IK so I may have to build a separate robot and experiment. I do want a second delta robot to do clays anyway. I was thinking though that I could mock up a robot in a 3D engine and do testing on the math. That might be a quick way to do some "what if" type calibrating of the robot. It might be easier to just build the second robot anyway...
Time to get into my boxes of motors and start building another robot! It's replicator time! Everybody build now!
Challenge yourself and be a more awesome you.