소스 검색

cleanup, comments

kauzerei 2 달 전
부모
커밋
fb945278e6
6개의 변경된 파일51개의 추가작업 그리고 82개의 파일을 삭제
  1. 0
    0
      3dprint/actuator.scad
  2. 0
    14
      3dprint/beam.json
  3. 40
    29
      3dprint/beam.scad
  4. 1
    2
      3dprint/tamb_mount.json
  5. 10
    11
      3dprint/tamb_mount.scad
  6. 0
    26
      actuator.json

actuator.scad → 3dprint/actuator.scad 파일 보기


+ 0
- 14
3dprint/beam.json 파일 보기

1
-{
2
-    "fileFormatVersion": "1",
3
-    "parameterSets": {
4
-        "New set 1": {
5
-            "hd": "10",
6
-            "height": "40",
7
-            "hole": "3",
8
-            "radius": "1",
9
-            "segments": "14",
10
-            "thickness": "7",
11
-            "wall": "1.6000000000000001"
12
-        }
13
-    }
14
-}

+ 40
- 29
3dprint/beam.scad 파일 보기

1
 $fa=1/1;
1
 $fa=1/1;
2
 $fs=1/2;
2
 $fs=1/2;
3
 bissl=1/100;
3
 bissl=1/100;
4
-wall=1.6;
5
-hole=3;
6
-hd=10;
7
-height=40;
8
-vd=height-wall;
9
-segments=14;
10
-radius=1;
11
-thickness=7;
4
+wall=1.6;//twice nozzle diameter is fine, walls of triangles
5
+hole=3; //hole for mounting thread inserts
6
+hd=10; //horizontal distance between mounting points, depends on mounting hole distance in the actuator
7
+height=40; //dimension of the beam in the direction of tambourine depth
8
+vd=height-wall; //vertical distance between mounting holes
9
+segments=14; //number of mounting points, defines the beam length
10
+radius=1; //rounding of inner corners
11
+thickness=2*wall+hole; //thickness of the beam, keep some material to properly hold the threaded insert on the side
12
 offset=wall/2+hole/2;
12
 offset=wall/2+hole/2;
