/* * Spool Holder for Bukobot * Copyright (C) 2012 David Flynn * * License: LGPL 2.1 or later */ $fs=1; module reelholdermount() { difference() { translate([-7.5,0,2.5]) cube([25,50,5], center = true); // top plate translate([-7.5,17.5,0]) cylinder(r=2.6,h=20,center=true); //mounting bolt hole translate([-7.5,-17.5,0]) cylinder(r=2.6,h=20,center=true); //mounting bolt hole } hull() //fillet { translate([-7.5,-10,0]) cube([25,20,20]); translate([-20,-10,5]) cube([12.5,20,1]); } difference() { translate([50,0,10]) rotate(a=[0,-90,0]) cylinder(r=10,h=100, center = true); translate([90,-10.5,19]) cube([20,21,21]); // Flat for retaining bolt stop translate([96,0,15]) rotate(a=[0,-90,0]) cylinder(r=2.4,h=10, center = true); //retaining bolt hole } translate([50,0,5]) cube([100,12,10], center = true); // bottom key translate([50,0,19]) cube([80,8,2], center = true); // top key } module reelbackstop32mm() { difference() { translate([12.5+lPlateThickness,0,10]) rotate(a=[0,-90,0]) cylinder(r=50,h=lPlateThickness); translate([36.5,0,10]) rotate(a=[0,-90,0]) cylinder(r=10,h=75, center = true); translate([12,-10.5,-0.5]) cube([5,21,21]); translate([50,0,5]) cube([100,13,11], center = true); // bottom key translate([50,0,19]) cube([80,9,3], center = true); // top key } difference() { translate([36.5,0,10]) rotate(a=[0,-90,0]) cylinder(r=16,h=38, center = true); translate([36.5,0,10]) rotate(a=[0,-90,0]) cylinder(r=10.5,h=75, center = true); translate([50,0,5]) cube([100,13,11], center = true); // bottom key translate([50,0,19]) cube([80,9,3], center = true); // top key } } module reelfrontstop32mm() { difference() { translate([93,0,10]) rotate(a=[0,90,0]) cylinder(r=50,h=lPlateThickness); translate([96,0,10]) rotate(a=[0,90,0]) cylinder(r=10.5,h=80, center = true); translate([50,0,5]) cube([100,13,11], center = true); // bottom key translate([50,0,19]) cube([80,9,3], center = true); // top key } translate([93,-10.5,19]) cube([lPlateThickness,20,20]); difference() { translate([74.5,0,10]) rotate(a=[0,90,0]) cylinder(r=16,h=38, center = true); translate([74.5,0,10]) rotate(a=[0,90,0]) cylinder(r=10.5,h=75, center = true); translate([50,0,5]) cube([100,13,11], center = true); // bottom key translate([50,0,19]) cube([85,9,3], center = true); // top key } } lPlateThickness=5; reelholdermount(); reelbackstop32mm(); // Shown assembled //rotate(a=[0,-90,0]) translate([-12.5,0,-10.5]) reelbackstop32mm(); // Rotated and offset for export reelfrontstop32mm(); // Shown assembled //rotate(a=[0,90,0]) translate([-98,0,0]) reelfrontstop32mm(); // Rotated and offset for export