/* GNU AGPLv3 (or later at your option) see bottom for more license info */ /* protective housing for crazyflie 2.0. reinforce the arms so they do not snap. keep the props up high so they do not get hairs from the ground wrapped around the motor shaft. */ $fn = 300; // propeller diameter was measured with calipers propeller_radius = 46.35 / 2; // 7mm from spec motor_grippable_height = 8; motor_gripper_height = motor_grippable_height / 2; holder_height = motor_grippable_height * 1.1; propeller_radius_measured = 46.35 / 2; holder_wall_thickness = 1.2; propeller_guard_wall_thickness = 1.2; motor_diameter = 7; motor_height_measured = 17; motor_radius = motor_diameter / 2; module propeller_protector(motor_radius, holder_wall_thickness, propeller_guard_wall_thickness, motor_gripper_height, holder_height, propeller_radius) { propeller_guard_inner_radius = propeller_radius + 1.5; holder_outer_radius = motor_radius + holder_wall_thickness; number_of_arms = 3; linear_extrude(height = motor_gripper_height) { // part that holds the motor difference() { circle(r = holder_outer_radius); circle(r = motor_radius); } for(arm_number = [0: (number_of_arms - 1)]) { rotate(arm_number * (360 / number_of_arms)) { translate([-propeller_guard_inner_radius, -holder_wall_thickness / 2]) { square([propeller_guard_inner_radius - motor_radius, holder_wall_thickness]); } } } } // prop protector linear_extrude(height = holder_height) { difference() { circle(propeller_guard_inner_radius + propeller_guard_wall_thickness); circle(propeller_guard_inner_radius); } } } propeller_protector(motor_radius, holder_wall_thickness, propeller_guard_wall_thickness, motor_gripper_height, holder_height, propeller_radius_measured); /* This file is part of 3d-printables. 3d-printables 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. 3d-printables 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 . */