Sign in with STEVE

steve/oldham-coupling

Oldham shaft coupling, clamping type: 15 to 26, bores 4 to 12 mm.

v1.0.0 Latest STEVE MIT 0

Not affiliated with or endorsed by MISUMI.

Isometric
part.py 51 lines · Python · STEVE runtime · checked
Download
1"""Oldham shaft coupling, clamping type: two hubs and a spacer. Axis along Z, the first hub's end face on the XY plane, bore d1 in the first hub, bore d2 in the second.
2Fit dimensions from MISUMI's table; see the README."""
3import cadquery as cq
4from steve import Model
5
6size = 20 # Coupling number
7d1 = 6 # mm Bore 1 (d1 <= d2)
8d2 = 8 # mm Bore 2
9detail = "full" # full: hubs, spacer, slits and clamp screw holes; simple: one solid with the bores
10
11# number: (hub D, spacer D1, spacer bore d3, L, hub length l, screw offset A, screw from the end F, clamp screw M, bores offered).
12# MISUMI Couplings catalogue, Oldham Couplings, Clamping, MCOC table, https://de.misumi-ec.com/files/images/products/docs/flexibleshaftcouplings.pdf, PDF p. 16.
13SIZES = {
14 15: (14.5, 15, 5.0, 18.4, 6.6, 4.5, 3.2, 2.5, (4, 5, 6)),
15 17: (16.8, 17.5, 7.2, 24.4, 9, 5, 4, 3, (5, 6, 6.35)),
16 20: (20, 21, 8.2, 27.2, 10, 7, 4.5, 3, (6, 6.35, 7, 8, 9.53, 10)),
17 26: (26, 27, 12.0, 30.4, 11.5, 8.4, 5, 4, (6, 6.35, 7, 8, 9.53, 10, 11, 12)),
18}
19D, D1, d3, L, hub, A, F, screw, bores = SIZES[size]
20if d1 not in bores or d2 not in bores or d1 > d2:
21 raise ValueError(f"The number {size} Oldham coupling offers bores {bores}, with d1 <= d2.")
22SLIT = 0.05 * D # the slit's width, for looks
23
24
25def half(z0, bore):
26 shape = cq.Workplane("XY").workplane(offset=z0).circle(D / 2).extrude(hub)
27 shape = shape.cut(cq.Workplane("XY").workplane(offset=z0 - 1).circle(bore / 2).extrude(hub + 2))
28 shape = shape.cut(cq.Workplane("XY").workplane(offset=z0 - 1).center(D / 4 + 0.5, 0).rect(D / 2 + 1, SLIT).extrude(hub + 2))
29 return shape
30
31
32model = Model()
33if detail == "simple":
34 body = cq.Workplane("XY").circle(D / 2).extrude(L).union(cq.Workplane("XY").workplane(offset=hub).circle(D1 / 2).extrude(L - 2 * hub), clean=False)
35 body = body.cut(cq.Workplane("XY").workplane(offset=-1).circle(d1 / 2).extrude(L / 2 + 1))
36 body = body.cut(cq.Workplane("XY").workplane(offset=L / 2).circle(d2 / 2).extrude(L / 2 + 1))
37 model.add("body", body, name="Oldham coupling")
38 model.material("steel-generic", color="#9a9da3")
39else:
40 first, second = half(0, d1), half(L - hub, d2)
41 for z in (F, L - F):
42 cross = cq.Workplane("YZ").center(A, z).circle(screw / 2).extrude(D, both=True)
43 first, second = first.cut(cross), second.cut(cross)
44 spacer = cq.Workplane("XY").workplane(offset=hub).circle(D1 / 2).circle(d3 / 2).extrude(L - 2 * hub)
45 model.add("hub_1", first, op="new", body="hub_1_body", name="Hub, d1")
46 model.add("hub_2", second, op="new", body="hub_2_body", name="Hub, d2")
47 model.add("spacer", spacer, op="new", body="spacer_body", name="Spacer")
48 model.material("steel-generic", bodies=["hub_1_body", "hub_2_body"], color="#9a9da3")
49 model.material("pa6", bodies=["spacer_body"], color="#26282b")
50result = model.result()
51

Oldham shaft coupling, clamping type, as two hubs and a spacer with slits and clamp screw holes. Sizes and bores from MISUMI's MCOC table. See the README.

Oldham coupling

A clamping Oldham shaft coupling: two hubs and a spacer, three solids. Axis along Z, the first hub's end face on the XY plane, bore d1 in the first hub and bore d2 in the second.

Source

MISUMI Couplings catalogue, Oldham Couplings, Clamping, MCOC table, https://de.misumi-ec.com/files/images/products/docs/flexibleshaftcouplings.pdf, PDF page 16: hub D, spacer D1, spacer bore d3, length L, hub length l, screw positions A and F, screw M, and the bores offered on each number.

Only bore pairs one number offers are presets. Numbers 30, 34 and 38 aren't here yet.

Not modelled: the tongues joining hubs to spacer, which are inside and which the table doesn't dimension, the screws (only their holes at nominal M) and the screw head's reach D2. Proportions, for looks only: the slit's width.

The table gives hubs in EN 1.4301 equivalent sintered alloy and the spacer in carbon-reinforced resin. Those aren't in the material list, so the part uses steel-generic and pa6, for looks and rough mass only.

  1. 1.0.0 Latest
More #coupling
STEVEMIT

steve/bellows-coupling

Bellows shaft coupling, clamping type: 12 to 32 mm outside diameter, bores 4 to 14 mm.

0 10 sizes 0 1 hour ago v1.0.0
STEVEMIT

steve/rigid-coupling

Rigid shaft coupling, split clamping type: 16 to 32 mm outside diameter, bores 5 to 14 mm.

0 8 sizes 0 1 hour ago v1.0.0
STEVEMIT

steve/jaw-coupling

Jaw shaft coupling, clamping type: 14, 20 and 30 mm outside diameter, bores 3 to 12 mm.

0 18 sizes 0 1 hour ago v1.0.0
STEVEMIT

steve/slit-coupling

Slit shaft coupling, long clamping: 12 to 32 mm outside diameter, bores 4 to 14 mm.

0 40 sizes 0 1 hour ago v1.0.0