Sfoglia il codice sorgente

Experiments in PIU ineterim box

clementinecomputing 5 anni fa
parent
commit
f8b887776c

+ 139 - 0
experiment/legacy/PIU-interim/PIU-box-interim.scad

@@ -0,0 +1,139 @@
+// License: CC0
+//
+
+// units in mm
+
+$fn = 50;
+
+M3_H3_DRILL_R = 4.3127/2;
+
+RFID_screw_diam = 3;
+RFID_screw_dw = 103.5;
+RFID_access_diam = 15.5;
+
+MAG_PCB_screw_dw = 81.5;
+MAG_PCB_screw_diam = 2;
+
+MAG_READER_screw_dw = 93.75;
+MAG_READER_screw_diam = 3;
+
+MAG_ACCESS_total_width = 25;
+MAG_ACCESS_small_width = 10;
+MAG_ACCESS_total_height = 95;
+MAG_ACCESS_section = [17,16,29,16,17];
+
+SCREEN_screw_diam = 3;
+SCREEN_dw = 186;
+SCREEN_dh = 54;
+
+SCREEN_WINDOW_h = 46;
+SCREEN_WINDOW_w = 160;
+
+BOARD_screw_diam = 3;
+BOARD_screw_dw = 76.25;
+BOARD_screw_dh = 101.5;
+
+
+PIU_width = 200;
+PIU_height = 160;
+PIU_side = 50;
+
+module PIU_face() {
+  difference() {
+
+    // central face
+    //
+    square([PIU_width, PIU_height], center=true);
+
+    // screen
+    //
+    translate([0, PIU_height/2 - SCREEN_WINDOW_h/2 - 10])
+    union() {
+      square([SCREEN_WINDOW_w, SCREEN_WINDOW_h], center=true);
+      translate([-SCREEN_dw/2, SCREEN_dh/2]) circle(SCREEN_screw_diam/2);
+      translate([ SCREEN_dw/2, SCREEN_dh/2]) circle(SCREEN_screw_diam/2);
+      translate([ SCREEN_dw/2,-SCREEN_dh/2]) circle(SCREEN_screw_diam/2);
+      translate([-SCREEN_dw/2,-SCREEN_dh/2]) circle(SCREEN_screw_diam/2);
+    }
+
+    // mag
+    //
+    translate([0, -5])
+    union() {
+      square([MAG_ACCESS_total_height, MAG_ACCESS_small_width], center=true);
+      translate([-MAG_ACCESS_section[1]/2 - MAG_ACCESS_section[2]/2, 0])
+        square([MAG_ACCESS_section[1], MAG_ACCESS_total_width], center=true);
+      translate([ MAG_ACCESS_section[3]/2 + MAG_ACCESS_section[2]/2, 0])
+        square([MAG_ACCESS_section[3], MAG_ACCESS_total_width], center=true);
+      rotate( 15, [0,0,1]) translate([-MAG_PCB_screw_dw/2, 0]) circle(MAG_PCB_screw_diam/2);
+      rotate( 15, [0,0,1]) translate([ MAG_PCB_screw_dw/2, 0]) circle(MAG_PCB_screw_diam/2);
+      rotate(-15, [0,0,1]) translate([-MAG_PCB_screw_dw/2, 0]) circle(MAG_PCB_screw_diam/2);
+      rotate(-15, [0,0,1]) translate([ MAG_PCB_screw_dw/2, 0]) circle(MAG_PCB_screw_diam/2);
+
+      rotate( 15, [0,0,1]) translate([-MAG_READER_screw_dw/2, 0]) circle(MAG_READER_screw_diam/2);
+      rotate( 15, [0,0,1]) translate([ MAG_READER_screw_dw/2, 0]) circle(MAG_READER_screw_diam/2);
+      rotate(-15, [0,0,1]) translate([-MAG_READER_screw_dw/2, 0]) circle(MAG_READER_screw_diam/2);
+      rotate(-15, [0,0,1]) translate([ MAG_READER_screw_dw/2, 0]) circle(MAG_READER_screw_diam/2);
+    }
+
+    // RFID
+    //
+    translate([0,-55])
+    union() {
+      translate([-RFID_screw_dw/2,0]) circle(RFID_screw_diam/2);
+      translate([ RFID_screw_dw/2,0]) circle(RFID_screw_diam/2);
+      circle(RFID_access_diam/2);
+    }
+    
+  }
+}
+
+module PIU() {
+  _c = 1;
+  union() {
+    PIU_face();
+
+    // side left and right
+    //
+    translate([_c + PIU_width/2 + PIU_side/2, 0])
+      square([PIU_side, PIU_height], center=true);
+    translate([-(_c + PIU_width/2 + PIU_side/2), 0])
+      square([PIU_side, PIU_height], center=true);
+
+    // top and bottom
+    //
+    translate([0, _c + PIU_height/2 + PIU_side/2])
+      square([PIU_width, PIU_side], center=true);
+    translate([0, -(_c + PIU_height/2 + PIU_side/2)])
+      square([PIU_width, PIU_side], center=true);
+
+    // connecting strips
+    //
+    translate([-PIU_width/2 - _c/2, 0]) square([_c+0.25, PIU_height], center=true);
+    translate([ PIU_width/2 + _c/2, 0]) square([_c+0.25, PIU_height], center=true);
+    translate([ 0, PIU_height/2 + _c/2]) square([PIU_width, _c+0.25], center=true);
+    translate([ 0, -(PIU_height/2 + _c/2)]) square([PIU_width, _c+0.25], center=true);
+
+  }
+}
+
+module PIU_back_bracket() {
+  _w = 20;
+  _dx = PIU_width/2 - _w/2;
+  _dy = PIU_height/2 - _w/2;
+  _drill_r = M3_H3_DRILL_R;
+  difference() {
+    square([PIU_width, PIU_height], center=true);
+    square([PIU_width - 2*_w, PIU_height - 2*_w], center=true);
+
+    translate([ -_dx, -_dy]) circle(_drill_r);
+    translate([  _dx, -_dy]) circle(_drill_r);
+    translate([  _dx,  _dy]) circle(_drill_r);
+    translate([ -_dx,  _dy]) circle(_drill_r);
+  }
+}
+
+PIU();
+translate([0,240]) PIU_back_bracket();
+
+

+ 64 - 0
experiment/legacy/PIU-interim/measurements.md

@@ -0,0 +1,64 @@
+PIU Measurements
+===
+
+in mm
+
+front-face: w: 190, h: 267, angle-h: 70, top-h: 70
+
+side: 100
+
+---
+
+Display screws (M3):
+
+(57+51.25)/2 = 54.125
+
+176
+
+186 x 54
+
+
+---
+
+"Blue board" screws (M3):
+
+(98.5+104.5)/2 = 101.5
+
+(73.25+79.35)/2 = 76.3
+
+---
+
+RFID reader (M3)
+
+(100.5 + 106.75)/2 = 103.625
+
+15.5 central cable hole diameter
+
+
+---
+
+mag
+
+central cutout:
+
+95 height
+10 skinny w
+25 fat w
+
+17 16 29 16 17
+
+```
+   17 16  29  16  17
+      ___     ___
+  ___|   |___|   |___      \
+  |                  |  10  | 25
+  ---|___|---|___|----     /
+```
+
+(diagonal) PCB mounting screw hole pair (M2):
+
+(83.52 + 79.42)/2 = 81.47
+
+(diagonal) MAG reader screw hole pair (M3):
+
+(90.75+96.9)/2 = 93.825