Fixed duplicated generation of xsled geometry, added clips for belts to xsled, fixed positions of ysled idlers to be based on nominal beltline

This commit is contained in:
2022-03-05 21:05:37 +01:00
parent e6d1c55073
commit 83e6dee3f3
5 changed files with 211 additions and 93 deletions

View File

@@ -1,4 +1,3 @@
include <MCAD/math.scad>
include <lib.scad>
stock_color = "#aaa";
@@ -54,13 +53,14 @@ belt_pitch = 2; // 2mm tooth width for GT2 = 2mm pitch
belt_width = 6;
belt_thickness = 1.38;
belt_pld =
0.254; // distance between line of fixed length and tips of gear teeth
belt_backing = 0.63 - belt_pld;
tooth_height = 0.75;
0.254; // distance between pitch line and tips of gear teeth
belt_backing = 0.63 - belt_pld; // distance between pitch line and backing
tooth_height = 0.75; // distance from tips of belt teeth to tip of gear teeth
pulley_od = 13;
pulley_clearance_rad = pulley_od / 2 + 1.5;
function pulley_radius(nteeth) = belt_pitch * nteeth / (PI * 2);
module pulley(teeth, lrim, urim, belt_width, shaft = 5, toothed = true,
od = 0) {
bom_item(printable = false,
@@ -68,7 +68,7 @@ module pulley(teeth, lrim, urim, belt_width, shaft = 5, toothed = true,
"flange1=", min(lrim, urim), "mm, ", "flange2=",
max(lrim, urim), "mm, ", "channel=", belt_width, "mm, ",
"shaft=", shaft, "mm", ")"));
nominal_rad = belt_pitch * teeth / TAU;
nominal_rad = pulley_radius(teeth);
inner_rad = nominal_rad - belt_pld;
outer_rad = (od > 0) ? od / 2 : nominal_rad + belt_backing;
minor_rad = inner_rad - tooth_height;
@@ -108,6 +108,7 @@ module pulley(teeth, lrim, urim, belt_width, shaft = 5, toothed = true,
idler_zmargin = [ 6.4 / 2 + 1.05, 6.4 / 2 + 1.05 ];
idler_nteeth = 16;
module idler(height = 0, toothed = false) {
// pulley(20, 1.05, 1.05, 6.4, toothed=toothed, od=18);
translate([ 0, 0, height - idler_zmargin[0] ])