Parcourir la source

Rev 2: tighten display pocket, fix stud diameter, move plunger sprues to flange edges

- DISP_W_TOL = 0.1 (separate from TOL): reduces display cavity width by 0.2 mm per
  side vs. the previous 0.3 mm tolerance for a snugger fit
- PCB_HOLE_D = 2.5 drives STUD_R: fixes stud diameter from 3.0 mm (impossible fit)
  to 2.3 mm for 2.5 mm PCB locating holes
- Plunger sprues moved from shaft level (above flange shoulder) to flange outer edges
  at mid-flange height; flanges are hidden so no post-removal cleanup required
ZiB il y a 3 mois
Parent
commit
1bf214780c
2 fichiers modifiés avec 14 ajouts et 12 suppressions
  1. 6 4
      params.scad
  2. 8 8
      plunger.scad

+ 6 - 4
params.scad

@@ -21,6 +21,7 @@ ACT_D  = 88.22;
 EPD_ANGLE    = 0;    // 0 = flat/inline; 90 = display face coplanar with lid Y+ wall
 LIP          = 1.5;
 TOL          = 0.3;
+DISP_W_TOL   = 0.1;  // per-side width tolerance for display pocket (was TOL=0.3; tightened for snug fit)
 CHAM         = 1.0;
 CHAM_ANGLE   = 60;
 BEZEL_Y      = 2.5;
@@ -29,7 +30,7 @@ FPC_BEND_R   = 4.0;
 DISP_Y_EXTRA = 1.25;  // extra pocket depth at Y+ so display can seat 1.25mm further in
 
 /* [EPD Case Derived] */
-epd_cav_w  = DISP_W + TOL * 2;
+epd_cav_w  = DISP_W + DISP_W_TOL * 2;
 epd_cav_d  = DISP_D + TOL;
 epd_case_w = epd_cav_w + WALL * 2;
 epd_case_h = WALL + DISP_T + LIP;
@@ -94,9 +95,10 @@ BOSS_D         = 6.0;
 BOSS_H         = 2.0;
 
 /* [Locating Studs] */
-STUD_CLEAR = 0.10;
-STUD_H     = PCB_T + 1.0;
-STUD_R     = (SCREW_D - 2*STUD_CLEAR) / 2;
+STUD_CLEAR  = 0.10;
+STUD_H      = PCB_T + 1.0;
+PCB_HOLE_D  = 2.5;                         // PCB locating hole diameter
+STUD_R      = (PCB_HOLE_D - 2*STUD_CLEAR) / 2;  // 1.15 mm → 2.3 mm dia stud
 
 /* [PCB Standoff Positions — relative to PCB origin] */
 PCB_BOSS_X1 = 2.5;

+ 8 - 8
plunger.scad

@@ -21,11 +21,10 @@ module plunger() {
 //  2 mm gap between flanges; snap the 3 bridges to separate.
 // ============================================================
 
-SPRUE_GAP  = 2.0;                       // gap between adjacent flanges
+SPRUE_GAP   = 2.0;                       // gap between adjacent flanges
 SPRUE_PITCH = FLANGE_D + SPRUE_GAP;     // centre-to-centre
-SPRUE_T    = 1.0;                        // bridge thickness — 1.5mm meets resin min
-SPRUE_Z    = FLANGE_T + 0.4;            // just above the flange shoulder
-SPRUE_OVL  = 0.2;                        // overlap into each shaft so shells merge
+SPRUE_T     = 1.0;                       // bridge thickness — 1.5mm meets resin min
+SPRUE_OVL   = 0.2;                       // overlap into each flange edge so shells merge
 
 module plunger_strip() {
   union() {
@@ -34,11 +33,12 @@ module plunger_strip() {
         rotate([90, 0, 0])
           plunger();
 
+    // Sprues on flange outer edges — hidden surface, no post-removal cleanup needed
     for (i = [0:6]) {
-      x0 = i * SPRUE_PITCH + PLUNGER_D / 2 - SPRUE_OVL;
-      x1 = (i + 1) * SPRUE_PITCH - PLUNGER_D / 2 + SPRUE_OVL;
-      translate([x0, -PLUNGER_D / 2, SPRUE_Z])
-        cube([x1 - x0, PLUNGER_D, SPRUE_T]);
+      x0 = i * SPRUE_PITCH + FLANGE_D / 2 - SPRUE_OVL;
+      x1 = (i + 1) * SPRUE_PITCH - FLANGE_D / 2 + SPRUE_OVL;
+      translate([x0, -SPRUE_T / 2, FLANGE_T / 2 - SPRUE_T / 2])
+        cube([x1 - x0, SPRUE_T, SPRUE_T]);
     }
   }
 }