The advantage of an aluminum build plate is that it’s flat, but it must also be parallel to the XY axis movements: the nozzle should have a constant altitude across the entire surface of the plate. There’s a tool for measuring that: a dial test indicator.
I still don’t have solid way to mount the DTI to the Z axis stage, but the bar clamp works reasonably well. The DIT has a full-scale range of about 30 mils = 0.76 mm, with half on either size of the zero center point. Obviously the probe isn’t at right angles to the DTI body, but it’s close enough for differences of a few mils.
The G-Code routine (see below) positions the Z stage in the middle of the platform and prompts you to mount the DTI and set the reading to 0.0. That requires a bit of delicate fiddling and anything within a few mils should be fine. Don’t adjust the leadscrew by hand, because all this depends on repeatable positioning.
With that in place, the G-Code will raise the DTI, move the stage, lower the DTI, pause for five seconds while you note the reading, then repeat. For my DTI, the readings are in mils = 0.001 inch and, while I could record half-mil values, it’s not worth the effort.
You’ll get nine numbers showing the height across the plate, spaced 20 mm in X and 25 mm in Y:
Subtract the minimum number from all the rest to remove the height offset and get everything referenced to zero:
Looks like the plate isn’t quite a planar surface (it’s bent!) and it tilts upward to the right rear, but the total difference amounts to 10 mils = 0.010 inch = 0.25 mm. I think that’s smaller than the variation caused by jitter and vibration and general creakiness in the X and Y stages. The repeatability seems to be within two or three mils, which is probably the limit of the hardware.
Bottom line: good enough for now!
The flat aluminum plate reveals a definite front-to-back bow in the heater plate. Clamping the two tightly together would fix that and improve heat transfer, but then the aluminum plate wouldn’t be easily removable when it’s hot.
Put this G-Code routine (call it Flatness.gcode) in the ReplicatorG scripts/calibration directory and you’ll be able to run it from the menu:
(Measure surface flatness) (MakerBot Thing-O-Matic with ABP and aluminum plate) (Tweaked for TOM 286) (Ed Nisley - KE4ZNU - Feb 2011) (-- The usual setup --) G21 (set units to mm) G90 (set positioning to absolute) (-- Home axes --) G162 Z F1500 (home Z to get nozzle out of danger zone) G161 Y F4000 (retract Y to get X out of front opening) G161 X F4000 (now safe to home X) (-- Set coordinate zeros --) G92 X-53.0 Y-58.0 (G92 Z115.3) (set Z for ABP with belt) G92 Z112.8 (set Z for ABP with aluminum sheet platform) (-- Get height gauge set up --) G0 X-10 Y10 Z25 (center gauge probe on platform) M1 (Attach gauge, set to 0.0 mm) G92 X0 Y0 Z0.0 G0 Z2.0 (traverse height) (-- Begin probing --) G1 Z0.0 (denter) G4 P5000 G0 Z2.0 G0 X-40.0 (left center) G1 Z0.0 G4 P5000 G0 Z2.0 G0 Y-50.0 (left front) G1 Z0.0 G4 P5000 G0 Z2.0 G0 X0.0 (mid front) G1 Z0.0 G4 P5000 G0 Z2.0 G0 X40.0 (right front) G1 Z0.0 G4 P5000 G0 Z2.0 G0 Y0.0 (right center) G1 Z0.0 G4 P5000 G0 Z2.0 G0 Y50.0 (right rear) G1 Z0.0 G4 P5000 G0 Z2.0 G0 X0.0 (mid rear) G1 Z0.0 G4 P5000 G0 Z2.0 G0 X-40.0 (left rear) G1 Z0.0 G4 P5000 G0 Z2.0 G0 X0.0 Y0.0 (center again) G1 Z0.0 G4 P5000 (G0 Z5)