closed loop calibration threshold threats dual motor axis ripoff
-
Can you provide means to alter the threshold of 0.22 for the closed loop calibration manoeuvre?
In case that manoeuvre produces an error message:- can you provide the variable name for the calibration_error for coding (like: if Cal_error = true ...)?
- +can you provide the variable name for the backlash_value for being able to assigning a value
rather than actually needing to do the calibration manoeuvre?
Background:
When doing the calibration manoeuvre for my dual motor axis I get the following error and warning messages:
26.7.2024, 14:32:27 Error: Driver 113.0 basic tuning failed, measured backlash (0.235 step) is too high
26.7.2024, 14:32:26 M98 P"0:/macros/Vorsicht makros/Closed_Loop_Single_Axis_Ends_Y-direction"
Warning: Driver 111.0 basic tuning succeeded but measured backlash (0.213 step) is highAfterwards, when doing controlled movements with the axis only one end of the axis is moving. (The one with the warning, the one with the error message is not moving.)
So this is threatening a breakaway of the axis. It is not really an option to remove the belts from the two x-axes motors and the two y-axes motors every time I want to do homing. It wouldn't even be if I had only one closed loop motor...
FIRMWARE_VERSION: 3.5.1 ELECTRONICS: Duet 3 MB6XD v1.0 FIRMWARE_DATE: 2024-04-19 14:39:48
Hardware: Duet 3 mainboard 6XD + 4 * Duet 3 expansion 1HCLAll Questions answers would give me good control over the calibration manoeuvre .
Partial answers would at least enable me to start working.An additional suggestion:
In the code example in the "What do I need to do?" section of:
https://docs.duet3d.com/User_manual/Tuning/Duet_3_1HCL_tuningI would suggest changing the line:
G1 X50 F3000 ; Move to a known-safe position
to:
G1 X10 F3000 ; Move to a known-safe positionas 10mm would work for most calibration manoeuvres but not rip off the axis, when trying to move to the endstops again.
-
-
@abraxas have you tried checking the predifined constant 'result' after executing the calibration command? See https://docs.duet3d.com/en/User_manual/Reference/Gcode_meta_commands#named-constants.
Increasing motor current (temporarily if you want) may reduce the backlash.
-
@dc42 Thank you, using result = 2 helps with aborting going into closed loop, the following code seems to work well:
; P113.0 is the driver address (Y_Right (far)) to tune
M569 P113.0 D4 ; Switch Axis 113.0 to (closed loop mode)=D4 / D5=Assisted open loop
M569.6 P113.0 V1 ; Perform the calibration manoeuvre for a quadrature shaft encoder; Calibration manoeuvre error code - aborts closed loop if error message is produced
if result = 2
M569 P113.0 D3 ; Switch Axis 112.0 back to (open loop mode)=D3
abort "Y-Axis (#113=Far) backlash threshold overshot, closed loop is not available today"... so the axis breakaway is prevented.
Increasing the motor current temporarily (above the rated current) to be able to go into closed loop
every time the printer is homing - so every time a print is started, is not an option. -
@dc42 Now, for being able to go into closed loop, only the two other (initial) questions are open:
"1) Can you provide means to alter the threshold of 0.22 for the closed loop calibration manoeuvre?
"3) Can you provide the variable name for the backlash_value for being able to assigning a value rather than actually needing to do the calibration manoeuvre? -
@abraxas said in closed loop calibration threshold threats dual motor axis ripoff:
if result = 2
M569 P113.0 D3 ; Switch Axis 112.0 back to (open loop mode)=D3
abort "Y-Axis (#113=Far) backlash threshold overshot, closed loop is not available today"In above code the indentation was not visible, so the correct version would be:
if result = 2 M569 P113.0 D3 ; Switch Axis 112.0 back to (open loop mode)=D3 abort "Y-Axis (#113=Far) backlash threshold overshot, closed loop is not available today"
-
@abraxas please use code tags for posting code on the forum, it makes it much easier to follow and spot errors, and you won’t have to put in strange formatting. I have edited your post.
Ian