added gears, bearings and motors and renamed files
This commit is contained in:
parent
a22d4705b2
commit
ec301fd69a
|
@ -1,179 +0,0 @@
|
||||||
//testNutsAndBolts();
|
|
||||||
|
|
||||||
module testNutsAndBolts()
|
|
||||||
{
|
|
||||||
$fn = 360;
|
|
||||||
translate([0,15])nutHole(3, proj=2);
|
|
||||||
boltHole(3, length= 30, proj=2);
|
|
||||||
}
|
|
||||||
|
|
||||||
MM = "mm";
|
|
||||||
INCH = "inch"; //Not yet supported
|
|
||||||
|
|
||||||
//Based on: http://www.roymech.co.uk/Useful_Tables/Screws/Hex_Screws.htm
|
|
||||||
METRIC_NUT_AC_WIDTHS =
|
|
||||||
[
|
|
||||||
-1, //0 index is not used but reduces computation
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
6.40,//m3
|
|
||||||
8.10,//m4
|
|
||||||
9.20,//m5
|
|
||||||
11.50,//m6
|
|
||||||
-1,
|
|
||||||
15.00,//m8
|
|
||||||
-1,
|
|
||||||
19.60,//m10
|
|
||||||
-1,
|
|
||||||
22.10,//m12
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
27.70,//m16
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
34.60,//m20
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
41.60,//m24
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
53.1,//m30
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
63.5//m36
|
|
||||||
];
|
|
||||||
METRIC_NUT_THICKNESS =
|
|
||||||
[
|
|
||||||
-1, //0 index is not used but reduces computation
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
2.40,//m3
|
|
||||||
3.20,//m4
|
|
||||||
4.00,//m5
|
|
||||||
5.00,//m6
|
|
||||||
-1,
|
|
||||||
6.50,//m8
|
|
||||||
-1,
|
|
||||||
8.00,//m10
|
|
||||||
-1,
|
|
||||||
10.00,//m12
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
13.00,//m16
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
16.00//m20
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
19.00,//m24
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
24.00,//m30
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
29.00//m36
|
|
||||||
];
|
|
||||||
|
|
||||||
COURSE_METRIC_BOLT_MAJOR_THREAD_DIAMETERS =
|
|
||||||
[//based on max values
|
|
||||||
-1, //0 index is not used but reduces computation
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
2.98,//m3
|
|
||||||
3.978,//m4
|
|
||||||
4.976,//m5
|
|
||||||
5.974,//m6
|
|
||||||
-1,
|
|
||||||
7.972,//m8
|
|
||||||
-1,
|
|
||||||
9.968,//m10
|
|
||||||
-1,
|
|
||||||
11.966,//m12
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
15.962,//m16
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
19.958,//m20
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
23.952,//m24
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
29.947,//m30
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
-1,
|
|
||||||
35.940//m36
|
|
||||||
];
|
|
||||||
|
|
||||||
module nutHole(size, units=MM, tolerance = +0.0001, proj = -1)
|
|
||||||
{
|
|
||||||
//takes a metric screw/nut size and looksup nut dimensions
|
|
||||||
radius = METRIC_NUT_AC_WIDTHS[size]/2+tolerance;
|
|
||||||
height = METRIC_NUT_THICKNESS[size]+tolerance;
|
|
||||||
if (proj == -1)
|
|
||||||
{
|
|
||||||
cylinder(r= radius, h=height, $fn = 6, center=[0,0]);
|
|
||||||
}
|
|
||||||
if (proj == 1)
|
|
||||||
{
|
|
||||||
circle(r= radius, $fn = 6);
|
|
||||||
}
|
|
||||||
if (proj == 2)
|
|
||||||
{
|
|
||||||
translate([-radius/2, 0])
|
|
||||||
square([radius*2, height]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
module boltHole(size, units=MM, length, tolerance = +0.0001, proj = -1)
|
|
||||||
{
|
|
||||||
radius = COURSE_METRIC_BOLT_MAJOR_THREAD_DIAMETERS[size]/2+tolerance;
|
|
||||||
//TODO: proper screw cap values
|
|
||||||
capHeight = METRIC_NUT_THICKNESS[size]+tolerance; //METRIC_BOLT_CAP_HEIGHTS[size]+tolerance;
|
|
||||||
capRadius = METRIC_NUT_AC_WIDTHS[size]/2+tolerance; //METRIC_BOLT_CAP_RADIUS[size]+tolerance;
|
|
||||||
|
|
||||||
if (proj == -1)
|
|
||||||
{
|
|
||||||
translate([0, 0, -capHeight])
|
|
||||||
cylinder(r= capRadius, h=capHeight);
|
|
||||||
cylinder(r = radius, h = length);
|
|
||||||
}
|
|
||||||
if (proj == 1)
|
|
||||||
{
|
|
||||||
circle(r = radius);
|
|
||||||
}
|
|
||||||
if (proj == 2)
|
|
||||||
{
|
|
||||||
translate([-capRadius/2, -capHeight])
|
|
||||||
square([capRadius*2, capHeight]);
|
|
||||||
square([radius*2, length]);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in a new issue