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.

Ortur YRC-1: Conical Tailstock Centers

A conical (a.k.a. bullnose) center in the tailstock simplifies supporting cylindrical objects:

Ortur Chuck Rotary conical center - installed
Ortur Chuck Rotary conical center – installed

The spring-loaded tailstock bearing has a 5 mm bore. The bullnose rests against a small spacer on its 5 mm shaft to hold it away from the bearing’s mounting screws with some bearing spring compression. I turned the spacer from aluminum rod because lathe work is satisfying, but a printed spacer would work fine.

The bullnose is a cone with steps encouraging the cylinder to sit properly:

Ortur Rotary Conical Center - 10-50mm
Ortur Rotary Conical Center – 10-50mm

With both ends centered, the cylinder sits concentric with the chuck axis:

Ortur Chuck Rotary home switch - jaw position
Ortur Chuck Rotary home switch – jaw position

The chuck grabs the OD and the bullnose supports the ID, so removing crud from both ends is in order.

The bullnose won’t work for a solid rod, so a negative cone = cup center may come in handy:

Ortur Chuck Rotary cup center - installed
Ortur Chuck Rotary cup center – installed

Stipulated: A CO₂ laser will bounce right off a solid aluminum rod. Imagine I chucked up a wood dowel, OK?

A cup center is what remains afteryoinking a bullnose out of a cylinder:

Ortur Rotary Conical Centers - cup
Ortur Rotary Conical Centers – cup

Looks like I did exactly that:

Ortur Chuck Rotary conical centers
Ortur Chuck Rotary conical centers

Somewhat surprisingly, the two parts nest perfectly:

Ortur Chuck Rotary conical centers - nested
Ortur Chuck Rotary conical centers – nested

That’s without the shaft installed on the cup, so they won’t sit quite so neatly on the shelf.

Aligning the rotary axis along the laser’s X axis and setting the focus requires attention to detail, but a decent tailstock center makes that effort meaningful.

The OpenSCAD code as a GitHub Gist:

// Ortur Rotary Conical centers
// Ed Nisley – KE4ZNU
// 2025-12-27
include <BOSL2/std.scad>
Style = "Bullnose"; // [Build,Cone,Bullnose,Cup,Cone]
MinDia = 10.0;
MaxDia = 50.0;
/* [Hidden] */
LayerThick = 0.2; // should match slicer thickness
Ramp = 1.0;
ID = 0;
OD = 1;
LENGTH = 2;
HoleWindage = 0.2;
Protrusion = 0.1;
NumSides = 8*3*4;
$fn=NumSides;
Gap = 5.0;
WallThick = 2.0;
TailBearing = [5.0,7.0,10.0]; // tailstock shaft, LENGTH = insert depth
StepHeight = 2*LayerThick;
NumSteps = (((MaxDia – MinDia)/2) / Ramp);
ConeOAH = NumSteps * (Ramp + StepHeight);
//—–
// Bullnose shape
module Bullnose() {
difference() {
union()
for (i = [0:NumSteps – 1])
up(i*(Ramp + StepHeight)) hull()
cyl(StepHeight + Protrusion,r=(MaxDia/2 – i*Ramp),anchor=BOTTOM) position(TOP)
cyl(Ramp,r1=(MaxDia/2 – i*Ramp),r2=(MaxDia/2 – (i+1)*Ramp),anchor=BOTTOM);
}
}
module Cone() {
difference() {
Bullnose();
down(Protrusion)
cyl(TailBearing[LENGTH] + Protrusion,d=TailBearing[ID],circum=true,anchor=BOTTOM);
}
}
module Cup() {
difference() {
cyl(ConeOAH + TailBearing[LENGTH],d=MaxDia + 2*WallThick,anchor=BOTTOM);
up(ConeOAH + TailBearing[LENGTH] + Protrusion)
yrot(180)
Bullnose();
down(Protrusion)
cyl(TailBearing[LENGTH] + 2*Protrusion,d=TailBearing[ID],circum=true,anchor=BOTTOM);
}
}
//—–
// Build things
if (Style == "Bullnose")
Bullnose();
if (Style == "Cone")
Cone();
if (Style == "Cup")
Cup();
if (Style == "Build") {
right(MaxDia/2 + Gap)
Cone();
left(MaxDia/2 + WallThick + Gap)
Cup();
}

Comments

Spam comments get trashed, so don’t bother. Comment moderation may cause a delay.