Prechádzať zdrojové kódy

change size of lower windscreen ring to be bigger, otherwise there are problems with adhesion of the first layer of the print and most prints fail

Fernando Pablo Lopez-Lezcano 8 rokov pred
rodič
commit
11da86eafc
1 zmenil súbory, kde vykonal 22 pridanie a 4 odobranie
  1. 22 4
      SpHEAR_windscreen.scad

+ 22 - 4
SpHEAR_windscreen.scad

@@ -237,13 +237,13 @@ module sphear_upper_windscreen(sides, height, radius, beam_radius, conn_radius,
         }
         // bottom ring, prevents connectors to lower frame from toppling when printing
          difference() {
-            scale([1.0, 1.0, 1.5]) rotate_extrude(convexity = 10, $fn = facets/2) {
+            scale([1.0, 1.0, 1.85]) rotate_extrude(convexity = 10, $fn = facets/2) {
                 translate([radius, 0, 0]) {
-                    circle(r = wall, $fn = facets/2);
+                    circle(r = beam_radius * 1.25, $fn = facets/2);
                 }
             }
-            translate([0, 0, -2 * wall]) {
-                cylinder(r = radius + wall, h = 2 * wall + thin_mint, $fn = facets/2);
+            translate([0, 0, -4 * beam_radius]) {
+                cylinder(r = radius + beam_radius * 1.25, h = 4 * beam_radius + thin_mint, $fn = facets/2);
             }
             for (r = [1:360/sides:360]) rotate([0, 0, r]) {
                 translate([radius, -beam_radius/2, -2]) {
@@ -251,6 +251,24 @@ module sphear_upper_windscreen(sides, height, radius, beam_radius, conn_radius,
                 }
             }
         }
+        // workaround for adhesion problems to the build plate (hack)
+        // build a ring
+        r_h = 0.4;
+        difference() {
+            cylinder(r = radius + 8 * wall, h = r_h, $fn = facets/2);
+            translate([0, 0, -2*thin_mint]) cylinder(r = radius + 4 * wall, h = r_h + 4 * thin_mint, $fn = facets/2);
+        }
+        // and connect it to the windscreen
+        for (r = [1:360/sides:360]) rotate([0, 0, r]) {
+            translate([radius + conn_radius - beam_radius/2, -1, 0]) {
+                    cube([4 * wall, 1, r_h]);
+            }
+        }
+        for (r = [360/(sides*2):360/sides:360]) rotate([0, 0, r]) {
+            translate([radius + wall, -1, 0]) {
+                    cube([4 * wall, 1, r_h]);
+            }
+        }
     }
     // crossing reinforcements
     // first mid crossing