Browse Source

add dt770 bluetooth mount

Thomas Buck 2 years ago
parent
commit
8cf5395c5f
3 changed files with 156 additions and 0 deletions
  1. 156
    0
      dt770/dt770_bt.scad
  2. BIN
      dt770/dt770_bt.stl
  3. BIN
      dt770/dt770_bt_cable_post.stl

+ 156
- 0
dt770/dt770_bt.scad View File

@@ -0,0 +1,156 @@
1
+hole_dist = 70;
2
+hole_dia = 13;
3
+carrier_width = 20;
4
+carrier_radius = 100;
5
+carrier_length = hole_dist + 30;
6
+carrier_wall = 1.5;
7
+
8
+coil_width = 17.0;
9
+coil_turns = 3;
10
+coil_dia = 10;
11
+coil_w = coil_width * coil_turns;
12
+
13
+rx_post_w = 8;
14
+rx_post_h = 50 + 20;
15
+rx_post_wall = 1;
16
+rx_post_box_w = 26.5;
17
+rx_post_box_d = 12;
18
+rx_post_box_h = 26;
19
+
20
+carrier_circ = 2 * 3.14159 * carrier_radius + carrier_wall;
21
+carrier_angle = (carrier_length / carrier_circ) * 360;
22
+dist_angle = (hole_dist / carrier_circ) * 360;
23
+post_angle = ((carrier_length - coil_dia) / carrier_circ) * 360;
24
+bottom_angle = (coil_dia / carrier_circ) * 360;
25
+
26
+add_rx_box = true;
27
+add_coil_posts = false;
28
+add_rx_post = false;
29
+add_rx_post_box = false;
30
+
31
+carrier_width_add = add_rx_box ? 5 : coil_dia;
32
+
33
+$fn = 94;
34
+
35
+module prism(l, w, h) {
36
+    polyhedron(
37
+        points = [[0,0,0], [l,0,0], [l,w,0], [0,w,0], [0,w,h], [l,w,h]],
38
+        faces = [[0,1,2,3],[5,4,3,2],[0,4,5,1],[0,3,4],[5,2,1]]
39
+    );
40
+}
41
+
42
+// https://3dprinting.stackexchange.com/questions/10638/creating-pie-slice-in-openscad
43
+module pie_slice(r = 3.0, a = 30) {     
44
+    intersection() {
45
+        circle(r = r);
46
+        
47
+        square(r);
48
+        
49
+        rotate(a-90)
50
+        square(r);  
51
+    } 
52
+}
53
+
54
+module carrier_plate() {
55
+    rotate([0, 0, 90 - carrier_angle / 2])
56
+    linear_extrude(carrier_width + carrier_width_add)
57
+    difference() {
58
+        pie_slice(carrier_radius + carrier_wall, carrier_angle);
59
+        pie_slice(carrier_radius, carrier_angle);
60
+    }
61
+}
62
+
63
+module cable_coil() {
64
+    hull() {
65
+        rotate([-90, 0, 0])
66
+        cylinder(d = coil_dia, h = coil_w);
67
+
68
+        translate([0, -carrier_radius, -coil_dia / 2])
69
+        rotate([0, 0, 90 - bottom_angle / 2])
70
+        linear_extrude(coil_dia)
71
+        difference() {
72
+            pie_slice(carrier_radius + carrier_wall, bottom_angle);
73
+            pie_slice(carrier_radius, bottom_angle);
74
+        }
75
+    }
76
+
77
+    translate([0, -carrier_radius, -carrier_width])
78
+    rotate([0, 0, 90 - bottom_angle / 2])
79
+    linear_extrude(carrier_width)
80
+    difference() {
81
+        pie_slice(carrier_radius + carrier_wall, bottom_angle);
82
+        pie_slice(carrier_radius, bottom_angle);
83
+    }
84
+}
85
+
86
+module rx_post() {
87
+    hull() {
88
+        cube([rx_post_w, rx_post_w, 1]);
89
+        
90
+        translate([rx_post_w / 2, rx_post_w / 2, 0])
91
+        cylinder(d = rx_post_w, h = rx_post_h);
92
+    }
93
+    
94
+    if (add_rx_post_box)
95
+    translate([-((rx_post_box_w + 2 * rx_post_wall) - rx_post_w) / 2, 0, rx_post_h])
96
+    difference() {
97
+        cube([rx_post_box_w + 2 * rx_post_wall, rx_post_box_d + 2 * rx_post_wall, rx_post_box_h]);
98
+        
99
+        translate([rx_post_wall, rx_post_wall, 1])
100
+        cube([rx_post_box_w, rx_post_box_d, rx_post_box_h]);
101
+    }
102
+}
103
+
104
+rx_box_h = 15;
105
+rx_box_w = 10;
106
+rx_box_d = carrier_width + carrier_width_add;
107
+rx_box_wall = 2.0;
108
+
109
+module rx_box() {
110
+    translate([-rx_box_w / 2, 0, -carrier_wall])
111
+    cube([rx_box_w, rx_box_wall, rx_box_h]);
112
+    
113
+    translate([-rx_box_w / 2, 0, rx_box_h])
114
+    cube([rx_box_w, rx_box_d, rx_box_wall]);
115
+    
116
+    rotate([0, 180, 180])
117
+    translate([-rx_box_w / 2, -rx_box_d / 4, -rx_box_h])
118
+    prism(rx_box_w, rx_box_d / 4, rx_box_h / 4);
119
+}
120
+
121
+module carrier() {
122
+    translate([0, -carrier_radius, 0])
123
+    difference() {
124
+        union() {
125
+            carrier_plate();
126
+            
127
+            if (add_coil_posts)
128
+            for (i = [1, -1])
129
+            rotate([0, 0, i * post_angle / 2])
130
+            translate([0, carrier_radius, carrier_width + coil_dia / 2])
131
+            cable_coil();
132
+            
133
+            if (add_rx_post)
134
+            translate([-rx_post_w / 2, carrier_radius, carrier_width + carrier_width_add])
135
+            rotate([-90, 0, 0])
136
+            rx_post();
137
+            
138
+            if (add_rx_box)
139
+            translate([0, carrier_radius + carrier_wall, carrier_width + carrier_width_add])
140
+            rotate([-90, 0, 0])
141
+            rx_box();
142
+        }
143
+        
144
+        for (i = [1, -1])
145
+        rotate([0, 0, i * dist_angle / 2])
146
+        translate([0, carrier_radius - 1, carrier_width / 2])
147
+        rotate([-90, 0, 0])
148
+        cylinder(d = hole_dia, h = carrier_wall + 2);
149
+    }
150
+}
151
+
152
+//cable_coil();
153
+//rx_post();
154
+//rx_box();
155
+
156
+carrier();

BIN
dt770/dt770_bt.stl View File


BIN
dt770/dt770_bt_cable_post.stl View File


Loading…
Cancel
Save