From a94d1d8b70859b41dbeda547247cb21d051c048c Mon Sep 17 00:00:00 2001 From: Sasza Stanczew Date: Wed, 24 Dec 2025 19:37:49 +0100 Subject: [PATCH] c --- Neptune4/wkladka_do_rolki.scad | 14 ++++++++------ Sasza/haki_organizera_pasek.scad | 12 ++++++------ V40/ball_mount.scad | 27 ++++++++++++++++++++++----- 3 files changed, 36 insertions(+), 17 deletions(-) diff --git a/Neptune4/wkladka_do_rolki.scad b/Neptune4/wkladka_do_rolki.scad index 14334bd..045a363 100644 --- a/Neptune4/wkladka_do_rolki.scad +++ b/Neptune4/wkladka_do_rolki.scad @@ -4,10 +4,12 @@ include // the values are diameter, length // specify diameter 2-3mm smaller for clearance, length doesn't matter much spectrum = [51, 65]; // in diam = 53 +rosa_500g = [53, 45]; t = 2; -roll = spectrum; +//roll = spectrum; +roll = rosa_500g; grid_const = 100; grid = 18; @@ -44,13 +46,13 @@ union() { top_d = roll[0] + 5; top_h = 6; -thread_h = 16; +thread_h = 17; chamfer_h = 4; -chamfer_t = 3; +chamfer_t = 8; // top -up(roll[1] + 20) union() { +up(roll[1] + 50) union() { // top difference() { cyl(d=roll[0], h=t, anchor=TOP); @@ -64,9 +66,9 @@ up(roll[1] + 20) union() { // outer part with texture difference() { cyl(d=top_d, h=top_h, anchor=TOP, texture="hex_grid"); - cyl(h=top_h, d=roll[0]-4*t-$slop, anchor=TOP); + cyl(h=top_h+1, d=roll[0]-4*t-$slop, anchor=TOP); } // tube(od=top_d, id=roll[0]-4*t-$slop, h=top_h, anchor=TOP, texture="hex"); // chamfered part - down(top_h) tube(id=roll[0] - 4*t - $slop, od2=roll[0] - 4*t - $slop + chamfer_t, od1=roll[0] - 4*t - $slop, h=chamfer_h); + down(top_h) tube(id=roll[0] - 4*t - $slop, od2=roll[0] - 2*t - $slop + chamfer_t, od1=roll[0] - 4*t - $slop, h=chamfer_h); } \ No newline at end of file diff --git a/Sasza/haki_organizera_pasek.scad b/Sasza/haki_organizera_pasek.scad index 6fd0b5c..1ac19df 100644 --- a/Sasza/haki_organizera_pasek.scad +++ b/Sasza/haki_organizera_pasek.scad @@ -1,15 +1,15 @@ include -z_dist = 25; l = 110; belt_l = 45; belt_t = 5; hook_angle = -60; -hook_l = 2; -w = 20; +hook_l = 1.8; +w = 25; -t = 3; -round = 10; +t = 4; +top_t = 1; +round = w/2; out_t = belt_t + 2*t; @@ -26,7 +26,7 @@ difference() { union() { // main part cuboid([w,t,l], rounding=round, edges=[BOTTOM+LEFT, BOTTOM+RIGHT]); - up(l/2) yrot(90) fwd(out_t/2 - t/2) cyl(h=w,d=out_t); + up(l/2) yrot(90) fwd(out_t/2 - t/2) cyl(h=w,d=out_t + top_t); up(l/2) down(belt_l/2) fwd(out_t - t) cuboid([w,t,belt_l], rounding=t/2, edges=[BOTTOM+BACK,BOTTOM+FWD]);; up(l/2) down(belt_l) fwd(out_t-t) up(t/2) xrot(hook_angle) up(t*hook_l/2) cuboid([w,t,t*hook_l], rounding=t/2, edges=[UP+BACK,UP+FWD]); diff --git a/V40/ball_mount.scad b/V40/ball_mount.scad index 17db6b4..be74457 100644 --- a/V40/ball_mount.scad +++ b/V40/ball_mount.scad @@ -1,13 +1,30 @@ include +include // variables -h = 20; -peg_d = 9; +h = 25; +peg_d = 10; // constants ball_d = 17; +ball_shift_h = 1.2; +ball_shift_v = 0.5; + +$slop=0.2; $fn=360; -fwd(46.5) right(14.65) down(27) import("BotonS40.stl"); -up(h/2) cyl(h=h, d=peg_d); -up(h) sphere(d=ball_d); \ No newline at end of file +difference() { + union() { + // main model + fwd(46.5) right(14.65) down(27) import("BotonS40.stl"); + // shaft + cyl(h=h*2, d=peg_d); + // ball + back(ball_shift_h) right(ball_shift_v) up(h) sphere(d=ball_d); + } + // hole for M3 screw + up(h + ball_d/2 - 1) union() { + screw_hole("M3,45", head="flat sharp", anchor="head_top", thread=true); + cyl(d=7, h=10, anchor=BOTTOM); + } +} \ No newline at end of file