mirror of
https://github.com/nophead/NopSCADlib.git
synced 2025-08-09 08:56:29 +02:00
Merge branch 'stage4upstream' of https://github.com/allTexas/NopSCADlib into allTexas-stage4upstream
This commit is contained in:
@@ -34,6 +34,7 @@ BBMR93 = ["MR93", 3, 9, 4, "silver", 0.5, 0.5, 0, 0];
|
|||||||
BBMR95 = ["MR95", 5, 9, 3, "silver", 0.5, 0.5, 0, 0];
|
BBMR95 = ["MR95", 5, 9, 3, "silver", 0.5, 0.5, 0, 0];
|
||||||
BBF623 = ["F623", 3, 10, 4, "black", 0.6, 0.7, 11.5, 1];
|
BBF623 = ["F623", 3, 10, 4, "black", 0.6, 0.7, 11.5, 1];
|
||||||
BBF693 = ["F693", 3, 8, 3, "silver", 0.5, 0.7, 9.5, 0.7];
|
BBF693 = ["F693", 3, 8, 3, "silver", 0.5, 0.7, 9.5, 0.7];
|
||||||
|
BBF625 = ["F625", 5, 16, 5, "silver", 1.0, 1.0, 18, 1];
|
||||||
BBF695 = ["F695", 5, 13, 4, "silver", 1.0, 1.0, 15, 1];
|
BBF695 = ["F695", 5, 13, 4, "silver", 1.0, 1.0, 15, 1];
|
||||||
|
|
||||||
ball_bearings = [BBF693, BBF623, BBF695, BBMR63, BBMR83, BBMR93, BBSMR95, BB624, BB686, BB696, BB608, BB6200, BB6201, BB6808];
|
ball_bearings = [BBF693, BBF623, BBF695, BBMR63, BBMR83, BBMR93, BBSMR95, BB624, BB686, BB696, BB608, BB6200, BB6201, BB6808];
|
||||||
|
@@ -245,6 +245,39 @@ module sliding_t_nut(type) { //! Draw a sliding T nut, T nut with a spring loade
|
|||||||
extrusionSlidingNut(size, tab[0], tab[1], tabSizeZ, holeRadius, 0, hammerNut);
|
extrusionSlidingNut(size, tab[0], tab[1], tabSizeZ, holeRadius, 0, hammerNut);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module weld_nut(type) {
|
||||||
|
thread_d = nut_size(type);
|
||||||
|
hole_rad = thread_d / 2;
|
||||||
|
nut_neck_rad = nut_radius(type);
|
||||||
|
// top_rad = type[4] / 2;
|
||||||
|
thickness = nut_thickness(type);
|
||||||
|
base_rad = type[7]/2;
|
||||||
|
base_thickness= type[8];
|
||||||
|
|
||||||
|
|
||||||
|
vitamin(str("weld nut(", type[0], "): Weld Nut M", nut_size(type)));
|
||||||
|
colour = silver;
|
||||||
|
explode(-20) {
|
||||||
|
color(colour) {
|
||||||
|
|
||||||
|
rotate_extrude()
|
||||||
|
polygon([
|
||||||
|
[hole_rad, -base_thickness],
|
||||||
|
[base_rad, -base_thickness],
|
||||||
|
[base_rad, 0],
|
||||||
|
[hole_rad, 0],
|
||||||
|
[nut_neck_rad, 0],
|
||||||
|
[nut_neck_rad, thickness],
|
||||||
|
[hole_rad, thickness]
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(show_threads)
|
||||||
|
female_metric_thread(thread_d, metric_coarse_pitch(thread_d), thickness, center = false, colour = colour);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
module extrusionSlidingNut(size, tabSizeY1, tabSizeY2, tabSizeZ, holeRadius, holeOffset = 0, hammerNut = false) {
|
module extrusionSlidingNut(size, tabSizeY1, tabSizeY2, tabSizeZ, holeRadius, holeOffset = 0, hammerNut = false) {
|
||||||
// center section
|
// center section
|
||||||
stem_h = size.z - tabSizeZ;
|
stem_h = size.z - tabSizeZ;
|
||||||
|
@@ -50,6 +50,8 @@ M8_nut = ["M8_nut", 8, 15, 6.5, 8, M8_washer, M8_n
|
|||||||
toggle_nut = ["toggle_nut", 6.1, 9.2, 1.5, 1.5, M6_washer, 1.5, inch(1/40)];
|
toggle_nut = ["toggle_nut", 6.1, 9.2, 1.5, 1.5, M6_washer, 1.5, inch(1/40)];
|
||||||
|
|
||||||
M4_wingnut = ["M4_wingnut", 4, 10, 3.75,8, M4_washer, 0, 22, 10, 6, 3];
|
M4_wingnut = ["M4_wingnut", 4, 10, 3.75,8, M4_washer, 0, 22, 10, 6, 3];
|
||||||
|
M4_weld_nut = ["M4_weld_nut", 4, 5.3, 6.3, 8, M4_washer, 0, 18, 0.8, 6, 3];
|
||||||
|
M6_weld_nut = ["M6_weld_nut", 6, 7.7, 7.9, 8, M6_washer, 0, 19.1, 1.2, 6, 3];
|
||||||
// sx ty1 ty2 hammer
|
// sx ty1 ty2 hammer
|
||||||
M3_sliding_t_nut = ["M3_sliding_t_nut", 3, 6, 3.0, 4.0, false, 0, 10, 10, 6, false];
|
M3_sliding_t_nut = ["M3_sliding_t_nut", 3, 6, 3.0, 4.0, false, 0, 10, 10, 6, false];
|
||||||
M4_sliding_t_nut = ["M4_sliding_t_nut", 4, 6, 3.7, 4.7, false, 0, 11, 10, 6, false];
|
M4_sliding_t_nut = ["M4_sliding_t_nut", 4, 6, 3.7, 4.7, false, 0, 11, 10, 6, false];
|
||||||
|
@@ -39,6 +39,14 @@ GT2x16_toothed_idler = ["GT2x16_toothed_idler", "GT2", 16, 9.75, GT2x6, 6.5,
|
|||||||
GT2x16_plain_idler = ["GT2x16_plain_idler", "GT2", 0, 9.63, GT2x6, 6.5, 13, 0, 3, 13.0, 1.0, 0, 0, false, 0];
|
GT2x16_plain_idler = ["GT2x16_plain_idler", "GT2", 0, 9.63, GT2x6, 6.5, 13, 0, 3, 13.0, 1.0, 0, 0, false, 0];
|
||||||
GT2x16x7_plain_idler = ["GT2x16x7_plain_idler", "GT2", 0, 9.63, GT2x6, 7.0, 13, 0, 3, 13.0, 1.0, 0, 0, false, 0];
|
GT2x16x7_plain_idler = ["GT2x16x7_plain_idler", "GT2", 0, 9.63, GT2x6, 7.0, 13, 0, 3, 13.0, 1.0, 0, 0, false, 0];
|
||||||
|
|
||||||
|
GT2x80_pulley = ["GT2x80_pulley", "GT2", 80, 50.42, GT2x6, 7, 35, 9, 5, 55, 1.0, 6, 4.5, M5_grub_screw, 2]; // Powge branded from West3D
|
||||||
|
GT2x16_toothed_idler_9 = ["GT2x16_toothed_idler_9", "GT2", 16, 9.75, GT2x9, 10, 14, 0, 3, 14.0, 1.0, 0, 0, false, 0];//Robotdigg
|
||||||
|
GT2x16_pulley_9 = ["GT2x16_pulley_9", "GT2", 16, 9.65, GT2x9, 9.5, 14, 6.5, 5, 14.0, 1.0, 6, 3.5, M3_grub_screw, 2];
|
||||||
|
GT2x20_pulley_9 = ["GT2x20_pulley_9", "GT2", 20, 12.22, GT2x9, 11, 16, 7, 5, 16.0, 1.0, 6, 3.25, M4_grub_screw, 2];//Powge
|
||||||
|
GT2x20_toothed_idler_9 = ["GT2x20_toothed_idler_9", "GT2", 20, 12.22, GT2x9, 10, 18, 0, 5, 18.0, 1.0, 0, 0, false, 0];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
pulleys = [T5x10_pulley,
|
pulleys = [T5x10_pulley,
|
||||||
T2p5x16_pulley,
|
T2p5x16_pulley,
|
||||||
GT2x20um_pulley,
|
GT2x20um_pulley,
|
||||||
@@ -49,6 +57,8 @@ pulleys = [T5x10_pulley,
|
|||||||
GT2x20_plain_idler,
|
GT2x20_plain_idler,
|
||||||
GT2x16_toothed_idler,
|
GT2x16_toothed_idler,
|
||||||
GT2x16_plain_idler,
|
GT2x16_plain_idler,
|
||||||
GT2x16x7_plain_idler];
|
GT2x16x7_plain_idler
|
||||||
|
|
||||||
|
];
|
||||||
|
|
||||||
use <pulley.scad>
|
use <pulley.scad>
|
||||||
|
144
vitamins/rod_end.scad
Normal file
144
vitamins/rod_end.scad
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
include <NopSCADlib/utils/core/core.scad>
|
||||||
|
include <NopSCADlib/utils/thread.scad>
|
||||||
|
|
||||||
|
|
||||||
|
function rod_end_bearing_bore(type) =type[1]; // radius of the bore hole in the bearing
|
||||||
|
function rod_end_bearing_od(type) =type[2]; // Outer diameter of the bearing
|
||||||
|
function rod_end_bore_width(type) = type[3]; //! Width
|
||||||
|
function rod_end_bearing_width(type) = type[4]; //! Width
|
||||||
|
function rod_end_bearing_shield_colour(type) = type[5]; //! Shield colour, "silver" for metal
|
||||||
|
function rod_end_screw_radius(type) =type[6]/2; // radius of the screw end, not the bore
|
||||||
|
// function screw_pitch(type) =type[6]; // pitch of the screw end, not the bore
|
||||||
|
function rod_end_sphere_seg_width(type) = type[7]; // the width of the pivoting part, effectively a (sphere - sphereCaps - center bore)
|
||||||
|
function rod_end_sphere_radius(type) = type[8];
|
||||||
|
function rod_end_screw_length(type) =type[9]; // length of the screw from eye center, not the bore
|
||||||
|
function rod_end_thread_length(type) =type[10]; // length of the threads
|
||||||
|
function rod_end_overall_length(type) = type[11];
|
||||||
|
function rod_end_bearing_rim(type) = type[12]; //! Outer rim thickness guesstimate
|
||||||
|
|
||||||
|
// function screw_thread_radius(type) = //! Thread radius
|
||||||
|
// let(d = screw_thread_diameter(type)) is_undef(d) ? rod_end_screw_radius(type) : d / 2;
|
||||||
|
|
||||||
|
|
||||||
|
module rod_end_bearing(type) {
|
||||||
|
|
||||||
|
bb_bore = rod_end_bearing_bore(type);
|
||||||
|
bb_od=rod_end_bearing_od(type);
|
||||||
|
bb_rim=rod_end_bearing_rim(type);
|
||||||
|
|
||||||
|
bb_width=rod_end_bearing_width(type);
|
||||||
|
bb_shield_colour = rod_end_bearing_shield_colour(type);
|
||||||
|
length = rod_end_screw_length(type);
|
||||||
|
sphere_rad = rod_end_sphere_radius(type)/2;
|
||||||
|
rod_end_sphere_seg_width= rod_end_sphere_seg_width(type);
|
||||||
|
shaft_rad = rod_end_screw_radius(type) - eps;
|
||||||
|
thread_rad = rod_end_screw_radius(type);
|
||||||
|
thread = rod_end_thread_length(type); //length - bb_od/2;
|
||||||
|
// thread = length - bb_od/2;
|
||||||
|
thread_offset = 0;
|
||||||
|
thread_d = 2 * thread_rad;
|
||||||
|
pitch = metric_coarse_pitch(thread_d);
|
||||||
|
colour = grey(80);
|
||||||
|
shield_width=bb_width - (bb_width < 5 ? 0.5 : 1);
|
||||||
|
chamfer = bb_rim / 6;
|
||||||
|
|
||||||
|
description = str("Rod End Bearing ", type[1], length < 10 ? " x " : " x ", length, "mm");
|
||||||
|
vitamin(str("Rod End Bearing(", type[0], length, "): ", description));
|
||||||
|
|
||||||
|
// show_threads=true;
|
||||||
|
|
||||||
|
module shaft(socket = 0, headless = false) {
|
||||||
|
// point = screw_nut(type) ? 0 : 3 * shaft_rad;
|
||||||
|
shank = length;
|
||||||
|
|
||||||
|
if(show_threads && pitch)
|
||||||
|
translate_z(-length - thread_offset)
|
||||||
|
male_metric_thread(thread_d, pitch, thread, false, top = headless ? -1 : 0, solid = !headless, colour = colour);
|
||||||
|
else
|
||||||
|
color(colour * 0.9)
|
||||||
|
rotate_extrude() {
|
||||||
|
translate([0, -length - thread_offset])
|
||||||
|
square([thread_rad - eps, thread ]);
|
||||||
|
|
||||||
|
// if(point)
|
||||||
|
// polygon([
|
||||||
|
// [0.4, -length], [0, point - length], [shaft_rad, point - length]
|
||||||
|
// ]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// if(shank > 0)
|
||||||
|
// color(colour)
|
||||||
|
// translate_z(-shank - socket)
|
||||||
|
// cylinder(r = shaft_rad + eps, h = shank);
|
||||||
|
}
|
||||||
|
|
||||||
|
module bearingEye(){
|
||||||
|
rotate_extrude()
|
||||||
|
{
|
||||||
|
difference() {
|
||||||
|
circle(r = sphere_rad);
|
||||||
|
translate(v = [0,-sphere_rad])
|
||||||
|
square(size = sphere_rad*2);
|
||||||
|
|
||||||
|
for(i=[0,1])
|
||||||
|
mirror(v = [0,i])
|
||||||
|
translate(v = [-sphere_rad,rod_end_sphere_seg_width/2])
|
||||||
|
square(size = sphere_rad*2);
|
||||||
|
|
||||||
|
square([bb_bore,rod_end_sphere_seg_width+1], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
color(bb_shield_colour)
|
||||||
|
rotate_extrude()
|
||||||
|
{
|
||||||
|
difference() {
|
||||||
|
translate([0,-shield_width/2])
|
||||||
|
square([bb_od/2-bb_rim,shield_width]);
|
||||||
|
circle(r = sphere_rad);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// rotate_extrude()
|
||||||
|
// {
|
||||||
|
// translate([0,-bb_width/2])
|
||||||
|
// difference() {
|
||||||
|
// square([(bb_od)/2,bb_width]);
|
||||||
|
// square([bb_od/2-bb_rim,bb_width]);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
rotate_extrude()
|
||||||
|
hull() {
|
||||||
|
// rim= bb_rim;
|
||||||
|
or= bb_od/2;
|
||||||
|
h = bb_width;
|
||||||
|
translate([or - bb_rim, -h / 2 + chamfer])
|
||||||
|
square([bb_rim, h - 2 * chamfer]);
|
||||||
|
|
||||||
|
translate([or - bb_rim, -h / 2])
|
||||||
|
square([bb_rim - chamfer, h]);
|
||||||
|
}
|
||||||
|
translate([0,0,-bb_width/2+chamfer])
|
||||||
|
linear_extrude(bb_width-chamfer*2){
|
||||||
|
difference() {
|
||||||
|
|
||||||
|
hull(){
|
||||||
|
circle(r = bb_od/2);
|
||||||
|
translate([length-thread,-shaft_rad])
|
||||||
|
square([0.5,shaft_rad*2]);
|
||||||
|
}
|
||||||
|
circle(r = bb_od/2-bb_rim);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
shaft();
|
||||||
|
rotate([0,90,0])
|
||||||
|
bearingEye();
|
||||||
|
|
||||||
|
// square()
|
||||||
|
}
|
5
vitamins/rod_ends.scad
Normal file
5
vitamins/rod_ends.scad
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
RE_m5_bearing = ["rodEndBearingM5", 5, 16, 8, 6, "gold", 5, 8, 11.11, 33, 21, 41, 2.0, 2.0, 0, 0]; // uxcell M5x0.8 Right Hand Thread, Self-Lubricating Joint Rod Ends
|
||||||
|
|
||||||
|
rod_ends= [ RE_m5_bearing];
|
||||||
|
|
||||||
|
use<rod_end.scad>
|
@@ -237,21 +237,25 @@ module screw(type, length, hob_point = 0, nylon = false) { //! Draw specified sc
|
|||||||
}
|
}
|
||||||
|
|
||||||
if(head_type == hs_dome) {
|
if(head_type == hs_dome) {
|
||||||
lift = 0.38;
|
R_minus_h = head_height; // h would be the height of the sphere cap that's cut off of the top of the screw dome
|
||||||
h = head_height - lift;
|
a= socket_rad;
|
||||||
r = min(2 * head_height, (sqr(head_rad) + sqr(h)) / 2 * h); // Special case for M2
|
// this is the trig way to do this,
|
||||||
y = sqrt(sqr(r) - sqr(head_rad));
|
// alpha=atan(R_minus_h/a);
|
||||||
|
// R = R_minus_h/sin(alpha); //Radius if the cap was a perfect unscaled sphere
|
||||||
|
// this is mathematcially equivalent, but may run faster computationally with sqrt and ^2 instead of trig
|
||||||
|
R= a*sqrt((R_minus_h^2/a^2)+1); // Radius if the cap was a perfect unscaled sphere
|
||||||
|
dome_height_scaling_factor= R/head_rad;
|
||||||
color(colour) {
|
color(colour) {
|
||||||
rotate_extrude() {
|
rotate_extrude() {
|
||||||
difference() {
|
difference() {
|
||||||
intersection() {
|
intersection() {
|
||||||
translate([0, -y + lift])
|
scale([1,dome_height_scaling_factor])
|
||||||
circle(r);
|
circle(r=head_rad);
|
||||||
|
|
||||||
square([head_rad, head_height]);
|
square([head_rad, head_height]);
|
||||||
}
|
}
|
||||||
translate([0, head_height - socket_depth])
|
translate([0, head_height - socket_depth])
|
||||||
square([socket_rad, 10]);
|
square([socket_rad, 20]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
linear_extrude(head_height)
|
linear_extrude(head_height)
|
||||||
|
@@ -87,6 +87,8 @@ M2p5_dome_screw = ["M2p5_dome", "M2.5 dome", hs_dome,2.5, 5.35,1.6, 0.8, 2.0
|
|||||||
M3_dome_screw = ["M3_dome", "M3 dome", hs_dome, 3, 5.7, 1.65, 1.04,2.0, 18, M3_washer, M3_nut, M3_tap_radius, M3_clearance_radius];
|
M3_dome_screw = ["M3_dome", "M3 dome", hs_dome, 3, 5.7, 1.65, 1.04,2.0, 18, M3_washer, M3_nut, M3_tap_radius, M3_clearance_radius];
|
||||||
M4_dome_screw = ["M4_dome", "M4 dome", hs_dome, 4, 7.6, 2.2, 1.3, 2.5, 20, M4_washer, M4_nut, M4_tap_radius, M4_clearance_radius];
|
M4_dome_screw = ["M4_dome", "M4 dome", hs_dome, 4, 7.6, 2.2, 1.3, 2.5, 20, M4_washer, M4_nut, M4_tap_radius, M4_clearance_radius];
|
||||||
M5_dome_screw = ["M5_dome", "M5 dome", hs_dome, 5, 9.5, 2.75, 1.56,3.0, 22, M5_washer, M5_nut, M5_tap_radius, M5_clearance_radius];
|
M5_dome_screw = ["M5_dome", "M5 dome", hs_dome, 5, 9.5, 2.75, 1.56,3.0, 22, M5_washer, M5_nut, M5_tap_radius, M5_clearance_radius];
|
||||||
|
M6_dome_screw = ["M6_dome", "M6 dome", hs_dome, 6, 10.5, 3.3, 2.5,4.0, 24, M6_washer, M6_nut, M6_tap_radius, M6_clearance_radius];
|
||||||
|
M8_dome_screw = ["M8_dome", "M8 dome", hs_dome, 8, 14, 4.4, 3,5.0, 30, M8_washer, M8_nut, M8_tap_radius, M8_clearance_radius];
|
||||||
|
|
||||||
M2p5_pan_screw = ["M2p5_pan", "M2.5 pan", hs_pan, 2.5, 4.7, 1.7, 0, 0, 0, M2p5_washer, M2p5_nut, M2p5_tap_radius, M2p5_clearance_radius];
|
M2p5_pan_screw = ["M2p5_pan", "M2.5 pan", hs_pan, 2.5, 4.7, 1.7, 0, 0, 0, M2p5_washer, M2p5_nut, M2p5_tap_radius, M2p5_clearance_radius];
|
||||||
M3_pan_screw = ["M3_pan", "M3 pan", hs_pan, 3, 5.4, 2.0, 0, 0, 0, M3_washer, M3_nut, M3_tap_radius, M3_clearance_radius];
|
M3_pan_screw = ["M3_pan", "M3 pan", hs_pan, 3, 5.4, 2.0, 0, 0, 0, M3_washer, M3_nut, M3_tap_radius, M3_clearance_radius];
|
||||||
@@ -122,7 +124,7 @@ screw_lists = [
|
|||||||
[ 0, 0, M3_low_cap_screw],
|
[ 0, 0, M3_low_cap_screw],
|
||||||
[ 0, 0, M3_shoulder_screw, M4_shoulder_screw],
|
[ 0, 0, M3_shoulder_screw, M4_shoulder_screw],
|
||||||
[ M2_cs_cap_screw, 0, M3_cs_cap_screw, M4_cs_cap_screw, M5_cs_cap_screw, M6_cs_cap_screw, M8_cs_cap_screw],
|
[ M2_cs_cap_screw, 0, M3_cs_cap_screw, M4_cs_cap_screw, M5_cs_cap_screw, M6_cs_cap_screw, M8_cs_cap_screw],
|
||||||
[ M2_dome_screw, M2p5_dome_screw,M3_dome_screw, M4_dome_screw, M5_dome_screw],
|
[ M2_dome_screw, M2p5_dome_screw,M3_dome_screw, M4_dome_screw, M5_dome_screw, M6_dome_screw, M8_dome_screw],
|
||||||
[ 0, 0, M3_hex_screw, M4_hex_screw, M5_hex_screw, M6_hex_screw, M8_hex_screw],
|
[ 0, 0, M3_hex_screw, M4_hex_screw, M5_hex_screw, M6_hex_screw, M8_hex_screw],
|
||||||
[ 0, M2p5_pan_screw, M3_pan_screw, M4_pan_screw, M5_pan_screw, M6_pan_screw, No632_pan_screw],
|
[ 0, M2p5_pan_screw, M3_pan_screw, M4_pan_screw, M5_pan_screw, M6_pan_screw, No632_pan_screw],
|
||||||
[ No2_screw, 0, No4_screw, No6_screw, No8_screw, No6_cs_screw],
|
[ No2_screw, 0, No4_screw, No6_screw, No8_screw, No6_cs_screw],
|
||||||
|
@@ -17,9 +17,11 @@
|
|||||||
// If not, see <https://www.gnu.org/licenses/>.
|
// If not, see <https://www.gnu.org/licenses/>.
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// name OD wireG len #trns clsd flat OD2 color
|
||||||
peg_spring = ["peg_spring", 6.4, 0.9, 15.5, 8, 1, false, 0, "silver"];
|
peg_spring = ["peg_spring", 6.4, 0.9, 15.5, 8, 1, false, 0, "silver"];
|
||||||
|
yellow_bed_spring = ["yellow_bed_spring", 8, 0.9, 20, 10, 1, false, 0, "yellow"];
|
||||||
batt_spring = ["batt_spring", 5, 0.5, 8, 5, 1, false, 6, "silver"];
|
batt_spring = ["batt_spring", 5, 0.5, 8, 5, 1, false, 6, "silver"];
|
||||||
|
|
||||||
springs = [peg_spring, batt_spring];
|
springs = [peg_spring, batt_spring, yellow_bed_spring];
|
||||||
|
|
||||||
use <spring.scad>
|
use <spring.scad>
|
||||||
|
@@ -80,7 +80,7 @@ module NEMA(type, shaft_angle = 0, jst_connector = false) { //! Draw specified N
|
|||||||
shaft_rad = NEMA_shaft_dia(type) / 2;
|
shaft_rad = NEMA_shaft_dia(type) / 2;
|
||||||
cap = NEMA_cap_heights(type)[1];
|
cap = NEMA_cap_heights(type)[1];
|
||||||
cap2 = NEMA_cap_heights(type)[0];
|
cap2 = NEMA_cap_heights(type)[0];
|
||||||
vitamin(str("NEMA(", type[0], "): Stepper motor NEMA", round(NEMA_width(type) / 2.54), " x ", length, "mm"));
|
vitamin(str("NEMA(", type[0], "): Stepper motor NEMA", round(NEMA_width(type) / 2.54), " x ", length, "mm (", type[7],"x",type[8], " shaft)"));
|
||||||
thread_d = NEMA_thread_d(type);
|
thread_d = NEMA_thread_d(type);
|
||||||
corner_r = 0.9;
|
corner_r = 0.9;
|
||||||
bore = NEMA_shaft_bore(type);
|
bore = NEMA_shaft_bore(type);
|
||||||
|
@@ -26,6 +26,7 @@
|
|||||||
NEMA8_30 = ["NEMA8_30", 20, 30, 30/2, 20, 7.5, 1.6, 4, 6, 16, [8, 8], 2, true, true, 0, 0];
|
NEMA8_30 = ["NEMA8_30", 20, 30, 30/2, 20, 7.5, 1.6, 4, 6, 16, [8, 8], 2, true, true, 0, 0];
|
||||||
NEMA8_30BH = ["NEMA8_30BH", 20, 30, 30/2, 20, 7.5, 1.6, 5, 12, 16, [8, 8], 2, true, true, 7, 2.8];
|
NEMA8_30BH = ["NEMA8_30BH", 20, 30, 30/2, 20, 7.5, 1.6, 5, 12, 16, [8, 8], 2, true, true, 7, 2.8];
|
||||||
NEMA17_47 = ["NEMA17_47", 42.3, 47, 53.6/2, 25, 11, 2, 5, 24, 31, [11.5, 9], 3, false, false, 0, 0];
|
NEMA17_47 = ["NEMA17_47", 42.3, 47, 53.6/2, 25, 11, 2, 5, 24, 31, [11.5, 9], 3, false, false, 0, 0];
|
||||||
|
NEMA17_47L80 = ["NEMA17_47L80", 42.3, 47, 53.6/2, 25, 11, 2, 5, 80, 31, [11.5, 9], 3, false, true, 0, 0];
|
||||||
NEMA17_40 = ["NEMA17_40", 42.3, 40, 53.6/2, 25, 11, 2, 5, 20, 31, [12.5, 11], 3, false, false, 0, 0];
|
NEMA17_40 = ["NEMA17_40", 42.3, 40, 53.6/2, 25, 11, 2, 5, 20, 31, [12.5, 11], 3, false, false, 0, 0];
|
||||||
NEMA17_40L280 = ["NEMA17_40L280", 42.3, 40, 53.6/2, 25, 11, 2, 8, [280, 8, 4], 31, [12.5, 11], 3, false, false, 0, 0];
|
NEMA17_40L280 = ["NEMA17_40L280", 42.3, 40, 53.6/2, 25, 11, 2, 8, [280, 8, 4], 31, [12.5, 11], 3, false, false, 0, 0];
|
||||||
NEMA17_34 = ["NEMA17_34", 42.3, 34, 53.6/2, 25, 11, 2, 5, 24, 31, [8, 8], 3, false, false, 0, 0];
|
NEMA17_34 = ["NEMA17_34", 42.3, 34, 53.6/2, 25, 11, 2, 5, 24, 31, [8, 8], 3, false, false, 0, 0];
|
||||||
@@ -34,7 +35,7 @@ NEMA16_19 = ["NEMA16_19", 39.5, 19.2, 50.6/2, 50.6/2, 11, 2, 5
|
|||||||
NEMA14_36 = ["NEMA14_36", 35.2, 36, 46.4/2, 21, 11, 2, 5, 21, 26, [8, 8], 3, false, false, 0, 0];
|
NEMA14_36 = ["NEMA14_36", 35.2, 36, 46.4/2, 21, 11, 2, 5, 21, 26, [8, 8], 3, false, false, 0, 0];
|
||||||
NEMA23_51 = ["NEMA23_51", 56.4, 51.2, 75.7/2, 35, 38.1/2, 1.6, 6.35, 24, 47.1, [8, 8], 3, false, false, 0, 0];
|
NEMA23_51 = ["NEMA23_51", 56.4, 51.2, 75.7/2, 35, 38.1/2, 1.6, 6.35, 24, 47.1, [8, 8], 3, false, false, 0, 0];
|
||||||
|
|
||||||
stepper_motors = [NEMA8_30, NEMA8_30BH, NEMA14_36, NEMA16_19, NEMA17_27, NEMA17_34, NEMA17_40, NEMA17_47, NEMA23_51];
|
stepper_motors = [NEMA8_30, NEMA8_30BH, NEMA14_36, NEMA16_19, NEMA17_27, NEMA17_34, NEMA17_40, NEMA17_47,NEMA17_47L80, NEMA23_51];
|
||||||
small_steppers = [];
|
small_steppers = [];
|
||||||
|
|
||||||
use <stepper_motor.scad>
|
use <stepper_motor.scad>
|
||||||
|
Reference in New Issue
Block a user