Mesh Bed Leveling

From RepRap
Revision as of 07:00, 6 October 2018 by Glenn (talk | contribs) (+cat)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Mesh Bed Leveling (or MBL) is a highly simplified method of compensating for an uneven (as opposed to simply tilted) print surface. MBL is especially useful in the case of a large bed, where it is more difficult to engineer a perfectly even surface. MBL is better used for an uneven bed, whereas Grid-Based Leveling is better suited for a flat but tilted bed. If grid-based leveling makes things worse (as it will with a sufficiently-uneven bed), you are likely to get better results with Mesh Bed Leveling.

Marlin 1.1.0 includes two options to perform Mesh Bed Leveling. In the first method, the G29 command is extended so the leveling procedure can be directed by the user from a host console (and UI) with (G29 S1 Start, G29 S2 Next, G29 S3 Xn Yn Zn Set Mesh Point, and G29 S4 Zn Set Z Offset). With the Manual Bed Leveling configuration option enabled, MBL can be performed entirely from the LCD controller, using the encoder to adjust Z and a click to set each point.

Mesh Bed Leveling uses a highly simplified method to measure and interpolate points on the bed and compensate for any measured discrepancies. It doesn't matter how the Z positions are collected or provided to the firmware. Various options exist. Manual measurement relies on the user to adjust the Z height until a paper or feeler gauge fits under the nozzle at each point. Automated measurement (as currently featured in Prusa Research's MK2 Marlin Firmware) relies on a bed probe to accomplish the same measurements using a probing procedure. In both cases, MBL collects a series of Z measurements relative to the flat plane.

MBL compensates for irregularities in the bed by simply raising or lowering Z at the current XY point, using a simple averaging of the slopes in X and Y, multiplied by the relative position within the underlying grid square.

In contrast to MBL, the grid and 3-point leveling systems tilt the entire coordinate system to compensate for a flat bed tilted at some (hopefully small) angle. With these leveling options, a very tall object will display an obvious lean on the platform. On the other hand, if you can imagine having a terribly warped print surface and if we measured enough mesh Z heights over the surface, the entire object will be warped to match the print surface. (This is where graduated bed compensation comes in, but that's a whole other topic.)