1
0
mirror of https://github.com/nophead/NopSCADlib.git synced 2025-09-21 04:31:30 +02:00

Compare commits

..

8 Commits

Author SHA1 Message Date
Chris Palmer
b541298eae Printed foot assembly can now omit the top washer when space is at a premium.
Now correctly shows the screw in the squeezed position.
2021-10-05 12:33:55 +01:00
Chris Palmer
9884160ed5 Updated the gallery 2021-10-02 20:45:15 +01:00
Chris Palmer
7b111c016a Updated changelog. 2021-10-01 12:37:49 +01:00
Chris Palmer
38c973b316 FR4 veroboard made the correct colour.
veroboard track cuts made slightly bigger.
2021-10-01 12:34:49 +01:00
Chris Palmer
042d809ed0 Resistor and thermistor wires made more round. 2021-10-01 12:33:35 +01:00
Chris Palmer
3864839e52 Fixed encoder breakout descripion typo. 2021-10-01 12:32:47 +01:00
Chris Palmer
2ba2c2c115 Removed some unused dependencies. 2021-10-01 12:32:01 +01:00
Chris Palmer
e3716ce8f9 Updated changelog. 2021-09-29 11:36:36 +01:00
35 changed files with 78 additions and 39 deletions

View File

@@ -3,6 +3,21 @@
This changelog is generated by `changelog.py` using manually added semantic version tags to classify commits as breaking changes, additions or fixes. This changelog is generated by `changelog.py` using manually added semantic version tags to classify commits as breaking changes, additions or fixes.
#### [v17.0.1](https://github.com/nophead/NopSCADlib/releases/tag/v17.0.1 "show release") Fixes [...](https://github.com/nophead/NopSCADlib/compare/v17.0.0...v17.0.1 "diff with v17.0.0")
* 2021-10-01 [`38c973b`](https://github.com/nophead/NopSCADlib/commit/38c973b316a853fcbef3ccb857d99404a772d9dd "show commit") [C.P.](# "Chris Palmer") FR4 veroboard made the correct colour.
veroboard track cuts made slightly bigger.
* 2021-10-01 [`042d809`](https://github.com/nophead/NopSCADlib/commit/042d809ed056ba55c32f1d850b81dcf559fe9134 "show commit") [C.P.](# "Chris Palmer") Resistor and thermistor wires made more round.
* 2021-10-01 [`3864839`](https://github.com/nophead/NopSCADlib/commit/3864839e521eb64189cba8453ea8835d6ffadd75 "show commit") [C.P.](# "Chris Palmer") Fixed encoder breakout descripion typo.
* 2021-10-01 [`2ba2c2c`](https://github.com/nophead/NopSCADlib/commit/2ba2c2c115d4ab6c2371c662a3e54d7c77aa7785 "show commit") [C.P.](# "Chris Palmer") Removed some unused dependencies.
## [v17.0.0](https://github.com/nophead/NopSCADlib/releases/tag/v17.0.0 "show release") Breaking Changes [...](https://github.com/nophead/NopSCADlib/compare/v16.2.0...v17.0.0 "diff with v16.2.0")
* 2021-09-28 [`a5c4bf0`](https://github.com/nophead/NopSCADlib/commit/a5c4bf05adbf53cb7eb113db1139b65eb616a2e0 "show commit") [M.B.](# "Martin Budden") Added hot end style string literals following discussion.
* 2021-09-28 [`a65add6`](https://github.com/nophead/NopSCADlib/commit/a65add65acdfeb97a657e03b9398d5376f497e85 "show commit") [M.B.](# "Martin Budden") Removed hotend global enums.
### [v16.2.0](https://github.com/nophead/NopSCADlib/releases/tag/v16.2.0 "show release") Additions [...](https://github.com/nophead/NopSCADlib/compare/v16.1.0...v16.2.0 "diff with v16.1.0") ### [v16.2.0](https://github.com/nophead/NopSCADlib/releases/tag/v16.2.0 "show release") Additions [...](https://github.com/nophead/NopSCADlib/compare/v16.1.0...v16.2.0 "diff with v16.1.0")
* 2021-09-29 [`bab4c8e`](https://github.com/nophead/NopSCADlib/commit/bab4c8e8afcc9e96ada5ae8d7636f3f203c36a2c "show commit") [C.P.](# "Chris Palmer") `TO247_size()` now also returns lead height and the length of the wide bit. * 2021-09-29 [`bab4c8e`](https://github.com/nophead/NopSCADlib/commit/bab4c8e8afcc9e96ada5ae8d7636f3f203c36a2c "show commit") [C.P.](# "Chris Palmer") `TO247_size()` now also returns lead height and the length of the wide bit.
TO247 leads fixed at 3. TO247 leads fixed at 3.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 121 KiB

BIN
gallery/IOT_LOAD.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 245 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 287 KiB

After

Width:  |  Height:  |  Size: 287 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 121 KiB

After

Width:  |  Height:  |  Size: 121 KiB

BIN
gallery/PSU_cover.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 279 KiB

BIN
gallery/PotBox.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 231 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 202 KiB

After

Width:  |  Height:  |  Size: 202 KiB

View File

@@ -25,6 +25,11 @@ WiFi controllable PSU
![](IOT_50V_PSU.png) ![](IOT_50V_PSU.png)
## IOT LOAD
WiFi controllable programmable load
![](IOT_LOAD.png)
## Lab ATX PSU ## Lab ATX PSU
Bench power supply built around an ATX PSU. Bench power supply built around an ATX PSU.
@@ -65,6 +70,16 @@ Mains isolated and variable supply with metering.
## PSU Cover
A base and shroud to make PSU safe to sit on a desk
![](PSU_cover.png)
## PotBox
Potentiometer box with course and fine controls and three 4mm binding posts
![](PotBox.png)
## SunBot ## SunBot
A solar tracker to keep a solar panel pointing at the sun. A solar tracker to keep a solar panel pointing at the sun.

View File

@@ -31,9 +31,11 @@
//! //!
//! Normally the side sheets are the same type but they can be overridden individually as long as the substitute has the same thickness. //! Normally the side sheets are the same type but they can be overridden individually as long as the substitute has the same thickness.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../vitamins/sheet.scad> use <../vitamins/sheet.scad>
use <../vitamins/insert.scad> use <../vitamins/insert.scad>
use <../vitamins/screw.scad>
use <../vitamins/washer.scad>
use <../utils/quadrant.scad> use <../utils/quadrant.scad>
use <../utils/round.scad> use <../utils/round.scad>
@@ -52,8 +54,8 @@ function box_width(type) = type[7]; //! Internal width
function box_depth(type) = type[8]; //! Internal depth function box_depth(type) = type[8]; //! Internal depth
function box_height(type) = type[9]; //! Internal height function box_height(type) = type[9]; //! Internal height
function box(screw, wall, sheets, top_sheet, base_sheet, size, feet = false, shelf_screw = M3_dome_screw) = //! Construct a property list for a box. function box(screw, wall, sheets, top_sheet, base_sheet, size, feet = false, shelf_screw = undef) = //! Construct a property list for a box.
concat([screw, shelf_screw, wall, sheets, top_sheet, base_sheet, feet], size); concat([screw, is_undef(shelf_screw) ? screw : shelf_screw, wall, sheets, top_sheet, base_sheet, feet], size);
function box_bezel_clearance(type) = bezel_clearance; function box_bezel_clearance(type) = bezel_clearance;

View File

@@ -67,18 +67,18 @@ module foot(type = foot) { //! Generate STL
} }
} }
module foot_assembly(t = 0, type = foot, flip = false) { //! Assembly with fasteners in place for specified sheet thickness module foot_assembly(t = 0, type = foot, flip = false, no_washer = false) { //! Assembly with fasteners in place for specified sheet thickness
screw = foot_screw(type); screw = foot_screw(type);
nut = screw_nut(screw); nut = screw_nut(screw);
squeeze = 0.5; squeeze = 0.5;
screw_length = screw_length(screw, foot_thickness(type) + t - squeeze, 2, nyloc = true); screw_length = screw_length(screw, foot_thickness(type) + t - squeeze, no_washer ? 1 : 2, nyloc = true);
vflip() explode(15, true) { vflip() explode(15, true) {
stl_colour(pp4_colour) foot(type); stl_colour(pp4_colour) foot(type);
if(t) if(t)
explode(15, true) explode(15, true)
translate_z(foot_thickness(type)) translate_z(foot_thickness(type) - squeeze)
if(flip) if(flip)
nut_and_washer(nut, true); nut_and_washer(nut, true);
else else
@@ -87,9 +87,15 @@ module foot_assembly(t = 0, type = foot, flip = false) { //! Assembly with faste
if(t) if(t)
translate_z(t) translate_z(t)
if(flip) if(flip)
screw_and_washer(screw, screw_length); if(no_washer)
screw(screw, screw_length);
else
screw_and_washer(screw, screw_length);
else else
nut_and_washer(nut, true); if(no_washer)
nut(nut, true);
else
nut_and_washer(nut, true);
} }
module insert_foot(type = insert_foot) { //! Generate STL for foot with insert module insert_foot(type = insert_foot) { //! Generate STL for foot with insert

View File

@@ -22,7 +22,7 @@
//! //!
//! Add solvent or glue to make a permanent fixture. //! Add solvent or glue to make a permanent fixture.
// //
include <../core.scad> include <../utils/core/core.scad>
interference = 0.0; interference = 0.0;

View File

@@ -26,7 +26,9 @@
//! //!
//! It can also have printed feet on the base with the screws doubling up to hold the base on. //! It can also have printed feet on the base with the screws doubling up to hold the base on.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../vitamins/screw.scad>
use <../vitamins/washer.scad>
use <../vitamins/insert.scad> use <../vitamins/insert.scad>
use <foot.scad> use <foot.scad>

View File

@@ -21,8 +21,8 @@
//! Creative Commons - Attribution - Share Alike license (see <https://creativecommons.org/licenses/by-sa/3.0/>) //! Creative Commons - Attribution - Share Alike license (see <https://creativecommons.org/licenses/by-sa/3.0/>)
// //
include <../core.scad> include <../utils/core/core.scad>
include <../vitamins/pulleys.scad> use <../vitamins/pulley.scad>
printed_pulley_GT2_profile = [[0.747183,-0.5],[0.747183,0],[0.647876,0.037218],[0.598311,0.130528],[0.578556,0.238423],[0.547158,0.343077],[0.504649,0.443762],[0.451556,0.53975],[0.358229,0.636924],[0.2484,0.707276],[0.127259,0.750044],[0,0.76447],[-0.127259,0.750044],[-0.2484,0.707276],[-0.358229,0.636924],[-0.451556,0.53975],[-0.504797,0.443762],[-0.547291,0.343077],[-0.578605,0.238423],[-0.598311,0.130528],[-0.648009,0.037218],[-0.747183,0],[-0.747183,-0.5]]; printed_pulley_GT2_profile = [[0.747183,-0.5],[0.747183,0],[0.647876,0.037218],[0.598311,0.130528],[0.578556,0.238423],[0.547158,0.343077],[0.504649,0.443762],[0.451556,0.53975],[0.358229,0.636924],[0.2484,0.707276],[0.127259,0.750044],[0,0.76447],[-0.127259,0.750044],[-0.2484,0.707276],[-0.358229,0.636924],[-0.451556,0.53975],[-0.504797,0.443762],[-0.547291,0.343077],[-0.578605,0.238423],[-0.598311,0.130528],[-0.648009,0.037218],[-0.747183,0],[-0.747183,-0.5]];

View File

@@ -2543,7 +2543,7 @@ PCBs and perfboard with optional components. The shape can be a rectangle with o
| 1 | `pcb(ESP32_DOIT_V1)` | ESP32 DOIT DEV KIT V1 | | 1 | `pcb(ESP32_DOIT_V1)` | ESP32 DOIT DEV KIT V1 |
| 1 | `pcb(EnviroPlus)` | Enviro+ | | 1 | `pcb(EnviroPlus)` | Enviro+ |
| 1 | `pcb(ExtruderPCB)` | Extruder connection PCB - not shown | | 1 | `pcb(ExtruderPCB)` | Extruder connection PCB - not shown |
| 1 | `pcb(KY_040)` | KY_-040 rotart encoder breakout | | 1 | `pcb(KY_040)` | KY-040 rotart encoder breakout |
| 1 | `pcb(Keyes5p1)` | Keyes5.1 Arduino Uno expansion board - not shown | | 1 | `pcb(Keyes5p1)` | Keyes5.1 Arduino Uno expansion board - not shown |
| 1 | `pcb(LIPO_fuel_gauge)` | LIPO fuel gauge | | 1 | `pcb(LIPO_fuel_gauge)` | LIPO fuel gauge |
| 1 | `pcb(MP1584EN)` | MP1584EN 3A buck converter | | 1 | `pcb(MP1584EN)` | MP1584EN 3A buck converter |
@@ -4410,7 +4410,7 @@ Normally the side sheets are the same type but they can be overridden individual
### Functions ### Functions
| Function | Description | | Function | Description |
|:--- |:--- | |:--- |:--- |
| `box(screw, wall, sheets, top_sheet, base_sheet, size, feet = false, shelf_screw = M3_dome_screw)` | Construct a property list for a box. | | `box(screw, wall, sheets, top_sheet, base_sheet, size, feet = false, shelf_screw = undef)` | Construct a property list for a box. |
| `box_bezel_height(type, bottom)` | Bezel height for top or bottom | | `box_bezel_height(type, bottom)` | Bezel height for top or bottom |
| `box_corner_gap(type)` | Gap between box_sheets at the corners to connect inside and outside profiles | | `box_corner_gap(type)` | Gap between box_sheets at the corners to connect inside and outside profiles |
| `box_inset(type)` | How much the bezel intrudes on the specified width and length, away from the corners | | `box_inset(type)` | How much the bezel intrudes on the specified width and length, away from the corners |
@@ -5189,7 +5189,7 @@ inserts don't grip well in rubber.
|:--- |:--- | |:--- |:--- |
| `fastened_insert_foot_assembly(t = 3, type = insert_foot)` | Assembly with fasteners in place for specified sheet thickness | | `fastened_insert_foot_assembly(t = 3, type = insert_foot)` | Assembly with fasteners in place for specified sheet thickness |
| `foot(type = foot)` | Generate STL | | `foot(type = foot)` | Generate STL |
| `foot_assembly(t = 0, type = foot, flip = false)` | Assembly with fasteners in place for specified sheet thickness | | `foot_assembly(t = 0, type = foot, flip = false, no_washer = false)` | Assembly with fasteners in place for specified sheet thickness |
| `insert_foot(type = insert_foot)` | Generate STL for foot with insert | | `insert_foot(type = insert_foot)` | Generate STL for foot with insert |
| `insert_foot_assembly(type = insert_foot)` | Printed part with insert in place | | `insert_foot_assembly(type = insert_foot)` | Printed part with insert in place |

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../utils/layout.scad> use <../utils/layout.scad>
include <../vitamins/7_segments.scad> include <../vitamins/7_segments.scad>

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../vitamins/dip.scad> use <../vitamins/dip.scad>
dips = [[6, "OPTO"], [8, "NE555"], [14, "74HC00"], [16, "ULN2003"], [18, "ULN2803"], [20, "74HC245"], [28, "ATMEGA328"]]; dips = [[6, "OPTO"], [8, "NE555"], [14, "74HC00"], [16, "ULN2003"], [18, "ULN2803"], [20, "74HC245"], [28, "ATMEGA328"]];

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
include <../vitamins/ldrs.scad> include <../vitamins/ldrs.scad>
use <../utils/layout.scad> use <../utils/layout.scad>

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
include <../vitamins/ssrs.scad> include <../vitamins/ssrs.scad>
use <../utils/layout.scad> use <../utils/layout.scad>

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../utils/layout.scad> use <../utils/layout.scad>
include <../vitamins/ball_bearings.scad> include <../vitamins/ball_bearings.scad>

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../utils/layout.scad> use <../utils/layout.scad>
use <../printed/camera_housing.scad> use <../printed/camera_housing.scad>

View File

@@ -19,7 +19,6 @@
include <../core.scad> include <../core.scad>
include <../vitamins/pulleys.scad> include <../vitamins/pulleys.scad>
include <../vitamins/screws.scad>
include <../vitamins/stepper_motors.scad> include <../vitamins/stepper_motors.scad>
include <../vitamins/washers.scad> include <../vitamins/washers.scad>

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../vitamins/microview.scad> use <../vitamins/microview.scad>
microview(!$preview); microview(!$preview);

Binary file not shown.

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 115 KiB

View File

@@ -16,7 +16,7 @@
// You should have received a copy of the GNU General Public License along with NopSCADlib. // You should have received a copy of the GNU General Public License along with NopSCADlib.
// If not, see <https://www.gnu.org/licenses/>. // If not, see <https://www.gnu.org/licenses/>.
// //
include <../core.scad> include <../utils/core/core.scad>
use <../printed/press_fit.scad> use <../printed/press_fit.scad>
module press_fits() module press_fits()

View File

@@ -29,7 +29,7 @@
//! 4. The drive pulleys may be offset in the X and Y directions. If this is done, extra idler pulleys are added. This //! 4. The drive pulleys may be offset in the X and Y directions. If this is done, extra idler pulleys are added. This
//! allows flexible positioning of the motors. //! allows flexible positioning of the motors.
// //
include <../core.scad> include <../utils/core/core.scad>
include <../vitamins/belts.scad> include <../vitamins/belts.scad>
include <../vitamins/pulleys.scad> include <../vitamins/pulleys.scad>

View File

@@ -54,9 +54,9 @@ module resistor(type) { //! Draw specified type of resitor
for(side= [-1,1]) for(side= [-1,1])
translate([side * dia / 6, 0, length / 2]) translate([side * dia / 6, 0, length / 2])
rotate([0, splay_angle * side, 0]) rotate([0, splay_angle * side, 0])
cylinder(r = resistor_wire_diameter(type) / 2, h = resistor_wire_length(type), center = false); cylinder(r = resistor_wire_diameter(type) / 2, h = resistor_wire_length(type), center = false, $fn = 16);
else else
cylinder(r = resistor_wire_diameter(type) / 2, h = length + 2 * resistor_wire_length(type), center = true); cylinder(r = resistor_wire_diameter(type) / 2, h = length + 2 * resistor_wire_length(type), center = true, $fn = 16);
// //
// Sleeving // Sleeving
// //
@@ -66,7 +66,7 @@ module resistor(type) { //! Draw specified type of resitor
for(side= [-1, 1]) for(side= [-1, 1])
translate([side * resistor_diameter(type) / 6, 0, length / 2]) { translate([side * resistor_diameter(type) / 6, 0, length / 2]) {
rotate([0, splay_angle * side, 0]) rotate([0, splay_angle * side, 0])
cylinder(r = resistor_wire_diameter(type) / 2 + 0.1, h = resistor_wire_length(type) - 5, center = false); } cylinder(r = resistor_wire_diameter(type) / 2 + 0.1, h = resistor_wire_length(type) - 5, center = false, $fn = 16); }
// //
// Body // Body
// //

View File

@@ -27,7 +27,7 @@ RIE1212UB5C5R6 = [ "RIE1212UB5C5R6", "Resistor UB5C 5R6F 5R6 3W vitreous enamel"
// //
Honewell = [ "Honewell", "Thermistor Honeywell 135-104LAC-J01 100K 1%", 4.75, 1.8, 0.5, 28.6, 2, "red", false]; Honewell = [ "Honewell", "Thermistor Honeywell 135-104LAC-J01 100K 1%", 4.75, 1.8, 0.5, 28.6, 2, "red", false];
Epcos = [ "Epcos", "Thermistor Epcos B57560G104F 100K 1%", 4.6, 2.5, 0.3, 67, 2.5, [0.8, 0.8, 0.8, 0.25], true, false]; Epcos = [ "Epcos", "Thermistor Epcos B57560G104F 100K 1%", 4.6, 2.5, 0.3, 67, 2.5, [0.8, 0.8, 0.8, 0.25], true, false];
EpcosBlue = [ "EpcosBlue", "Thermistor Epcos B57861S104F40 100K 1%", 6.5, 2.41,0.25, 43.5,2.5, "black", true, true]; EpcosBlue = [ "EpcosBlue", "Thermistor Epcos B57861S104F40 100K 1%", 4.5, 2.41,0.25, 43.5,2.5, "black", true, true];
resistors = [Honewell, Epcos, EpcosBlue, RWM04106R80J, RIE1212UB5C5R6]; resistors = [Honewell, Epcos, EpcosBlue, RWM04106R80J, RIE1212UB5C5R6];
// //

View File

@@ -20,7 +20,7 @@
// //
//! IEC mains inlets and outlet. //! IEC mains inlets and outlet.
// //
include <../core.scad> include <../utils/core/core.scad>
use <screw.scad> use <screw.scad>
use <nut.scad> use <nut.scad>
use <washer.scad> use <washer.scad>

View File

@@ -20,7 +20,9 @@
// //
//! Random screw down modules. Currently just DROK buck converters. //! Random screw down modules. Currently just DROK buck converters.
// //
include <../core.scad> include <../utils/core/core.scad>
use <screw.scad>
use <nut.scad>
function mod_part(type) = type[1]; //! Description function mod_part(type) = type[1]; //! Description
function mod_length(type) = type[2]; //! Body length function mod_length(type) = type[2]; //! Body length

View File

@@ -868,7 +868,7 @@ ArduinoNano = let(l = 43.18, w = 17.78, pitch = inch(0.6), pins = 15, poffset =
[(l - inch(pins - 1) / 10) / 2 + poffset, (w - pitch) / 2, pins, 2, silver, 2.54, pitch], // 15x2 grid of holes [(l - inch(pins - 1) / 10) / 2 + poffset, (w - pitch) / 2, pins, 2, silver, 2.54, pitch], // 15x2 grid of holes
]; ];
KY_040 = ["KY_040", "KY_-040 rotart encoder breakout", KY_040 = ["KY_040", "KY-040 rotart encoder breakout",
26.3, 19.5, 1.6, 0, 3, 0, grey(20), false, 26.3, 19.5, 1.6, 0, 3, 0, grey(20), false,
[ [
[3.23 + 1.5, 1.3 + 1.5], [3.23 + 1.5, 1.3 + 1.5],

View File

@@ -19,7 +19,7 @@
//! BLDC servos for CNC machines //! BLDC servos for CNC machines
// //
include <../core.scad> include <../utils/core/core.scad>
include <../utils/tube.scad> include <../utils/tube.scad>
include <../utils/round.scad> include <../utils/round.scad>
include <../utils/quadrant.scad> include <../utils/quadrant.scad>

View File

@@ -20,9 +20,8 @@
//! SK shaft support brackets //! SK shaft support brackets
// //
include <../core.scad> include <../core.scad>
include <../utils/fillet.scad> use <../utils/fillet.scad>
use <washer.scad>
sk_bracket_colour = grey(70); sk_bracket_colour = grey(70);

View File

@@ -27,7 +27,6 @@ include <../vitamins/pin_headers.scad>
use <../utils/tube.scad> use <../utils/tube.scad>
use <../utils/thread.scad> use <../utils/thread.scad>
use <../utils/round.scad> use <../utils/round.scad>
use <washer.scad>
use <rod.scad> use <rod.scad>
function NEMA_width(type) = type[1]; //! Width of the square face function NEMA_width(type) = type[1]; //! Width of the square face

View File

@@ -82,7 +82,7 @@ module veroboard(type) { //! Draw specified veroboard with missing tracks and tr
width = strips * pitch; width = strips * pitch;
hole_d = 1; hole_d = 1;
tw = vero_track_width(type); tw = vero_track_width(type);
colour = vero_fr4(type) ? "green" : "goldenrod"; colour = vero_fr4(type) ? "#BEB564" : "goldenrod";
tc = vero_fr4(type) ? "silver" : copper; tc = vero_fr4(type) ? "silver" : copper;
no_track = vero_no_track(type); no_track = vero_no_track(type);
@@ -124,9 +124,9 @@ module veroboard(type) { //! Draw specified veroboard with missing tracks and tr
for(p = vero_breaks(type)) for(p = vero_breaks(type))
vero_grid_pos(type, p.x, p.y) vero_grid_pos(type, p.x, p.y)
if(ceil(p.x) == p.x) if(ceil(p.x) == p.x)
circle(d = pitch); circle(d = pitch * 1.1);
else else
square([pitch * 0.2, pitch], center = true); square([pitch * 0.3, pitch], center = true);
} }
} }
} }