Multiple samples+average for each bed probe point
-
Hi, David!
Is it possible to add average sampling for every of bed probe points? For example, instead of probing the one point, probe five points (specified by user and in +- 3 mm distance of specified to the top/down/left/right) and take average. (instead of probing [10, 10] point, probe at [10, 10], [7, 10], [13, 10], [10, 7], [10, 13] and take average height).
I'm using 3-factor 16-point bed probing and your IR probe. Bed consists of 3mm borosilicate glass, black matte tape Oracal 641 and kapton tape on the top. Kapton tape (and even oracal tape) is sometimes damaged by unsticking printed details in different places so I periodically moving bed probe points to clean/flat surface. This happens often in center area where small details are printed. Also sometimes moving probe point by 1 mm several times on clean surface gives slightly different probe height results for me.
I think this feature can help me fighting with my kapton and oracal tapes.
-
If you're using more points than factors, then a least-squares fit effectively does the averaging that you want. So you could achieve what you want by just adding more probe points. But a few probe points that are substantially off will still pull the overall result away. There are statistical tricks for detecting and ignoring outliers, but this is starting to be a bit complicated to ask the firmware to cope with. Host-based calibration might offer more possibilties.
-
In the past, I have modified the probing procedure to average the results from the same point but in different directions. Ie clockwise vs anti-clockwise. (Go around the bed CW, come back around the same points CCW, and average the two)
This did give me better results than simply probing clockwise or anti-clockwise.
-
If you're using more points than factors, then a least-squares fit effectively does the averaging that you want. So you could achieve what you want by just adding more probe points.
@bot:
In the past, I have modified the probing procedure to average the results from the same point but in different directions. Ie clockwise vs anti-clockwise. (Go around the bed CW, come back around the same points CCW, and average the two). This did give me better results than simply probing clockwise or anti-clockwise.
I will be happy to specify just more than 16 points going CW and CCW instead of every point sample averaging (if this is ~almost the same thing), but it seems like 16 points - maximum count.
-
Probably a limitation of the least-squares implementation on the MCU.
-
I can easily increase the maximum number of delta calibration probing points allowed on the Duet WiFi (the wired Duet is more RAM-constrained). How many would you like? The time it takes to do the maths is proportional to the square of the number of points AFAIR, so there will eventually come a figure at which it doesn't make sense to allow more points.
-
I can generate any number of points using php or perl script (btw, firmware for delta also can automatically fill bed area with probing points by given bed radius and number of points), so the question is a reasonable balance between the speed and efficiency.
Maybe 32-40 ? It it possible to dynamically configure this parameter using M-gcode?
I just want to eliminate local disturbances in kapton tape caused by unsticking printed details and so on.
-
I've just put an experimental build of DuetWiFiFirmware supporting 64 probe points at https://dl.dropboxusercontent.com/u/19369680/DuetWiFiFirmware.bin.
I was wrong about the N^2 dependency - the time is proportional to N. It's the number of factors to calibrate that has the square dependency.
-
David, thank you for 64-point version. I created small php script that evenly distributes 64 random probe points on bed surface. At first glance everything works well even if some points located in damaged areas of kapton tape, but I had to test this better.
-
David
Do you plan on updating the Bed.G generator to allow for 64 points?
Doug
-
-
Are you still planning to update the bed.g generator for more points? I would love to use more than 16 points, as I have a large bed….but I really am too lazy to make a bed.g myself...lol.
-
Are you referring to the bed.g generator on my web site, or the one in configtool?
-
Are you still planning to update the bed.g generator for more points? I would love to use more than 16 points, as I have a large bed….but I really am too lazy to make a bed.g myself...lol.
You can try also my generators: https://www.duet3d.com/forum/thread.php?pid=18892#p18892