Sign in with STEVE

steve/pan-head-screw

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

v1.0.0 STEVE MIT 0
Isometric
part.py 47 lines · Python · STEVE runtime · checked
Download
1"""ISO 7045 pan head screw with cross recess. Envelope: head, a simplified cross recess, plain shank.
2The head's bearing face is on the XY plane at the origin; the shank points down -Z."""
3from steve import Model
4
5size = "M3" # Thread size
6length = 10 # mm Length under the head
7
8# size: (head diameter dk, head height k, cross recess number)
9HEADS = {
10 'M2': (4.0, 1.6, 1),
11 'M2.5': (5.0, 2.0, 1),
12 'M3': (5.6, 2.4, 1),
13 'M4': (8.0, 3.1, 2),
14 'M5': (9.5, 3.8, 2),
15 'M6': (12.0, 4.6, 3),
16 'M8': (16.0, 6.0, 4),
17}
18NOMINAL = {
19 'M2': 2.0,
20 'M2.5': 2.5,
21 'M3': 3.0,
22 'M4': 4.0,
23 'M5': 5.0,
24 'M6': 6.0,
25 'M8': 8.0,
26}
27dk, k, recess = HEADS[size]
28d = NOMINAL[size]
29arm = 0.55 * dk
30slot = 0.12 * dk
31
32model = Model()
33with model.sketch("head_sketch", on="XY", name="Head") as sk:
34 sk.circle("head", (0, 0), dk / 2)
35model.extrude("head", "head_sketch", distance=k)
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("cross_x", on="head_top", name="Recess X") as sk:
41 sk.center_rect("bar", (0, 0), arm, slot)
42model.extrude("recess_x", "cross_x", distance=-0.5 * k, op="cut")
43with model.sketch("cross_y", on="head_top", name="Recess Y") as sk:
44 sk.center_rect("bar", (0, 0), slot, arm)
45model.extrude("recess_y", "cross_y", distance=-0.5 * k, op="cut")
46result = model.result()
47

ISO 7045 pan head screw with cross recess. Envelope: head, a simplified cross recess, plain shank. The head's bearing face is on the XY plane at the origin; the shank points down -Z. Dimensions from STEVE's standard-part tables (nominal values of the standard). Envelope geometry: no modelled thread.

  1. 1.1.0 Latest Compare with 1.0.0

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

  2. 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/button-head-screw

Hexagon socket button head screw, ISO 7380-1, M3 to M16, any length, with catalogue sizes as presets.

10 65 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/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