Sign in with STEVE

steve/button-head-screw

Button head socket screw, ISO 7380, M3 to M12, any length.

v1.1.0 STEVE MIT 10
Isometric
part.py 46 lines · Python · STEVE runtime · checked
Download
1"""ISO 7380 button head socket screw. Envelope: domed head (revolved profile), hex socket, plain shank.
2The head's flat side is on the XY plane at the origin; the shank points down -Z.
3
4Material: property class 10.9 alloy steel, quenched and tempered (34CrNiMo6 from the material library), black oxide."""
5from steve import Model
6
7size = "M4" # Thread size
8length = 10 # mm Length under the head
9
10# size: (head diameter dk, head height k, hex key s)
11HEADS = {
12 'M3': (5.7, 1.65, 2.0),
13 'M4': (7.6, 2.2, 2.5),
14 'M5': (9.5, 2.75, 3.0),
15 'M6': (10.5, 3.3, 4.0),
16 'M8': (14.0, 4.4, 5.0),
17 'M10': (17.5, 5.5, 6.0),
18 'M12': (21.0, 6.6, 8.0),
19}
20NOMINAL = {
21 'M3': 3.0,
22 'M4': 4.0,
23 'M5': 5.0,
24 'M6': 6.0,
25 'M8': 8.0,
26 'M10': 10.0,
27 'M12': 12.0,
28}
29dk, k, s = HEADS[size]
30d = NOMINAL[size]
31
32model = Model()
33with model.sketch("head_profile", on="XZ", name="Head profile") as sk:
34 sk.polyline("outline", [(0, 0), (dk / 2, 0), (dk / 2, 0.25 * k), (0.42 * dk, 0.7 * k), (0.3 * dk, 0.92 * k), (0, k)])
35model.revolve("head", "head_profile", axis="Z")
36with model.sketch("shank_sketch", on="XY", name="Shank") as sk:
37 sk.circle("shank", (0, 0), d / 2)
38model.extrude("shank", "shank_sketch", distance=-length)
39model.plane("head_top", on="XY", offset=k, name="Head top")
40with model.sketch("socket_sketch", on="head_top", name="Hex socket") as sk:
41 sk.polygon("hex", (0, 0), s / 2, 6, inscribed=False)
42model.extrude("socket", "socket_sketch", distance=-0.6 * k, op="cut")
43model.material("steel-34crnimo6") # class 10.9 alloy steel
44model.appearance(color="#2e3034", metalness=0.75, roughness=0.38) # black oxide finish
45result = model.result()
46

ISO 7380 button head socket screw. Envelope: domed head (revolved profile), hex socket, plain shank. The head's flat side is on the XY plane at the origin; the shank points down -Z. Material: property class 10.9 alloy steel, quenched and tempered (34CrNiMo6 from the material library), black oxide. Dimensions from STEVE's standard-part tables (nominal values of the standard). Envelope geometry: no modelled thread.

  1. 2.0.0 Latest Compare with 1.1.0
  2. 1.1.0 Compare with 1.0.0

    Materials and finishes: each part is made of its standard's engineering material, with its usual finish.

  3. 1.0.0
More #fastener
STEVEMIT

steve/hex-head-screw

Hexagon head screw, fully threaded, ISO 4017 / DIN 933, M1.6 to M36, any length, with catalogue sizes as presets.

18 85 sizes 0 1 day ago v2.0.0
STEVEMIT

steve/countersunk-screw

Hexagon socket countersunk head screw, ISO 10642 / DIN 7991, M3 to M12, any length, with catalogue sizes as presets.

0 62 sizes 0 1 day ago v2.0.0
STEVEMIT

steve/pan-head-screw

Pan head screw with cross recess, ISO 7045, M2 to M8, any length.

0 7 variants 0 2 days ago v1.1.0
STEVEMIT

steve/captive-panel-screw

Captive panel screw envelope, M3 to M5, any length: shank and round knob (simplified).

0 18 sizes 0 1 day ago v1.0.0