Forráskód Böngészése

wip

* housing for rpi DIU
clementinecomputing 6 éve
szülő
commit
c344fdcec0

+ 83 - 0
experiment/production/housing/v2/PopufareHousingBack.scad

@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingBackPlate() {
+  w = POPUFARE_HOUSING_WIDTH;
+  h = POPUFARE_HOUSING_HEIGHT;
+
+  fixture_dx = POPUFARE_FIXTURE_DX;
+  fixture_dy = POPUFARE_FIXTURE_DY;
+  fixture_bolt = 5.0/2.0;
+
+  bx = POPUFARE_BRACKET_CX;
+  br = POPUFARE_BRACKET_D/2.0;
+
+
+  gland_cx = 0;
+  gland_cy = -(h/2 - 1.5*POPUFARE_GLAND_DIAMETER);
+  
+  gdx = 1*POPUFARE_GLAND_DIAMETER/2;
+  gdy = 1*POPUFARE_GLAND_DIAMETER/2;
+
+  difference() {
+    square([w,h], center=true);
+
+    // gland cable assembly access
+    //
+    translate([gland_cx, gland_cy]) circle(POPUFARE_GLAND_DIAMETER/2.0);
+    
+    
+    // optional plate fixture points (in case we need to close off or alter
+    // the gland assembly diameter
+    //
+    translate([gland_cx + gdx, gland_cy + gdy]) circle(_M3r);
+    translate([gland_cx - gdx, gland_cy + gdy]) circle(_M3r);
+    translate([gland_cx - gdx, gland_cy - gdy]) circle(_M3r);
+    translate([gland_cx + gdx, gland_cy - gdy]) circle(_M3r);
+
+    // side bracket attachments
+    //
+    //translate([ (w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    //translate([ (w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    //translate([-(w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    //translate([-(w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
+
+    // top bracket attachments
+    //
+    translate([ (w/2 - POPUFARE_BRACKET_DE),  (h/2 - bx)]) circle(br);
+    translate([-(w/2 - POPUFARE_BRACKET_DE),  (h/2 - bx)]) circle(br);
+
+
+    // bottom bracket attachments
+    //
+    translate([ (w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
+    translate([-(w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
+
+    // hinge assembly attachment
+    //
+
+
+  }
+}
+
+//PopufareHousingBackPlate();

+ 69 - 0
experiment/production/housing/v2/PopufareHousingBottom.scad

@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingBottomPlate() {
+  w = POPUFARE_HOUSING_WIDTH;
+  h = POPUFARE_HOUSING_DEPTH;
+  
+  fixture_dx = POPUFARE_FIXTURE_DX;
+  fixture_dy = POPUFARE_FIXTURE_DY;
+  fixture_bolt = 5.0/2.0;
+  
+  bx = POPUFARE_BRACKET_CX;
+  br = POPUFARE_BRACKET_D/2.0;
+  
+  
+  difference() {
+    square([w,h], center=true);
+    
+    // generic cable access
+    //
+    circle(POPUFARE_GLAND_DIAMETER/2.0);
+    
+    // fixture bolts
+    //
+    translate([-fixture_dx/2.0, -fixture_dy/2.0]) circle(fixture_bolt);
+    translate([ fixture_dx/2.0, -fixture_dy/2.0]) circle(fixture_bolt);
+    translate([ fixture_dx/2.0,  fixture_dy/2.0]) circle(fixture_bolt);
+    translate([-fixture_dx/2.0,  fixture_dy/2.0]) circle(fixture_bolt);
+    
+    // side bracket attachments
+    //
+    translate([ (w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    translate([ (w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    translate([-(w/2 - bx), (h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    translate([-(w/2 - bx),-(h/2-POPUFARE_BRACKET_DE)]) circle(br);
+    
+    // front bracket attachments
+    //
+    translate([ (w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
+    translate([-(w/2 - POPUFARE_BRACKET_DE), -(h/2 - bx)]) circle(br);
+    
+    // hinge assembly attachment
+    //
+    
+    
+  }
+}
+
+//PopufareHousingBottomPlate();

+ 64 - 0
experiment/production/housing/v2/PopufareHousingCommon.scad

@@ -0,0 +1,64 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+$fs = 1.0/64.0;
+
+// in mm
+//
+POPUFARE_HOUSING_WIDTH = 200;
+//POPUFARE_HOUSING_DEPTH = 150;
+POPUFARE_HOUSING_DEPTH = 180;
+//POPUFARE_HOUSING_HEIGHT = 150;
+POPUFARE_HOUSING_HEIGHT = 150;
+
+POPUFARE_GLAND_DIAMETER = 31.5;
+POPUFARE_SCREEN_WIDTH = 118;
+POPUFARE_SCREEN_HEIGHT = 70;
+
+//POPUFARE_FRONT_HEIGHT = 35;
+POPUFARE_FRONT_HEIGHT = 60;
+
+POPUFARE_FIXTURE_DX = 42.5;
+POPUFARE_FIXTURE_DY = 42.5;
+
+POPUFARE_BRACKET_CX = 20;
+POPUFARE_BRACKET_D = 5;
+
+POPUFARE_BRACKET_DS = 100;
+POPUFARE_BRACKET_DE = 40;
+
+// ...
+//
+_MATERIAL_THICKNESS = 1.0/8.0;
+
+_M2 = 2.0;
+_M2r = 2.0/2;
+
+_M3 = 3.0;
+_M3r = 3.0/2;
+
+_M4 = 4.0;
+_M4r = 4.0/2;
+
+_M5 = 5.0;
+_M5r = 5.0/2;
+
+
+

+ 72 - 0
experiment/production/housing/v2/PopufareHousingFrontAngle.scad

@@ -0,0 +1,72 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingFrontAnglePlate() {
+  dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
+  
+  w = POPUFARE_HOUSING_WIDTH;
+  h = sqrt(2.0)*dh;
+
+  bx = POPUFARE_BRACKET_CX;
+  br = POPUFARE_BRACKET_D/2.0;
+  de = POPUFARE_BRACKET_DE;
+
+  lip = _MATERIAL_THICKNESS;
+  
+  
+  screen_w = POPUFARE_SCREEN_WIDTH;
+  screen_h = POPUFARE_SCREEN_HEIGHT;
+  screen_cx = 0;
+  screen_cy = 0;
+  screen_attach_dw = screen_w + 8;
+  screen_attach_dh = screen_h + 8;
+  
+  difference() {
+    union() {
+      square([w,h], center=true);
+      
+      // lip to cover bottom plate
+      //
+      translate([0,-(h/2 + lip/2)]) square([w,lip], center=true);
+      translate([0, (h/2 + lip/2)]) square([w,lip], center=true);
+    };
+    
+    // attach to site plate brackets
+    //
+    translate([ -(w/2 - bx), -(h/2-de) ]) circle(br);
+    translate([ -(w/2 - bx),  (h/2-de) ]) circle(br);
+    translate([  (w/2 - bx), -(h/2-de) ]) circle(br);
+    translate([  (w/2 - bx),  (h/2-de) ]) circle(br);
+    
+    // screen center
+    //
+    translate([screen_cx, screen_cy]) square([screen_w, screen_h], center=true);
+    translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
+    translate([screen_cx, screen_cy]) translate([ screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
+    translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2,-screen_attach_dh/2]) circle(_M3r);
+    translate([screen_cx, screen_cy]) translate([-screen_attach_dw/2, screen_attach_dh/2]) circle(_M3r);
+    
+  }
+
+}
+
+//PopufareHousingFrontAnglePlate();

+ 61 - 0
experiment/production/housing/v2/PopufareHousingFrontBottom.scad

@@ -0,0 +1,61 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingFrontBottomPlate() {
+  
+  w = POPUFARE_HOUSING_WIDTH;
+  h = POPUFARE_FRONT_HEIGHT;
+
+  bx = POPUFARE_BRACKET_CX;
+  br = POPUFARE_BRACKET_D/2.0;
+  de = POPUFARE_BRACKET_DE;
+
+  lip = _MATERIAL_THICKNESS;
+  lip_top = _MATERIAL_THICKNESS * sqrt(2.0);
+  
+  difference() {
+    union() {
+      square([w,h], center=true);
+      
+      // lip to cover bottom plate
+      //
+      translate([0,-(h/2 + lip/2)]) square([w,lip], center=true);
+    };
+    
+    // shave off top front panel to accomodate angle plate
+    //
+    translate([0, (h/2 - lip_top)]) square([w, lip_top], center=true);
+    
+    // attach to bottom plate bracket
+    //
+    translate([ -(w/2 - de), -(h/2-bx) ]) circle(br);
+    translate([  (w/2 - de), -(h/2-bx) ]) circle(br);
+    
+    // side plate bracket attachment
+    //
+    translate([ -(w/2 - bx), 0]) circle(br);
+    translate([  (w/2 - bx), 0]) circle(br);
+  }
+
+}
+
+//PopufareHousingFrontBottomPlate();

+ 69 - 0
experiment/production/housing/v2/PopufareHousingSideLeft.scad

@@ -0,0 +1,69 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingSideLeftPlate() {
+  w = POPUFARE_HOUSING_DEPTH;
+  h = POPUFARE_HOUSING_HEIGHT;
+  
+  br = POPUFARE_BRACKET_D/2.0;
+  bx = POPUFARE_BRACKET_CX;
+  de = POPUFARE_BRACKET_DE;
+  
+  dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
+  alen = dh*sqrt(2.0);
+  w_right = w - dh;
+
+  difference() {
+    square([w,h], center=true);
+    
+    // chop off angle
+    //
+    translate([-w/2,-(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1]) square([4*w,4*w]);
+    
+    
+    
+    // bottom bracket
+    //
+    translate([-(w/2-de), -(h/2-bx) ]) circle(br);
+    translate([ (w/2-de), -(h/2-bx) ]) circle(br);
+    
+    // front bracket
+    //
+    translate( [ -(w/2-bx), -(h/2 - POPUFARE_FRONT_HEIGHT/2) ]) circle(br);
+    
+    // front angle bracket
+    //
+    translate([-w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1])
+      translate([de, -bx]) circle(br);
+    translate([-w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(45, [0,0,1])
+      translate([alen - de, -bx]) circle(br);
+      
+    // top bracket
+    //
+    translate([ (w/2 - (w_right/2.0)), (h/2 - bx) ]) circle(br);
+    
+    // no back bracket
+  }
+}
+
+//PopufareHousingSideLeft();

+ 71 - 0
experiment/production/housing/v2/PopufareHousingSideRight.scad

@@ -0,0 +1,71 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingSideRightPlate() {
+  w = POPUFARE_HOUSING_DEPTH;
+  h = POPUFARE_HOUSING_HEIGHT;
+  
+  br = POPUFARE_BRACKET_D/2.0;
+  bx = POPUFARE_BRACKET_CX;
+  de = POPUFARE_BRACKET_DE;
+  
+  dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
+  alen = dh*sqrt(2.0);
+  w_right = w - dh;
+
+  difference() {
+    square([w,h], center=true);
+    
+    // chop off angle
+    //
+    translate([ w/2,-(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(-45, [0,0,1])
+      translate([-4*w,0]) square([4*w,4*w]);
+    
+    
+    
+    // bottom bracket
+    //
+    translate([-(w/2-de), -(h/2-bx) ]) circle(br);
+    translate([ (w/2-de), -(h/2-bx) ]) circle(br);
+    
+    // front bracket
+    //
+    translate( [ (w/2-bx), -(h/2 - POPUFARE_FRONT_HEIGHT/2) ]) circle(br);
+    
+    // front angle bracket
+    //
+    translate([ w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(-45, [0,0,1])
+      translate([-de, -bx]) circle(br);
+    translate([ w/2, -(h/2-POPUFARE_FRONT_HEIGHT)]) rotate(-45, [0,0,1])
+      translate([-(alen - de), -bx]) circle(br);
+      
+    // top bracket
+    //
+    translate([ -(w/2 - (w_right/2.0)), (h/2 - bx) ]) circle(br);
+    
+    // no back bracket
+    //f
+  }
+}
+
+//PopufareHousingSideRight();

+ 57 - 0
experiment/production/housing/v2/PopufareHousingTop.scad

@@ -0,0 +1,57 @@
+/*
+ * Copyright (c) 2019 Clementine Computing LLC.
+ *
+ * This file is part of PopuFare.
+ *
+ * PopuFare is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * PopuFare is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with PopuFare.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+include <PopufareHousingCommon.scad>
+
+module PopufareHousingTopPlate() {
+  dh = POPUFARE_HOUSING_HEIGHT - POPUFARE_FRONT_HEIGHT;
+  w = POPUFARE_HOUSING_WIDTH;
+  h = POPUFARE_HOUSING_DEPTH-dh;
+
+  bx = POPUFARE_BRACKET_CX;
+  br = POPUFARE_BRACKET_D/2.0;
+  de = POPUFARE_BRACKET_DE;
+
+  lip = _MATERIAL_THICKNESS;
+
+  difference() {
+    union() {
+      square([w,h], center=true);
+     
+    };
+    
+    // shave off top front panel to accomodate angle plate
+    //
+    translate([0, -(h/2 - lip)]) square([w, lip], center=true);
+    
+    // attach to back plate bracket
+    //
+    translate([ -(w/2 - de), (h/2-bx) ]) circle(br);
+    translate([  (w/2 - de), (h/2-bx) ]) circle(br);
+    
+    // side plate bracket attachment
+    //
+    translate([ -(w/2 - bx), 0]) circle(br);
+    translate([  (w/2 - bx), 0]) circle(br);
+  }
+
+}
+
+//PopufareHousingTopPlate();

+ 29 - 0
experiment/production/housing/v2/README.md

@@ -0,0 +1,29 @@
+Popufare Driver Interface Unit Housing
+===
+
+###### 2019-11-13
+
+This is Version 2 of the Driver Interface Unit (DIU) housing.
+
+This is a "living" document and updates should be expected.
+
+The material is yet to be determined but could be made of delrin,
+PVC or something else equally as durable.
+
+The housing consists of 7 pieces.
+
+* Back Plate - This has an adapter hole for a wiring gland
+* Bottom Plate - This has 4 moutning screw holes and a middle open segmentj
+* Left/Right Plate - This has openings for both speaker and antennae for GPS and GPRS
+* Top Plate
+* Front Angle Plate - This is where the screen and touchscreen go
+* Front Bottom Plate
+
+Further:
+
+* The `Back Plate` and `Top Plate` are attached to each other.
+* The `Back Plate` is affixed to the `Bottom Plate` by a hinge.
+* The `Bottom Plate`, `Left Plate`, `Right Plate`, `Front Bottom Plate` and `Frton Angle Plate` are all attached
+  to each other.
+
+The main form of attachment angle brackets with M3 to M5 bolts.

+ 55 - 0
experiment/production/housing/v2/export/export-all

@@ -0,0 +1,55 @@
+#!/bin/bash
+
+VERSION=0.1.0
+
+function ngc_position {
+  ifn="$1"
+
+  offsetx=10
+  offsety=10
+
+  if [[ "$ifn" == "" ]] ; then
+    echo "provide file"
+    exit 1
+  fi
+
+  dos2unix $ifn
+  sed -i 's/;.*//' $ifn
+
+  mx=`ngc_bounds $ifn | grep min_x | cut -f2 -d' '`
+  my=`ngc_bounds $ifn | grep min_y | cut -f2 -d' '`
+
+  shiftx=` echo "-($mx) + $offsetx" | bc -l`
+  shifty=` echo "-($my) + $offsety" | bc -l`
+
+  tfn=`mktemp`
+
+  echo "G0 F3000" > $tfn
+  grecode -shift "$shiftx" "$shifty" $ifn | \
+    grep -v '^(' >> $tfn 2> /dev/null
+  mv $tfn $ifn
+
+  rm -f $tfn
+}
+
+tmpfn=`mktemp`
+
+for fn in `ls ../Popufare*.scad  | grep -v PopufareHousingCommon.scad ` ; do
+  bfn=`basename $fn .scad`
+  svg="$bfn.$VERSION.svg"
+  ngc="$bfn.$VERSION.ngc"
+
+  echo "## $bfn"
+
+  basedir=`dirname $( pwd ) `
+
+  echo "include <$basedir/$bfn.scad>" > $tmpfn
+  echo "${bfn}Plate();" >> $tmpfn
+
+  openscad -o "$svg" "$tmpfn"
+  svg2ngc "$svg" 2> /dev/null
+  ngc_position "$ngc" 2> /dev/null
+
+done
+
+rm $tmpfn

+ 30 - 0
experiment/production/housing/v2/housing_layout.scad

@@ -0,0 +1,30 @@
+include <PopufareHousingCommon.scad>
+
+include <PopufareHousingBottom.scad>
+include <PopufareHousingFrontAngle.scad>
+include <PopufareHousingFrontBottom.scad>
+include <PopufareHousingSideLeft.scad>
+include <PopufareHousingSideRight.scad>
+include <PopufareHousingTop.scad>
+include <PopufareHousingBack.scad>
+
+spacing = 10;
+
+dw = POPUFARE_HOUSING_WIDTH;
+dh = POPUFARE_HOUSING_HEIGHT;
+dz = POPUFARE_HOUSING_DEPTH;;
+
+hh = POPUFARE_FRONT_HEIGHT;
+hz = dz-hh;
+
+
+PopufareHousingBottomPlate();
+translate( [ -(dw+spacing), 0 ] ) rotate(90, [0,0,1]) PopufareHousingSideLeftPlate();
+translate( [  (dw+spacing), 0 ] ) rotate(-90, [0,0,1]) PopufareHousingSideRightPlate();
+
+translate( [ 0, -(dz/2 + hh/2 + spacing)] ) PopufareHousingFrontBottomPlate();
+
+translate( [ 0, -(dz + hh + 2*spacing)] ) PopufareHousingFrontAnglePlate();
+
+translate( [ 0, dz + spacing  ] ) PopufareHousingBackPlate();
+translate( [ 0, dz + hz + 2*spacing] ) PopufareHousingTopPlate();