Auto level using 3 ball screw
-
hey,
I am writing to seek assistance with a leveling issue I am experiencing in the Z-axis of my system. The system incorporates three ball screws, and during the leveling process using paper at the center point, I observed that the nozzle touches the paper at the center, while the other two points are slightly loose and tight, respectively, in comparison to the center point.
To address this issue, I executed the G32 command, attempting to center the pointer and make it tighter. However, the problem persists. I would appreciate your guidance and expertise in resolving this matter.
Could you please provide recommendations or steps to ensure that the ball screws are properly leveled and the nozzle maintains consistent contact across all points?
Can any one Explain me which is reference pitch & roll?
please refer the image.
Any suggestion? @dc42 @Phaedrux @mrehorstdmd
-
hi
you to define your z axis rod positions with respect to x 0, y0 in your config like this;Ball joint 3pl
M671 X-15:318:152 Y-15:-15:318 S35 ;leadscrews at front left,front right, rear Center s= max correction factor must be in same order as M584 -
then in a macro you will need to do the following
bed.g
G28 ; home
M401 ; deploy Z probe
G30 P0 X 1stpos Y1stpos Z-99999 ; probe near an adjusting screw
G30 P1 X2nd pos Y2nd pos Z-99999 ; probe near an adjusting screw
G30 P2 X3rdpos Y3rd pos Z-99999 S3 ; probe near an adjusting screw and report adjustments needed
M402 ; retract probe -
@moth4017
My points are: M671 X-52.00:150.05:372.00 Y23.50:375.05:23.50 S5.0 ;leadscrew at front left, center and front right -
@R006 are they in the same order as they are in you M584?
-
@moth4017 Yes
M584 X0 Y1 Z2:3:4 E5 -
do you have a macro to do you bed leveling like the one above, i have found its better to do 4 points (each corner)
-
@moth4017 I am using 5 points 1st front left 2nd back left 3rd back middle 4th back right & 5th front right
-
@R006 maybe you should post your bed.g so we can see what you're actually doing
-
@R006 try it without 3rd back middle. and post your macro
-
-
@R006 they should all have separate P numbers for a start...
The S value is wrong if you're wanting to use 5 points.
I also suggest you look at using iteration to perform the measurements more than once -
My bed.g file as an example
; bed.g G32 echo "bed.g G32" M118 P3 S"M118 bed.g" L1 M561 ; clear any bed transform G90 ; If the printer hasn't been homed, home it if !move.axes[0].homed || !move.axes[1].homed G28 if sensors.probes[0].value[0] == 1000 ; if sensor is value other than 1000 do this, 0=probe attached echo "already homed, going to pick up probe" M98 P"/macros/ProbePickUp" ; probe pick up if sensors.probes[0].value[0] == 0 ; Probe the bed and do auto calibration G90 G1 X14 Y44 F20000 ; go to just above the first probe point while true if iterations = 5 M98 P"/macros/ProbeDropOff" ; probe drop off; end loop abort "Too many auto calibration attempts" G30 P0 X12 Y12 Z-99999 ; probe starboard bow if result != 0 continue G30 P1 X293 Y12 Z-99999 ; probe port bow if result != 0 continue G30 P2 X293 Y274 Z-99999 ; probe port stern if result != 0 continue G30 P3 X12 Y274 Z-99999 S3 ; probe starboard stern S3 = number of z axis motors if result != 0 continue if move.calibration.initial.deviation <= 0.07 break echo "Repeating calibration because deviation is too high (" ^ move.calibration.initial.deviation ^ "mm)" echo "Auto calibration successful, deviation", move.calibration.final.deviation ^ "mm" G1 F12000 X149.5 Y177.5 ; probe to center bed G30 F2000 ;Single Z-Probe M98 P"/macros/ProbeDropOff" ; probe drop off G1 Z30 F1000 ; get the head out of the way
-
@jay_s_uk
hi i thourght the s value was for number of motors as in this example from the Duet 3 documentation
G30 P2 X100 Y10 Z-99999 S3 ; probe point 2 near a leadscrew and calibrate 3 motorsi didnt read it correctly
The S parameter on the last G30 command in the sequence indicates that a complete set of points has been probed and instructs the firmware what sort of calibration to perform. -
The S parameter on the last G30 command in the sequence indicates that a complete set of points has been probed and instructs the firmware what sort of calibration to perform.
and
Cartesian/CoreXY kinematics: S-1 will report the Z offset for each probed point, but no calibration is done. S0 specifies that the number of factors to be calibrated is the same as the number of points probed. Otherwise, the value indicates the number of factors to be calibrated, which must be no greater than the number of points probed, eg S3 in the above example with 3 points probed
my understanding is its the number of points
-
@jay_s_uk ok when i set it s4 with 4 points probed i get this error
Error: Number of calibration factors (4) not equal to number of leadscrews (3) -
@moth4017 maybe you're right then
-
@jay_s_uk whick means the documentation on the Duet doc sight is incorrect
-
@moth4017 maybe @droftarts can investigate
-
@jay_s_uk yes i know it's mistake in copy paste.
Please help me