Bed compensation working but not enough
-
Hi,
We have managed to have the bed compensation working in our environment (we had some problems as it is a complex printing system with 3 different nozzles with independant motors, and tool lenght calibration).
Now it seems to be working fine (as it moves de Z axis regarding the heightmap).
However, we noticed that the applied compensation is not enough.
Example:
- If we are at X=0, Y=0, the bed comp. is 0.000, and the nozzle is touching the bed correctly Z=0.
- If we move to X=100, Y=60, the bed comp. is 0.620, and the nozzle touches the bed at Z=0.3 aprox.
- If we move to X=-100, Y-60, the bed comp. is -0.200 (notice the negative), the nozzle doesn't touch the bed at Z=0 (it stays at real 0.1 height aprox).
It seems that the algorithm doesn't apply the correct steps to the motor. Is that possible? And how can we fix it.
Our fw version is 3.4.0beta4
Thank you,
Carlos. -
@carlosr do you have the Z axis limits set to prevent it going below "0", what is your M208 settings:
https://duet3d.dozuki.com/Wiki/M208 -
We set the machine limits after measuring the tool lenght (z datum and bed comp already applied).
We move down the nozzle until trigger a switch, and when triggered we stablish the machine limit with
M208 Z{move.axes[2].machinePosition} S1
During the process, we disable the axis limits, and the machine position is usually a negative value, so the limits are -8.5:88.2 or something similar for the tool 0.
The machine -8.5 position always will be the virtual 0 when the tool is enabled. And the max limit will always be the same one measured the Z datum and applied the Bed comp.
-
@carlosr so when you do the test above
@carlosr said in Bed compensation working but not enough:
If we move to X=-100, Y-60, the bed comp. is -0.200 (notice the negative), the nozzle doesn't touch the bed at Z=0 (it stays at real 0.1 height aprox).
what does M208 report?
-
M208 reports the machine limits regardless the actual position. These limits that are -8.5:88.2 (Z axis).
-
If I move the nozzle down to Z0 at X0, Y0:
M114 reports user position as Z=0, machine position as Z-8.5 (which is the limit), and the bed comp value is 0.000. The nozzle is well positioned (almost touching the bed) -
If I don't lift the nozzle and move to a position where the bed comp is -0.2 (that means the bed is lower in that point)
M114 still reports user position as Z=0 (because i didn't lift it), machine position still Z-8.5, and bed comp. is -0.200. However, the nozzle is not touching the bed as it should, it is 0.1mm above (it compensates -0.1 instead of -0.2).
I can't run more tests until Thursday, but I will try to provide more info about the behaviour when possible.
Thanks.
-