Delta Calibration with mini IR probe
-
Just in case it's helpful, my config.g
; Configuration file for Rostock Max v2
; Communication and general
M111 S0 ; Debug off
M550 Rostock Max V2 ; Machine name and Netbios name (can be anything you like)
M551 Preprap ; Machine password (used for FTP)
;*** If you have more than one Duet on your network, they must all have different MAC addresses, so change the last digits
M540 P0xBE:0xEF:0xDE:0xAD:0xFE:0xED ; MAC Address
;*** Wifi Networking
M552 S1 ; Enable WiFiM555 P2 ; Set output to look like Marlin
M575 P1 B57600 S1 ; Comms parameters for PanelDueG21 ; Work in millimetres
G90 ; Send absolute coordinates…
M83 ; ...but relative extruder moves; Axis and motor configuration
M569 P0 S0 ; Drive 0 goes forwards (X)
M569 P1 S1 ; Drive 1 goes forwards (Y)
M569 P2 S0 ; Drive 2 goes forwards (Z)
M569 P3 S0 ; Drive 3 goes forwards (E0)
M569 P4 S1 ; Drive 4 goes forwards (E1)
M574 X2 Y2 Z2 S1 ; set endstop configuration (all endstops at high end, active high);*** The homed height is deliberately set too high in the following - you will adjust it during calibration
;M665 R143.271 L291.060 B150 H384.866 ; delta radius, diagonal rod length (from seemecnc default), printable radius and homed height (Injection molded arms)
M665 R143.271 L300.15 B150.0 H373.0 ; delta radius, diagonal rod length, printable radius, homed height (tricklaser CF arms)
M666 X-0.28 Y0.70 Z-0.42 ; endstop adjustments from auto calibrationM350 X16 Y16 E16 I1 ; Set 16x microstepping with interpolation
M92 X80 Y80 Z80 ; Set axis steps/mm
M906 X1000 Y1000 Z1000 E1000 I60 ; Set motor currents (mA) and increase idle current to 60%
M201 X1500 Y1500 Z1500 E5000 ; Accelerations (mm/s^2)
M203 X21000 Y21000 Z21000 E7500 ; Maximum speeds (mm/min)
M566 X1750 Y1750 Z1750 E1750 ; Maximum instant speed changes mm/minute; Thermistors
M305 P0 T100000 B4450 R4700 H30 L0 ; Put your own H and/or L values here to set the bed thermistor ADC correction 3950
M305 P1 T100000 B4388 R4700 H30 L0 ; Put your own H and/or L values here to set the first nozzle thermistor ADC correction
M305 P2 T100000 B3974 R4700 H30 L0 ; Put your own H and/or L values here to set the second nozzle thermistor ADC correction
M570 S180 ; Hot end may be a little slow to heat up so allow it 180 seconds; Fans
M106 P0 H-1 ; disable thermosatic mode for fan 0
M106 P0 S0 ; turn off fan 0
M106 P1 H-1 ; disable thermostatic mode for fan 1
M106 P1 S0 ; turn off fan 1
M106 P2 H1 T60 S255 ; enable thermostatic mode for fan 2, turn on above 60c on H1, set to full; Bed
M307 H0 A82.8 C442.7 D28.1 B0 ; Heater 0 model: gain 82.8, time constant 442.7, dead time 28.1, max PWM 1.00, in use: yes, mode: PID; Tool definitions
M563 P0 D0 H1 F1 ; Define tool 0
G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures
M307 H1 A326.1 C168.0 D6.1 B0
M92 E93.17:93.17 ; Set extruder steps per mm; Z probe and compensation definition
;*** If you have a switch instead of an IR probe, change P1 to P4 in the following M558 command
M558 P1 X0 Y0 Z0 ; Z probe is an IR probe and is not used for homing any axes
G31 X0 Y0 Z2.27 P500 ; Set the zprobe height and threshold (put your own values here);*** If you are using axis compensation, put the figures in the following command
M556 S78 X0 Y0 Z0 ; Axis compensation hereM208 S1 Z-0.2 ; set minimum Z
;
T0 ; select first hot end; Firmware Retraction configuration
M207 S3.5 R-0.03 F4500 T1350 ; Z0.25 disabled z-hop -
Sadly imgur is telling me that it is over capacity, so I can't see the image you linked to.
Have you read https://duet3d.com/wiki/Calibrating_a_delta_printer ?
-
I have.
Here's the table I linked on imgur. Hopefully the formatting works.
Z Z/Y Y Y/X X X/Z Z.5 Y.5 X.5 C mean deviation
0.193 -0.246 0.175 -0.208 0.278 -0.206 0.024 0.082 -0.108 0.010 -0.001 0.176
0.180 -0.246 0.175 -0.196 0.265 -0.206 0.024 0.082 -0.121 0.010 -0.003 0.172
0.205 -0.234 0.175 -0.196 0.278 -0.206 0.037 0.082 -0.108 0.010 0.004 0.175
0.218 -0.234 0.200 -0.208 0.278 -0.193 0.049 0.082 -0.108 0.023 0.011 0.179
0.155 -0.259 0.175 -0.208 0.278 -0.206 0.037 0.082 -0.121 0.010 -0.006 0.175 -
More details about my printer.
SeeMeCNC Rostock max v2, with their injection molded carriages & ball end barbells. I just installed CF arms from tricklaser, they measure 300.15mm according to tricklaser. I don't know of a great way to precisely measure them, but they do match up and using a common tape measure they appear to be right at that. Aluminum effector platform, again with the seemecnc ball ends. 80 steps/mm belt driven.
The pattern of the high probe height at each tower, and negative number opposite each tower is really odd to me.
-
Updated to 1.17b, ran an 8 point calibration.
Diagonal 300.150, delta radius 143.937, homed height 373.250, bed radius 150.0, X 0.463°, Y 1.232°, Z 0.000°
Endstop adjustments X0.66 Y0.63 Z-1.30, tilt X-0.94% Y-0.28%Z Z/Y Y Y/X X X/Z Z.5 Y.5 X.5 C mean deviation
0.280 -0.225 0.234 -0.215 0.260 -0.2 0.015 -0.002 0.019 0.019 0.018 0.183
0.255 -0.237 0.209 -0.227 0.235 -0.2 0.015 -0.002 0.006 0.007 0.006 0.177
0.243 -0.237 0.222 -0.227 0.235 -0.2 0.002 -0.015 0.006 0.007 0.003 0.176 -
Are you certain that you have entered the correct rod length, as measured between bearing centres? What sorts of bearings do you have, and how are you measuring the rod length? Do you have equal bearing spacings at top and bottom of each pair of rods?
It might be interesting to try 7 factor calibration and see what the firmware thinks the rod length is.
-
I don't have an accurate way of measuring the new rods, as they're much longer than my calipers.
Earlier I had run a 7 factor calibration, and it said they were ~304.5mm, instead of their 300.15 as sold.
They're not bearings, they're ball ends: https://www.seemecnc.com/collections/parts-accessories/products/replacement-ball-joints
The specific rods I got are these: http://tricklaser.com/Carbon-Fiber-Tube-Arms-with-Ball-Cup-Rod-Ends-ARM-BC300.htm
And, unfortunately, the bed on my printer isn't long enough that I'm meeting the "probe well outside the printable area" to get a good measurement on the arms using a 7 factor calibration.
-
Running a 9 factor calibration today, it gives a diagonal length of 310mm. I'm sure they're not that long! (Using a common tape measure and eyeballing it, they're right at 300mm)
(Just to check, from a clean start, a 7 factor calibration also says 310mm)
-
Just for grins, here's a full 9 point calibration result, after 3 iterations:
Diagonal 308.484, delta radius 146.441, homed height 373.347, bed radius 150.0, X 0.146°, Y 0.756°, Z 0.000°
Endstop adjustments X0.30 Y1.24 Z-1.54, tilt X-0.23% Y-0.31%
Bed probe heights: 0.002 -0.002 0.025 0.007 0.020 -0.022 -0.028 -0.014 -0.015 0.069, mean 0.004, deviation from mean 0.027
-
A couple notes:
1 - I resolved the majority of the tilt. It was actually the hotend not sitting level in the groove mount, and since the probe is attached to the hotend… tilt. Didn't take much for it to be off.
2 - I'm also checking with a different probe type now (accelerometer & tapping the nozzle on the bed) and still seeing the same "high at the towers, low opposite" pattern going in the results of an S-1 check after a few rounds of auto calibration.
3 - The amount of error is worse with the longer (300.15mm) CF arms than with my shorter (291.6mm) injection molded arms.
4 - in both cases, if I put in the arms are longer than they are, the error reduces greatly, and can nearly be negates.
5 - Swapping the "barbells" around between positions, or from the carriages to the effector, or switching the location of any of the pairs of arms has zero bearing on this pattern.
-
Testing dimensional accuracy, the 300.15mm arm length for the CF arms (as sold length, and looks accurate by eyeing them) gives dimensionally accurate prints.
-
I suggest the following test:
1. Run 6-point auto calibration. Print 2 parallel lines, from one edge of the bed to the other, one half a bed width to the left of centre and one half a bed width to the right. Then test them for straightness with a ruler.
2. Do the same, but this time run 7-point auto calibration first. RRF will adjust the diagonal rod length to even out those height differences.
What will be interesting is which test print has the straighter lines.
Is the 300mm length quoted for the new arms measured between the centres of the balls?
-
Here are the prints:
S6 Calibration:
Endstop adjustments X-0.24 Y1.37 Z-1.13, tilt X0.00% Y0.00%
Diagonal 300.150, delta radius 144.174, homed height 373.490, bed radius 150.0, X 0.126°, Y 0.565°, Z 0.000°http://imgur.com/GRw04H4
http://imgur.com/sqU84neS7 Calibration:
Diagonal 310.832, delta radius 147.461, homed height 373.605, bed radius 150.0, X 0.103°, Y 0.586°, Z 0.000°
Endstop adjustments X-0.26 Y1.37 Z-1.12, tilt X0.00% Y0.00%http://imgur.com/Wdbz5C1
http://imgur.com/OeusmvFIt may be hard to tell from the photos, but the S7 calibration lines were bowed in the center, slightly curved.
-
Here's a 250mm bed test printed with an S6 calibration. You can see it's thin at the towers, and matches the pattern I see in the S-1 test.
-
Oh, and the new arms are measured center of the pivot point to center, yes.