How To Fix Broom Handle
Somehow, nosotros wound up with a broom handle and a broom head, the onetime missing a threaded stub that was firmly lodged in the latter. A few minutes of Quality Shop Time sawed off the end of the handle and unscrewed the stub to produce this array of fragments:
Information technology'due south a cylindrical Thing tailor-made for (or, back in the solar day, by!) a lathe. My lathe has quick-change gears that can actually cut a 5 TPI thread, simply that seems similar a lot of work for such a rough fitting. Instead, an hour or and so of desk work produced this:
Some after-the-fact search-fu revealed that the thread found on brooms and paint rollers is a 3/4-five Acme. Mechanism's Handbook has 13 pages of data for diverse Acme screw threads, making a distinction between Full general Purpose Peak threads and Stub Summit Threads: GP thread depth = 0.5 × pitch, Stub = 0.iii × pitch. For a 5 TPI thread = 0.2 inch pitch, that'southward GP = 0.1 inch vs. Stub = 0.06 inch.
I measured a 5.0 mm pitch (which should be 5.08 mm = 0.2 inch exactly) and a crest-to-root depth of one.4 mm = 0.055 inch, which makes them wait like 3/four-5 Stub Acme threads. But, I didn't know that at the time; a simple half-cylinder ii.5 mm broad and i.25 mm alpine was a pretty close match to what I saw on the broken plastic part.
Although OpenSCAD'south MCAD library has some screw forms, they're either automobile screws with 5 threads or ball screws with spheres. The former obviously weren't advisable and the latter produced far too many facets, so I conjured upwardly a simpler shape: 32 slightly overlapping cylinders per plow, sunk halfway in the shaft at their midpoint, and tilted at the thread's helix angle.
The OpenSCAD source code has a commented-out section that removes a like shape from the shaft between the raised thread, merely that brought the rendering to its knees. Fortunately, information technology turned out to be unnecessary, but it's there if you want it.
With the shaft diameter set up to the "root diameter" of the thread and the other dimensions roughly matching the broken plastic bits, this emerged an hr afterward:
The skirt thread was 0.25 to 0.30 mm thick, so the get-go-layer height tweak and packing density adjustments worked fine and all the dimensions came out perfectly. The cylindrical thread form doesn't have much overhang and the threads came out fine; I think the correct straight-sided form would have more bug.
The hole down the heart accommodates a i/four-20 bolt that applies enough clamping forcefulness to keep the shaft in pinch, which ought to preclude information technology from breaking in normal use. I intended to use a hex bolt, simply institute a carriage bolt that was exactly the correct length and had a head exactly the aforementioned bore as the shaft, so I heated information technology with a propane torch and mushed its square shank into the height of the hexagonal bolt hole (the source code now includes a foursquare recess):
The dimples on the side duplicate the method that secured the original plastic slice: iv dents punched into the metal handle lock the plastic in place. It seems to piece of work reasonably well, though, and is certainly less conspicuous than the screws I'd use.
Screwing it in place shows that it's slightly too long (I trimmed the length in the source lawmaking):
It's back in service, ready for use…
The OpenSCAD source code:
// Broom Handle Spiral Stop Plug // Ed Nisley KE4ZNU March 2013 // Extrusion parameters must match reality! // Print with +1 shells and 3 solid layers ThreadThick = 0.25; ThreadWidth = two.0 * ThreadThick; HoleWindage = 0.2; office IntegerMultiple(Size,Unit of measurement) = Unit * ceil(Size / Unit); Protrusion = 0.1; // make holes finish cleanly //---------------------- // Dimensions PI = iii.14159265358979; PostOD = 22.three; // postal service inside metal handle PostLength = 25.0; FlangeOD = 24.0; // cease flange FlangeLength = 3.0; PitchDia = 15.5; // thread center diameter ScrewLength = xx.0; ThreadFormOD = ii.v; // bore of thread grade ThreadPitch = five.0; BoltOD = 7.0; // clears 1/4-xx bolt BoltSquare = 6.5; // across flats BoltHeadThick = three.0; RecessDia = half-dozen.0; // recesss to secure mail in handle OALength = PostLength + FlangeLength + ScrewLength; // excludes bolt caput extension $fn=viii*4; repeat("Pitch dia: ",PitchDia); echo("Root dia: ",PitchDia - ThreadFormOD); echo("Crest dia: ",PitchDia + ThreadFormOD); //---------------------- // Useful routines module Cyl_Thread(pitch,length,pitchdia,cyl_radius,resolution=32) { Cyl_Adjust = 1.25; // forcefulness overlap Turns = length/pitch; Slices = Turns*resolution; RotIncr = 1/resolution; PitchRad = pitchdia/2; ZIncr = length/Slices; helixangle = atan(pitch/(PI*pitchdia)); cyl_len = Cyl_Adjust*(PI*pitchdia)/resolution; matrimony() { for (i = [0:Slices-1]) { interpret([PitchRad*cos(360*i/resolution),PitchRad*sin(360*i/resolution),i*ZIncr]) rotate([ninety+helixangle,0,360*i/resolution]) cylinder(r=cyl_radius,h=cyl_len,center=truthful,$fn=12); } } } module PolyCyl(Dia,Height,ForceSides=0) { // based on nophead'southward polyholes Sides = (ForceSides != 0) ? ForceSides : (ceil(Dia) + 2); FixDia = Dia / cos(180/Sides); cylinder(r=(FixDia + HoleWindage)/two, h=Height, $fn=Sides); } module ShowPegGrid(Infinite = 10.0,Size = i.0) { Range = floor(50 / Space); for (x=[-Range:Range]) for (y=[-Range:Range]) interpret([ten*Infinite,y*Space,Size/2]) %cube(Size,centre=true); } //------------------- // Build information technology... ShowPegGrid(); difference() { union() { cylinder(r=PostOD/2,h=PostLength); cylinder(r=PitchDia/2,h=OALength); interpret([0,0,PostLength]) cylinder(r=FlangeOD/2,h=FlangeLength); translate([0,0,(PostLength + FlangeLength)]) Cyl_Thread(ThreadPitch,(ScrewLength - ThreadFormOD/two),PitchDia,ThreadFormOD/ii); } translate([0,0,-Protrusion]) PolyCyl(BoltOD,(OALength + 2*Protrusion),6); translate([0,0,(OALength - BoltHeadThick)]) PolyCyl(BoltSquare,(BoltHeadThick + Protrusion),4); // translate([0,0,(PostLength + FlangeLength + ThreadFormOD)]) // Cyl_Thread(ThreadPitch,(ScrewLength - ThreadFormOD/2),PitchDia,ThreadFormOD/2); for (i = [0:90:270]) { rotate(i) translate([PostOD/2,0,PostLength/2]) sphere(r=RecessDia/2,$fn=8); } }
How To Fix Broom Handle,
Source: https://softsolder.com/2013/04/01/broom-handle-screw-thread-replacement-plug/
Posted by: cogswellreacquink.blogspot.com
0 Response to "How To Fix Broom Handle"
Post a Comment