Fixed long SCS_bearing blocks to use two short bearings and added circlips.

This commit is contained in:
Chris Palmer 2020-03-24 17:24:08 +00:00
parent f2ec3e71f4
commit 53f0bbcd6e
3 changed files with 28 additions and 13 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 92 KiB

View File

@ -27,6 +27,7 @@ use <screw.scad>
use <nut.scad>
use <washer.scad>
use <linear_bearing.scad>
use <circlip.scad>
function scs_size(type) = [type[4],type[6],type[5]]; //! Size of scs bracket bounding block
function scs_hole_offset(type) = type[2]; //! Offset of bearing hole from base of block
@ -36,6 +37,8 @@ function scs_screw(type) = type[11]; //! Screw type
function scs_screw_separation_x(type) = type[8]; //! Screw separation in X direction
function scs_screw_separation_z(type) = type[9]; //! Screw separation in Z direction
function scs_bearing(type) = type[14]; //! Linear bearing used
function scs_circlip(type) = type[15]; //! Circlip used
function scs_spacer(type) = type[16]; //! Spacer used in long bearings
sks_bearing_block_color = grey90;
@ -57,6 +60,8 @@ module scs_bearing_block(type) { //! Draw the specified SCS bearing block
S1 = scs_screw(type);
S2 = type[12];
L1 = type[13];
bearing = scs_bearing(type);
clip = scs_circlip(type);
module right_trapezoid(base, top, height, h = 0, center = true) {//! A right angled trapezoid with the 90&deg; corner at the origin. 3D when ```h``` is nonzero, otherwise 2D
extrude_if(h, center = center)
@ -64,11 +69,11 @@ module scs_bearing_block(type) { //! Draw the specified SCS bearing block
}
boltHoleRadius = screw_clearance_radius(S1);
footHeight = min(0.75, (G - bearing_dia(scs_bearing(type)) - 1.5) / 2); // estimate, not specified on drawings
footHeight = min(0.75, (G - bearing_dia(bearing) - 1.5) / 2); // estimate, not specified on drawings
color(sks_bearing_block_color) {
linear_extrude(L, center = true) {
bearingRadius = bearing_dia(scs_bearing(type)) / 2;
bearingRadius = bearing_dia(bearing) / 2;
// center section with bearing hole
difference() {
union() {
@ -117,8 +122,17 @@ module scs_bearing_block(type) { //! Draw the specified SCS bearing block
circle(r = boltHoleRadius);
}
}
not_on_bom() no_explode()
linear_bearing(scs_bearing(type));
not_on_bom() no_explode() {
spacer = scs_spacer(type);
for(end = spacer ? [-1, 1] : 0)
translate_z(end * (bearing_length(bearing) + spacer) / 2)
linear_bearing(bearing);
for(end = [-1, 1])
translate_z(end * ((spacer ? 2 * bearing_length(bearing) + spacer : bearing_length(bearing)) + circlip_thickness(clip)) / 2)
rotate(180)
internal_circlip(clip);
}
}
module scs_bearing_block_hole_positions(type) { //! Place children at hole positions

View File

@ -22,18 +22,19 @@
//
include <linear_bearings.scad>
include <circlips.scad>
// T h E W L F G B C K S1 S2 L1 LB
SCS6UU = ["SCS6UU", 6, 9, 15, 30, 25, 18, 15, 20, 15, 5, M4_cap_screw, 3.4, 8, LM6UU];
SCS8UU = ["SCS8UU", 6, 11, 17, 34, 30, 22, 18, 24, 18, 5, M4_cap_screw, 3.4, 8, LM8UU];
SCS10UU = ["SCS10UU", 8, 13, 20, 40, 35, 26, 21, 28, 21, 6, M5_cap_screw, 4.3, 12, LM10UU];
SCS12UU = ["SCS12UU", 8, 15, 21, 42, 36, 28, 24, 30.5, 26, 5.75, M5_cap_screw, 4.3, 12, LM12UU];
SCS16UU = ["SCS16UU", 9, 19, 25, 50, 44, 38.5, 32.5, 36, 34, 7, M5_cap_screw, 4.3, 12, LM16UU];
SCS6UU = ["SCS6UU", 6, 9, 15, 30, 25, 18, 15, 20, 15, 5, M4_cap_screw, 3.4, 8, LM6UU, circlip_12i, 0];
SCS8UU = ["SCS8UU", 6, 11, 17, 34, 30, 22, 18, 24, 18, 5, M4_cap_screw, 3.4, 8, LM8UU, circlip_15i, 0];
SCS10UU = ["SCS10UU", 8, 13, 20, 40, 35, 26, 21, 28, 21, 6, M5_cap_screw, 4.3, 12, LM10UU, circlip_19i, 0];
SCS12UU = ["SCS12UU", 8, 15, 21, 42, 36, 28, 24, 30.5, 26, 5.75, M5_cap_screw, 4.3, 12, LM12UU, circlip_21i, 0];
SCS16UU = ["SCS16UU", 9, 19, 25, 50, 44, 38.5, 32.5, 36, 34, 7, M5_cap_screw, 4.3, 12, LM16UU, circlip_28i, 0];
SCS8LUU = ["SCS8LUU", 6, 11, 17, 34, 58, 22, 18, 24, 42, 5, M4_cap_screw, 3.4, 8, LM8LUU];
SCS10LUU = ["SCS10LUU", 8, 13, 20, 40, 68, 26, 21, 28, 45, 6, M5_cap_screw, 4.3, 12, LM10LUU];
SCS12LUU = ["SCS12LUU", 8, 15, 21, 42, 70, 28, 24, 30.5, 50, 5.75, M5_cap_screw, 4.3, 12, LM12LUU];
SCS16LUU = ["SCS16LUU", 9, 19, 25, 50, 85, 38.5, 32.5, 36, 60, 7, M5_cap_screw, 4.3, 12, LM16LUU];
SCS8LUU = ["SCS8LUU", 6, 11, 17, 34, 58, 22, 18, 24, 42, 5, M4_cap_screw, 3.4, 8, LM8UU, circlip_15i, 4];
SCS10LUU = ["SCS10LUU", 8, 13, 20, 40, 68, 26, 21, 28, 45, 6, M5_cap_screw, 4.3, 12, LM10UU, circlip_19i, 4];
SCS12LUU = ["SCS12LUU", 8, 15, 21, 42, 70, 28, 24, 30.5, 50, 5.75, M5_cap_screw, 4.3, 12, LM12UU, circlip_21i, 4];
SCS16LUU = ["SCS16LUU", 9, 19, 25, 50, 85, 38.5, 32.5, 36, 60, 7, M5_cap_screw, 4.3, 12, LM16UU, circlip_28i, 4];
scs_bearing_blocks = [SCS6UU, SCS8UU, SCS10UU, SCS12UU, SCS16UU];