13
 difference() {
13
 difference() {
14
   linear_extrude(thickness, convexity=4) difference() {
14
   linear_extrude(thickness, convexity=4) difference() {
15
-  offset(r=-radius)offset(r=radius)union() {
16
-    for (i=[0:hd:hd*(segments-1)]) translate ([i,0]) {
17
-      for (tr=[[[hd,0],[0,0]],[[-hd/2,vd],[0,0]],[[hd/2,vd],[0,0]],[[hd/2,vd],[-hd/2,vd]]]) hull() { //diagonals
15
+    offset(r=-radius)offset(r=radius)union() {
16
+      for (i=[0:hd:hd*(segments-1)]) translate ([i,0]) {
17
+        for (tr=[[[hd,0],[0,0]],[[-hd/2,vd],[0,0]],[[hd/2,vd],[0,0]],[[hd/2,vd],[-hd/2,vd]]]) hull() { //diagonals
18
+          translate(tr[0])circle(d=wall);
19
+          translate(tr[1]) circle(d=wall);
20
+        }
21
+        for (tr=[[hd/2,vd-offset],[-hd/2,vd-offset],[hd,offset],[0,offset]]) translate(tr)circle(d=2*wall+hole); //big circles
22
+      }
23
+    
24
+      //left vertical wall, not generated by the loop
25
+      for (tr=[[[-hd/2-offset,0],[0,0]],[[-hd/2-offset,0],[-hd/2-offset,vd]],[[-hd/2-offset,vd],[-hd/2,vd]]]) hull() {
18
         translate(tr[0])circle(d=wall);
26
         translate(tr[0])circle(d=wall);
19
         translate(tr[1]) circle(d=wall);
27
         translate(tr[1]) circle(d=wall);
20
       }
28
       }
21
-      for (tr=[[hd/2,vd-offset],[-hd/2,vd-offset],[hd,offset],[0,offset]]) translate(tr)circle(d=2*wall+hole); //big circles
22
-    }
23
-    for (tr=[[[-hd/2-offset,0],[0,0]],[[-hd/2-offset,0],[-hd/2-offset,vd]],[[-hd/2-offset,vd],[-hd/2,vd]]]) hull() {//left
24
-      translate(tr[0])circle(d=wall);
25
-      translate(tr[1]) circle(d=wall);
29
+
30
+      //solid triangle to jhold threaded inserts
31
+      hull() for (tr=[[0,0],[-hd/2-offset,0],[-hd/2-offset,vd],[-hd/2,vd]]) translate(tr) circle(d=wall); 
32
+
33
+      //right vertical wall, not generated by the loop
34
+      for (tr=[[[hd*segments+offset,0],[0,0]],
35
+               [[hd*segments+offset,0],[hd*segments+offset,vd]],
36
+               [[hd*segments+offset,vd],[hd*(segments-0.5),vd]],
37
+               [[hd*segments,0],[hd*(segments-0.5),vd]]]) 
38
+        hull() {
39
+          translate(tr[0])circle(d=wall);
40
+          translate(tr[1]) circle(d=wall);
41
+        }
26
     }
42
     }
27
-hull() for (tr=[[0,0],[-hd/2-offset,0],[-hd/2-offset,vd],[-hd/2,vd]]) translate(tr) circle(d=wall); //solid triangle
28
-    for (tr=[[[hd*segments+offset,0],[0,0]],[[hd*segments+offset,0],[hd*segments+offset,vd]],[[hd*segments+offset,vd],[hd*(segments-0.5),vd]],[[hd*segments,0],[hd*(segments-0.5),vd]]]) hull() { //right
29
-      translate(tr[0])circle(d=wall);
30
-      translate(tr[1]) circle(d=wall);
43
+    for (i=[0:segments]) {
44
+      translate([i*hd,offset]) circle(d=hole);
45
+      translate([(i-0.5)*hd,vd-offset]) circle(d=hole);
31
     }
46
     }
32
   }
47
   }
33
-  for (i=[0:segments]) {
34
-    translate([i*hd,offset]) circle(d=hole);
35
-    translate([(i-0.5)*hd,vd-offset]) circle(d=hole);
36
-  }
37
-  }
38
-translate([-hd/2-offset-wall/2,height/4-wall,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
39
-translate([-hd/2-offset-wall/2,height/2-wall/2,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
40
-translate([-hd/2-offset-wall/2,height*3/4,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
41
-}
48
+  //mounting holes for threaded inserts, three just in case, it's better to use the middle one
49
+  translate([-hd/2-offset-wall/2,height/4-wall,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
50
+  translate([-hd/2-offset-wall/2,height/2-wall/2,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
51
+  translate([-hd/2-offset-wall/2,height*3/4,thickness/2])rotate([0,90,0])cylinder(d=hole,h=hd-wall);
52
+}

+ 1
- 2
3dprint/tamb_mount.json 파일 보기

9
             "id_tamb": "239",
9
             "id_tamb": "239",
10
             "lip": "3",
10
             "lip": "3",
11
             "od_tamb": "251",
11
             "od_tamb": "251",
12
-            "part": "outer",
13
-            "wall": "1.6000000000000001"
12
+            "part": "outer"
14
         }
13
         }
15
     }
14
     }
16
 }
15
 }

+ 10
- 11
3dprint/tamb_mount.scad 파일 보기

2
 $fs=1/2;
2
 $fs=1/2;
3
 bissl=1/100;
3
 bissl=1/100;
4
 part="inner";//[inner,outer,all_visualize]
4
 part="inner";//[inner,outer,all_visualize]
5
-od_tamb=251;
6
-id_tamb=239;
7
-wall_tamb=(od_tamb-id_tamb)/2;
8
-hole_tamb=23;
9
-lip=3;
10
-air=1;
11
-hole=3;
12
-wall=1.6;
13
-beam_width=7;
5
+od_tamb=251;//tambourine rim outer diameter
6
+id_tamb=239;//tambourine rim inner diameter
7
+wall_tamb=(od_tamb-id_tamb)/2; //tambourine wall
8
+hole_tamb=23; //holding hole in the rim
9
+lip=3; //extra plastic that hols to the hole
10
+air=1; //wiggle room
11
+hole=3; //diameter for screw hole
12
+beam_width=7; //slit in inner part of mount to hod the beam
13
+wall=1.6;//thinnest part in the mount, namely the slit to tune the beam mounting height
14
 module inner_mount() {
14
 module inner_mount() {
15
   difference() {
15
   difference() {
16
     union() {
16
     union() {
30
     translate([-beam_width/2-air/2,-hole_tamb/2-lip,-bissl]) cube([beam_width+air,hole_tamb+2*lip,lip]);
30
     translate([-beam_width/2-air/2,-hole_tamb/2-lip,-bissl]) cube([beam_width+air,hole_tamb+2*lip,lip]);
31
   }
31
   }
32
 }
32
 }
33
-
34
 module outer_mount() {
33
 module outer_mount() {
35
   difference() {
34
   difference() {
36
     union() {
35
     union() {
54
 if (part=="all_visualize") {
53
 if (part=="all_visualize") {
55
   inner_mount();
54
   inner_mount();
56
   translate([0,0,wall_tamb+3*lip])rotate([180,0,0])outer_mount();
55
   translate([0,0,wall_tamb+3*lip])rotate([180,0,0])outer_mount();
57
-  }
56
+}

+ 0
- 26
actuator.json 파일 보기

1
-{
2
-    "fileFormatVersion": "1",
3
-    "parameterSets": {
4
-        "New set 1": {
5
-            "air": "0.5",
6
-            "copper_height": "5",
7
-            "hole": "2",
8
-            "iron_d": "4",
9
-            "part": "cap",
10
-            "slit": "15",
11
-            "total_length": "50",
12
-            "wall": "0.80000000000000004"
13
-        },
14
-        "New set 2": {
15
-            "air": "0.5",
16
-            "copper_height": "5",
17
-            "hammer_flat": "false",
18
-            "hole": "2",
19
-            "iron_d": "4",
20
-            "part": "spool",
21
-            "slit": "15",
22
-            "total_length": "50",
23
-            "wall": "0.80000000000000004"
24
-        }
25
-    }
26
-}

Loading…
취소
저장