diff --git a/libtest.png b/libtest.png index b3e0ea9..7f74b33 100644 Binary files a/libtest.png and b/libtest.png differ diff --git a/readme.md b/readme.md index 0142973..b3baf04 100644 --- a/readme.md +++ b/readme.md @@ -250,15 +250,16 @@ Individual teeth are not drawn, instead they are represented by a lighter colour | Qty | Module call | BOM entry | | ---:|:--- |:---| | 1 | ```belt(GT2x6, [ ... ])``` | Belt GT2 x 6mm x 128mm | -| 1 | ```belt(GT2x6, [ ... ], 80, [0, 0])``` | Belt GT2 x 6mm x 696mm | +| 2 | ```belt(GT2x6, [ ... ], 80, [0, 0])``` | Belt GT2 x 6mm x 572mm | | 1 | ```belt(T2p5x6, [ ... ])``` | Belt T2.5 x 6mm x 130mm | | 1 | ```belt(T5x10, [ ... ])``` | Belt T5 x 10mm x 130mm | | 1 | ```belt(T5x6, [ ... ])``` | Belt T5 x 6mm x 130mm | -| 1 | ```insert(F1BM3)``` | Heatfit insert M3 | -| 2 | ```pulley(GT2x20_toothed_idler)``` | Pulley GT2 idler 20 teeth | +| 2 | ```insert(F1BM3)``` | Heatfit insert M3 | +| 2 | ```pulley(GT2x16_toothed_idler)``` | Pulley GT2 idler 16 teeth | +| 4 | ```pulley(GT2x20_toothed_idler)``` | Pulley GT2 idler 20 teeth | | 2 | ```pulley(GT2x16_plain_idler)``` | Pulley GT2 idler smooth 9.63mm | | 2 | ```pulley(GT2x20ob_pulley)``` | Pulley GT2OB 20 teeth | -| 1 | ```screw(M3_cs_cap_screw, 20)``` | Screw M3 cs cap x 20mm | +| 2 | ```screw(M3_cs_cap_screw, 20)``` | Screw M3 cs cap x 20mm | | 4 | ```screw(M3_grub_screw, 6)``` | Screw M3 grub x 6mm | diff --git a/tests/belts.scad b/tests/belts.scad index 22bfeaf..a76d2c1 100644 --- a/tests/belts.scad +++ b/tests/belts.scad @@ -23,46 +23,52 @@ use <../vitamins/insert.scad> use <../utils/layout.scad> module belt_test() { - p1 = [75, -50]; p2 = [-75, -50]; p3 = [-75, 100]; p4 = [75, 100]; - p5 = [75 - pulley_pr(GT2x20ob_pulley) - pulley_pr(GT2x16_plain_idler), -pulley_pr(GT2x16_plain_idler)]; - p6 = [-75 + pulley_pr(GT2x20ob_pulley) + pulley_pr(GT2x16_plain_idler), -pulley_pr(GT2x16_plain_idler)]; + p5 = [75 + pulley_pr(GT2x20ob_pulley) - pulley_pr(GT2x16_plain_idler), +pulley_pr(GT2x16_plain_idler)]; + p6 = [-75 + pulley_pr(GT2x20ob_pulley) + pulley_pr(GT2x16_plain_idler), -pulley_pr(GT2x16_plain_idler)]; - translate(p1) pulley_assembly(GT2x20ob_pulley); - translate(p2) pulley_assembly(GT2x20ob_pulley); - translate(p3) pulley_assembly(GT2x20_toothed_idler); - translate(p4) pulley_assembly(GT2x20_toothed_idler); + module pulleys(flip = false) { + translate(p2) rotate([0, flip ? 180 : 0, 0]) pulley_assembly(GT2x20ob_pulley); + translate(p3) pulley_assembly(GT2x20_toothed_idler); + translate(p4) pulley_assembly(GT2x20_toothed_idler); + translate(p5) { + pulley = GT2x16_toothed_idler; + screw = find_screw(hs_cs_cap, pulley_bore(pulley)); + insert = screw_insert(screw); - translate(p5) { - pulley = GT2x16_plain_idler; - screw = find_screw(hs_cs_cap, pulley_bore(pulley)); - insert = screw_insert(screw); - - pulley_assembly(pulley); - translate_z(pulley_height(pulley) + pulley_offset(pulley) + screw_head_depth(screw, pulley_bore(pulley))) - screw(screw, 20); - - translate_z(pulley_offset(pulley) - insert_length(insert)) - vflip() - insert(insert); + rotate([0, flip ? 180 : 0, 0]) { + pulley_assembly(pulley); + translate_z(pulley_height(pulley) + pulley_offset(pulley) + screw_head_depth(screw, pulley_bore(pulley))) + screw(screw, 20); + translate_z(pulley_offset(pulley) - insert_length(insert)) + vflip() + insert(insert); + } + } + translate(p6) pulley_assembly(GT2x16_plain_idler); } - translate(p6) pulley_assembly(GT2x16_plain_idler); - path = [ [p1.x, p1.y, pulley_pr(GT2x20ob_pulley)], - [p5.x, p5.y, -pulley_pr(GT2x16_plain_idler)], + path = [ [p5.x, p5.y, pulley_pr(GT2x16_plain_idler)], [p6.x, p6.y, -pulley_pr(GT2x16_plain_idler)], [p2.x, p2.y, pulley_pr(GT2x20ob_pulley)], [p3.x, p3.y, pulley_pr(GT2x20ob_pulley)], [p4.x, p4.y, pulley_pr(GT2x20ob_pulley)] ]; + belt = GT2x6; belt(belt, path, 80, [0, 0]); + pulleys(); + translate_z(20) + hflip() { + belt(belt, path, 80, [0, 0], belt_colour = grey(90), tooth_colour = grey(50)); + pulleys(flip=true); + } - translate([-25, 0]) + translate([-25, 0, 10]) layout([for(b = belts) belt_width(b)], 10) rotate([0, 90, 0]) belt(belts[$i], [[0, 0, 20], [0, 1, 20]], belt_colour = $i%2==0 ? grey(90) : grey(20), tooth_colour = $i%2==0 ? grey(70) : grey(50)); diff --git a/tests/png/belts.png b/tests/png/belts.png index 52743d0..a2b1296 100644 Binary files a/tests/png/belts.png and b/tests/png/belts.png differ