add scale factor and use modules for more pieces
[challenge-bot] / schematic-3d-printable.scad
CommitLineData
9c3b4d1b
P
1// challenge-bot phase-2
2// GNU AGPLv3 (or later at your option)
3// project available at these locations:
4// https://gitorious.org/ozzloy/challenge-bot
5// https://github.com/waynegramlich/challenge-bot
6
7// using
8// https://github.com/josefprusa/Prusa3/blob/master/box_frame/x-carriage.scad
9// as an example of how to code in scad
10
c423550e 11scale=10;
12
9c3b4d1b
P
13deck_dimensions = [8, 8, 3/16];
14
c423550e 15module deck(scale){
16 cube(deck_dimensions * scale);}
17
18module collar_hole(scale){
19 cylinder(h = 5/16 * scale, r = 0.362/2 * scale, $fn = 100);}
20
21module nubin_hole(scale){
22 cylinder(h = 5/16 * scale, r = 0.145/2 * scale, $fn = 100);}
23
24module mounting_screw_hole(scale){
25 cylinder(h = 5/16 * scale, r = 0.114/2 * scale, $fn = 100);}
26
27module wheel_mount(scale){
28 difference(){
29 cube([1.5, 2, 3/16] * scale);
30 // motor shaft collar hole
31 translate([0.5, 0.938, -1/16] * scale) {
32 collar_hole(scale);}
33 // nubbin hole
34 translate([0.5 + 0.875 - 0.425, 0.938, -1/16] * scale){
35 nubin_hole(scale);}
36 // mounting screw hole
37 translate([0.5 + 1.213 - 0.425, 0.938 - 0.687/2, -1/16] * scale){
38 mounting_screw_hole(scale);}
39 translate([0.5 + 1.213 - 0.425, 0.938 + 0.687/2, -1/16] * scale){
40 mounting_screw_hole(scale);}}}
41
42color("blue") deck(scale);
9c3b4d1b
P
43rotate([90, 0, 0]) translate([1.5, -2, -(3/16)]) wheel_mount();
44rotate([90, 0, 0]) translate([1.5, -2, -8]) wheel_mount();