constants.scad (4717B)
1 // see enclosure.scad for more details on the constants 2 3 enclosure_rack_units = 4; 4 5 rack_unit_dims = [ 6 [undef, undef, undef, undef], // "0U" 7 [44.45, 43.65, 31.75, 5.95], // 1U 8 [88.90, 88.10, 44.45, 21,83], // 2U 9 [133.35, 132.55, 57.15, 37.70], // 3U 10 [177.80, 177.00, 101.60, 37.70], // 4U 11 [222.25, 221.45, 146.06, 37.70], // 5U 12 [266.70, 265.90, 190.50, 37.70], // 6U 13 ]; 14 15 // enclosure parameters 16 // =========================================================================== 17 18 disk_blocks = 2; 19 fan_groups = 3; 20 21 // fastener constants 22 // =========================================================================== 23 // 24 25 flush_stud_height = 0; 26 flush_stud_shoulder_height = 0; 27 flush_stud_inner_radius = 0; 28 flush_stud_outer_radius = 0; 29 30 flush_nut_height = 0; 31 flush_nut_shoulder_height = 0; 32 flush_nut_inner_radius = 0; 33 flush_nut_outer_radius = 0; 34 35 standoff_height = 0; 36 standoff_inner_radius = 0; 37 standoff_outer_radius = 0; 38 39 // chassis constants 40 // =========================================================================== 41 // 42 43 faceplate_width = 482; 44 faceplate_height = rack_unit_dims[enclosure_rack_units][0]; 45 faceplate_thickness = 2; 46 47 handle_width = 0; 48 handle_height = 0; 49 handle_thickness = 0; 50 51 chassis_width = 434; 52 chassis_height = rack_unit_dims[enclosure_rack_units][0]; 53 chassis_depth = 800; 54 chassis_thickness = 1.5; 55 56 cover_width = chassis_width; 57 cover_depth = chassis_depth; 58 cover_thickness = 1.5; 59 60 rearplate_width = chassis_width; 61 rearplate_height = rack_unit_dims[enclosure_rack_units][0]; 62 rearplate_thickness = chassis_thickness; 63 64 // chamber separator 65 separator_height = chassis_height; 66 separator_depth = chassis_depth; 67 separator_thickness = 1.5; 68 69 // disk retainer 70 retainer_width = chassis_width; 71 retainer_depth = chassis_depth; 72 retainer_thickness = 1.5; 73 74 // disk (-group/-row/-block) constants 75 // =========================================================================== 76 // - disks will be placed in caddies 77 // - disks are treated logically in groups, with one backplane per group 78 // - groups are further combined into rows, and rows into blocks 79 80 //disk_width = 26.11; 81 //disk_height = 146.05; 82 //disk_depth = 101.60; 83 84 disk_width = 27; // with caddy 85 disk_height = 157; // with caddy 86 disk_depth = 112; // with caddy 87 88 disk_conn_width = 6; 89 disk_conn_height = 4; 90 disk_conn_depth = 42.37; 91 92 disk_conn_off_width = 0; 93 disk_conn_off_height = -1; 94 disk_conn_off_depth = 4.665; 95 96 disk_pad_width = 1; 97 disk_pad_height = 1; 98 disk_pad_depth = 2.5; 99 100 disks_per_group = 4; 101 disk_group_pad_width = 0; 102 disk_group_pad_depth = 0; 103 104 function disk_group_width(disks = disks_per_group) = 105 (2 * disk_group_pad_width) + (disks * (disk_width + (2 * disk_pad_width))); 106 function disk_group_depth(disks = disks_per_group) = 107 (2 * disk_group_pad_depth) + (disk_depth + (2 * disk_pad_depth)); 108 109 disk_groups_per_row = 3; 110 disk_row_pad_width = 0; 111 disk_row_pad_depth = 0; 112 113 function disk_row_width(groups = disk_groups_per_row, disks = disks_per_group) = 114 (2 * disk_row_pad_width) + (groups * disk_group_width(disks)); 115 function disk_row_depth(groups = disk_groups_per_row, disks = disks_per_group) = 116 (2 * disk_row_pad_depth) + disk_group_depth(disks); 117 118 disk_rows_per_block = 3; 119 disk_block_pad_width = 0; 120 disk_block_pad_depth = 0; 121 122 function disk_block_width(rows = disk_rows_per_block, 123 groups = disk_groups_per_row, 124 disks = disks_per_group) = 125 (2 * disk_block_pad_width) + (rows * disk_row_width(groups, disks)); 126 127 function disk_block_depth(rows = disk_rows_per_block, 128 groups = disk_groups_per_row, 129 disks = disks_per_group) = 130 (2 * disk_block_pad_width) + (rows * disk_row_depth(groups, disks)); 131 132 // miscellaneous constants 133 // =========================================================================== 134 // 135 136 fan_width = 141; 137 fan_height = 141; 138 fan_depth = 30; 139 140 fan_pad_width = 1.0; 141 fan_pad_height = 20; // account for pcb + cable routing area 142 fan_pad_depth = 1.0; 143 144 fan_group_pad_width = 0; 145 fan_group_pad_height = 0; 146 fan_group_pad_depth = 0; 147 148 function fan_group_width(fans) = 149 (2 * fan_group_pad_width) + (fans * (fan_width + (2 * fan_pad_width))); 150 function fan_group_height() = 151 (2 * fan_group_pad_height) + (fan_height + (2 * fan_pad_height)); 152 function fan_group_depth() = 153 (2 * fan_group_pad_depth) + (fan_depth + (2 * fan_pad_depth)); 154 155 fan_wall_thickness = 1.5; 156 fan_wall_width = chassis_width; 157 fan_wall_depth = fan_wall_thickness + fan_group_depth(); 158 159 psu_width = 73.5; 160 psu_height = 40; 161 psu_depth = 185; 162 163 psu_pad_width = 1.0; 164 psu_pad_height = 1.0; 165 psu_pad_depth = 0.0; 166 167 psus_per_group = 2; 168 psu_group_width = psu_width; 169 function psu_group_height(psus = psus_per_group) = 170 psus * (psu_height + (2 * psu_pad_height)); 171 172 io_width = 80; 173 io_height = 40; 174 io_depth = 80; 175 176 io_pad_width = 1.0; 177 io_pad_height = 1.0; 178 io_pad_depth = 0.0;