Welcome! Log In Create A New Profile


Request: UBL differential mesh calculation

Posted by bowzee 
Request: UBL differential mesh calculation
October 22, 2019 09:56AM

I could not locate a way to do this automatically, this is why I called it a request.

I am adding a set of 3 piezo probes to an Ultimaker clone attached to the print table base plate knobs. Two of them are located at the left and right front corners of the plate and a third one is at the rear middle of it. I turns out that the piezos are unable to generate a correct UBL mesh because, due to the geometry, the front sensors react more sensitively than the rear one. And the rear corners are really off. Using the automatic bed probing will generate values which are off, but (important) always by the same differences.

I would like to suggest a new feature for the UBL mesh system which could be (emphasis in "could be") implemented like this:
1) the user measures the mesh manually, point by point (once and for all) and stores it in a slot, say slot 7;
2) using the auto bed leveling, a sensor mesh is measured and stored in another slot, like slot 6;
3) with some G29 P command, a final differential mesh using the above two slots is calculated and stored in a third slot, for example slot 1.

- Does this already exist?

Using a method like this would minimize the tweaking process every time an auto bed leveling is performed.
Re: Request: UBL differential mesh calculation
October 22, 2019 04:06PM
Although piezos are quite repeatable, they do lose a lot of sensitivity with temperature - so the bending of the build stage will be different at different temperatures. The cure for this is to set the sensitivity as high as you can get without false triggering. I get about 5um more bending at the corners than the center when cold but about 20um when hot - the piezo discs having heated from 20°C to 50°C.

If you can get the sensitivity up I think you will find that this correction is not necessary whether hot or cold.

Repetier firmware does have a bending correction just for this but I am not sufficiently familiar with Marlin to know if it has the same.

Re: Request: UBL differential mesh calculation
October 23, 2019 12:04PM
leadinglights, thank you for the reply

The piezos are below the base plate, so they are always at room temperature. The error is in the hundreds of microns range (500, 800, etc.), not anything like you described (BTW, congratulations for that!). The sensitivity has been tweaked to the limit.

I really hope that someone comes up with a solution for this, manually tweaking each point of the mesh takes a lot of time...
Re: Request: UBL differential mesh calculation
October 23, 2019 03:02PM
If you're using UBL on Marlin 2.0, the G29 K gcode does what you're looking for - it takes the current mesh and compares it to a different stored mesh. So assuming you want to compare the mesh in slot 0 to the mesh in slot 1 and save it in slot 2, you'd do:

G29 L0 ; load mesh 0
G29 K1 ; compare to mesh 1
G29 S2 ; save to slot 2
Re: Request: UBL differential mesh calculation
November 02, 2019 08:39AM
MMcLure, thank you for the reply

I had no idea, that is it then!!! Unfortunately I am using 1.1.9 because of the current "stable" status, but after your reply I will upgrade. Big Thanks!!!
Sorry, only registered users may post in this forum.

Click here to login