The Smell of Molten Projects in the Morning

Ed Nisley's Blog: Shop notes, electronics, firmware, machinery, 3D printing, laser cuttery, and curiosities. Contents: 100% human thinking, 0% AI slop.

HQ Sixteen: Track Lock Blocks

Mary’s practice quilts on the HQ Sixteen suggest locking the machine’s wheels will simplify sewing a line parallel to the long edge of a quilt parallel to the table, but contemporary “Channel Locks” fit newer machines with larger wheels than on this one.

Duplicating those rings in a smaller size seemed both difficult and not obviously functional, so I built a pair of blocks to capture the wheel on its track:

HQ Sixteen - track lock - engaged
HQ Sixteen – track lock – engaged

The wheel sits in a recess holding it just barely above the track surface, so the (considerable) weight of the machine holds the block in place.

Because lines on quilts have precise placement and Mary has quilting rulers within reach, the block measures exactly two inches from the point where it first touches the wheel to the center of the recess:

HQ Sixteen - track lock - setup
HQ Sixteen – track lock – setup

She can then lay a ruler on the quilt, roll the machine front or back two inches, slide a block against each wheel, then roll the machine up a slight incline until the wheel drops into the recess:

HQ Sixteen - track lock block - solid model
HQ Sixteen – track lock block – solid model

The spacing looks like this:

HQ Sixteen - track lock block - solid model - show view
HQ Sixteen – track lock block – solid model – show view

The usual 3D printing process puts 0.2 mm steps along the ramp, but they’re almost imperceptible while rolling the machine:

HQ Sixteen - track lock block - PrusaSlicer preview
HQ Sixteen – track lock block – PrusaSlicer preview

The ramp slope is all of 1:20 = 2.5°, so pulling / pushing the machine requires very little oomph.

I put thin cloth tape (approximately friction tape, but with real adhesive) on the bottom of the block by the simple expedient of sticking it to the block and scissoring off the excess. A little compliance between the block and the track prevents the hard plastic shapes from sliding more easily than I’d like. If your tape is thicker than mine, knock a little off the WheelZ value.

The OpenSCAD code can produce shapes to laser-cut an adhesive sheet, although stacking a foam sheet will definitely require height adjustment :

HQ Sixteen - track lock block - glue sheet
HQ Sixteen – track lock block – glue sheet

The OpenSCAD source code as a GitHub Gist:

// HQ Sixteen – wheel track lock block
// Ed Nisley – KE4ZNU
// 2025-02-14
include <BOSL2/std.scad>
Layout = "Show"; // [Show,Build,Glue,Track,Block,Wheel]
/* [Hidden] */
ID = 0;
OD = 1;
LENGTH = 2;
Protrusion = 0.1;
Windage = 0.1;
WallThick = 5.0; // minimum wall thickness
RailOD = 5.5; // rounded top of rail
RailHeight = RailOD; // … flange to top
RailBase = [100,2*15.7 + RailOD,3]; // … Y = flange width, arbitrary X & Z
WheelOD = 38.0; // rail roller
WheelMinor = 6.2; // … rail recess
WheelWidth = 8.3 + 2*Windage; // … outer sides
WheelZ = RailHeight + (WheelOD – WheelMinor)/2; // axle centerline wrt rail flange
LockOC = 2.0*INCH; // engagement to lock recess
GripLength = 20.0;
BlockOA = [GripLength + WheelOD/2 + LockOC,WheelWidth + 2*WallThick,2*RailHeight];
BlockRadius = 2.0;
$fn = 12*3*4; // smooth outer perimeters
//———-
// Construct the pieces
module Track(Len = 2*BlockOA.x) {
zrot(90) back(Len/2) down(RailBase.z) xrot(90)
linear_extrude(height=Len,convexity=5)
rect([RailBase.y,RailBase.z],anchor=FRONT)
attach(BACK,FRONT) rect([RailOD,RailHeight – RailOD/2])
attach(BACK) circle(d=RailOD);
}
module Wheel(Len = WheelWidth) {
xrot(90)
difference() {
cylinder(d=WheelOD,h=Len,center=true);
torus(r_maj=WheelOD/2,d_min=WheelMinor);
}
}
module Block() {
difference() {
left(GripLength + WheelOD/2)
cuboid(BlockOA,anchor=LEFT + BOTTOM,rounding=BlockRadius,except=BOTTOM);
Track();
up(WheelZ) xrot(90)
cylinder(d=WheelOD,h=WheelWidth,center=true);
right(LockOC)
up(WheelZ – WheelOD/2) yrot(atan((RailHeight – WheelMinor/2)/LockOC))
cuboid([LockOC,WheelWidth,BlockOA.z],anchor=RIGHT+BOTTOM);
}
}
//———-
// Show & build the results
if (Layout == "Block" || Layout == "Build")
Block();
if (Layout == "Track")
Track();
if (Layout == "Wheel")
Wheel();
if (Layout == "Glue")
projection(cut=true)
Block();
if (Layout == "Show") {
color("SteelBlue")
Block();
for (i=[0,1])
right(i*LockOC)
color("Silver",0.7)
up(WheelZ) Wheel();
color("White",0.5)
Track();
}

Comments

One response to “HQ Sixteen: Track Lock Blocks”

  1. HQ Sixteen: Wheel Base Leveling – The Smell of Molten Projects in the Morning Avatar

    […] out the Track Lock Blocks brought a long-standing puzzle to the surface: the left front wheel rode about a millimeter above […]