Added Y nut holder
parent
8ed71ddc4c
commit
136d1d56d6
|
@ -66,7 +66,7 @@ module Cyclone_X_leftFrame(isLeft=true) {
|
|||
rotate([0,90,0])
|
||||
rodHolder(rodD=axes_Xsmooth_rodD, screwSize=screwSize, negative=true);
|
||||
// TRANSLATE REFERENCE POSITION to the threaded rod
|
||||
translate([0,axes_Xsmooth_separation,0]) {
|
||||
translate([+0.01,axes_Xsmooth_separation,0]) {
|
||||
translate([0,-15,-40]) rotate([0,-90,0]) cylinder(r=15,h=partThickness*2);
|
||||
translate([0,30,-40]) rotate([0,-90,0]) cylinder(r=15,h=partThickness*2);
|
||||
translate([0,-15,-80]) rotate([0,-90,0]) cylinder(r=15,h=partThickness*2);
|
||||
|
|
|
@ -4,28 +4,68 @@
|
|||
// License: CC BY-SA 4.0 (Attribution-ShareAlike 4.0 International, http://creativecommons.org/licenses/by-sa/4.0/)
|
||||
// Designed with http://www.openscad.org/
|
||||
|
||||
include <MCAD/nuts_and_bolts.scad>
|
||||
|
||||
module Cyclone_YsubPart_nutHolder() {
|
||||
workbed_separation_from_Y_threaded_rod = axes_Y_smoothThreaded_verticalSeparation+workbed_separation_from_Y_smooth_rod+axes_Ysmooth_rodD/2;
|
||||
footThickness = 10;
|
||||
screwSeparation = 14;
|
||||
dimX = 15;
|
||||
dimY = screwSeparation*2;
|
||||
dimZ = workbed_separation_from_Y_threaded_rod+10;
|
||||
#translate([-10,-dimY/2,-10])
|
||||
cube([dimX,dimY,dimZ]);
|
||||
screwSeparation = 16;
|
||||
rod_nut_len = 0.8*axes_Ythreaded_rodD;
|
||||
dimX = axes_Ythreaded_rodD*2+5;
|
||||
dimY = screwSeparation+10;
|
||||
dimZ = workbed_separation_from_Y_threaded_rod;
|
||||
holderExtension = 10;
|
||||
rodTolerance = 0.5;
|
||||
rodSize = 8; // M3, M4, etc (integers only)
|
||||
washer_D = 15.8;
|
||||
washer_thickness = 1.6;
|
||||
|
||||
difference() {
|
||||
// Main shape
|
||||
translate([0,0,dimZ/2-holderExtension/2])
|
||||
bcube([dimX,dimY,dimZ+holderExtension],cr=3,cres=10);
|
||||
// Hole for the rod
|
||||
hull() {
|
||||
standard_rod(diam=axes_Ythreaded_rodD+rodTolerance, length=dimY*4, threaded=true, renderPart=true, center=true);
|
||||
translate([0,0,-holderExtension*2])
|
||||
standard_rod(diam=axes_Ythreaded_rodD+rodTolerance, length=dimY*4, threaded=true, renderPart=true, center=true);
|
||||
}
|
||||
// Hole for the main nut
|
||||
translate([0,dimY/2+0.01,0])
|
||||
hull() {
|
||||
rotate([0,90,0]) hole_for_nut(size=rodSize,nutAddedLen=0,captiveLen=0,tolerance=0.1);
|
||||
translate([0,0,-holderExtension*2])
|
||||
rotate([0,90,0]) hole_for_nut(size=rodSize,nutAddedLen=0,captiveLen=0,tolerance=0.1);
|
||||
}
|
||||
translate([0,dimY/2+0.01-rod_nut_len-3,0]) {
|
||||
// Hole for the sliding nut
|
||||
hull() {
|
||||
rotate([0,90,0]) hole_for_nut(size=rodSize,nutAddedLen=dimY,captiveLen=0,tolerance=0.5);
|
||||
translate([0,0,-holderExtension*2])
|
||||
rotate([0,90,0]) hole_for_nut(size=rodSize,nutAddedLen=dimY,captiveLen=0,tolerance=0.5);
|
||||
}
|
||||
// Hole for the washer
|
||||
hull() {
|
||||
washer_single(diam=washer_D, thickness=washer_thickness, renderPart=true);
|
||||
translate([0,0,-holderExtension*2])
|
||||
washer_single(diam=washer_D, thickness=washer_thickness, renderPart=true);
|
||||
}
|
||||
}
|
||||
// Holes for the supporting screws
|
||||
translate([0,-screwSeparation/2,workbed_separation_from_Y_threaded_rod+workbed_thickness])
|
||||
rotate([90,0,0])
|
||||
hole_for_screw(size=3,length=workbed_thickness+footThickness,nutDepth=-dimZ,nutAddedLen=dimZ,captiveLen=0);
|
||||
translate([0,+screwSeparation/2,workbed_separation_from_Y_threaded_rod+workbed_thickness])
|
||||
rotate([90,0,0])
|
||||
hole_for_screw(size=3,length=workbed_thickness+footThickness,nutDepth=-dimZ,nutAddedLen=dimZ,captiveLen=0);
|
||||
}
|
||||
translate([0,dimY/2,0]) rotate([0,90,0]) rotate([90,0,0]) nut(size=8, echoPart=true);
|
||||
}
|
||||
|
||||
module Cyclone_Y_carriage() {
|
||||
baseHeight = workbed_separation_from_Y_smooth_rod-1;
|
||||
color("lightgreen") {
|
||||
Cyclone_YsubPart_nutHolder();
|
||||
color("lightgreen") {
|
||||
translate([0,0,axes_Y_smoothThreaded_verticalSeparation+baseHeight/2]) {
|
||||
translate([axes_Ysmooth_separation/2,Ycarriage_linearBearingSeparation/2])
|
||||
cube([10,10,10+baseHeight], center=true);
|
||||
|
|
|
@ -115,6 +115,21 @@ module nut(size=8, chamfer=false, renderPart=false, echoPart=false) {
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
module hole_for_nut(size=3,nutAddedLen=0,captiveLen=0,tolerance=0.35) {
|
||||
radius = METRIC_NUT_AC_WIDTHS[size]/2+tolerance;
|
||||
height = METRIC_NUT_THICKNESS[size]+tolerance;
|
||||
translate([0,height+nutAddedLen+nutDepth-0.01,0])
|
||||
scale([1,(height+nutAddedLen)/height,1])
|
||||
rotate([90,0,0])
|
||||
hull() {
|
||||
nutHole(size=size, tolerance=tolerance, proj=-1);
|
||||
translate([0,captiveLen,0])
|
||||
nutHole(size=size, tolerance=tolerance, proj=-1);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
module screw_single(size=3,length=10,tolerance=0, renderPart=false, echoPart=false) {
|
||||
height = METRIC_NUT_THICKNESS[size]+tolerance;
|
||||
color(BlackPaint)
|
||||
|
@ -188,10 +203,17 @@ module bearingHole(depth=3, thickness=10, model=608, tolerance=1) {
|
|||
}
|
||||
}
|
||||
|
||||
module radialBearing(model=608,renderPart=false, echoPart=false) {
|
||||
module radialBearing(model=608, renderPart=false, echoPart=false) {
|
||||
renderStandardPart(renderPart)
|
||||
bearing(model=model, outline=false);
|
||||
if(echoPart) echo(str("BOM: Radial bearing. Model ",model));
|
||||
}
|
||||
|
||||
module washer_single(diam=15.8, thickness=1.6, tolerance=0.1, renderPart=false, echoPart=false) {
|
||||
renderStandardPart(renderPart)
|
||||
color(steel)
|
||||
rotate([90,0,0]) translate([0,0,-tolerance]) cylinder(r=diam/2+tolerance, h=thickness+2*tolerance);
|
||||
if(echoPart) echo(str("BOM: Washer. Diameter ", diam, "mm. Thickness ", thickness, "mm"));
|
||||
}
|
||||
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
Loading…
Reference in New Issue