X-Git-Url: http://challenge-bot.com/repos/?a=blobdiff_plain;f=3d-printables%2Fwheel-data.scad;h=97b885bd31f6567bf8e5c080a23c010575ad0bcd;hb=c513c8ee3d93c136e08ec45c88d1a162745db0e1;hp=940228a82050b61680289bc8848668dd4276a317;hpb=3d90aff00bdea5d4a525d006d5390f9c5a25c635;p=challenge-bot diff --git a/3d-printables/wheel-data.scad b/3d-printables/wheel-data.scad index 940228a..97b885b 100644 --- a/3d-printables/wheel-data.scad +++ b/3d-printables/wheel-data.scad @@ -1,21 +1,25 @@ +/* + Copyright (C) 2015 Daniel Watson + See the end of the file for license conditions. +*/ // challenge-bot // GNU AGPLv3 (or later at your option) -// project available at these locations: -// https://gitorious.org/ozzloy/challenge-bot -// https://github.com/waynegramlich/challenge-bot +// project available here: +// https://challenge-bot.com/ // use $fn = 20 while developing, 100 when about to print // 20 will make previews fast // 100 will make printing smooth $fn = 100; -qr_size = 45; -qr_height = 2; +wheel_square_spoke_size = 45; +wheel_square_spoke_thickness = 2; wall_width = 3; -wheel_width = 9; -wheel_radius = sqrt(2 * pow(qr_size / 2, 2)) + wall_width / 2; +wheel_width = 7; +wheel_radius = + sqrt(2 * pow(wheel_square_spoke_size / 2, 2)) + wall_width / 2 + 1; motor_shaft_radius = 3.7; motor_shaft_flat_width = 4.8; @@ -23,7 +27,7 @@ motor_shaft_flat_width = 4.8; tread_radius = 4 / 2; module mounting_screw_flat() { - circle(0.9); } + circle(1.1); } module motor_shaft_flat(radius, flat_width) { intersection() { @@ -57,64 +61,39 @@ module tread(wheel_radius, tread_radius) { translate([wheel_radius, 0]) { circle(tread_radius); } } } -module wheel_black(radius, - width, - shaft_radius, - shaft_flat_width, - wall_width, - tread_radius) { - color("black") { - difference() { - rim(radius, wall_width, width); - translate([0, 0, width / 2]) { - tread(radius, tread_radius); } } - linear_extrude(height = qr_height) { - difference() { - qr_black_flat(); - mounting_screw_flat(); } } - translate([0, 0, qr_height]) { - motor_shaft_holder(shaft_radius, - shaft_flat_width, - wall_width, - width - qr_height); } } } - -module wheel_white() { - color("white") { - linear_extrude(height = qr_height) { - difference() { - qr_white_flat(); - mounting_screw_flat(); } } } } - module wheel(radius, width, shaft_radius, shaft_flat_width, wall_width, tread_radius) { - wheel_black(radius, - width, - shaft_radius, - shaft_flat_width, - wall_width, - tread_radius); - wheel_white(); } - -module wheel_solid(radius, - width, - shaft_radius, - shaft_flat_width, - wall_width, - tread_radius) { difference() { rim(radius, wall_width * 2, width); translate([0, 0, width / 2]) { tread(radius, tread_radius); } } - linear_extrude(height = qr_height) { + linear_extrude(height = wheel_square_spoke_thickness) { difference() { - square(qr_size, center = true); + square(wheel_square_spoke_size, center = true); mounting_screw_flat(); } } - translate([0, 0, qr_height]) { + translate([0, 0, wheel_square_spoke_thickness]) { motor_shaft_holder(shaft_radius, shaft_flat_width, wall_width, - width - qr_height); } } + width - wheel_square_spoke_thickness); } } + +/* + This file is part of challenge-bot. + + Challenge-bot is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + GNU Affero Emacs is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with challenge-bot. If not, see . +*/