Commit | Line | Data |
---|---|---|
df8e764d | 1 | /* GNU AGPLv3 (or later at your option) |
2 | see bottom for more license info */ | |
3 | ||
4 | /* protective housing for crazyflie 2.0. | |
5 | ||
6 | reinforce the arms so they do not snap. | |
7 | ||
8 | keep the props up high so they do not get hairs from the ground | |
9 | wrapped around the motor shaft. | |
10 | */ | |
11 | ||
df8e764d | 12 | main_body_width_measured = 28.0; |
13 | main_body_length_measured = 31.0; | |
df8e764d | 14 | main_body_height_measured = 1.5; |
15 | ||
e9c572e7 | 16 | arm_width_measured = 3.6; |
17 | arm_length_measured = 79.0; | |
18 | arm_height_measured = main_body_height_measured; | |
df8e764d | 19 | |
d8418529 | 20 | motor_diameter_measured = 7; |
21 | motor_height_measured = 17; | |
22 | motor_radius_measured = motor_diameter_measured / 2; | |
23 | ||
b2b49e2c MC |
24 | /*this is how far down the motor sticks below the circuit board*/ |
25 | motor_z_offset_measured = 5; | |
26 | ||
27 | motor_z_translate = (motor_height_measured - arm_height_measured) / 2 - motor_z_offset_measured; | |
28 | ||
df8e764d | 29 | cube([main_body_width_measured, |
30 | main_body_length_measured, | |
6123c3ad | 31 | main_body_height_measured], |
32 | center = true); | |
9e3e6b08 | 33 | rotate(45){ |
fbb05bf9 | 34 | cube([arm_width_measured, |
35 | arm_length_measured, | |
36 | arm_height_measured], | |
37 | center = true);} | |
b1297c9e | 38 | rotate(-45){ |
fbb05bf9 | 39 | cube([arm_width_measured, |
40 | arm_length_measured, | |
41 | arm_height_measured], | |
42 | center = true);} | |
cfa97e05 | 43 | |
d8418529 | 44 | rotate(45) { |
cfa97e05 MC |
45 | translate([arm_length_measured / 2 + motor_radius_measured, |
46 | 0, | |
47 | motor_z_translate]){ | |
d8418529 | 48 | cylinder(h = motor_height_measured, |
49 | r = motor_radius_measured, | |
cfa97e05 MC |
50 | center = true, |
51 | $fn = 50); } } | |
4f4b0d3e | 52 | rotate(45 + 90) { |
53 | translate([arm_length_measured / 2 + motor_radius_measured, | |
54 | 0, | |
55 | motor_z_translate]){ | |
56 | cylinder(h = motor_height_measured, | |
57 | r = motor_radius_measured, | |
58 | center = true, | |
59 | $fn = 50); } } | |
60 | rotate(45 + 90 * 2) { | |
61 | translate([arm_length_measured / 2 + motor_radius_measured, | |
62 | 0, | |
63 | motor_z_translate]){ | |
64 | cylinder(h = motor_height_measured, | |
65 | r = motor_radius_measured, | |
66 | center = true, | |
67 | $fn = 50); } } | |
68 | rotate(45 + 90 * 3) { | |
69 | translate([arm_length_measured / 2 + motor_radius_measured, | |
70 | 0, | |
71 | motor_z_translate]){ | |
72 | cylinder(h = motor_height_measured, | |
73 | r = motor_radius_measured, | |
74 | center = true, | |
75 | $fn = 50); } } | |
df8e764d | 76 | |
77 | /* | |
78 | This file is part of 3d-printables. | |
79 | ||
80 | 3d-printables is free software: you can redistribute it and/or modify | |
81 | it under the terms of the GNU Affero General Public License as published by | |
82 | the Free Software Foundation, either version 3 of the License, or | |
83 | (at your option) any later version. | |
84 | ||
85 | 3d-printables is distributed in the hope that it will be useful, | |
86 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
87 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
88 | GNU Affero General Public License for more details. | |
89 | ||
90 | You should have received a copy of the GNU Affero General Public License | |
91 | along with challenge-bot. If not, see <http://www.gnu.org/licenses/>. | |
92 | */ |