Welcome! Log In Create A New Profile

Advanced

Tackling the good old "auto bed leveling" problem

Posted by SquigyXD 
Tackling the good old "auto bed leveling" problem
February 14, 2016 07:07AM
Greetings all

So, I've been building the same 3d printer for 2 years now (A reprap morgan) and although frustrating, I'm loving every second of it.
Alongside my (unfinished 3D printer), I started building a variant of the rostock mini for a family member. I find the concept of auto bed leveling appealing...not necessary, but more of a nice to have imho.

Now, the usual way of bed leveling is that probe that gets engaged by the belt and then it moves along the bed in the usual fashion,


There is alos a servo isk micro switch solotion like this

But more moving parts = more that can go wrong (imo)

Then I saw Steve Graber's video on YouTube link, this concept stayed stuck in the back of my mind, but wasn't exactly what I wanted (the tilting looked a tad wonkey...and he didn't provide links to the files)

After a while I saw the concept of using Force Sensing Resistors on the bed of the printer for bed leveling, brilliant expect for the fact that you could not use a heated bed (as the head would affect the resistors)


Seeing that I want to be able to upgrade the printer in the future with a heated bed< and took a liking to the FSR concept I kept searching....and came across edlep's FSR Groove Mount for a hot end on Thingiverse link

Finally a solution that I really like...until I started trying to source some FSR's. So I'm from South Africa, and our currency is shot recently, these ended up as a non viable solution.
I did not give up how ever, remember Steve Graber's system I talked about earlier (having a micro switch attached to the hot end) now I thought that would be a great concept if combined with this...so I did a quick mockup.

Ladies and gent I present to you an alternative solution to an already solved problem.


Simulation of the system

Unfortunately, seeing as my printer is not done yet I cant show a working prototype yet, so if anyone is interested in giving this a go give me a shout and I'll upload the files.

Any C&C is welcome, as this is my first post here on the forums.

Edited 3 time(s). Last edit at 02/14/2016 07:51AM by SquigyXD.
Re: Tackling the good old "auto bed leveling" problem
February 14, 2016 04:54PM
There are many different kinds of sensor that can be used for bed probing. Probing the bed with the nozzle itself solves some problems, but has its own. If you probe cold then there may be filament stuck to the bottom of the nozzle, causing a false height reading. If you probe hot then this damages some bed surfaces, for example BuildTak and probably also PEI.

There are several non contact sensing approaches. Some people use inductive sensors, which are cheap but only work at short distances to metal, so unsuitable for use with glass print beds over aluminium. I sell a differential IR sensor, which is small and light and works well with most bed surfaces. See my signature for more.

I am suspicious of any nozzle probing system that uses microswitches, because of the amount of motion needed to trigger them. But good luck with it anyway. I did an outline design for a system using a strain gauge to detect nozzle contact with the bed, and I may progress this idea in the future.

Btw there are printers using FSRS under a heated bed.



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

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Anonymous User
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 03:16AM
How about the repeatability of the sensors you are using ? None I see used here are designed for accurate positioning. A micro switch is for security, to avoid crashing the moving parts, not for positioning. See what is used in the industry (search for positioning sensors).
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 03:36AM
It is true that most proximity sensor are not designed to give reproducible trigger distances, but just to detect whether something is there or not. But I designed my IR height sensor to support accurate positioning. That is why it uses two IR beams instead of just one as in ordinary IR proximity sensors.

In practice, microswitches can give very reproducible results. What I don't like about them when used as head contact sensors is the amount of head movement needed to trigger them.



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

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 07:32AM
Hmmmm, but seeing as how microswitches can give "very reproducible results" is it possible to compensate for the "amount of head movement needed to trigger them" with the design/code?
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 11:55AM
Quote
SquigyXD
Hmmmm, but seeing as how microswitches can give "very reproducible results" is it possible to compensate for the "amount of head movement needed to trigger them" with the design/code?

I don't think so, because of the hysteresis built in to the switch. If you preload it so that a very small amount of movement will change over the switch contacts when the head presses against the bed, then the contacts won't change back when you raise the head again, leaving the probe in the triggered state.



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

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 01:06PM
I saw a video review of a commercial printer a while ago, too bad I can't remember which, that used electrical contact between the nozzle and 4 washers used to hold the bed corners.

To ensure the nozzle was clean the printed swiped it across some kind of brush coupled to the edge of the print bed.

Seems like a nice solution.
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 01:44PM
Quote
lhartmann
I saw a video review of a commercial printer a while ago, too bad I can't remember which, that used electrical contact between the nozzle and 4 washers used to hold the bed corners.

To ensure the nozzle was clean the printed swiped it across some kind of brush coupled to the edge of the print bed.

Seems like a nice solution.

Systems that can only probe in the corners of the bed are OK on a Cartesian printer if you can guarantee that both the bed and the plane of movement of the head relative to the bed are flat. No good if you want to compensate for the head sagging slightly near the middle of the X axis, or on a delta printer where you want to probe to do auto calibration.



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

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Anonymous User
Re: Tackling the good old "auto bed leveling" problem
February 21, 2016 02:13PM
Quote
dc42
It is true that most proximity sensor are not designed to give reproducible trigger distances, but just to detect whether something is there or not. But I designed my IR height sensor to support accurate positioning. That is why it uses two IR beams instead of just one as in ordinary IR proximity sensors.

In practice, microswitches can give very reproducible results. What I don't like about them when used as head contact sensors is the amount of head movement needed to trigger them.

You can modify a microswitch to remove the toggle mechanism by a simple spring leaf made out a gold plated beryllium as found in real Berg connectors or may be use a miniature push button like this one in the middle
Mini switch

Edited 2 time(s). Last edit at 02/22/2016 10:39AM by MKSA.
Anonymous User
Re: Tackling the good old "auto bed leveling" problem
February 27, 2016 03:05AM
Deleted, double post

Edited 1 time(s). Last edit at 02/27/2016 03:06AM by MKSA.
Re: Tackling the good old "auto bed leveling" problem
March 02, 2016 03:48AM
@dc42:
I hear you. I will have too keep that in mind then.

@MKSA:
Interesting. I'll look into that switch. I should be finishing up my printer soon(tm), so will be able to do a few tests/prototypes soon.
Re: Tackling the good old "auto bed leveling" problem
July 08, 2016 01:22PM
I have FSRs partly working under my heated bed. The trick I used is to insulate them from the bed with a piece of squishy cork; this also softens the head-hitting-glass part slightly. The other nice thing about having a probe that can work anywhere is that I can (in principle, still working out bugs) do experiments like mapping the actual effect of more-arcane delta calibration parameters on bed heights. Unfortunately Marlin does not currently support mesh bed maps to improve adhesion in the presence of uncorrectable warping, but the code is there and could probably be enabled without too much suffering.

The challenge with FSRs, or at least the challenge I've had so far, is that over an extremely short distance they drop from infinite resistance to a few hundred ohms. So getting a bed mount design that holds the bed firmly yet lets it move that small distance precisely when the nozzle hits it has been nontrivial. Life will improve if I break down and use an extra microcontroller and analog sensing to trigger when the bed is touched.

I should also point out that the Marlin firmware I'm using has a nasty bug that makes bed-probing movements operate linearly in stepper space, which produces weird curves in actual 3d effector space, and gives my effector an extra tendency to skid along the glass. It appears to be an easy-ish fix, but it's not in the release candidate.
Sorry, only registered users may post in this forum.

Click here to login