Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54,336 changes: 42,971 additions & 11,365 deletions Output_files/templates/Cyclone_base_template.dxf

Large diffs are not rendered by default.

Binary file modified Output_files/templates/Cyclone_base_template_A4.pdf
Binary file not shown.
24 changes: 9 additions & 15 deletions Source_files/Cycl_X_carriage.scad
Original file line number Diff line number Diff line change
Expand Up @@ -252,26 +252,20 @@ module Cyclone_X_carriage() {
nut(size=8, echoPart=true);

translate([-dimX/2,axes_effective_Xsmooth_separation,0]) rotate([-135,0,0]){
//translate([0,dimY/2+rod_nut_len/2,0])
// rotate([0,90,0]) rotate([90,0,0])
//translate([0,-rod_nut_len-3-washer_thickness/2,0])
translate([-rod_nut_len/2+1,0,0]) rotate([90,90,90])
nut(size=8, echoPart=true);
//translate([0,-dimY/2,0])
// rotate([0,90,0]) rotate([-90,0,0])
translate([rod_nut_len/2+3+1+holderExtension,0,0]) rotate([90,90,90])
nut(size=8, echoPart=true);
//translate([0,dimY/2+0.01-rod_nut_len/2-3,0])
translate([rod_nut_len/2+3+1,0,0]) rotate([0,0,-90]) rotate([180,0,0])
washer_single(diam=washer_D, thickness=washer_thickness, echoPart=true);
translate([-rod_nut_len/2+1,0,0]) rotate([90,90,90])
nut(size=8, echoPart=true);
translate([rod_nut_len/2+3+1+holderExtension,0,0]) rotate([90,90,90])
nut(size=8, echoPart=true);
translate([rod_nut_len/2+3+1,0,0]) rotate([0,0,-90]) rotate([180,0,0])
washer_single(diam=washer_D, thickness=washer_thickness, echoPart=true);
}

translate([-linearBearingLength/2-X_linearBearingSeparation/2,-screwLength/2-screwAditionalLength/2,-linearBearingDiameter/2-screwExtension/2])
rotate([0,0,180]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0);
rotate([0,0,180]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
// Bottom left screw
translate([linearBearingLength/2+X_linearBearingSeparation/2,-screwLength/2-screwAditionalLength/2,-linearBearingDiameter/2-screwExtension/2])
rotate([0,0,180]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0);
rotate([0,0,180]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
// Top screw
translate([0,axes_effective_Xsmooth_separation+screwExtension/2+linearBearingDiameter/2,axes_effective_Xsmooth_separation+screwLength/2+screwAditionalLength/2])
rotate([90,0,0]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0);
rotate([90,0,0]) screw_and_nut(size=screwSize,length=screwLength+screwAditionalLength,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
}
44 changes: 25 additions & 19 deletions Source_files/Cycl_X_frames.scad
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,13 @@ module Cyclone_X_rightFrame(isLeft=false) {
dimY = max(-axes_Xreference_posY,axes_Xsmooth_separation+axes_XgearSeparation*cos(motorRotatedOffset)+Xmotor_sideLen/2+1.6);
dimZ = axes_Yreference_height+axes_Xreference_height+axes_Xsmooth_separation;


footSeparation = footScrewSize*3;
footWidth = dimX+2*footSeparation;

rod_nut_len = 0.8*axes_Xthreaded_rodD;
rodNutSize = X_threaded_rodNutSize;
rod_nut_len = METRIC_NUT_THICKNESS[rodNutSize];
nut_separation = rod_nut_len/2;
//rod_nut_len = 0.8*axes_Xthreaded_rodD;

module Cyclone_XsubPart_gearCover() {
margin = gearCover_margin;
Expand Down Expand Up @@ -232,7 +234,7 @@ module Cyclone_X_rightFrame(isLeft=false) {
translate([+0.01,axes_Xsmooth_separation,0]) {

// Rod radial bearing hole
rotate([0,-90,0]) bearingHole(depth=X_threaded_rod_bearingDepth, thickness=partThickness);
rotate([0,-90,0]) bearingHole(depth=X_threaded_rod_bearingDepth, thickness=partThickness, model=X_threaded_rodBearingModel);

// Translate to motor position
if(!isLeft)
Expand Down Expand Up @@ -280,15 +282,19 @@ module Cyclone_X_rightFrame(isLeft=false) {
if(draw_references) color("green") %frame(20);
translate([-X_threaded_rod_bearingDepth,0,0]) rotate([0,90,0])
radialBearing(echoPart=true);
translate([14-X_threaded_rod_bearingDepth-0.5,0,0]) rotate([0,-90,0]){ // replace 14 with bearing hight - X_threaded_rod_bearingDepth
nut(size=rodNutSize, echoPart=true);
if(isLeft) {
translate([0,0,-rod_nut_len])
rotate([0,0,45]) nut(size=rodNutSize, chamfer=true, echoPart=true);
}
}
if(!isLeft) {
translate([X_gear_thickness*2+axes_Xthreaded_rodD-7,0,0])
rotate([0,-90,0])
rotate([0,0,45]) nut(size=axes_Xthreaded_rodD, chamfer=true, echoPart=true);
translate([axes_Xthreaded_rodD,0,0]){
rotate([0,-90,0])
nut(size=axes_Xthreaded_rodD, echoPart=true);
translate([X_threaded_rod_bearingDepth+(2*rod_nut_len)-(nut_separation/2)-2,0,0]) {
translate([X_gear_thickness+(nut_separation/2),0,0])
rotate([0,-90,0])
rotate([0,0,45]) nut(size=rodNutSize, chamfer=true, echoPart=true);
if(Render_X_rodGear) {
translate([axes_Xthreaded_rodD-7,0,0])
rotate([0,-90,0]) color(color_movingPart)
cyclone_rod_gear(Gear_N_Teeth=X_rodGearRatio,gearHeight=X_gear_thickness,nutSize=8,tolerance=0);
}
Expand All @@ -300,16 +306,16 @@ module Cyclone_X_rightFrame(isLeft=false) {
translate([-motorWallSeparation,0,0]) rotate([0,90,0])
stepperMotor(screwHeight=motorWallSeparation, echoPart=true);
if(Render_X_motorGear) {
translate([axes_Xthreaded_rodD+1.5,0,0])
translate([X_threaded_rod_bearingDepth+(2*rod_nut_len)-(nut_separation/2)-2,0,0])
rotate([0,-90,0]) color(color_movingPart)
cyclone_motor_gear(Gear_N_Teeth=X_motorGearRatio,gearHeight=X_gear_thickness,tolerance=0);
}
}
}
if(Render_Y_gearCover) {
// Draw the X gear cover
translate([0.1,0,0])
color(color_stillPart) Cyclone_XsubPart_gearCover();
// Draw the X gear cover
translate([0.1,0,0])
color(color_stillPart) Cyclone_XsubPart_gearCover();
}
}
translate([0,0,axes_Xsmooth_separation])
Expand All @@ -320,15 +326,15 @@ module Cyclone_X_rightFrame(isLeft=false) {
translate([-axes_Xreference_posX-dimX-footSeparation,axes_Xreference_posY+footSeparation,-axes_Yreference_height+footThickness]) {
rotate([0,90,0])
rotate([0,0,90])
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance, invert=true, autoNutOffset=true, echoPart=true);
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,invert=true,autoNutOffset=true,echoPart=true);
translate([0,dimY/2,0])
rotate([0,90,0])
rotate([0,0,90])
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance, invert=true, autoNutOffset=true, echoPart=true);
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,invert=true,autoNutOffset=true,echoPart=true);
translate([0,dimY-2*footSeparation,0])
rotate([0,90,0])
rotate([0,0,90])
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance, invert=true, autoNutOffset=true, echoPart=true);
screw_and_nut(size=footScrewSize,length=footThickness+base_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,invert=true,autoNutOffset=true,echoPart=true);
}
}

Expand Down Expand Up @@ -371,9 +377,9 @@ module rodHolder(rodD=8.5, screwSize=3, height=0, sideLen=0, thickness=5, space=
// Draw screws
translate([screwSize+screwAditionalDistance,-dimY/2,dimZ+0.01])
rotate([90,0,0])
screw_and_nut(size=screwSize,length=dimZ+15,nutDepth=5,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance, rot=90, echoPart=true);
screw_and_nut(size=screwSize,length=dimZ+15,nutDepth=5,nutAddedLen=0,captiveLen=0,rot=90,echoPart=true);
translate([-screwSize-screwAditionalDistance,-dimY/2,dimZ+0.01])
rotate([90,0,0])
screw_and_nut(size=screwSize,length=dimZ+15,nutDepth=5,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance, rot=90, echoPart=true);
screw_and_nut(size=screwSize,length=dimZ+15,nutDepth=5,nutAddedLen=0,captiveLen=0,rot=90,echoPart=true);
}
}
28 changes: 17 additions & 11 deletions Source_files/Cycl_Y_carriage.scad
Original file line number Diff line number Diff line change
Expand Up @@ -62,11 +62,15 @@ module Cyclone_YsubPart_nutHolder() {
hole_for_screw(size=screwSize,length=workbed_thickness+footThickness,nutDepth=-dimZ,nutAddedLen=dimZ,captiveLen=0,tolerance=screwHoleTolerance);
}
translate([0,dimY/2+rod_nut_len/2,0])
rotate([0,90,0]) rotate([90,0,0]) nut(size=8, echoPart=true);
rotate([0,90,0]) rotate([90,0,0]) nut(size=rodNutSize, echoPart=true);
translate([0,-dimY/2,0])
rotate([0,90,0]) rotate([-90,0,0]) nut(size=8, echoPart=true);
rotate([0,90,0]) rotate([-90,0,0]) nut(size=rodNutSize, echoPart=true);
translate([0,dimY/2+0.01-rod_nut_len/2-3,0])
washer_single(diam=washer_D, thickness=washer_thickness, echoPart=true);
translate([0,-screwSeparation/2,workbed_separation_from_Y_threaded_rod+workbed_thickness+screwSize])
rotate([90,0,0]) screw_and_nut(size=screwSize,length=workbed_thickness+footThickness+screwSize,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
translate([0,+screwSeparation/2,workbed_separation_from_Y_threaded_rod+workbed_thickness+screwSize])
rotate([90,0,0]) screw_and_nut(size=screwSize,length=workbed_thickness+footThickness+screwSize,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
}

use <libs/linear_bearing.scad>
Expand Down Expand Up @@ -94,7 +98,7 @@ module Cyclone_YsubPart_singleLinearBearingHolder(onlyScrews=false) {
translate([dimX/2+footSeparation,0,dimZ+workbed_thickness+workbed_screws_aditional_length])
rotate([90,0,0]) hole_for_screw(size=screwSize,length=workbed_screws_aditional_length+footThickness+workbed_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,tolerance=screwHoleTolerance);
translate([dimX/2+footSeparation,0,dimZ+workbed_thickness+workbed_screws_aditional_length])
rotate([90,0,0]) screw_and_nut(size=screwSize,length=workbed_screws_aditional_length+footThickness+workbed_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0);
rotate([90,0,0]) screw_and_nut(size=screwSize,length=workbed_screws_aditional_length+footThickness+workbed_thickness,nutDepth=0,nutAddedLen=0,captiveLen=0,echoPart=true);
} else {
difference() {
// Main part
Expand Down Expand Up @@ -216,14 +220,16 @@ module Cyclone_YsubPart_PCBholder() {
}

// Add the screws and nuts
for (x = [-1,1], y=[-1,0,1]) {
translate([x*(PCB_dimX/2+screwSeparation),y*PCB_dimY/4,PCBholder_height+(2*screwSize)])
rotate([0,0,x*-90]) rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+3,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0);
translate([0,0,holderL_thickness+(holderL_thickness+holderL_thickness_btm)/2]) {
for (x = [-1,1], y=[-1,0,1]) {
translate([x*(PCB_dimX/2+screwSeparation),y*PCB_dimY/4,PCBholder_height+screwSize])
rotate([0,0,x*-90]) rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+screwSize,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0,echoPart=true);
}
translate([PCB_dimX/2-holderArmLength/2,PCB_dimY/2+screwSeparation,PCBholder_height+screwSize])
rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+screwSize,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0,echoPart=true);
scale([-1,-1,1]) translate([PCB_dimX/2-holderArmLength/2,PCB_dimY/2+screwSeparation,PCBholder_height+screwSize])
rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+screwSize,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0,echoPart=true);
}
translate([PCB_dimX/2-holderArmLength/2,PCB_dimY/2+screwSeparation,PCBholder_height+(2*screwSize)])
rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+3,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0);
scale([-1,-1,1]) translate([PCB_dimX/2-holderArmLength/2,PCB_dimY/2+screwSeparation,PCBholder_height+(2*screwSize)])
rotate([90,0,90]) screw_and_nut(size=screwSize,length=PCBholder_height+3,nutDepth=4.5-screwSize,nutAddedLen=0,captiveLen=0);
}

module Cyclone_Y_carriage() {
Expand Down Expand Up @@ -253,7 +259,7 @@ module Cyclone_Y_carriage() {
}
}
}
color([0.9,0.9,0.9, 1]) translate([0,0,workbed_separation_from_Y_threaded_rod+workbed_thickness])
color([0.9,0.9,0.9, 0.5]) translate([0,0,workbed_separation_from_Y_threaded_rod+workbed_thickness])
beveledBase(size=[workbed_size_X,workbed_size_Y,workbed_thickness], radius=3, res=15, echoPart=true);
}
}
Loading