The Tolerance Stack on the Lamp Shade
A pupil is making a batch of 12 lamp shades that slot onto a machined lamp holder. The holder's spigot is turned to 25.00 ± 0.10 mm. The shade's collar is 3D-printed in PLA with a stated bore of 25.20 ± 0.15 mm. In trial assembly, 2 of 12 shades will not fit over the spigot, and 3 are so loose they rock visibly. The pupil wants to 'just print the bore 0.3 mm bigger'. Print time is 4 h per shade and there are 3 printers, with 10 days before the sale.
1. Using the tolerances, explain why some shades fail and judge whether simply enlarging the bore is a sound fix.
Read the worked answer
Worst-case clearance = smallest bore − largest spigot = (25.20 − 0.15) − (25.00 + 0.10) = 25.05 − 25.10 = −0.05 mm, i.e. an interference fit is possible, which explains the shades that will not fit. Worst-case looseness = largest bore − smallest spigot = 25.35 − 24.90 = 0.45 mm, which explains the rocking. So the same nominal design can be tight or loose by half a millimetre - the tolerance band, not the nominal size, is the problem. Enlarging the bore by 0.3 mm is not a sound fix: it shifts the whole band upward, curing the tight cases but making the loose cases worse (up to 0.75 mm clearance), and it does nothing about print variability. Judgement: the real fault is an uncontrolled process (printer calibration, shrinkage, layer variation) meeting an over-wide tolerance.
2. Propose a design and process change that gives a reliable fit within the 10-day window, and state how you would verify it.
Read the worked answer
Design change - stop relying on a precise bore. Print the collar with a slightly generous bore and add a compliant feature that absorbs variation: three or four integral flexible tabs, or a separate printed split-ring insert, so the shade grips the spigot over a range of diameters instead of needing an exact fit. Alternatively, change the interface entirely: a bayonet or a screw collar where the fit is set by a positive stop, not by a sliding diameter. Process change: tighten the printed tolerance by calibrating each printer (print a test coupon with known features, measure, apply a shrinkage offset in the slicer), and standardise orientation and layer height so all 12 shades come off the same settings. Verification: print a coupon at the extremes of the expected range, measure bores with a caliper, and assemble onto go/no-go gauges representing the largest and smallest spigots. Feasibility: 12 shades at 4 h across 3 printers is about 16 h of machine time - well inside 10 days, so there is room for one calibration iteration before the full batch.